{
  "schema_version": "1.0",
  "repository": "waybarrios/vllm-mlx",
  "source_branch": "gh-pages",
  "source_revision": "a69d47912bcb21d8fe04d48f75fa896b620ffcfa",
  "option_count": 303,
  "options": [
    {
      "context": "examples.audio_separation_example.main",
      "receiver": "parser",
      "flags": [
        "audio"
      ],
      "destination": "audio",
      "description": "Input audio file (mp3, wav, etc.)",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "examples/audio_separation_example.py",
      "line": 37,
      "end_line": 37,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/audio_separation_example.py#L37-L37"
    },
    {
      "context": "examples.audio_separation_example.main",
      "receiver": "parser",
      "flags": [
        "--description",
        "-d"
      ],
      "destination": "description",
      "description": "What to isolate: speech, music, singing, etc. (default: speech)",
      "default": "speech",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/audio_separation_example.py",
      "line": 38,
      "end_line": 39,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/audio_separation_example.py#L38-L39"
    },
    {
      "context": "examples.audio_separation_example.main",
      "receiver": "parser",
      "flags": [
        "--output",
        "-o"
      ],
      "destination": "output",
      "description": "Output file for isolated audio (default: input_voice.wav)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/audio_separation_example.py",
      "line": 40,
      "end_line": 41,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/audio_separation_example.py#L40-L41"
    },
    {
      "context": "examples.audio_separation_example.main",
      "receiver": "parser",
      "flags": [
        "--background",
        "-b"
      ],
      "destination": "background",
      "description": "Output file for background audio (optional)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/audio_separation_example.py",
      "line": 42,
      "end_line": 43,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/audio_separation_example.py#L42-L43"
    },
    {
      "context": "examples.audio_separation_example.main",
      "receiver": "parser",
      "flags": [
        "--model",
        "-m"
      ],
      "destination": "model",
      "description": "SAM-Audio model to use",
      "default": "mlx-community/sam-audio-large-fp16",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/audio_separation_example.py",
      "line": 44,
      "end_line": 45,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/audio_separation_example.py#L44-L45"
    },
    {
      "context": "examples.audio_separation_example.main",
      "receiver": "parser",
      "flags": [
        "--chunk",
        "-c"
      ],
      "destination": "chunk",
      "description": "Process in chunks of N seconds (for long audio)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/audio_separation_example.py",
      "line": 46,
      "end_line": 47,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/audio_separation_example.py#L46-L47"
    },
    {
      "context": "examples.audio_separation_example.main",
      "receiver": "parser",
      "flags": [
        "--play",
        "-p"
      ],
      "destination": "play",
      "description": "Play result after processing (macOS)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/audio_separation_example.py",
      "line": 48,
      "end_line": 49,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/audio_separation_example.py#L48-L49"
    },
    {
      "context": "examples.benchmark_audio.main",
      "receiver": "parser",
      "flags": [
        "--tts"
      ],
      "destination": "tts",
      "description": "Run TTS benchmarks",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/benchmark_audio.py",
      "line": 302,
      "end_line": 302,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/benchmark_audio.py#L302-L302"
    },
    {
      "context": "examples.benchmark_audio.main",
      "receiver": "parser",
      "flags": [
        "--stt"
      ],
      "destination": "stt",
      "description": "Run STT benchmarks",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/benchmark_audio.py",
      "line": 303,
      "end_line": 303,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/benchmark_audio.py#L303-L303"
    },
    {
      "context": "examples.benchmark_audio.main",
      "receiver": "parser",
      "flags": [
        "--audio"
      ],
      "destination": "audio",
      "description": "Audio file for STT benchmark",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/benchmark_audio.py",
      "line": 304,
      "end_line": 304,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/benchmark_audio.py#L304-L304"
    },
    {
      "context": "examples.benchmark_audio.main",
      "receiver": "parser",
      "flags": [
        "--all"
      ],
      "destination": "all",
      "description": "Run all benchmarks",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/benchmark_audio.py",
      "line": 305,
      "end_line": 305,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/benchmark_audio.py#L305-L305"
    },
    {
      "context": "examples.closed_captions.main",
      "receiver": "parser",
      "flags": [
        "--model",
        "-m"
      ],
      "destination": "model",
      "description": "",
      "default": "whisper-large-v3",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/closed_captions.py",
      "line": 150,
      "end_line": 150,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/closed_captions.py#L150-L150"
    },
    {
      "context": "examples.closed_captions.main",
      "receiver": "parser",
      "flags": [
        "--language",
        "-l"
      ],
      "destination": "language",
      "description": "es, en, etc.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/closed_captions.py",
      "line": 151,
      "end_line": 151,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/closed_captions.py#L151-L151"
    },
    {
      "context": "examples.closed_captions.main",
      "receiver": "parser",
      "flags": [
        "--chunk",
        "-c"
      ],
      "destination": "chunk",
      "description": "Chunk size (default: 3.0s)",
      "default": "3.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/closed_captions.py",
      "line": 152,
      "end_line": 152,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/closed_captions.py#L152-L152"
    },
    {
      "context": "examples.mic_live.main",
      "receiver": "parser",
      "flags": [
        "--model",
        "-m"
      ],
      "destination": "model",
      "description": "Model (whisper-small, whisper-medium, parakeet)",
      "default": "whisper-small",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_live.py",
      "line": 206,
      "end_line": 207,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_live.py#L206-L207"
    },
    {
      "context": "examples.mic_live.main",
      "receiver": "parser",
      "flags": [
        "--language",
        "-l"
      ],
      "destination": "language",
      "description": "Language code (en, es, etc.)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_live.py",
      "line": 208,
      "end_line": 208,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_live.py#L208-L208"
    },
    {
      "context": "examples.mic_live.main",
      "receiver": "parser",
      "flags": [
        "--sensitivity",
        "-s"
      ],
      "destination": "sensitivity",
      "description": "Mic sensitivity 0.01-0.05 (default: 0.015)",
      "default": "0.015",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_live.py",
      "line": 209,
      "end_line": 210,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_live.py#L209-L210"
    },
    {
      "context": "examples.mic_realtime.main",
      "receiver": "parser",
      "flags": [
        "--model",
        "-m"
      ],
      "destination": "model",
      "description": "Model to use (default: whisper-small)",
      "default": "whisper-small",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_realtime.py",
      "line": 186,
      "end_line": 187,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_realtime.py#L186-L187"
    },
    {
      "context": "examples.mic_realtime.main",
      "receiver": "parser",
      "flags": [
        "--chunk",
        "-c"
      ],
      "destination": "chunk",
      "description": "Chunk duration in seconds (default: 3.0)",
      "default": "3.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_realtime.py",
      "line": 188,
      "end_line": 189,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_realtime.py#L188-L189"
    },
    {
      "context": "examples.mic_realtime.main",
      "receiver": "parser",
      "flags": [
        "--language",
        "-l"
      ],
      "destination": "language",
      "description": "Language code (e.g., en, es)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_realtime.py",
      "line": 190,
      "end_line": 190,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_realtime.py#L190-L190"
    },
    {
      "context": "examples.mic_realtime.main",
      "receiver": "parser",
      "flags": [
        "--list-models"
      ],
      "destination": "list_models",
      "description": "List available models",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/mic_realtime.py",
      "line": 191,
      "end_line": 191,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_realtime.py#L191-L191"
    },
    {
      "context": "examples.mic_transcribe.main",
      "receiver": "parser",
      "flags": [
        "--duration",
        "-d"
      ],
      "destination": "duration",
      "description": "Recording duration in seconds",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_transcribe.py",
      "line": 115,
      "end_line": 115,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_transcribe.py#L115-L115"
    },
    {
      "context": "examples.mic_transcribe.main",
      "receiver": "parser",
      "flags": [
        "--model",
        "-m"
      ],
      "destination": "model",
      "description": "Model: whisper-small, whisper-medium, whisper-large-v3, parakeet",
      "default": "whisper-small",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_transcribe.py",
      "line": 116,
      "end_line": 117,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_transcribe.py#L116-L117"
    },
    {
      "context": "examples.mic_transcribe.main",
      "receiver": "parser",
      "flags": [
        "--language",
        "-l"
      ],
      "destination": "language",
      "description": "Language code (e.g., en, es). Auto-detect if not set",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_transcribe.py",
      "line": 118,
      "end_line": 118,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_transcribe.py#L118-L118"
    },
    {
      "context": "examples.mic_transcribe.main",
      "receiver": "parser",
      "flags": [
        "--continuous",
        "-c"
      ],
      "destination": "continuous",
      "description": "Continuous mode: keep recording and transcribing",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/mic_transcribe.py",
      "line": 119,
      "end_line": 120,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_transcribe.py#L119-L120"
    },
    {
      "context": "examples.mic_transcribe.main",
      "receiver": "parser",
      "flags": [
        "--save",
        "-s"
      ],
      "destination": "save",
      "description": "Save recorded audio to this file",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mic_transcribe.py",
      "line": 121,
      "end_line": 121,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_transcribe.py#L121-L121"
    },
    {
      "context": "examples.mic_transcribe.main",
      "receiver": "parser",
      "flags": [
        "--list-models"
      ],
      "destination": "list_models",
      "description": "List available models",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/mic_transcribe.py",
      "line": 122,
      "end_line": 122,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_transcribe.py#L122-L122"
    },
    {
      "context": "examples.mic_transcribe.main",
      "receiver": "parser",
      "flags": [
        "--list-devices"
      ],
      "destination": "list_devices",
      "description": "List audio input devices",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/mic_transcribe.py",
      "line": 123,
      "end_line": 123,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mic_transcribe.py#L123-L123"
    },
    {
      "context": "examples.mllm_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--server-url"
      ],
      "destination": "server_url",
      "description": "URL of the vllm-mlx server",
      "default": "http://localhost:8000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mllm_benchmark.py",
      "line": 390,
      "end_line": 395,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mllm_benchmark.py#L390-L395"
    },
    {
      "context": "examples.mllm_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--output"
      ],
      "destination": "output",
      "description": "Save results to JSON file",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mllm_benchmark.py",
      "line": 396,
      "end_line": 401,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mllm_benchmark.py#L396-L401"
    },
    {
      "context": "examples.mllm_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--warmup"
      ],
      "destination": "warmup",
      "description": "Number of warmup runs (default: 1)",
      "default": "1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/mllm_benchmark.py",
      "line": 402,
      "end_line": 407,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mllm_benchmark.py#L402-L407"
    },
    {
      "context": "examples.mllm_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--quick"
      ],
      "destination": "quick",
      "description": "Run quick benchmark with fewer resolutions",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/mllm_benchmark.py",
      "line": 408,
      "end_line": 412,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/mllm_benchmark.py#L408-L412"
    },
    {
      "context": "examples.test_batching.main",
      "receiver": "parser",
      "flags": [
        "--model"
      ],
      "destination": "model",
      "description": "Model to use",
      "default": "mlx-community/Llama-3.2-1B-Instruct-4bit",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_batching.py",
      "line": 118,
      "end_line": 123,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_batching.py#L118-L123"
    },
    {
      "context": "examples.test_batching.main",
      "receiver": "parser",
      "flags": [
        "--num-requests"
      ],
      "destination": "num_requests",
      "description": "Number of concurrent requests",
      "default": "5",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_batching.py",
      "line": 124,
      "end_line": 129,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_batching.py#L124-L129"
    },
    {
      "context": "examples.test_batching.main",
      "receiver": "parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Max tokens per request",
      "default": "30",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_batching.py",
      "line": 130,
      "end_line": 135,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_batching.py#L130-L135"
    },
    {
      "context": "examples.test_batching.main",
      "receiver": "parser",
      "flags": [
        "--temperature"
      ],
      "destination": "temperature",
      "description": "Sampling temperature",
      "default": "0.7",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_batching.py",
      "line": 136,
      "end_line": 141,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_batching.py#L136-L141"
    },
    {
      "context": "examples.test_openai_compatibility.main",
      "receiver": "parser",
      "flags": [
        "--server-url"
      ],
      "destination": "server_url",
      "description": "URL of the vllm-mlx server (default: http://localhost:8000)",
      "default": "http://localhost:8000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_openai_compatibility.py",
      "line": 703,
      "end_line": 708,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_openai_compatibility.py#L703-L708"
    },
    {
      "context": "examples.test_openai_compatibility.main",
      "receiver": "parser",
      "flags": [
        "--no-image"
      ],
      "destination": "no_image",
      "description": "Skip image tests",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/test_openai_compatibility.py",
      "line": 709,
      "end_line": 713,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_openai_compatibility.py#L709-L713"
    },
    {
      "context": "examples.test_openai_compatibility.main",
      "receiver": "parser",
      "flags": [
        "--no-video"
      ],
      "destination": "no_video",
      "description": "Skip video tests",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/test_openai_compatibility.py",
      "line": 714,
      "end_line": 718,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_openai_compatibility.py#L714-L718"
    },
    {
      "context": "examples.test_video.main",
      "receiver": "parser",
      "flags": [
        "--video"
      ],
      "destination": "video",
      "description": "Path to video file (will create test video if not provided)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_video.py",
      "line": 271,
      "end_line": 275,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_video.py#L271-L275"
    },
    {
      "context": "examples.test_video.main",
      "receiver": "parser",
      "flags": [
        "--video-url"
      ],
      "destination": "video_url",
      "description": "URL to a video file to test URL support",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_video.py",
      "line": 276,
      "end_line": 280,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_video.py#L276-L280"
    },
    {
      "context": "examples.test_video.main",
      "receiver": "parser",
      "flags": [
        "--model"
      ],
      "destination": "model",
      "description": "VLM model to use",
      "default": "mlx-community/Qwen3-VL-4B-Instruct-3bit",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/test_video.py",
      "line": 281,
      "end_line": 286,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_video.py#L281-L286"
    },
    {
      "context": "examples.test_video.main",
      "receiver": "parser",
      "flags": [
        "--extract-only"
      ],
      "destination": "extract_only",
      "description": "Only test frame extraction (no model loading)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/test_video.py",
      "line": 287,
      "end_line": 291,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_video.py#L287-L291"
    },
    {
      "context": "examples.test_video.main",
      "receiver": "parser",
      "flags": [
        "--create-test-video"
      ],
      "destination": "create_test_video",
      "description": "Create synthetic test video instead of downloading",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/test_video.py",
      "line": 292,
      "end_line": 296,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_video.py#L292-L296"
    },
    {
      "context": "examples.test_video.main",
      "receiver": "parser",
      "flags": [
        "--url-only"
      ],
      "destination": "url_only",
      "description": "Only test video URL support (requires --video-url)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/test_video.py",
      "line": 297,
      "end_line": 301,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/test_video.py#L297-L301"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "text"
      ],
      "destination": "text",
      "description": "Text to synthesize",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "examples/tts_example.py",
      "line": 48,
      "end_line": 48,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L48-L48"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--voice",
        "-v"
      ],
      "destination": "voice",
      "description": "Voice ID (default: af_heart)",
      "default": "af_heart",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_example.py",
      "line": 49,
      "end_line": 49,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L49-L49"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--lang",
        "-l"
      ],
      "destination": "lang",
      "description": "Language code: a=English, e/es=Spanish, f=French, etc.",
      "default": "a",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_example.py",
      "line": 50,
      "end_line": 50,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L50-L50"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--speed",
        "-s"
      ],
      "destination": "speed",
      "description": "Speech speed 0.5-2.0 (default: 1.0)",
      "default": "1.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_example.py",
      "line": 51,
      "end_line": 51,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L51-L51"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--output",
        "-o"
      ],
      "destination": "output",
      "description": "Output file (default: output.wav)",
      "default": "output.wav",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_example.py",
      "line": 52,
      "end_line": 52,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L52-L52"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--model",
        "-m"
      ],
      "destination": "model",
      "description": "TTS model",
      "default": "mlx-community/Kokoro-82M-bf16",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_example.py",
      "line": 53,
      "end_line": 53,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L53-L53"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--list-voices"
      ],
      "destination": "list_voices",
      "description": "List available voices",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/tts_example.py",
      "line": 54,
      "end_line": 54,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L54-L54"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--list-languages"
      ],
      "destination": "list_languages",
      "description": "List available languages",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/tts_example.py",
      "line": 55,
      "end_line": 55,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L55-L55"
    },
    {
      "context": "examples.tts_example.main",
      "receiver": "parser",
      "flags": [
        "--play",
        "-p"
      ],
      "destination": "play",
      "description": "Play audio after generation (macOS)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/tts_example.py",
      "line": 56,
      "end_line": 56,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_example.py#L56-L56"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "text"
      ],
      "destination": "text",
      "description": "Text to synthesize",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "examples/tts_multilingual.py",
      "line": 261,
      "end_line": 261,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L261-L261"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--model",
        "-m"
      ],
      "destination": "model",
      "description": "Model: kokoro, chatterbox, vibevoice, voxcpm, or 'auto'",
      "default": "auto",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_multilingual.py",
      "line": 262,
      "end_line": 263,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L262-L263"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--lang",
        "-l"
      ],
      "destination": "lang",
      "description": "Language code: en, es, fr, ja, zh, etc.",
      "default": "en",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_multilingual.py",
      "line": 264,
      "end_line": 265,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L264-L265"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--voice",
        "-v"
      ],
      "destination": "voice",
      "description": "Voice ID (model-specific)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_multilingual.py",
      "line": 266,
      "end_line": 267,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L266-L267"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--speed",
        "-s"
      ],
      "destination": "speed",
      "description": "Speech speed 0.5-2.0",
      "default": "1.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_multilingual.py",
      "line": 268,
      "end_line": 269,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L268-L269"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--output",
        "-o"
      ],
      "destination": "output",
      "description": "Output file",
      "default": "output.wav",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/tts_multilingual.py",
      "line": 270,
      "end_line": 271,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L270-L271"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--play",
        "-p"
      ],
      "destination": "play",
      "description": "Play audio after generation (macOS)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/tts_multilingual.py",
      "line": 272,
      "end_line": 273,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L272-L273"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--list-models"
      ],
      "destination": "list_models",
      "description": "List available models",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/tts_multilingual.py",
      "line": 274,
      "end_line": 275,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L274-L275"
    },
    {
      "context": "examples.tts_multilingual.main",
      "receiver": "parser",
      "flags": [
        "--list-languages"
      ],
      "destination": "list_languages",
      "description": "List supported languages",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/tts_multilingual.py",
      "line": 276,
      "end_line": 277,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/tts_multilingual.py#L276-L277"
    },
    {
      "context": "examples.video_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--model"
      ],
      "destination": "model",
      "description": "VLM model to use",
      "default": "mlx-community/Qwen3-VL-4B-Instruct-3bit",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/video_benchmark.py",
      "line": 500,
      "end_line": 505,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/video_benchmark.py#L500-L505"
    },
    {
      "context": "examples.video_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--video"
      ],
      "destination": "video",
      "description": "Path to local video file",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/video_benchmark.py",
      "line": 506,
      "end_line": 511,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/video_benchmark.py#L506-L511"
    },
    {
      "context": "examples.video_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--video-url"
      ],
      "destination": "video_url",
      "description": "URL to download video from",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/video_benchmark.py",
      "line": 512,
      "end_line": 517,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/video_benchmark.py#L512-L517"
    },
    {
      "context": "examples.video_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--duration"
      ],
      "destination": "duration",
      "description": "Duration of synthetic test video (seconds)",
      "default": "10.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/video_benchmark.py",
      "line": 518,
      "end_line": 523,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/video_benchmark.py#L518-L523"
    },
    {
      "context": "examples.video_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--warmup"
      ],
      "destination": "warmup",
      "description": "Number of warmup runs",
      "default": "1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/video_benchmark.py",
      "line": 524,
      "end_line": 529,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/video_benchmark.py#L524-L529"
    },
    {
      "context": "examples.video_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--quick"
      ],
      "destination": "quick",
      "description": "Run quick benchmark with fewer configurations",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "examples/video_benchmark.py",
      "line": 530,
      "end_line": 534,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/video_benchmark.py#L530-L534"
    },
    {
      "context": "examples.video_benchmark.main",
      "receiver": "parser",
      "flags": [
        "--output"
      ],
      "destination": "output",
      "description": "Save results to JSON file",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "examples/video_benchmark.py",
      "line": 535,
      "end_line": 540,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/examples/video_benchmark.py#L535-L540"
    },
    {
      "context": "scripts.add_mtp_weights.main",
      "receiver": "parser",
      "flags": [
        "--mlx-model-path"
      ],
      "destination": "mlx_model_path",
      "description": "f'Path to MLX model directory (default: {DEFAULT_MLX_MODEL})'",
      "default": "DEFAULT_MLX_MODEL",
      "required": false,
      "choices": "",
      "action": "",
      "path": "scripts/add_mtp_weights.py",
      "line": 243,
      "end_line": 248,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights.py#L243-L248"
    },
    {
      "context": "scripts.add_mtp_weights.main",
      "receiver": "parser",
      "flags": [
        "--source-model"
      ],
      "destination": "source_model",
      "description": "f'HuggingFace model to download MTP shard from (default: {DEFAULT_SOURCE_MODEL})'",
      "default": "DEFAULT_SOURCE_MODEL",
      "required": false,
      "choices": "",
      "action": "",
      "path": "scripts/add_mtp_weights.py",
      "line": 249,
      "end_line": 254,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights.py#L249-L254"
    },
    {
      "context": "scripts.add_mtp_weights.main",
      "receiver": "parser",
      "flags": [
        "--download-dir"
      ],
      "destination": "download_dir",
      "description": "Directory to download MTP shard to (default: temp dir)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "scripts/add_mtp_weights.py",
      "line": 255,
      "end_line": 260,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights.py#L255-L260"
    },
    {
      "context": "scripts.add_mtp_weights.main",
      "receiver": "parser",
      "flags": [
        "--bits"
      ],
      "destination": "bits",
      "description": "Quantization bits (default: 6, matching 6-bit model)",
      "default": "6",
      "required": false,
      "choices": "",
      "action": "",
      "path": "scripts/add_mtp_weights.py",
      "line": 261,
      "end_line": 266,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights.py#L261-L266"
    },
    {
      "context": "scripts.add_mtp_weights.main",
      "receiver": "parser",
      "flags": [
        "--skip-download"
      ],
      "destination": "skip_download",
      "description": "Skip download (use existing shard)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "scripts/add_mtp_weights.py",
      "line": 267,
      "end_line": 271,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights.py#L267-L271"
    },
    {
      "context": "scripts.add_mtp_weights_qwen35.main",
      "receiver": "parser",
      "flags": [
        "--mlx-model-path"
      ],
      "destination": "mlx_model_path",
      "description": "Path to MLX model directory (HF cache or direct path)",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "scripts/add_mtp_weights_qwen35.py",
      "line": 327,
      "end_line": 332,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights_qwen35.py#L327-L332"
    },
    {
      "context": "scripts.add_mtp_weights_qwen35.main",
      "receiver": "parser",
      "flags": [
        "--source-model"
      ],
      "destination": "source_model",
      "description": "HuggingFace BF16 model to download MTP shards from (e.g., Qwen/Qwen3.5-122B-A10B)",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "scripts/add_mtp_weights_qwen35.py",
      "line": 333,
      "end_line": 338,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights_qwen35.py#L333-L338"
    },
    {
      "context": "scripts.add_mtp_weights_qwen35.main",
      "receiver": "parser",
      "flags": [
        "--download-dir"
      ],
      "destination": "download_dir",
      "description": "Directory to download shards to (default: temp dir)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "scripts/add_mtp_weights_qwen35.py",
      "line": 339,
      "end_line": 344,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights_qwen35.py#L339-L344"
    },
    {
      "context": "scripts.add_mtp_weights_qwen35.main",
      "receiver": "parser",
      "flags": [
        "--skip-download"
      ],
      "destination": "skip_download",
      "description": "Skip download (use existing shards in download-dir)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "scripts/add_mtp_weights_qwen35.py",
      "line": 345,
      "end_line": 349,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights_qwen35.py#L345-L349"
    },
    {
      "context": "scripts.add_mtp_weights_qwen35.main",
      "receiver": "parser",
      "flags": [
        "--keep-shards"
      ],
      "destination": "keep_shards",
      "description": "Don't delete downloaded BF16 shards after extraction",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "scripts/add_mtp_weights_qwen35.py",
      "line": 350,
      "end_line": 354,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights_qwen35.py#L350-L354"
    },
    {
      "context": "scripts.add_mtp_weights_qwen35.main",
      "receiver": "parser",
      "flags": [
        "--no-quantize"
      ],
      "destination": "no_quantize",
      "description": "Save MTP weights in BF16 (no quantization). Required for correct MTP predictions.",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "scripts/add_mtp_weights_qwen35.py",
      "line": 355,
      "end_line": 359,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/add_mtp_weights_qwen35.py#L355-L359"
    },
    {
      "context": "scripts.gen_api_reference.main",
      "receiver": "parser",
      "flags": [
        "--check"
      ],
      "destination": "check",
      "description": "fail instead of writing when generated references are stale",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "scripts/gen_api_reference.py",
      "line": 93,
      "end_line": 97,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/scripts/gen_api_reference.py#L93-L97"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--model"
      ],
      "destination": "model",
      "description": "Model name (HuggingFace model name or local path)",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1468,
      "end_line": 1473,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1468-L1473"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--prompts"
      ],
      "destination": "prompts",
      "description": "Number of prompts to benchmark for LLM (default: 5)",
      "default": "5",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1474,
      "end_line": 1479,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1474-L1479"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Maximum tokens to generate per prompt (default: 256)",
      "default": "256",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1480,
      "end_line": 1485,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1480-L1485"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--temperature"
      ],
      "destination": "temperature",
      "description": "Sampling temperature (default: 0.7)",
      "default": "0.7",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1486,
      "end_line": 1491,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1486-L1491"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--warmup"
      ],
      "destination": "warmup",
      "description": "Number of warmup runs (default: 1)",
      "default": "1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1492,
      "end_line": 1497,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1492-L1497"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--output"
      ],
      "destination": "output",
      "description": "Output file for JSON results",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1498,
      "end_line": 1503,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1498-L1503"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--mllm"
      ],
      "destination": "mllm",
      "description": "Force MLLM benchmark mode (auto-detected by default)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/benchmark.py",
      "line": 1504,
      "end_line": 1508,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1504-L1508"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--quick"
      ],
      "destination": "quick",
      "description": "Quick benchmark with fewer configurations",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/benchmark.py",
      "line": 1509,
      "end_line": 1513,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1509-L1513"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--video"
      ],
      "destination": "video",
      "description": "Run video benchmark instead of image benchmark (for MLLM models)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/benchmark.py",
      "line": 1515,
      "end_line": 1519,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1515-L1519"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--video-url"
      ],
      "destination": "video_url",
      "description": "URL of video to use for benchmark (default: Big Buck Bunny 10s)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1520,
      "end_line": 1525,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1520-L1525"
    },
    {
      "context": "vllm_mlx.benchmark.main",
      "receiver": "parser",
      "flags": [
        "--video-path"
      ],
      "destination": "video_path",
      "description": "Local path to video file for benchmark",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/benchmark.py",
      "line": 1526,
      "end_line": 1531,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/benchmark.py#L1526-L1531"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "model"
      ],
      "destination": "model",
      "description": "Model to serve",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1008,
      "end_line": 1008,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1008-L1008"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--models-config"
      ],
      "destination": "models_config",
      "description": "YAML file describing a registry of models for lazy multi-model serving",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1009,
      "end_line": 1014,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1009-L1014"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--served-model-name"
      ],
      "destination": "served_model_name",
      "description": "The model name used in the API. If not specified, the model argument is used.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1015,
      "end_line": 1020,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1015-L1020"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--host"
      ],
      "destination": "host",
      "description": "Host to bind (default: localhost; use 0.0.0.0 to expose externally)",
      "default": "127.0.0.1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1021,
      "end_line": 1026,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1021-L1026"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--port"
      ],
      "destination": "port",
      "description": "Port to bind",
      "default": "8000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1027,
      "end_line": 1027,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1027-L1027"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--max-num-seqs"
      ],
      "destination": "max_num_seqs",
      "description": "Max concurrent sequences",
      "default": "256",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1028,
      "end_line": 1030,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1028-L1030"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--prefill-batch-size"
      ],
      "destination": "prefill_batch_size",
      "description": "Prefill batch size",
      "default": "8",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1031,
      "end_line": 1033,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1031-L1033"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--completion-batch-size"
      ],
      "destination": "completion_batch_size",
      "description": "Completion batch size",
      "default": "32",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1034,
      "end_line": 1036,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1034-L1036"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mllm-prefill-step-size"
      ],
      "destination": "mllm_prefill_step_size",
      "description": "Override MLLM prefill-step guard (0=use MLLM default: 1024)",
      "default": "0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1037,
      "end_line": 1042,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1037-L1042"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--enable-prefix-cache"
      ],
      "destination": "enable_prefix_cache",
      "description": "Enable prefix caching for repeated prompts (default: enabled)",
      "default": "True",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1043,
      "end_line": 1048,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1043-L1048"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--disable-prefix-cache"
      ],
      "destination": "disable_prefix_cache",
      "description": "Disable prefix caching",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1049,
      "end_line": 1053,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1049-L1053"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--prefix-cache-size"
      ],
      "destination": "prefix_cache_size",
      "description": "Max entries in prefix cache (default: 100, legacy mode only)",
      "default": "100",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1054,
      "end_line": 1059,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1054-L1059"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--cache-memory-mb"
      ],
      "destination": "cache_memory_mb",
      "description": "Cache memory limit in MB (default: auto-detect ~20%% of RAM)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1061,
      "end_line": 1066,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1061-L1066"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--cache-memory-percent"
      ],
      "destination": "cache_memory_percent",
      "description": "Fraction of available RAM for cache if auto-detecting (default: 0.20)",
      "default": "0.2",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1067,
      "end_line": 1072,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1067-L1072"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--no-memory-aware-cache"
      ],
      "destination": "no_memory_aware_cache",
      "description": "Disable memory-aware cache, use legacy entry-count based cache",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1073,
      "end_line": 1077,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1073-L1077"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--kv-cache-quantization"
      ],
      "destination": "kv_cache_quantization",
      "description": "Quantize stored KV caches to reduce memory (8-bit by default)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1079,
      "end_line": 1083,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1079-L1083"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--kv-cache-quantization-bits"
      ],
      "destination": "kv_cache_quantization_bits",
      "description": "Bit width for KV cache quantization (default: 8)",
      "default": "8",
      "required": false,
      "choices": "[4, 8]",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1084,
      "end_line": 1090,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1084-L1090"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--kv-cache-quantization-group-size"
      ],
      "destination": "kv_cache_quantization_group_size",
      "description": "Group size for KV cache quantization (default: 64)",
      "default": "64",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1091,
      "end_line": 1096,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1091-L1096"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--kv-cache-min-quantize-tokens"
      ],
      "destination": "kv_cache_min_quantize_tokens",
      "description": "Minimum tokens for quantization to apply (default: 256)",
      "default": "256",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1097,
      "end_line": 1102,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1097-L1102"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--ssd-cache-dir"
      ],
      "destination": "ssd_cache_dir",
      "description": "Directory for SSD KV cache tier (default: disabled)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1104,
      "end_line": 1109,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1104-L1109"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--ssd-cache-max-gb"
      ],
      "destination": "ssd_cache_max_gb",
      "description": "Maximum SSD cache size in GB (default: 10.0)",
      "default": "10.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1110,
      "end_line": 1115,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1110-L1115"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--warm-prompts"
      ],
      "destination": "warm_prompts",
      "description": "Path to a JSON file with prompts to pre-run at startup. Populates the prefix cache so the first real request hits warm (cold TTFT drops 1.3-2.3x on agent workloads). File format is a list of message arrays, same shape as /v1/chat/completions messages. Prompts are warmed concurrently — keep the file small (1-3 entries for typical agent deployments) to avoid memory pressure at boot.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1117,
      "end_line": 1129,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1117-L1129"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--stream-interval"
      ],
      "destination": "stream_interval",
      "description": "Tokens to batch before streaming (1=smooth, higher=throughput)",
      "default": "1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1130,
      "end_line": 1135,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1130-L1135"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--max-kv-size"
      ],
      "destination": "max_kv_size",
      "description": "Maximum KV cache size per sequence. When set, uses RotatingKVCache which bounds memory at the cost of losing early context. Reasoning models (e.g. Qwen3, DeepSeek-R1) should use >= 32768 to avoid evicting the think block mid-generation.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1136,
      "end_line": 1144,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1136-L1144"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Default max tokens for generation (default: 32768)",
      "default": "32768",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1145,
      "end_line": 1150,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1145-L1150"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--max-request-tokens"
      ],
      "destination": "max_request_tokens",
      "description": "Maximum max_tokens accepted from API clients (default: 32768)",
      "default": "32768",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1151,
      "end_line": 1156,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1151-L1156"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--continuous-batching"
      ],
      "destination": "continuous_batching",
      "description": "Enable continuous batching for multiple concurrent users (slower for single user)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1157,
      "end_line": 1161,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1157-L1161"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--gpu-memory-utilization"
      ],
      "destination": "gpu_memory_utilization",
      "description": "Fraction of device memory for Metal allocation limit and emergency cache clear threshold (0.0-1.0, default: 0.90). Increase to 0.95 for large models (200GB+) that need more memory headroom.",
      "default": "0.9",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1162,
      "end_line": 1169,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1162-L1169"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--use-paged-cache"
      ],
      "destination": "use_paged_cache",
      "description": "Use paged KV cache for memory efficiency (experimental)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1171,
      "end_line": 1175,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1171-L1175"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--paged-cache-block-size"
      ],
      "destination": "paged_cache_block_size",
      "description": "Tokens per cache block (default: 64)",
      "default": "64",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1176,
      "end_line": 1181,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1176-L1181"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--max-cache-blocks"
      ],
      "destination": "max_cache_blocks",
      "description": "Maximum number of cache blocks (default: 1000)",
      "default": "1000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1182,
      "end_line": 1187,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1182-L1187"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--chunked-prefill-tokens"
      ],
      "destination": "chunked_prefill_tokens",
      "description": "Max prefill tokens per scheduler step (0=disabled). Prevents starvation of active requests during long prefills.",
      "default": "0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1189,
      "end_line": 1195,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1189-L1195"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--enable-mtp"
      ],
      "destination": "enable_mtp",
      "description": "Enable MTP (Multi-Token Prediction) for models with built-in MTP heads. Uses cache snapshot/restore for speculative generation.",
      "default": "False",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1197,
      "end_line": 1203,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1197-L1203"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mtp-num-draft-tokens"
      ],
      "destination": "mtp_num_draft_tokens",
      "description": "Number of draft tokens per MTP step (default: 1)",
      "default": "1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1204,
      "end_line": 1209,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1204-L1209"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mtp-optimistic"
      ],
      "destination": "mtp_optimistic",
      "description": "Skip MTP acceptance check for maximum speed. ~5-10%% wrong tokens. Best for chat, not for code.",
      "default": "False",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1210,
      "end_line": 1216,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1210-L1216"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--prefill-step-size"
      ],
      "destination": "prefill_step_size",
      "description": "Chunk size for prompt prefill processing. Larger values use more memory but can improve prefill throughput. (default: 2048)",
      "default": "2048",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1218,
      "end_line": 1224,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1218-L1224"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--specprefill"
      ],
      "destination": "specprefill",
      "description": "Enable SpecPrefill: use a small draft model to score token importance, then sparse-prefill only the important tokens on the target model. Reduces TTFT on long prompts. Requires --specprefill-draft-model.",
      "default": "False",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1226,
      "end_line": 1233,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1226-L1233"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--specprefill-threshold"
      ],
      "destination": "specprefill_threshold",
      "description": "Minimum suffix tokens to trigger SpecPrefill (default: 8192). Shorter prompts use full prefill (scoring overhead > savings).",
      "default": "8192",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1234,
      "end_line": 1240,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1234-L1240"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--specprefill-keep-pct"
      ],
      "destination": "specprefill_keep_pct",
      "description": "Fraction of tokens to keep during sparse prefill (default: 0.3). Lower = faster prefill but more quality loss.",
      "default": "0.3",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1241,
      "end_line": 1247,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1241-L1247"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--specprefill-backbone-pct"
      ],
      "destination": "specprefill_backbone_pct",
      "description": "Fraction of chunks reserved for evenly spaced sparse-prefill coverage (default: 0.0).",
      "default": "0.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1248,
      "end_line": 1254,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1248-L1254"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--specprefill-draft-model"
      ],
      "destination": "specprefill_draft_model",
      "description": "Path to small draft model for SpecPrefill importance scoring. Must share the same tokenizer as the target model.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1255,
      "end_line": 1261,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1255-L1261"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mllm-draft-model"
      ],
      "destination": "mllm_draft_model",
      "description": "Path to an mlx-vlm MLLM draft/assistant model. For Gemma 4 assistant drafters, use with --mllm-draft-kind mtp.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1263,
      "end_line": 1269,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1263-L1269"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mllm-draft-kind"
      ],
      "destination": "mllm_draft_kind",
      "description": "mlx-vlm draft kind for --mllm-draft-model.",
      "default": "None",
      "required": false,
      "choices": "['mtp']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1270,
      "end_line": 1276,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1270-L1276"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mllm-draft-block-size"
      ],
      "destination": "mllm_draft_block_size",
      "description": "Draft block size passed to mlx-vlm for --mllm-draft-model.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1277,
      "end_line": 1282,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1277-L1282"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mcp-config"
      ],
      "destination": "mcp_config",
      "description": "Path to MCP configuration file (JSON/YAML) for tool integration",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1284,
      "end_line": 1289,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1284-L1289"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--api-key"
      ],
      "destination": "api_key",
      "description": "API key for authentication (if not set, no auth required)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1291,
      "end_line": 1296,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1291-L1296"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--rate-limit"
      ],
      "destination": "rate_limit",
      "description": "Rate limit requests per minute per client (0 = disabled)",
      "default": "0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1297,
      "end_line": 1302,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1297-L1302"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--timeout"
      ],
      "destination": "timeout",
      "description": "Default request timeout in seconds (default: 300)",
      "default": "300.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1303,
      "end_line": 1308,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1303-L1308"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--enable-metrics"
      ],
      "destination": "enable_metrics",
      "description": "Expose Prometheus metrics on /metrics (disabled by default)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1309,
      "end_line": 1313,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1309-L1313"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--auto-unload-idle-seconds"
      ],
      "destination": "auto_unload_idle_seconds",
      "description": "Unload the main model after this many idle seconds (0 = disabled)",
      "default": "0.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1314,
      "end_line": 1319,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1314-L1319"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--lazy-load-model"
      ],
      "destination": "lazy_load_model",
      "description": "Register the main model at startup but defer loading until first request",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1320,
      "end_line": 1324,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1320-L1324"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--max-audio-upload-mb"
      ],
      "destination": "max_audio_upload_mb",
      "description": "Maximum size of uploaded audio files in MiB (default: 25)",
      "default": "25",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1325,
      "end_line": 1330,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1325-L1330"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--max-tts-input-chars"
      ],
      "destination": "max_tts_input_chars",
      "description": "Maximum number of characters accepted by /v1/audio/speech (default: 4096)",
      "default": "4096",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1331,
      "end_line": 1336,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1331-L1336"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--enable-auto-tool-choice"
      ],
      "destination": "enable_auto_tool_choice",
      "description": "Enable auto tool choice for supported models. Use --tool-call-parser to specify which parser to use.",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1338,
      "end_line": 1342,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1338-L1342"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--tool-call-parser"
      ],
      "destination": "tool_call_parser",
      "description": "Select the tool call parser for the model. Options: auto (auto-detect), mistral, qwen, qwen3_coder, llama, hermes, harmony, gpt-oss, deepseek, gemma4, kimi, granite, nemotron, xlam, functionary, glm47, minimax. Required for --enable-auto-tool-choice.",
      "default": "None",
      "required": false,
      "choices": "['auto', 'mistral', 'qwen', 'qwen3_coder', 'llama', 'hermes', 'harmony', 'gpt-oss', 'deepseek', 'kimi', 'granite', 'nemotron', 'xlam', 'functionary', 'gemma4', 'glm47', 'minimax']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1343,
      "end_line": 1373,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1343-L1373"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--reasoning-parser"
      ],
      "destination": "reasoning_parser",
      "description": "f\"Enable reasoning content extraction with specified parser. Extracts <think>...</think> tags into reasoning_content field. Options: {', '.join(reasoning_choices)}.\"",
      "default": "None",
      "required": false,
      "choices": "reasoning_choices",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1378,
      "end_line": 1388,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1378-L1388"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--mllm"
      ],
      "destination": "mllm",
      "description": "Force load model as multimodal (vision) even if name doesn't match auto-detection patterns",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1390,
      "end_line": 1394,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1390-L1394"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--trust-remote-code"
      ],
      "destination": "trust_remote_code",
      "description": "Allow HuggingFace remote code execution during model/tokenizer loading",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1395,
      "end_line": 1399,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1395-L1399"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-temperature"
      ],
      "destination": "default_temperature",
      "description": "Override default temperature for all requests (default: use model default)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1401,
      "end_line": 1406,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1401-L1406"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-top-p"
      ],
      "destination": "default_top_p",
      "description": "Override default top_p for all requests (default: use model default)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1407,
      "end_line": 1412,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1407-L1412"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-thinking-token-budget"
      ],
      "destination": "default_thinking_token_budget",
      "description": "Default thinking token budget for reasoning models. Caps reasoning tokens by forcing the end-think sequence when the budget is exhausted. Per-request thinking_token_budget overrides this. (default: None = unlimited)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1413,
      "end_line": 1422,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1413-L1422"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-chat-template-kwargs"
      ],
      "destination": "default_chat_template_kwargs",
      "description": "Default chat template kwargs to apply to all requests when request chat_template_kwargs is omitted or empty; empty request kwargs use existing server defaults (JSON object, e.g. {\"enable_thinking\": true})",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1423,
      "end_line": 1432,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1423-L1432"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-top-k"
      ],
      "destination": "default_top_k",
      "description": "Override default top_k for all requests (default: use model default)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1433,
      "end_line": 1438,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1433-L1438"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-min-p"
      ],
      "destination": "default_min_p",
      "description": "Override default min_p for all requests (default: use model default)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1439,
      "end_line": 1444,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1439-L1444"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-presence-penalty"
      ],
      "destination": "default_presence_penalty",
      "description": "Override default presence_penalty for all requests (default: use model default)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1445,
      "end_line": 1453,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1445-L1453"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--default-repetition-penalty"
      ],
      "destination": "default_repetition_penalty",
      "description": "Override default repetition_penalty for all requests (default: use model default)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1454,
      "end_line": 1462,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1454-L1462"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--embedding-model"
      ],
      "destination": "embedding_model",
      "description": "Pre-load an embedding model at startup (e.g. mlx-community/embeddinggemma-300m-6bit)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1464,
      "end_line": 1469,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1464-L1469"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--rerank-model"
      ],
      "destination": "rerank_model",
      "description": "Pre-load a reranker model at startup (e.g. mlx-community/jina-reranker-v2-base-multilingual)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1471,
      "end_line": 1476,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1471-L1476"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--download-timeout"
      ],
      "destination": "download_timeout",
      "description": "Per-file download timeout in seconds (default: 300)",
      "default": "300",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1478,
      "end_line": 1483,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1478-L1483"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--download-retries"
      ],
      "destination": "download_retries",
      "description": "Number of download retry attempts (default: 3)",
      "default": "3",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1484,
      "end_line": 1489,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1484-L1489"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "serve_parser",
      "flags": [
        "--offline"
      ],
      "destination": "offline",
      "description": "Offline mode — only use locally cached models",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1490,
      "end_line": 1494,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1490-L1494"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "model"
      ],
      "destination": "model",
      "description": "Model to benchmark",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1497,
      "end_line": 1497,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1497-L1497"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--num-prompts"
      ],
      "destination": "num_prompts",
      "description": "Number of prompts",
      "default": "10",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1498,
      "end_line": 1500,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1498-L1500"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Max tokens per prompt",
      "default": "100",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1501,
      "end_line": 1503,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1501-L1503"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--max-num-seqs"
      ],
      "destination": "max_num_seqs",
      "description": "Max concurrent sequences",
      "default": "32",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1504,
      "end_line": 1506,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1504-L1506"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--prefill-batch-size"
      ],
      "destination": "prefill_batch_size",
      "description": "Prefill batch size",
      "default": "8",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1507,
      "end_line": 1509,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1507-L1509"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--completion-batch-size"
      ],
      "destination": "completion_batch_size",
      "description": "Completion batch size",
      "default": "16",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1510,
      "end_line": 1512,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1510-L1512"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--enable-prefix-cache"
      ],
      "destination": "enable_prefix_cache",
      "description": "Enable prefix caching (default: enabled)",
      "default": "True",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1513,
      "end_line": 1518,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1513-L1518"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--disable-prefix-cache"
      ],
      "destination": "disable_prefix_cache",
      "description": "Disable prefix caching",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1519,
      "end_line": 1523,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1519-L1523"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--prefix-cache-size"
      ],
      "destination": "prefix_cache_size",
      "description": "Max entries in prefix cache (default: 100, legacy mode only)",
      "default": "100",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1524,
      "end_line": 1529,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1524-L1529"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--cache-memory-mb"
      ],
      "destination": "cache_memory_mb",
      "description": "Cache memory limit in MB (default: auto-detect ~20%% of RAM)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1531,
      "end_line": 1536,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1531-L1536"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--cache-memory-percent"
      ],
      "destination": "cache_memory_percent",
      "description": "Fraction of available RAM for cache if auto-detecting (default: 0.20)",
      "default": "0.2",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1537,
      "end_line": 1542,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1537-L1542"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--no-memory-aware-cache"
      ],
      "destination": "no_memory_aware_cache",
      "description": "Disable memory-aware cache, use legacy entry-count based cache",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1543,
      "end_line": 1547,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1543-L1547"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--kv-cache-quantization"
      ],
      "destination": "kv_cache_quantization",
      "description": "Quantize stored KV caches to reduce memory (8-bit by default)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1549,
      "end_line": 1553,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1549-L1553"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--kv-cache-quantization-bits"
      ],
      "destination": "kv_cache_quantization_bits",
      "description": "Bit width for KV cache quantization (default: 8)",
      "default": "8",
      "required": false,
      "choices": "[4, 8]",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1554,
      "end_line": 1560,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1554-L1560"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--kv-cache-quantization-group-size"
      ],
      "destination": "kv_cache_quantization_group_size",
      "description": "Group size for KV cache quantization (default: 64)",
      "default": "64",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1561,
      "end_line": 1566,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1561-L1566"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--kv-cache-min-quantize-tokens"
      ],
      "destination": "kv_cache_min_quantize_tokens",
      "description": "Minimum tokens for quantization to apply (default: 256)",
      "default": "256",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1567,
      "end_line": 1572,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1567-L1572"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--use-paged-cache"
      ],
      "destination": "use_paged_cache",
      "description": "Use paged KV cache for memory efficiency (experimental)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1574,
      "end_line": 1578,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1574-L1578"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--paged-cache-block-size"
      ],
      "destination": "paged_cache_block_size",
      "description": "Tokens per cache block (default: 64)",
      "default": "64",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1579,
      "end_line": 1584,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1579-L1584"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_parser",
      "flags": [
        "--max-cache-blocks"
      ],
      "destination": "max_cache_blocks",
      "description": "Maximum number of cache blocks (default: 1000)",
      "default": "1000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1585,
      "end_line": 1590,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1585-L1590"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "detok_parser",
      "flags": [
        "model"
      ],
      "destination": "model",
      "description": "Model to use for tokenizer (default: mlx-community/Qwen3-0.6B-8bit)",
      "default": "mlx-community/Qwen3-0.6B-8bit",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1596,
      "end_line": 1602,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1596-L1602"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "detok_parser",
      "flags": [
        "--iterations"
      ],
      "destination": "iterations",
      "description": "Benchmark iterations (default: 5)",
      "default": "5",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1603,
      "end_line": 1605,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1603-L1605"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "kv_cache_parser",
      "flags": [
        "--layers"
      ],
      "destination": "layers",
      "description": "Number of layers (default: 32)",
      "default": "32",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1611,
      "end_line": 1613,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1611-L1613"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "kv_cache_parser",
      "flags": [
        "--seq-len"
      ],
      "destination": "seq_len",
      "description": "Sequence length (default: 512)",
      "default": "512",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1614,
      "end_line": 1616,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1614-L1616"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "kv_cache_parser",
      "flags": [
        "--heads"
      ],
      "destination": "heads",
      "description": "Number of attention heads (default: 32)",
      "default": "32",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1617,
      "end_line": 1619,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1617-L1619"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "kv_cache_parser",
      "flags": [
        "--head-dim"
      ],
      "destination": "head_dim",
      "description": "Head dimension (default: 128)",
      "default": "128",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1620,
      "end_line": 1622,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1620-L1622"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "kv_cache_parser",
      "flags": [
        "--group-size"
      ],
      "destination": "group_size",
      "description": "Quantization group size (default: 64)",
      "default": "64",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1623,
      "end_line": 1628,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1623-L1628"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "download_parser",
      "flags": [
        "model"
      ],
      "destination": "model",
      "description": "Model to download",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1634,
      "end_line": 1634,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1634-L1634"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "download_parser",
      "flags": [
        "--timeout"
      ],
      "destination": "timeout",
      "description": "Per-file download timeout in seconds (default: 300)",
      "default": "300",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1635,
      "end_line": 1640,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1635-L1640"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "download_parser",
      "flags": [
        "--retries"
      ],
      "destination": "retries",
      "description": "Number of retry attempts (default: 3)",
      "default": "3",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1641,
      "end_line": 1646,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1641-L1646"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "download_parser",
      "flags": [
        "--mllm"
      ],
      "destination": "mllm",
      "description": "Download as multimodal model (broader file patterns)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1647,
      "end_line": 1651,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1647-L1651"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_inspect_parser",
      "flags": [
        "model"
      ],
      "destination": "model",
      "description": "Local model path or Hugging Face model id",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1666,
      "end_line": 1670,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1666-L1670"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_inspect_parser",
      "flags": [
        "--revision"
      ],
      "destination": "revision",
      "description": "Hugging Face revision to inspect",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1671,
      "end_line": 1676,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1671-L1676"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_inspect_parser",
      "flags": [
        "--local-files-only"
      ],
      "destination": "local_files_only",
      "description": "Use only local Hugging Face cache files",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1677,
      "end_line": 1681,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1677-L1681"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_acquire_parser",
      "flags": [
        "model"
      ],
      "destination": "model",
      "description": "Hugging Face model id",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1687,
      "end_line": 1687,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1687-L1687"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_acquire_parser",
      "flags": [
        "--revision"
      ],
      "destination": "revision",
      "description": "Hugging Face revision to download",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1688,
      "end_line": 1693,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1688-L1693"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_acquire_parser",
      "flags": [
        "--target-dir"
      ],
      "destination": "target_dir",
      "description": "Final local directory. Defaults to Hugging Face cache.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1694,
      "end_line": 1699,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1694-L1699"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_acquire_parser",
      "flags": [
        "--staging-dir"
      ],
      "destination": "staging_dir",
      "description": "Directory for temporary staged downloads before finalizing target-dir",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1700,
      "end_line": 1705,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1700-L1705"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_acquire_parser",
      "flags": [
        "--mllm"
      ],
      "destination": "mllm",
      "description": "Acquire multimodal model files using broader allow patterns",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1706,
      "end_line": 1710,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1706-L1710"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_acquire_parser",
      "flags": [
        "--no-fast-transfer"
      ],
      "destination": "no_fast_transfer",
      "description": "Do not set HF_HUB_ENABLE_HF_TRANSFER=1 during download",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1711,
      "end_line": 1715,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1711-L1715"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_acquire_parser",
      "flags": [
        "--local-files-only"
      ],
      "destination": "local_files_only",
      "description": "Use only local Hugging Face cache files",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1716,
      "end_line": 1720,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1716-L1720"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "source"
      ],
      "destination": "source",
      "description": "Hugging Face model id or local source path",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1726,
      "end_line": 1730,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1726-L1730"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--output"
      ],
      "destination": "output",
      "description": "Output directory for the converted MLX model",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1731,
      "end_line": 1736,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1731-L1736"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--quantize"
      ],
      "destination": "quantize",
      "description": "Generate a quantized MLX model",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1737,
      "end_line": 1741,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1737-L1741"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--q-bits"
      ],
      "destination": "q_bits",
      "description": "Quantization bit width (e.g. 3, 4, 8)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1742,
      "end_line": 1747,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1742-L1747"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--q-group-size"
      ],
      "destination": "q_group_size",
      "description": "Quantization group size (default: mlx-lm default)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1748,
      "end_line": 1753,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1748-L1753"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--q-mode"
      ],
      "destination": "q_mode",
      "description": "",
      "default": "None",
      "required": false,
      "choices": "['affine', 'mxfp4', 'nvfp4', 'mxfp8']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1754,
      "end_line": 1758,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1754-L1758"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--quant-predicate"
      ],
      "destination": "quant_predicate",
      "description": "mlx-lm mixed-bit quantization recipe",
      "default": "None",
      "required": false,
      "choices": "['mixed_2_6', 'mixed_3_4', 'mixed_3_6', 'mixed_4_6']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1759,
      "end_line": 1764,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1759-L1764"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--dtype"
      ],
      "destination": "dtype",
      "description": "Non-quantized parameter dtype",
      "default": "None",
      "required": false,
      "choices": "['float16', 'bfloat16', 'float32']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1765,
      "end_line": 1770,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1765-L1770"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--trust-remote-code"
      ],
      "destination": "trust_remote_code",
      "description": "Allow Hugging Face remote code during mlx-lm conversion",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1771,
      "end_line": 1775,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1771-L1775"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_convert_parser",
      "flags": [
        "--dry-run"
      ],
      "destination": "dry_run",
      "description": "Print the conversion command and manifest without executing",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1776,
      "end_line": 1780,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1776-L1780"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "artifact"
      ],
      "destination": "artifact",
      "description": "Finalized local model artifact directory",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1786,
      "end_line": 1790,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1786-L1790"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--model-id"
      ],
      "destination": "model_id",
      "description": "Override model ID (default: directory name of artifact)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1791,
      "end_line": 1796,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1791-L1796"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--served-model-name"
      ],
      "destination": "served_model_name",
      "description": "Model name exposed by the API (default: model-id)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1797,
      "end_line": 1802,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1797-L1802"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--preset-alias"
      ],
      "destination": "preset_alias",
      "description": "Optional alias for preset lookup in registry",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1803,
      "end_line": 1808,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1803-L1808"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--output"
      ],
      "destination": "output",
      "description": "Manifest path. Defaults to artifact/vllm_mlx_registration_manifest.json",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1809,
      "end_line": 1814,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1809-L1814"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "mllm_group",
      "flags": [
        "--mllm"
      ],
      "destination": "mllm",
      "description": "Mark the artifact as an MLLM serving candidate",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1816,
      "end_line": 1821,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1816-L1821"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "mllm_group",
      "flags": [
        "--no-mllm"
      ],
      "destination": "mllm",
      "description": "Explicitly mark the artifact as text-only",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_false",
      "path": "vllm_mlx/cli.py",
      "line": 1822,
      "end_line": 1827,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1822-L1827"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--tool-call-parser"
      ],
      "destination": "tool_call_parser",
      "description": "Tool call parser name for the model (e.g. qwen3_coder, mistral)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1828,
      "end_line": 1833,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1828-L1833"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--reasoning-parser"
      ],
      "destination": "reasoning_parser",
      "description": "Reasoning parser name for thinking models (e.g. qwen3)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1834,
      "end_line": 1839,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1834-L1839"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--default-temperature"
      ],
      "destination": "default_temperature",
      "description": "Default temperature for all requests",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1840,
      "end_line": 1845,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1840-L1845"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--default-top-p"
      ],
      "destination": "default_top_p",
      "description": "Default top_p for all requests",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1846,
      "end_line": 1851,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1846-L1851"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--default-top-k"
      ],
      "destination": "default_top_k",
      "description": "Default top_k for all requests",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1852,
      "end_line": 1857,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1852-L1857"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--default-min-p"
      ],
      "destination": "default_min_p",
      "description": "Default min_p for all requests",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1858,
      "end_line": 1863,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1858-L1863"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--default-presence-penalty"
      ],
      "destination": "default_presence_penalty",
      "description": "Default presence_penalty for all requests",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1864,
      "end_line": 1869,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1864-L1869"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--default-repetition-penalty"
      ],
      "destination": "default_repetition_penalty",
      "description": "Default repetition_penalty for all requests",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1870,
      "end_line": 1875,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1870-L1875"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--default-chat-template-kwargs"
      ],
      "destination": "default_chat_template_kwargs",
      "description": "Default chat template kwargs as JSON, e.g. {\"enable_thinking\": true}",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1876,
      "end_line": 1881,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1876-L1881"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_register_parser",
      "flags": [
        "--feature-flag"
      ],
      "destination": "feature_flag",
      "description": "Feature flag to record in the registration manifest. Repeatable.",
      "default": "[]",
      "required": false,
      "choices": "",
      "action": "append",
      "path": "vllm_mlx/cli.py",
      "line": 1882,
      "end_line": 1887,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1882-L1887"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "model_id"
      ],
      "destination": "model_id",
      "description": "Model ID to qualify against the running server",
      "default": "argparse default",
      "required": true,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1893,
      "end_line": 1897,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1893-L1897"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "--url"
      ],
      "destination": "url",
      "description": "Running server URL for bench-serve",
      "default": "http://127.0.0.1:8080",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1898,
      "end_line": 1903,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1898-L1903"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "--workload"
      ],
      "destination": "workload",
      "description": "bench-serve workload contract path",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1904,
      "end_line": 1909,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1904-L1909"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "--output"
      ],
      "destination": "output",
      "description": "Qualification request manifest path",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1910,
      "end_line": 1915,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1910-L1915"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "--result-output"
      ],
      "destination": "result_output",
      "description": "Result output path passed to bench-serve",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1916,
      "end_line": 1921,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1916-L1921"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "--repetitions"
      ],
      "destination": "repetitions",
      "description": "Number of repetitions per benchmark sweep configuration",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1922,
      "end_line": 1927,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1922-L1927"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "--dry-run"
      ],
      "destination": "dry_run",
      "description": "Write or print the qualification command without running it",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1928,
      "end_line": 1932,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1928-L1932"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "model_qualify_parser",
      "flags": [
        "--extra-arg"
      ],
      "destination": "extra_arg",
      "description": "Extra argument passed through to bench-serve. Repeatable.",
      "default": "[]",
      "required": false,
      "choices": "",
      "action": "append",
      "path": "vllm_mlx/cli.py",
      "line": 1933,
      "end_line": 1938,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1933-L1938"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--url"
      ],
      "destination": "url",
      "description": "Base URL of the running server (default: http://127.0.0.1:8080)",
      "default": "http://127.0.0.1:8080",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1944,
      "end_line": 1949,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1944-L1949"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--model"
      ],
      "destination": "model",
      "description": "Model ID to benchmark (default: auto-detected from server)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1950,
      "end_line": 1955,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1950-L1955"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--workload"
      ],
      "destination": "workload",
      "description": "Path to a declarative workload JSON file. When set, bench-serve runs contract-style cases with per-case quality checks and comparison-only policy timeouts instead of the prompt sweep.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1956,
      "end_line": 1965,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1956-L1965"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--prompts"
      ],
      "destination": "prompts",
      "description": "Comma-separated prompt set names or paths (default: short,medium,long)",
      "default": "short,medium,long",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1966,
      "end_line": 1971,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1966-L1971"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--prompt-file"
      ],
      "destination": "prompt_file",
      "description": "Path to an additional prompt file (JSON list of message dicts)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1972,
      "end_line": 1977,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1972-L1977"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--system-prompt-file"
      ],
      "destination": "system_prompt_file",
      "description": "Path to a text file whose contents are prepended as a system message to every prompt. Use this together with --warm-prompts to benchmark the warm-cache path (the warmup populates the prefix cache with this same system, so every request in the bench hits the cache).",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 1978,
      "end_line": 1989,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1978-L1989"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--skip-preflight-token-count"
      ],
      "destination": "skip_preflight_token_count",
      "description": "Skip the pre-flight max_tokens=1 request that counts prompt tokens per prompt set. That request populates the prefix cache with the full prompt, which defeats cold-vs-warm comparisons. Auto-enabled when --system-prompt-file is set; pass this flag explicitly to force-enable regardless.",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 1990,
      "end_line": 2000,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L1990-L2000"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--concurrency"
      ],
      "destination": "concurrency",
      "description": "Comma-separated concurrency levels to sweep (default: 1,4)",
      "default": "1,4",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2001,
      "end_line": 2006,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2001-L2006"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Maximum tokens to generate per request (default: 256)",
      "default": "256",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2007,
      "end_line": 2012,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2007-L2012"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--repetitions"
      ],
      "destination": "repetitions",
      "description": "Number of repetitions per sweep configuration or workload case (default: 3)",
      "default": "3",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2013,
      "end_line": 2018,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2013-L2018"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--warmup"
      ],
      "destination": "warmup",
      "description": "Warmup rounds before the first measured repetition (default: 1)",
      "default": "1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2019,
      "end_line": 2024,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2019-L2024"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--enable-thinking"
      ],
      "destination": "enable_thinking",
      "description": "Enable thinking mode: \"true\", \"false\", or \"true,false\" to sweep both",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2025,
      "end_line": 2030,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2025-L2030"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--extra-body"
      ],
      "destination": "extra_body",
      "description": "Comma-separated JSON dicts to pass as extra body parameters",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2031,
      "end_line": 2036,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2031-L2036"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--output"
      ],
      "destination": "output",
      "description": "File path to write results to (default: stdout)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2037,
      "end_line": 2042,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2037-L2042"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--format"
      ],
      "destination": "format",
      "description": "Output format (auto = table for prompt sweeps, json for workloads; sqlite requires --output)",
      "default": "auto",
      "required": false,
      "choices": "['auto', 'table', 'json', 'csv', 'sql', 'sqlite']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2043,
      "end_line": 2052,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2043-L2052"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--validate"
      ],
      "destination": "validate",
      "description": "Validate responses (default: true)",
      "default": "true",
      "required": false,
      "choices": "['true', 'false']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2053,
      "end_line": 2059,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2053-L2059"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--scrape-metrics"
      ],
      "destination": "scrape_metrics",
      "description": "Scrape /metrics before and after each run (default: true)",
      "default": "true",
      "required": false,
      "choices": "['true', 'false']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2060,
      "end_line": 2066,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2060-L2066"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--include-content"
      ],
      "destination": "include_content",
      "description": "Include full generated content in workload JSON output",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/cli.py",
      "line": 2067,
      "end_line": 2071,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2067-L2071"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--request-timeout-s"
      ],
      "destination": "request_timeout_s",
      "description": "HTTP transport timeout for workload mode in seconds (default: 300). Use 0 to disable; product policy timeouts belong in the workload.",
      "default": "300.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2072,
      "end_line": 2080,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2072-L2080"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--cache-policy"
      ],
      "destination": "cache_policy",
      "description": "Workload cache handling (default: workload defaults or preserve). Use before-case for cold, uncontaminated per-case qualification. Workload JSON may also spell these with underscores.",
      "default": "None",
      "required": false,
      "choices": "['preserve', 'before-run', 'before-case']",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2081,
      "end_line": 2091,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2081-L2091"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--tag"
      ],
      "destination": "tag",
      "description": "Optional tag string stored in every result row",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2092,
      "end_line": 2097,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2092-L2097"
    },
    {
      "context": "vllm_mlx.cli.create_parser",
      "receiver": "bench_serve_parser",
      "flags": [
        "--override-field"
      ],
      "destination": "override_field",
      "description": "Override result fields as key=value pairs (e.g. chip=M4Pro)",
      "default": "[]",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/cli.py",
      "line": 2098,
      "end_line": 2103,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/cli.py#L2098-L2103"
    },
    {
      "context": "vllm_mlx.gradio_app.main",
      "receiver": "parser",
      "flags": [
        "--server-url"
      ],
      "destination": "server_url",
      "description": "URL of the vllm-mlx server (default: http://localhost:8000)",
      "default": "http://localhost:8000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_app.py",
      "line": 280,
      "end_line": 285,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_app.py#L280-L285"
    },
    {
      "context": "vllm_mlx.gradio_app.main",
      "receiver": "parser",
      "flags": [
        "--port"
      ],
      "destination": "port",
      "description": "Port for Gradio interface (default: 7860)",
      "default": "7860",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_app.py",
      "line": 286,
      "end_line": 291,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_app.py#L286-L291"
    },
    {
      "context": "vllm_mlx.gradio_app.main",
      "receiver": "parser",
      "flags": [
        "--share"
      ],
      "destination": "share",
      "description": "Create a public share link",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/gradio_app.py",
      "line": 292,
      "end_line": 296,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_app.py#L292-L296"
    },
    {
      "context": "vllm_mlx.gradio_app.main",
      "receiver": "parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Maximum tokens to generate (default: 2048)",
      "default": "2048",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_app.py",
      "line": 297,
      "end_line": 302,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_app.py#L297-L302"
    },
    {
      "context": "vllm_mlx.gradio_app.main",
      "receiver": "parser",
      "flags": [
        "--temperature"
      ],
      "destination": "temperature",
      "description": "Sampling temperature (default: 0.7)",
      "default": "0.7",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_app.py",
      "line": 303,
      "end_line": 308,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_app.py#L303-L308"
    },
    {
      "context": "vllm_mlx.gradio_app.main",
      "receiver": "parser",
      "flags": [
        "--served-model-name"
      ],
      "destination": "served_model_name",
      "description": "Model name to send in /v1/chat/completions requests (default: default)",
      "default": "default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_app.py",
      "line": 309,
      "end_line": 316,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_app.py#L309-L316"
    },
    {
      "context": "vllm_mlx.gradio_app.main",
      "receiver": "parser",
      "flags": [
        "--text-only"
      ],
      "destination": "text_only",
      "description": "Use text-only mode (no image/video support, faster for LLM-only models)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/gradio_app.py",
      "line": 317,
      "end_line": 321,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_app.py#L317-L321"
    },
    {
      "context": "vllm_mlx.gradio_text_app.main",
      "receiver": "parser",
      "flags": [
        "--server-url"
      ],
      "destination": "server_url",
      "description": "URL of the vllm-mlx server (default: http://localhost:8000)",
      "default": "http://localhost:8000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_text_app.py",
      "line": 136,
      "end_line": 141,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_text_app.py#L136-L141"
    },
    {
      "context": "vllm_mlx.gradio_text_app.main",
      "receiver": "parser",
      "flags": [
        "--port"
      ],
      "destination": "port",
      "description": "Port for Gradio interface (default: 7861)",
      "default": "7861",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_text_app.py",
      "line": 142,
      "end_line": 147,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_text_app.py#L142-L147"
    },
    {
      "context": "vllm_mlx.gradio_text_app.main",
      "receiver": "parser",
      "flags": [
        "--share"
      ],
      "destination": "share",
      "description": "Create a public share link",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/gradio_text_app.py",
      "line": 148,
      "end_line": 152,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_text_app.py#L148-L152"
    },
    {
      "context": "vllm_mlx.gradio_text_app.main",
      "receiver": "parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Maximum tokens to generate (default: 512)",
      "default": "512",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_text_app.py",
      "line": 153,
      "end_line": 158,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_text_app.py#L153-L158"
    },
    {
      "context": "vllm_mlx.gradio_text_app.main",
      "receiver": "parser",
      "flags": [
        "--temperature"
      ],
      "destination": "temperature",
      "description": "Sampling temperature (default: 0.7)",
      "default": "0.7",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_text_app.py",
      "line": 159,
      "end_line": 164,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_text_app.py#L159-L164"
    },
    {
      "context": "vllm_mlx.gradio_text_app.main",
      "receiver": "parser",
      "flags": [
        "--served-model-name"
      ],
      "destination": "served_model_name",
      "description": "Model name to send in /v1/chat/completions requests (default: default)",
      "default": "default",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/gradio_text_app.py",
      "line": 165,
      "end_line": 172,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/gradio_text_app.py#L165-L172"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--model"
      ],
      "destination": "model",
      "description": "Model to load (HuggingFace model name or local path)",
      "default": "mlx-community/Llama-3.2-3B-Instruct-4bit",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6728,
      "end_line": 6733,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6728-L6733"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--host"
      ],
      "destination": "host",
      "description": "Host to bind to (default: localhost; use 0.0.0.0 to expose externally)",
      "default": "127.0.0.1",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6734,
      "end_line": 6739,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6734-L6739"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--port"
      ],
      "destination": "port",
      "description": "Port to bind to",
      "default": "8000",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6740,
      "end_line": 6745,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6740-L6745"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--mllm"
      ],
      "destination": "mllm",
      "description": "Force loading as MLLM (multimodal language model)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/server.py",
      "line": 6746,
      "end_line": 6750,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6746-L6750"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--trust-remote-code"
      ],
      "destination": "trust_remote_code",
      "description": "Allow HuggingFace remote code execution during model/tokenizer loading",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/server.py",
      "line": 6751,
      "end_line": 6755,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6751-L6755"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--continuous-batching"
      ],
      "destination": "continuous_batching",
      "description": "Enable continuous batching for multiple concurrent users",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/server.py",
      "line": 6756,
      "end_line": 6760,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6756-L6760"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--mllm-draft-model"
      ],
      "destination": "mllm_draft_model",
      "description": "Path to an mlx-vlm MLLM draft/assistant model.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6761,
      "end_line": 6766,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6761-L6766"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--mllm-draft-kind"
      ],
      "destination": "mllm_draft_kind",
      "description": "mlx-vlm draft kind for --mllm-draft-model.",
      "default": "None",
      "required": false,
      "choices": "['mtp']",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6767,
      "end_line": 6773,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6767-L6773"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--mllm-draft-block-size"
      ],
      "destination": "mllm_draft_block_size",
      "description": "Draft block size passed to mlx-vlm for --mllm-draft-model.",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6774,
      "end_line": 6779,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6774-L6779"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--mcp-config"
      ],
      "destination": "mcp_config",
      "description": "Path to MCP configuration file (JSON/YAML)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6780,
      "end_line": 6785,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6780-L6785"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--max-tokens"
      ],
      "destination": "max_tokens",
      "description": "Default max tokens for generation",
      "default": "32768",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6786,
      "end_line": 6791,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6786-L6791"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--max-request-tokens"
      ],
      "destination": "max_request_tokens",
      "description": "Maximum max_tokens accepted from API clients (default: 32768)",
      "default": "32768",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6792,
      "end_line": 6797,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6792-L6797"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--api-key"
      ],
      "destination": "api_key",
      "description": "API key for authentication (if not set, no auth required)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6798,
      "end_line": 6803,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6798-L6803"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--timeout"
      ],
      "destination": "timeout",
      "description": "Default request timeout in seconds (default: 300)",
      "default": "300.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6804,
      "end_line": 6809,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6804-L6809"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--enable-metrics"
      ],
      "destination": "enable_metrics",
      "description": "Expose Prometheus metrics on /metrics (disabled by default)",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/server.py",
      "line": 6810,
      "end_line": 6814,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6810-L6814"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--auto-unload-idle-seconds"
      ],
      "destination": "auto_unload_idle_seconds",
      "description": "Unload the main model after this many idle seconds (0 = disabled)",
      "default": "0.0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6815,
      "end_line": 6820,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6815-L6820"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--lazy-load-model"
      ],
      "destination": "lazy_load_model",
      "description": "Register the main model at startup but defer loading until first request",
      "default": "argparse default",
      "required": false,
      "choices": "",
      "action": "store_true",
      "path": "vllm_mlx/server.py",
      "line": 6821,
      "end_line": 6825,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6821-L6825"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--rate-limit"
      ],
      "destination": "rate_limit",
      "description": "Rate limit requests per minute per client (0 = disabled)",
      "default": "0",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6826,
      "end_line": 6831,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6826-L6831"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--reasoning-parser"
      ],
      "destination": "reasoning_parser",
      "description": "f\"Enable reasoning content extraction with specified parser. Options: {', '.join(reasoning_choices)}.\"",
      "default": "None",
      "required": false,
      "choices": "reasoning_choices",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6836,
      "end_line": 6845,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6836-L6845"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--embedding-model"
      ],
      "destination": "embedding_model",
      "description": "Pre-load an embedding model at startup (e.g. mlx-community/all-MiniLM-L6-v2-4bit)",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6846,
      "end_line": 6851,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6846-L6851"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--default-temperature"
      ],
      "destination": "default_temperature",
      "description": "Default temperature for generation when not specified in request",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6852,
      "end_line": 6857,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6852-L6857"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--default-top-p"
      ],
      "destination": "default_top_p",
      "description": "Default top_p for generation when not specified in request",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6858,
      "end_line": 6863,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6858-L6863"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--default-chat-template-kwargs"
      ],
      "destination": "default_chat_template_kwargs",
      "description": "Default chat template kwargs to apply to all requests when request chat_template_kwargs is omitted or empty; empty request kwargs use existing server defaults (JSON object, e.g. {\"enable_thinking\": false})",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6864,
      "end_line": 6873,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6864-L6873"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--default-top-k"
      ],
      "destination": "default_top_k",
      "description": "Default top_k for generation when not specified in request",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6874,
      "end_line": 6879,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6874-L6879"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--default-min-p"
      ],
      "destination": "default_min_p",
      "description": "Default min_p for generation when not specified in request",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6880,
      "end_line": 6885,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6880-L6885"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--default-presence-penalty"
      ],
      "destination": "default_presence_penalty",
      "description": "Default presence_penalty for generation when not specified in request",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6886,
      "end_line": 6891,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6886-L6891"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--default-repetition-penalty"
      ],
      "destination": "default_repetition_penalty",
      "description": "Default repetition_penalty for generation when not specified in request",
      "default": "None",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6892,
      "end_line": 6899,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6892-L6899"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--max-audio-upload-mb"
      ],
      "destination": "max_audio_upload_mb",
      "description": "Maximum size of uploaded audio files in MiB (default: 25)",
      "default": "DEFAULT_MAX_AUDIO_UPLOAD_MB",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6900,
      "end_line": 6905,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6900-L6905"
    },
    {
      "context": "vllm_mlx.server.create_parser",
      "receiver": "parser",
      "flags": [
        "--max-tts-input-chars"
      ],
      "destination": "max_tts_input_chars",
      "description": "Maximum number of characters accepted by /v1/audio/speech (default: 4096)",
      "default": "DEFAULT_MAX_TTS_INPUT_CHARS",
      "required": false,
      "choices": "",
      "action": "",
      "path": "vllm_mlx/server.py",
      "line": 6906,
      "end_line": 6911,
      "source_url": "https://github.com/waybarrios/vllm-mlx/blob/a69d47912bcb21d8fe04d48f75fa896b620ffcfa/vllm_mlx/server.py#L6906-L6911"
    }
  ]
}
