LLAMA-PASSKEY(1)

πŸ“¦
version 10438 Β· 2 versions
, in ubuntu stonking

πŸ’– NAME πŸ’–

llama-passkey β€” okay so it's giving... llama-passkey. that's the name bestie, that's the whole thing. πŸ’…


✨ DESCRIPTION ✨

heyyy so this is the man page for llama-passkey, manual page 1 (the User Commands girlies, iykyk). literally all the lore is in one place: the common params. there are a LOT of them. grab a boba, sit down, we're doing this together. πŸ“πŸ¦‹

πŸŽ€ ----- common params ----- πŸŽ€

  • -h, --help, --usage β€” print the usage and dip. that's it, that's the whole job. πŸ‘‘
  • --version β€” show the version and the build info, so you can flex your build ✨
  • -cl, --cache-list β€” show the list of models chillin' in your cache πŸ—‚οΈ
  • --completion-bash β€” print a source-able bash completion script for llama.cpp. free autocomplete, no cap πŸ™Œ
  • -t, --threads N β€” number of CPU threads to use during generation (default: <num_cpus>)

(env: LLAMA_ARG_THREADS)

  • -tb, --threads-batch N β€” number of threads to use during batch and prompt processing (default: same as --threads)
  • -C, --cpu-mask M β€” CPU affinity mask: an arbitrarily long hex string. Complements cpu-range

(default: "")

  • -Cr, --cpu-range lo-hi β€” range of CPUs to use for affinity. Complements --cpu-mask
  • --cpu-strict <0|1> β€” use strict CPU placement (default: 0)
  • --prio N β€” set 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 M β€” CPU affinity mask: arbitrarily long hex. Complements cpu-range-batch

(default: same as --cpu-mask)

  • -Crb, --cpu-range-batch lo-hi β€” ranges of CPUs to use for affinity. Complements --cpu-mask-batch
  • --cpu-strict-batch <0|1> β€” use strict CPU placement (default: same as --cpu-strict)
  • --prio-batch N β€” set 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 N β€” size of the prompt context (default: 0, and 0 = loaded from the model)

(env: LLAMA_ARG_CTX_SIZE)

  • -n, --predict, --n-predict N β€” number of tokens to predict (default: -1, and -1 = infinity, so go feral 🌈)

(env: LLAMA_ARG_N_PREDICT)

  • -b, --batch-size N β€” logical maximum batch size (default: 2048)

(env: LLAMA_ARG_BATCH)

  • -ub, --ubatch-size N β€” physical maximum batch size (default: 512)

(env: LLAMA_ARG_UBATCH)

