vLLM/Recipes
Search

Recipes API

JSON and Markdown for scripts and AI agents.

Every recipe on this site is also available to scripts and AI agents — no key, the same data the pages render.

Any page, as Markdown or JSON

Take a recipe page URL, configured in the builder however you like, and add .md or .json. The query string carries the configuration, so the response is the command for exactly what the page shows:

https://recipes.vllm.ai/deepseek-ai/DeepSeek-R1?hardware=b200&strategy=single_node_dep         ← the page
https://recipes.vllm.ai/deepseek-ai/DeepSeek-R1.md?hardware=b200&strategy=single_node_dep      ← that configuration as Markdown
https://recipes.vllm.ai/deepseek-ai/DeepSeek-R1.json?hardware=b200&strategy=single_node_dep    ← that configuration as JSON

Adding the extension to the end of the whole URL (…&strategy=single_node_dep.md) works too. The Copy page menu on every recipe page links both forms for the current selection.

  • Markdown leads with the rendered command (marked authoritative), then the notes and known issues that apply to this configuration, the tuned preset in effect, and the guide as background — the form to hand to an AI assistant.
  • JSON has the same shape as the static per-hardware renderings below, plus selection (what was rendered), page_url and markdown_url.
# The serve command for DeepSeek-R1 on 8× B200, data + expert parallel
curl -s "https://recipes.vllm.ai/deepseek-ai/DeepSeek-R1.json?hardware=b200&strategy=single_node_dep" | jq -r .command

# Multi-node: one command per node — never replay one on every node
curl -s "https://recipes.vllm.ai/deepseek-ai/DeepSeek-R1.json?hardware=h100&strategy=multi_node_tp&nodes=2" | jq -r '.head_command, .worker_commands[]'

Query parameters

The same ones the page URL uses. Values the recipe can't run fall back to its defaults, and selection.adjusted (JSON) or a note under the Configuration line (Markdown) says what changed and why.

ParameterValue
hardwareA hardware profile id, e.g. h200, b200, gb300, mi355x (taxonomy)
variantA variant key of the recipe (default, nvfp4, …)
strategyA serving strategy id (strategies); multi-node ones also need nodes
nodesNode count for a multi-node strategy (nodes per instance under Mooncake)
featuresComma-separated feature keys to turn on (tool_calling,reasoning, …); absent = the recipe default
preset, pointA tuned preset and its operating point; preset=baseline drops a default preset
kv_offloadA KV offload option (simple, lmcache, … — kv_offload in the taxonomy) or a Mooncake topology (kv_store_distributed_mooncake, kv_store_centralized_mooncake)
prefill_nodes, decode_nodes, prefill_mode, decode_mode, pd_router, pd_connectorPrefill/decode disaggregation (strategy=pd_cluster)

Each recipe's Markdown lists the values it accepts under Other configurations.

Static files

Built with the site; cheap to fetch in bulk.

PathContents
/models.jsonEvery recipe: id, title, provider, page and JSON links
/<hf_id>.jsonOne recipe: metadata, variants, features, guide, and recommended_command with a by_hardware index
/<hf_id>/hw/<hardware>.jsonThe recommended rendering on one hardware profile, with alternatives per strategy
/<hf_id>/hw/<hardware>/strategies/<strategy>.jsonOne hardware × strategy rendering
/<hf_id>/presets/<preset>.jsonA tuned preset, rendered at each of its points
/strategies.json, /taxonomy.jsonServing strategies; hardware profiles and the rest of the vocabulary
/recipe.schema.jsonJSON Schema of a recipe YAML

For AI assistants

  • /llms.txt — an index of every recipe, linking its Markdown form.
  • /llms-full.txt — the full text of every recipe in one file.