The modellens CLI is the primary entry point for Model Lens. It’s built with Click and delegates to the appropriate benchmark framework.
| Option | Type | Default | Description |
|---|
--provider, -p | choice | auto-detect | lm-studio, ollama, open-webui, jan, llama.cpp, vllm |
--models, -m | multiple | auto-detect | Models to benchmark (repeatable) |
--model-name | string | — | Single model name (alias for --models) |
--framework, -f | choice | devbench | devbench, general, compare |
--output-dir, -o | string | results | Output directory |
--num-runs, -n | int | 5 | Runs per prompt (devbench) |
--num-prompts | int | 20 | Prompt count |
--samples | int | — | Samples per benchmark (general) |
--quick | flag | — | Quick mode: fewer prompts and runs |
--config, -c | string | — | Config file path |
--parallel/--sequential | flag | --parallel | Parallel execution |
--seed | int | — | Random seed |
--verbose, -v | flag | — | Show raw model responses |
--ci | flag | — | CI-safe headless mode |
--traces-dir | string | results/traces | Trace capture directory |
--no-traces | flag | — | Disable trace capture |
--sse-port | int | — | Enable SSE streaming on port N |
--json-output | flag | — | Output results as JSON to stdout |
# Auto-detect provider and models, quick mode
# Ollama with specific models
modellens run --provider ollama --models llama3.2
# General benchmark framework
modellens run --framework general --model-name my-model --samples 50
# Model comparison (both frameworks)
modellens run --framework compare --models qwen3.5 gemma-4
# SSE streaming for dashboard
modellens run --sse-port 9090
# CI mode with JSON output
modellens run --ci --json-output > results.json
modellens workload run [OPTIONS]
| Option | Type | Default | Description |
|---|
--model, -m | string | (required) | Model to evaluate |
--project, -p | string | auto-detect | Project path to evaluate |
--output-dir, -o | string | results/workload | Output directory |
modellens workload run --model qwen3.5-9b
modellens workload run --model qwen3.5-9b --project /path/to/react-app
Displays:
- Hardware details (CPU, GPU, RAM, OS, architecture)
- Python version
- Connected providers and their status
- Available models on each provider
modellens models [OPTIONS]
| Option | Type | Default | Description |
|---|
--provider, -p | choice | auto-detect | Filter by provider |
modellens models --provider ollama
modellens leaderboard [OPTIONS] [RESULTS_DIR]
| Option | Type | Default | Description |
|---|
--format | choice | table | table, json, csv |
--sort-by | string | overall_score | Sort column |
--limit | int | 20 | Max results |
modellens leaderboard results/
modellens leaderboard --format json --sort-by tokens_per_sec
modellens health [OPTIONS]
| Option | Type | Default | Description |
|---|
--provider, -p | choice | auto-detect | Provider to check |
modellens health --provider ollama
modellens compare [OPTIONS] MODEL_A MODEL_B
Runs both models against the same benchmarks and produces side-by-side results.
modellens compare qwen3.5-9b gemma-4-9b