(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 PROMPT β€” prompt to start generation with; and if you want a system message, use -sys 🫢
  • --perf, --no-perf β€” whether to enable internal libllama performance timings (default: false) (env: LLAMA_ARG_PERF)
  • -f, --file FNAME β€” a file containing the prompt (default: none)
  • -bf, --binary-file FNAME β€” a binary file containing the prompt (default: none)
  • -e, --escape, --no-escape β€” whether to process escapes sequences (\n, \r, \t, \', \", \\)

(default: true)

  • --rope-scaling {none,linear,yarn} β€” RoPE frequency scaling method, defaults to linear unless the model itself specified something (env: LLAMA_ARG_ROPE_SCALING_TYPE)
  • --rope-scale N β€” RoPE context scaling factor, expands context by a factor of N (env: LLAMA_ARG_ROPE_SCALE)
  • --rope-freq-base N β€” RoPE base frequency, used by NTK-aware scaling (default: loaded from model) (env: LLAMA_ARG_ROPE_FREQ_BASE)
  • --rope-freq-scale N β€” RoPE frequency scaling factor, expands context by a factor of 1/N (env: LLAMA_ARG_ROPE_FREQ_SCALE)
  • --yarn-orig-ctx N β€” YaRN: original context size of the model (default: 0 = model training context size) (env: LLAMA_ARG_YARN_ORIG_CTX)
  • --yarn-ext-factor N β€” YaRN: extrapolation mix factor (default: -1.00, and 0.0 = full interpolation) (env: LLAMA_ARG_YARN_EXT_FACTOR)
  • --yarn-attn-factor N β€” YaRN: scale sqrt(t) or attention magnitude (default: -1.00) (env: LLAMA_ARG_YARN_ATTN_FACTOR)
  • --yarn-beta-slow N β€” YaRN: high correction dim or alpha (default: -1.00) (env: LLAMA_ARG_YARN_BETA_SLOW)
  • --yarn-beta-fast N β€” YaRN: low correction dim or beta (default: -1.00) (env: LLAMA_ARG_YARN_BETA_FAST)
  • -kvo, --kv-offload, -nkvo, --no-kv-offload β€” whether to enable KV cache offloading (default: enabled)

(env: LLAMA_ARG_KV_OFFLOAD)

  • --repack, -nr, --no-repack β€” whether to enable weight repacking (default: enabled) (env: LLAMA_ARG_REPACK)
  • --no-host β€” bypass the host buffer, which lets extra buffers be used (env: LLAMA_ARG_NO_HOST)
  • -ctk, --cache-type-k TYPE β€” KV 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 TYPE β€” KV 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 N β€” KV cache defragmentation threshold (DEPRECATED, bestie, it's giving legacy 😭)

(env: LLAMA_ARG_DEFRAG_THOLD)

  • -np, --parallel N β€” number of parallel sequences to decode (default: 1)

(env: LLAMA_ARG_N_PARALLEL)

  • --mlock β€” DEPRECATED in favor of --load-mode: force system to keep model in RAM rather than swapping or compressing (env: LLAMA_ARG_MLOCK)
  • --mmap, --no-mmap β€” DEPRECATED in favor of --load-mode: whether to memory-map the model. (if mmap is disabled, slower load but may reduce pageouts if not using mlock) (env: LLAMA_ARG_MMAP)
  • -dio, --direct-io, -ndio, --no-direct-io β€” DEPRECATED in favor of --load-mode: use DirectIO if it's available

(env: LLAMA_ARG_DIO)

  • -lm, --load-mode MODE β€” model 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)

  • --numa TYPE β€” attempt 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 https://github.com/ggml-org/llama.cpp/issues/1437

(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-devices β€” print the 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-moe β€” keep all Mixture of Experts (MoE) weights in the CPU

(env: LLAMA_ARG_CPU_MOE)

  • -ncmoe, --n-cpu-moe N β€” keep the Mixture of Experts (MoE) weights of the first N layers in the CPU

(env: LLAMA_ARG_N_CPU_MOE)

  • -ngl, --gpu-layers, --n-gpu-layers N β€” max. 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 INDEX β€” the 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, a single value gets broadcast across all devices, default: 1024 (env: LLAMA_ARG_FIT_TARGET)
  • -fitc, --fit-ctx N β€” minimum ctx size that can be set by the --fit option, default: 4096

(env: LLAMA_ARG_FIT_CTX)

  • --check-tensors β€” check 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-offload β€” whether to offload host tensor operations to device (default: true)
  • --lora FNAME β€” path 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 FNAME β€” add 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 END β€” layer range to apply the control vector(s) to, start and end inclusive
  • -m, --model FNAME β€” model path to load

(env: LLAMA_ARG_MODEL)

  • -mu, --model-url MODEL_URL β€” model download url (default: unused)

(env: LLAMA_ARG_MODEL_URL)

  • -dr, --docker-repo [<repo>/]<model>[:quant]

Continuing that same options list β€” the Docker Hub model repository one goes like this: repo is optional, it defaults to ai/. quant is optional too, and defaults to :latest. example: gemma3 (default: unused) (env: LLAMA_ARG_DOCKER_REPO).

  • -hf, -hfr, --hf-repo <user>/<model>[:quant] β€” bestie, this is the Hugging Face model repository one πŸ’–. quant is optional and case-insensitive, defaults 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 FILE β€” Hugging Face model file. If specified, it will override the quant in --hf-repo (default: unused) (env: LLAMA_ARG_HF_FILE).
  • -hft, --hf-token TOKEN β€” Hugging Face access token πŸ”‘ (default: value from HF_TOKEN environment variable) (env: HF_TOKEN).
  • --log-disable β€” Log disable. that's it, that's the whole vibe πŸ’€.
  • --log-file FNAME β€” Log to file (env: LLAMA_ARG_LOG_FILE).
  • --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-verbose β€” Set verbosity level to infinity (i.e. log all messages, useful for debugging). yes, infinity. all of it. every crumb πŸ“ (env: LLAMA_ARG_LOG_VERBOSITY).
  • --offline β€” Offline mode: forces use of cache, prevents network access πŸ”Œ (env: LLAMA_ARG_OFFLINE).
  • -lv, --verbosity, --log-verbosity N β€” Set 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-prefix β€” Enable prefix in log messages (env: LLAMA_ARG_LOG_PREFIX).
  • --log-timestamps, --no-log-timestamps β€” Enable timestamps in log messages (env: LLAMA_ARG_LOG_TIMESTAMPS).
  • --spec-draft-type-k, -ctkd, --cache-type-k-draft TYPE β€” KV 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 TYPE β€” KV 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 🎧

okay this is the part where you decide how your model actually talks β€” the whole personality department fr fr.

  • --samplers SAMPLERS β€” samplers 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 SEED β€” RNG seed 🎲 (default: -1, use random seed for -1).
  • --sampler-seq, --sampling-seq SEQUENCE β€” simplified sequence for samplers that will be used (default: edskypmxt).
  • --ignore-eos β€” ignore end of stream token and continue generating (implies --logit-bias EOS-inf). it simply will not stop talking, main character energy πŸ‘‘.
  • --temp, --temperature N β€” temperature (default: 0.80).
  • --top-k N β€” top-k sampling (default: 40, 0 = disabled) (env: LLAMA_ARG_TOP_K).
  • --top-p N β€” top-p sampling (default: 0.95, 1.0 = disabled).
  • --min-p N β€” min-p sampling (default: 0.05, 0.0 = disabled).
  • --top-nsigma, --top-n-sigma N β€” top-n-sigma sampling (default: -1.00, -1.0 = disabled).
  • --xtc-probability N β€” xtc probability (default: 0.00, 0.0 = disabled).
  • --xtc-threshold N β€” xtc threshold (default: 0.10, 1.0 = disabled).
  • --typical, --typical-p N β€” locally typical sampling, parameter p (default: 1.00, 1.0 = disabled).
  • --repeat-last-n N β€” last n tokens to consider for penalize (default: 64, 0 = disabled).
  • --repeat-penalty N β€” penalize repeat sequence of tokens (default: 1.00, 1.0 = disabled).
  • --presence-penalty N β€” repeat alpha presence penalty (default: 0.00, 0.0 = disabled).
  • --frequency-penalty N β€” repeat alpha frequency penalty (default: 0.00, 0.0 = disabled).
  • --dry-multiplier N β€” set DRY sampling multiplier (default: 0.00, 0.0 = disabled).
  • --dry-base N β€” set DRY sampling base value (default: 1.75).
  • --dry-allowed-length N β€” set allowed length for DRY sampling (default: 2).
  • --dry-penalty-last-n N β€” set DRY penalty for the last n tokens (default: 64, 0 = disable).
  • --dry-sequence-breaker STRING β€” add sequence breaker for DRY sampling, clearing out default breakers ('\n', ':', '"', '*') in the process; use "none" to not use any sequence breakers.
  • --adaptive-target N β€” adaptive-p: select tokens near this probability (valid range 0.0 to 1.0; negative = disabled) (default: -1.00) [(more info)](https://github.com/ggml-org/llama.cpp/pull/17927).
  • --adaptive-decay N β€” adaptive-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 N β€” dynamic temperature range (default: 0.00, 0.0 = disabled).
  • --dynatemp-exp N β€” dynamic temperature exponent (default: 1.00).
  • --mirostat N β€” use 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 N β€” Mirostat learning rate, parameter eta (default: 0.10).
  • --mirostat-ent N β€” Mirostat target entropy, parameter tau (default: 5.00).
  • -l, --logit-bias TOKEN_ID(+/-)BIAS β€” modifies 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'. pick a fave token and gas it up or humble it πŸ’….
  • --grammar GRAMMAR β€” BNF-like grammar to constrain generations (see samples in grammars/ dir).
  • --grammar-file FNAME β€” file to read grammar from.
  • -j, --json-schema SCHEMA β€” JSON schema to constrain generations (https://json-schema.org/), e.g. {} for any JSON object. For schemas w/ external $refs, use --grammar + example/json_schema_to_grammar.py instead.
  • -jf, --json-schema-file FILE β€” File containing a JSON schema to constrain generations (https://json-schema.org/), e.g. {} for any JSON object. For schemas w/ external $refs, use --grammar + example/json_schema_to_grammar.py instead.
  • -bs, --backend-sampling β€” enable backend sampling (experimental) (default: disabled) (env: LLAMA_ARG_BACKEND_SAMPLING).
heads up bestie: backend sampling is experimental and off by default, and Mirostat straight-up makes Top K, Nucleus and Locally Typical samplers get ignored if you use it. no cap. 🫢

πŸ§ͺ example-specific params πŸ§ͺ

this is the passkey demo's own little corner of the flag world πŸŽ€

  • -gan, --grp-attn-n N β€” group-attention factor (default: 1) (env: LLAMA_ARG_GRP_ATTN_N).
  • --junk N β€” number of times to repeat the junk text (default: 250).
  • --pos N β€” position of the passkey in the junk text (default: -1).

🌈 example usage

literally just copy-paste this and you're slaying:

llama-passkey -m model.gguf --junk 250 --pos 90 --keep 32 --grp-attn-n 2 [--seed 1234]

and that's the whole page, you made it πŸπŸ’– this one's from the debian crew, dated September 2026, and it's section LLAMA-PASSKEY(1) of the manual β€” go forth and long-context, queen πŸ‘‘βœ¨

πŸ“¦ where this page comes from