Usage
Common params
ArgumentExplanation-h, --help, --usageprint usage and exit--versionshow version and build info-cl, --cache-listshow list of models in cache--completion-bashprint source-able bash completion script for llama.cpp-t, --threads Nnumber of CPU threads to use during generation (default: -1)
(env: LLAMA_ARG_THREADS)-tb, --threads-batch Nnumber of threads to use during batch and prompt processing (default: same as --threads)-C, --cpu-mask MCPU affinity mask: arbitrarily long hex. Complements cpu-range (default: "")-Cr, --cpu-range lo-hirange of CPUs for affinity. Complements --cpu-mask--cpu-strict <0|1>use strict CPU placement (default: 0)--prio Nset process/thread priority : low(-1), normal(0), medium(1), high(2), realtime(3) (default: 0)--poll <0...100>use polling level to wait for work (0 - no polling, default: 50)-Cb, --cpu-mask-batch MCPU affinity mask: arbitrarily long hex. Complements cpu-range-batch (default: same as --cpu-mask)-Crb, --cpu-range-batch lo-hiranges of CPUs for affinity. Complements --cpu-mask-batch--cpu-strict-batch <0|1>use strict CPU placement (default: same as --cpu-strict)--prio-batch Nset process/thread priority : 0-normal, 1-medium, 2-high, 3-realtime (default: 0)--poll-batch <0|1>use polling to wait for work (default: same as --poll)-c, --ctx-size Nsize of the prompt context (default: 0, 0 = loaded from model)
(env: LLAMA_ARG_CTX_SIZE)-n, --predict, --n-predict Nnumber of tokens to predict (default: -1, -1 = infinity)
(env: LLAMA_ARG_N_PREDICT)-b, --batch-size Nlogical maximum batch size (default: 2048)
(env: LLAMA_ARG_BATCH)-ub, --ubatch-size Nphysical maximum batch size (default: 512)
(env: LLAMA_ARG_UBATCH)--keep Nnumber of tokens to keep from the initial prompt (default: 0, -1 = all)--swa-fulluse full-size SWA cache (default: false)
(env: LLAMA_ARG_SWA_FULL)-fa, --flash-attn [on|off|auto]set Flash Attention use ('on', 'off', or 'auto', default: 'auto')
(env: LLAMA_ARG_FLASH_ATTN)-p, --prompt PROMPTprompt to start generation with; for system message, use -sys--perf, --no-perfwhether to enable internal libllama performance timings (default: false)
(env: LLAMA_ARG_PERF)-f, --file FNAMEa file containing the prompt (default: none)-bf, --binary-file FNAMEbinary file containing the prompt (default: none)-e, --escape, --no-escapewhether to process escapes sequences (\n, \r, \t, ', ", \) (default: true)--rope-scaling {none,linear,yarn}RoPE frequency scaling method, defaults to linear unless specified by the model
(env: LLAMA_ARG_ROPE_SCALING_TYPE)--rope-scale NRoPE context scaling factor, expands context by a factor of N
(env: LLAMA_ARG_ROPE_SCALE)--rope-freq-base NRoPE base frequency, used by NTK-aware scaling (default: loaded from model)
(env: LLAMA_ARG_ROPE_FREQ_BASE)--rope-freq-scale NRoPE frequency scaling factor, expands context by a factor of 1/N
(env: LLAMA_ARG_ROPE_FREQ_SCALE)--yarn-orig-ctx NYaRN: original context size of model (default: 0 = model training context size)
(env: LLAMA_ARG_YARN_ORIG_CTX)--yarn-ext-factor NYaRN: extrapolation mix factor (default: -1.00, 0.0 = full interpolation)
(env: LLAMA_ARG_YARN_EXT_FACTOR)--yarn-attn-factor NYaRN: scale sqrt(t) or attention magnitude (default: -1.00)
(env: LLAMA_ARG_YARN_ATTN_FACTOR)--yarn-beta-slow NYaRN: high correction dim or alpha (default: -1.00)
(env: LLAMA_ARG_YARN_BETA_SLOW)--yarn-beta-fast NYaRN: low correction dim or beta (default: -1.00)
(env: LLAMA_ARG_YARN_BETA_FAST)-kvo, --kv-offload, -nkvo, --no-kv-offloadwhether to enable KV cache offloading (default: enabled)
(env: LLAMA_ARG_KV_OFFLOAD)--repack, -nr, --no-repackwhether to enable weight repacking (default: enabled)
(env: LLAMA_ARG_REPACK)--no-hostbypass host buffer allowing extra buffers to be used
(env: LLAMA_ARG_NO_HOST)-ctk, --cache-type-k TYPEKV cache data type for K
allowed values: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1
(default: f16)
(env: LLAMA_ARG_CACHE_TYPE_K)-ctv, --cache-type-v TYPEKV cache data type for V
allowed values: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1
(default: f16)
(env: LLAMA_ARG_CACHE_TYPE_V)-dt, --defrag-thold NKV cache defragmentation threshold (DEPRECATED)
(env: LLAMA_ARG_DEFRAG_THOLD)-np, --parallel Nnumber of parallel sequences to decode (default: 1)
(env: LLAMA_ARG_N_PARALLEL)--rpc SERVERScomma-separated list of RPC servers (host:port)
(env: LLAMA_ARG_RPC)-lm, --load-mode MODEmodel loading mode (default: auto)
- auto: mmap, unless a device does not support it
- none: no special loading mode
- mmap: memory-map model (if mmap disabled, slower load but may reduce pageouts if not using mlock)
- mlock: force system to keep model in RAM rather than swapping or compressing
- mmap+mlock: mmap + force system to keep model in RAM rather than swapping or compressing
- dio: use DirectIO if available(env: LLAMA_ARG_LOAD_MODE)
-lzm, --lazy-mode MODEon-demand reading of certain tensors, for example per-layer embeddings (default: auto)
- on: read the rows of such tensors from disk on demand instead of keeping them resident (requires mmap)
- auto: on, but only for tensors larger than 4 GiB
- off: always keep them resident
(env: LLAMA_ARG_LAZY_MODE)--numa TYPEattempt optimizations that help on some NUMA systems
- distribute: spread execution evenly over all nodes
- isolate: only spawn threads on CPUs on the node that execution started on
- numactl: use the CPU map provided by numactl
if run without this previously, it is recommended to drop the system page cache before using this
see
(env: LLAMA_ARG_NUMA)-dev, --device <dev1,dev2,..>comma-separated list of devices to use for offloading (none = don't offload)
use --list-devices to see a list of available devices
(env: LLAMA_ARG_DEVICE)--list-devicesprint list of available devices and exit-ot, --override-tensor <tensor name pattern>=<buffer type>,...override tensor buffer type
(env: LLAMA_ARG_OVERRIDE_TENSOR)-cmoe, --cpu-moekeep all Mixture of Experts (MoE) weights in the CPU
(env: LLAMA_ARG_CPU_MOE)-ncmoe, --n-cpu-moe Nkeep the Mixture of Experts (MoE) weights of the first N layers in the CPU
(env: LLAMA_ARG_N_CPU_MOE)-ncffn, --n-cpu-ffn Nkeep the dense FFN weights of the first N layers in the CPU
(dense models; for MoE expert weights use --n-cpu-moe)
(env: LLAMA_ARG_N_CPU_FFN)-ngl, --gpu-layers, --n-gpu-layers Nmax. number of layers to store in VRAM, either an exact number, 'auto', or 'all' (default: auto)
(env: LLAMA_ARG_N_GPU_LAYERS)-sm, --split-mode {none,layer,row,tensor}how to split the model across multiple GPUs, one of:
- none: use one GPU only
- layer (default): split layers and KV across GPUs (pipelined)
- row: split weight across GPUs by rows (parallelized)
- tensor: split weights and KV across GPUs (parallelized, EXPERIMENTAL)
(env: LLAMA_ARG_SPLIT_MODE)-ts, --tensor-split N0,N1,N2,...fraction of the model to offload to each GPU, comma-separated list of proportions, e.g. 3,1
(env: LLAMA_ARG_TENSOR_SPLIT)-mg, --main-gpu INDEXthe GPU to use for the model (with split-mode = none), or for intermediate results and KV (with split-mode = row) (default: 0)
(env: LLAMA_ARG_MAIN_GPU)-fit, --fit [on|off]whether to adjust unset arguments to fit in device memory ('on' or 'off', default: 'on')
(env: LLAMA_ARG_FIT)-fitt, --fit-target MiB0,MiB1,MiB2,...target margin per device for --fit, comma-separated list of values, single value is broadcast across all devices, default: 1024
(env: LLAMA_ARG_FIT_TARGET)-fitc, --fit-ctx Nminimum ctx size that can be set by --fit option, default: 4096
(env: LLAMA_ARG_FIT_CTX)--check-tensorscheck model tensor data for invalid values (default: false)--override-kv KEY=TYPE:VALUE,...advanced option to override model metadata by key. to specify multiple overrides, either use comma-separated values.
types: int, float, bool, str. example: --override-kv tokenizer.ggml.add_bos_token=bool:false,tokenizer.ggml.add_eos_token=bool:false--op-offload, --no-op-offloadwhether to offload host tensor operations to device (default: true)--lora FNAMEpath to LoRA adapter (use comma-separated values to load multiple adapters)--lora-scaled FNAME:SCALE,...path to LoRA adapter with user defined scaling (format: FNAME:SCALE,...)
note: use comma-separated values--control-vector FNAMEadd a control vector
note: use comma-separated values to add multiple control vectors--control-vector-scaled FNAME:SCALE,...add a control vector with user defined scaling SCALE
note: use comma-separated values (format: FNAME:SCALE,...)--control-vector-layer-range START ENDlayer range to apply the control vector(s) to, start and end inclusive-m, --model FNAMEmodel path to load
(env: LLAMA_ARG_MODEL)-mu, --model-url MODEL_URLmodel download url (default: unused)
(env: LLAMA_ARG_MODEL_URL)-dr, --docker-repo [<repo>/]<model>[:quant]Docker Hub model repository. repo is optional, default to ai/. quant is optional, default to :latest.
example: gemma3
(default: unused)
(env: LLAMA_ARG_DOCKER_REPO)-hf, -hfr, --hf-repo <user>/<model>[:quant]Hugging Face model repository; quant is optional, case-insensitive, default to Q4_K_M, or falls back to the first file in the repo if Q4_K_M doesn't exist.
mmproj is also downloaded automatically if available. to disable, add --no-mmproj
example: ggml-org/GLM-4.7-Flash-GGUF:Q4_K_M
(default: unused)
(env: LLAMA_ARG_HF_REPO)-hff, --hf-file FILEHugging Face model file. If specified, it will override the quant in --hf-repo (default: unused)
(env: LLAMA_ARG_HF_FILE)-hft, --hf-token TOKENHugging Face access token (default: value from HF_TOKEN environment variable)
(env: HF_TOKEN)--log-disableLog disable--log-file FNAMELog to file
(env: LLAMA_ARG_LOG_FILE)--log-jsonl, --no-log-jsonlLog as JSONL (one JSON object per line) to stdout, this also disables colored logging (default: disabled)
(env: LLAMA_ARG_LOG_JSONL)--log-colors [on|off|auto]Set colored logging ('on', 'off', or 'auto', default: 'auto')
'auto' enables colors when output is to a terminal
(env: LLAMA_ARG_LOG_COLORS)-v, --verbose, --log-verboseSet verbosity level to infinity (i.e. log all messages, useful for debugging)--offlineOffline mode: forces use of cache, prevents network access
(env: LLAMA_ARG_OFFLINE)-lv, --verbosity, --log-verbosity NSet the verbosity threshold. Messages with a higher verbosity will be ignored. Values:
- 0: generic output
- 1: error
- 2: warning
- 3: info
- 4: trace (more info)
- 5: debug
(default: 3)(env: LLAMA_ARG_LOG_VERBOSITY)
--log-prefix, --no-log-prefixEnable prefix in log messages
(env: LLAMA_ARG_LOG_PREFIX)--log-timestamps, --no-log-timestampsEnable timestamps in log messages
(env: LLAMA_ARG_LOG_TIMESTAMPS)--spec-draft-type-k, -ctkd, --cache-type-k-draft TYPEKV cache data type for K for the draft model
allowed values: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1
(default: f16)
(env: LLAMA_ARG_SPEC_DRAFT_CACHE_TYPE_K)--spec-draft-type-v, -ctvd, --cache-type-v-draft TYPEKV cache data type for V for the draft model
allowed values: f32, f16, bf16, q8_0, q4_0, q4_1, iq4_nl, q5_0, q5_1
(default: f16)
(env: LLAMA_ARG_SPEC_DRAFT_CACHE_TYPE_V)Sampling params
ArgumentExplanation--samplers SAMPLERSsamplers that will be used for generation in the order, separated by ';'
(default: penalties;dry;top_n_sigma;top_k;typ_p;top_p;min_p;xtc;temperature)-s, --seed SEEDRNG seed (default: -1, use random seed for -1)--sampler-seq, --sampling-seq SEQUENCEsimplified sequence for samplers that will be used (default: edskypmxt)--ignore-eosignore end of stream token and continue generating (implies --logit-bias EOS-inf)--temp, --temperature Ntemperature (default: 0.80)--top-k Ntop-k sampling (default: 40, 0 = disabled)
(env: LLAMA_ARG_TOP_K)--top-p Ntop-p sampling (default: 0.95, 1.0 = disabled)--min-p Nmin-p sampling (default: 0.05, 0.0 = disabled)--top-nsigma, --top-n-sigma Ntop-n-sigma sampling (default: -1.00, -1.0 = disabled)--xtc-probability Nxtc probability (default: 0.00, 0.0 = disabled)--xtc-threshold Nxtc threshold (default: 0.10, 1.0 = disabled)--typical, --typical-p Nlocally typical sampling, parameter p (default: 1.00, 1.0 = disabled)--repeat-last-n Nlast n tokens to consider for penalize (default: 64, 0 = disabled)--repeat-penalty Npenalize repeat sequence of tokens (default: 1.00, 1.0 = disabled)--presence-penalty Nrepeat alpha presence penalty (default: 0.00, 0.0 = disabled)--frequency-penalty Nrepeat alpha frequency penalty (default: 0.00, 0.0 = disabled)--dry-multiplier Nset DRY sampling multiplier (default: 0.00, 0.0 = disabled)--dry-base Nset DRY sampling base value (default: 1.75)--dry-allowed-length Nset allowed length for DRY sampling (default: 2)--dry-penalty-last-n Nset DRY penalty for the last n tokens (default: 64, 0 = disable)--dry-sequence-breaker STRINGadd sequence breaker for DRY sampling, clearing out default breakers ('\n', ':', '"', '*') in the process; use "none" to not use any sequence breakers--adaptive-target Nadaptive-p: select tokens near this probability (valid range 0.0 to 1.0; negative = disabled) (default: -1.00)
--adaptive-decay Nadaptive-p: decay rate for target adaptation over time. lower values are more reactive, higher values are more stable.
(valid range 0.0 to 0.99) (default: 0.90)--dynatemp-range Ndynamic temperature range (default: 0.00, 0.0 = disabled)--dynatemp-exp Ndynamic temperature exponent (default: 1.00)--mirostat Nuse Mirostat sampling.
Top K, Nucleus and Locally Typical samplers are ignored if used.
(default: 0, 0 = disabled, 1 = Mirostat, 2 = Mirostat 2.0)--mirostat-lr NMirostat learning rate, parameter eta (default: 0.10)--mirostat-ent NMirostat target entropy, parameter tau (default: 5.00)-l, --logit-bias TOKEN_ID(+/-)BIASmodifies the likelihood of token appearing in the completion,
i.e. --logit-bias 15043+1 to increase likelihood of token ' Hello',
or --logit-bias 15043-1 to decrease likelihood of token ' Hello'--grammar GRAMMARBNF-like grammar to constrain generations (see samples in grammars/ dir)--grammar-file FNAMEfile to read grammar from-j, --json-schema SCHEMAJSON schema to constrain generations (
), e.g. {} for any JSON object
For schemas w/ external $refs, use --grammar + example/json_schema_to_grammar.py instead-jf, --json-schema-file FILEFile containing a JSON schema to constrain generations (
), e.g. {} for any JSON object
For schemas w/ external $refs, use --grammar + example/json_schema_to_grammar.py instead-bs, --backend-samplingenable backend sampling (experimental) (default: disabled)
(env: LLAMA_ARG_BACKEND_SAMPLING)CLI-specific params
ArgumentExplanation--server-base URLconnect to this server instead of starting a new one, example: '
' (default: none)--verbose-promptprint a verbose prompt before generation (default: false)--display-prompt, --no-display-promptwhether to print prompt at generation (default: true)-co, --color [on|off|auto]Colorize output to distinguish prompt and user input from generations ('on', 'off', or 'auto', default: 'auto')
'auto' enables colors when output is to a terminal-ctxcp, --ctx-checkpoints, --swa-checkpoints Nmax number of context checkpoints to create per slot (default: 32)
(env: LLAMA_ARG_CTX_CHECKPOINTS)-cram, --cache-ram Nset the maximum cache size in MiB (default: 8192, -1 - no limit, 0 - disable)
(env: LLAMA_ARG_CACHE_RAM)--context-shift, --no-context-shiftwhether to use context shift on infinite text generation (default: disabled)
(env: LLAMA_ARG_CONTEXT_SHIFT)-sys, --system-prompt PROMPTsystem prompt to use with model (if applicable, depending on chat template)--show-timings, --no-show-timingswhether to show timing information after each response (default: true)
(env: LLAMA_ARG_SHOW_TIMINGS)-sysf, --system-prompt-file FNAMEa file containing the system prompt (default: none)-r, --reverse-prompt PROMPThalt generation at PROMPT, return control in interactive mode-sp, --specialspecial tokens output enabled (default: false)-st, --single-turnrun conversation for a single turn only, then exit when done
will not be interactive if first turn is predefined with --prompt
(default: false)-mli, --multiline-inputallows you to write or paste multiple lines without ending each in ''--warmup, --no-warmupwhether to perform warmup with an empty run (default: enabled)-mm, --mmproj FILEpath to a multimodal projector file. see tools/mtmd/README.md
note: if -hf is used, this argument can be omitted
(env: LLAMA_ARG_MMPROJ)-mmu, --mmproj-url URLURL to a multimodal projector file. see tools/mtmd/README.md
(env: LLAMA_ARG_MMPROJ_URL)--mmproj-auto, --no-mmproj, --no-mmproj-autowhether to use multimodal projector file (if available), useful when using -hf (default: enabled)
(env: LLAMA_ARG_MMPROJ_AUTO)--mmproj-offload, --no-mmproj-offloadwhether to enable GPU offloading for multimodal projector (default: enabled)
(env: LLAMA_ARG_MMPROJ_OFFLOAD)-mmdev, --mmproj-device DEVICEdevice to use for multimodal projector (none = don't offload, default: follows --device)
use --list-devices to see a list of available devices
(env: MTMD_BACKEND_DEVICE)--image, --audio, --video FILEpath to an image, audio, or video file. use with multimodal models, use comma-separated values for multiple files--image-min-tokens Nminimum number of tokens each image can take, only used by vision models with dynamic resolution (default: read from model)
(env: LLAMA_ARG_IMAGE_MIN_TOKENS)--image-max-tokens Nmaximum number of tokens each image can take, only used by vision models with dynamic resolution (default: read from model)
(env: LLAMA_ARG_IMAGE_MAX_TOKENS)--video-fps Ntarget video frame rate (default: 4.0)
(env: LLAMA_ARG_VIDEO_FPS)--video-timestamp-interval Ninterval in milliseconds between text timestamps (default: 5000)
(env: LLAMA_ARG_VIDEO_TIMESTAMP_INTERVAL)--video-ffmpeg-dir DIRpath to the directory containing ffmpeg and ffprobe (default: search in PATH)
(env: LLAMA_ARG_VIDEO_FFMPEG_DIR)-o, --output, --output-file FNAMEoutput file (default: '')--chat-template-kwargs STRINGsets additional params for the json template parser, must be a valid json object string, e.g. '{"key1":"value1","key2":"value2"}'
(env: LLAMA_ARG_CHAT_TEMPLATE_KWARGS)--jinja, --no-jinjawhether to use jinja template engine for chat (default: enabled)
(env: LLAMA_ARG_JINJA)--reasoning-format FORMATcontrols whether thought tags are allowed and/or extracted from the response, and in which format they're returned; one of:
- none: leaves thoughts unparsed in message.content
- deepseek: puts thoughts in message.reasoning_content
- deepseek-legacy: keeps <think> tags in message.content while also populating message.reasoning_content
(default: auto)
(env: LLAMA_ARG_THINK)-rea, --reasoning [on|off|auto]Use reasoning/thinking in the chat ('on', 'off', or 'auto', default: 'auto' (detect from template))
(env: LLAMA_ARG_REASONING)--reasoning-effort LEVELreasoning effort level given to the chat template: 'default' to keep the template default,
or a level such as 'minimal', 'low', 'medium', 'high', 'xhigh' or 'max' (default: default)
(env: LLAMA_ARG_REASONING_EFFORT)--reasoning-budget Ntoken budget for thinking: -1 for unrestricted, 0 for immediate end, N>0 for token budget (default: -1)
(env: LLAMA_ARG_THINK_BUDGET)--reasoning-budget-message MESSAGEmessage injected before the end-of-thinking tag when reasoning budget is exhausted (default: none)
(env: LLAMA_ARG_THINK_BUDGET_MESSAGE)--reasoning-preserve, --no-reasoning-preservepreserve reasoning trace in the full history, not just the last assistant message (default: enabled)
compatible with certain templates having 'supports_preserve_reasoning' capability
example:
https://docs.z.ai/guides/capabilities/thinking-mode#preserved-thinking
(env: LLAMA_ARG_REASONING_PRESERVE)--chat-template JINJA_TEMPLATEset custom jinja chat template (default: template taken from model's metadata)
if suffix/prefix are specified, template will be disabled
only commonly used templates are accepted (unless --jinja is set before this flag):
list of built-in templates:
bailing, bailing-think, bailing2, chatglm3, chatglm4, chatml, command-r, deepseek, deepseek-ocr, deepseek2, deepseek3, exaone-moe, exaone3, exaone4, falcon3, gemma, gigachat, glmedge, gpt-oss, granite, granite-4.0, granite-4.1, grok-2, hunyuan-dense, hunyuan-moe, hunyuan-vl, kimi-k2, llama2, llama2-sys, llama2-sys-bos, llama2-sys-strip, llama3, llama4, megrez, minicpm, mistral-v1, mistral-v3, mistral-v3-tekken, mistral-v7, mistral-v7-tekken, monarch, openchat, orion, pangu-embedded, phi3, phi4, rwkv-world, seed_oss, smolvlm, solar-open, vicuna, vicuna-orca, yandex, zephyr
(env: LLAMA_ARG_CHAT_TEMPLATE)--chat-template-file JINJA_TEMPLATE_FILEset custom jinja chat template file (default: template taken from model's metadata)
if suffix/prefix are specified, template will be disabled
only commonly used templates are accepted (unless --jinja is set before this flag):
list of built-in templates:
bailing, bailing-think, bailing2, chatglm3, chatglm4, chatml, command-r, deepseek, deepseek-ocr, deepseek2, deepseek3, exaone-moe, exaone3, exaone4, falcon3, gemma, gigachat, glmedge, gpt-oss, granite, granite-4.0, granite-4.1, grok-2, hunyuan-dense, hunyuan-moe, hunyuan-vl, kimi-k2, llama2, llama2-sys, llama2-sys-bos, llama2-sys-strip, llama3, llama4, megrez, minicpm, mistral-v1, mistral-v3, mistral-v3-tekken, mistral-v7, mistral-v7-tekken, monarch, openchat, orion, pangu-embedded, phi3, phi4, rwkv-world, seed_oss, smolvlm, solar-open, vicuna, vicuna-orca, yandex, zephyr
(env: LLAMA_ARG_CHAT_TEMPLATE_FILE)--skip-chat-parsing, --no-skip-chat-parsingforce a pure content parser, even if a Jinja template is specified; model will output everything in the content section, including any reasoning and/or tool calls (default: disabled)
(env: LLAMA_ARG_SKIP_CHAT_PARSING)--simple-iouse basic IO for better compatibility in subprocesses and limited consoles--log-prompts-dir PATHLog prompts to directory (auto-created if not present; only used for debugging, default: disabled)--spec-draft-hf, -hfd, -hfrd, --hf-repo-draft <user>/<model>[:quant]Same as --hf-repo, but for the draft model (default: unused)
(env: LLAMA_ARG_SPEC_DRAFT_HF_REPO)--spec-draft-threads, -td, --threads-draft Nnumber of threads to use during generation (default: same as --threads)--spec-draft-threads-batch, -tbd, --threads-batch-draft Nnumber of threads to use during batch and prompt processing (default: same as --threads-draft)--spec-draft-cpu-mask, -Cd, --cpu-mask-draft MDraft model CPU affinity mask. Complements cpu-range-draft (default: same as --cpu-mask)--spec-draft-cpu-range, -Crd, --cpu-range-draft lo-hiRanges of CPUs for affinity. Complements --cpu-mask-draft--spec-draft-cpu-strict, --cpu-strict-draft <0|1>Use strict CPU placement for draft model (default: same as --cpu-strict)--spec-draft-prio, --prio-draft Nset draft process/thread priority : 0-normal, 1-medium, 2-high, 3-realtime (default: 0)--spec-draft-poll, --poll-draft <0|1>Use polling to wait for draft model work (default: same as --poll)--spec-draft-cpu-mask-batch, -Cbd, --cpu-mask-batch-draft MDraft model CPU affinity mask. Complements cpu-range-draft (default: same as --cpu-mask)--spec-draft-cpu-strict-batch, --cpu-strict-batch-draft <0|1>Use strict CPU placement for draft model (default: --cpu-strict-draft)--spec-draft-prio-batch, --prio-batch-draft Nset draft process/thread priority : 0-normal, 1-medium, 2-high, 3-realtime (default: 0)--spec-draft-poll-batch, --poll-batch-draft <0|1>Use polling to wait for draft model work (default: --poll-draft)--spec-draft-override-tensor, -otd, --override-tensor-draft <tensor name pattern>=<buffer type>,...override tensor buffer type for draft model--spec-draft-cpu-moe, -cmoed, --cpu-moe-draftkeep all Mixture of Experts (MoE) weights in the CPU for the draft model
(env: LLAMA_ARG_SPEC_DRAFT_CPU_MOE)--spec-draft-n-cpu-moe, --spec-draft-ncmoe, -ncmoed, --n-cpu-moe-draft Nkeep the Mixture of Experts (MoE) weights of the first N layers in the CPU for the draft model
(env: LLAMA_ARG_SPEC_DRAFT_N_CPU_MOE)--spec-draft-n-max Nnumber of tokens to draft for speculative decoding (default: 3)
(env: LLAMA_ARG_SPEC_DRAFT_N_MAX)--spec-draft-n-min Nminimum number of draft tokens to use for speculative decoding (default: 0)
(env: LLAMA_ARG_SPEC_DRAFT_N_MIN)--spec-synth-len Ltarget mean synthetic acceptance length, including the target token (benchmarking only)
(env: LLAMA_ARG_SPEC_SYNTH_LEN)--spec-synth-rates P0,P1,...comma-separated unconditional per-position synthetic acceptance probabilities (benchmarking only)
(env: LLAMA_ARG_SPEC_SYNTH_RATES)--spec-draft-p-split, --draft-p-split Pspeculative decoding split probability (default: 0.10)
(env: LLAMA_ARG_SPEC_DRAFT_P_SPLIT)--spec-draft-p-min, --draft-p-min Pminimum speculative decoding probability (greedy) (default: 0.00)
(env: LLAMA_ARG_SPEC_DRAFT_P_MIN)--spec-draft-backend-sampling, --no-spec-draft-backend-samplingoffload draft sampling to the backend (default: enabled)
(env: LLAMA_ARG_SPEC_DRAFT_BACKEND_SAMPLING)--spec-draft-device, -devd, --device-draft <dev1,dev2,..>comma-separated list of devices to use for offloading the draft model (none = don't offload, default: follows --device)
use --list-devices to see a list of available devices--spec-draft-ngl, -ngld, --gpu-layers-draft, --n-gpu-layers-draft Nmax. number of draft model layers to store in VRAM, either an exact number, 'auto', or 'all' (default: auto)
(env: LLAMA_ARG_N_GPU_LAYERS_DRAFT)--spec-draft-model, -md, --model-draft FNAMEdraft model for speculative decoding (default: unused)
(env: LLAMA_ARG_SPEC_DRAFT_MODEL)--spec-type none,draft-simple,draft-eagle3,draft-mtp,draft-dflash,draft-dspark,ngram-simple,ngram-map-k,ngram-map-k4v,ngram-mod,ngram-cachecomma-separated list of types of speculative decoding to use (default: none)(env: LLAMA_ARG_SPEC_TYPE)
--spec-ngram-mod-n-min Nminimum number of ngram tokens to use for ngram-based speculative decoding (default: 48)--spec-ngram-mod-n-max Nmaximum number of ngram tokens to use for ngram-based speculative decoding (default: 64)--spec-ngram-mod-n-match Nngram-mod lookup length (default: 24)--spec-ngram-simple-size-n Nngram size N for ngram-simple speculative decoding, length of lookup n-gram (default: 12)--spec-ngram-simple-size-m Nngram size M for ngram-simple speculative decoding, length of draft m-gram (default: 48)--spec-ngram-simple-min-hits Nminimum hits for ngram-simple speculative decoding (default: 1)--spec-ngram-map-k-size-n Nngram size N for ngram-map-k speculative decoding, length of lookup n-gram (default: 12)--spec-ngram-map-k-size-m Nngram size M for ngram-map-k speculative decoding, length of draft m-gram (default: 48)--spec-ngram-map-k-min-hits Nminimum hits for ngram-map-k speculative decoding (default: 1)--spec-ngram-map-k4v-size-n Nngram size N for ngram-map-k4v speculative decoding, length of lookup n-gram (default: 12)--spec-ngram-map-k4v-size-m Nngram size M for ngram-map-k4v speculative decoding, length of draft m-gram (default: 48)--spec-ngram-map-k4v-min-hits Nminimum hits for ngram-map-k4v speculative decoding (default: 1)--draft, --draft-n, --draft-max Nthe argument has been removed. use --spec-draft-n-max or --spec-ngram-mod-n-max
(env: LLAMA_ARG_DRAFT_MAX)--draft-min, --draft-n-min Nthe argument has been removed. use --spec-draft-n-min or --spec-ngram-mod-n-min
(env: LLAMA_ARG_DRAFT_MIN)--gpt-oss-20b-defaultuse gpt-oss-20b (note: can download weights from the internet)--gpt-oss-120b-defaultuse gpt-oss-120b (note: can download weights from the internet)--vision-gemma-4b-defaultuse Gemma 3 4B QAT (note: can download weights from the internet)--vision-gemma-12b-defaultuse Gemma 3 12B QAT (note: can download weights from the internet)--spec-defaultenable default speculative decoding config