Skip to content

Model catalog

One page per model, for the models served at https://developer.amd.com.cn/radeon/api/v1.

GET /v1/models is the source of truth for what is available — a page existing here does not guarantee the model is currently published. All of them answer on /v1/chat/completions except five, which have their own endpoints: MinerU2.5-Pro (document OCR), OmniVoice (text-to-speech), and Clef, d3 and d3-flash (decisions).

Send the model ID in model, exactly as written. Copy it from the Model field on the model’s card in Token Factory, or from id in GET /v1/models. The card title and the name field can differ from the ID, and neither is accepted in its place:

Model ID (send this)Card titlename in /v1/models
DeepSeek-V4-FlashDeepSeek-V4-Flash-0731DeepSeek-V4-Flash
DeepSeek-V4.1-FlashDeepSeek-V4.1-Flash-1017DeepSeek-V4.1-Flash
Gemma-4-31B-ITGemma-4-31B-ITGemma 4 31B

For every other model, the ID, the card title and name are the same.

Thinks by default means the model thinks even when the request doesn’t ask it to. See Thinking.

ModelContextImage inputThinks by default
DeepSeek-V4-Flash1,048,576❌❌
DeepSeek-V4-Flash-Vision-Exp1,048,576✅❌
DeepSeek-V4.1-Flash1,048,576✅❌
Qwen3.8-Flash-Next262,144✅✅
Qwen3.8-27B262,144✅✅
GLM-5.3-Flash262,144❌✅
MiMo-V2.6-Flash1,048,576✅✅
MiniCPM5-2B131,072❌❌
MiniCPM-V-4.7-1B262,144✅❌
MiniCPM-V-4.7-35B-A3B262,144✅❌
Gemma-4-31B-IT262,144✅❌

Five models are not in this table, and the parameters below do not apply to them:

ModelEndpointTakesReturnsBilled per
MinerU2.5-ProPOST /v1/ocra PDF or an imageMarkdownpage
OmniVoicePOST /v1/audio/speechtext, up to 4,096 charactersan audio fileinput character
ClefPOST /v1/systemonea state, optional images, typed questionsa probability for every answerinput token
d3POST /v1/systemonea state, optional images and videos, typed questionsa probability for every answerinput token
d3-flashPOST /v1/systemonea state, optional images and videos, typed questionsa probability for every answerinput token

Token Factory meters usage in points (pts). Points aren’t money and are separate from your credits; see Usage and quota. The rates below were read from the model cards on 2026-10-19 and are in pts per million tokens unless noted. Rates can change, so check the model’s card for the current values.

ModelInputOutputCache read
DeepSeek-V4-Flash0.140.280.0028
DeepSeek-V4-Flash-Vision-Exp0.140.280.0028
DeepSeek-V4.1-Flash0.280.560.0056
Qwen3.8-Flash-Next0.140.280.0028
Qwen3.8-27B0.0350.070.0007
GLM-5.3-Flash0.280.560.0056
MiMo-V2.6-Flash0.140.280.0028
MiniCPM5-2B0.0350.070.0007
MiniCPM-V-4.7-1B0.0350.070.0007
MiniCPM-V-4.7-35B-A3B0.0350.070.0007
Gemma-4-31B-IT0.0350.070.0007
Clef0.035——
d30.035——
d3-flash0.035——
OmniVoice0.035 per million characters——
MinerU2.5-Pro0.001 per page——

Three things on the cards differ from what is billed:

  • The Clef, d3, d3-flash and OmniVoice cards also show a Cache read rate. Those models are not billed for cache reads.
  • The OmniVoice card labels its input rate per 1M tokens. It is billed per million input characters.
  • The MinerU2.5-Pro card shows no rate. It is billed per page processed.

The accepted tiers differ per model:

ModelAccepted values
DeepSeek-V4-Flashnone minimal low medium high xhigh max
DeepSeek-V4-Flash-Vision-Expnone minimal low medium high xhigh max
DeepSeek-V4.1-Flashnone minimal low medium high xhigh max
Qwen3.8-Flash-Nextnone low medium xhigh
Qwen3.8-27Blow medium xhigh
GLM-5.3-Flashlow medium high
MiMo-V2.6-Flashnone minimal low medium high xhigh max

The parameter may also be omitted entirely. MiniCPM5-2B does not return separated thinking, so reasoning_effort does not apply to it.

MiMo-V2.6-Flash accepts every value but doesn’t act on it: in tests on 2026-10-19, every value, none included, returned the same short reasoning. You can’t turn its thinking off.

MiniCPM-V-4.7-1B, MiniCPM-V-4.7-35B-A3B and Gemma-4-31B-IT turn thinking on with chat_template_kwargs: {"enable_thinking": true} instead. How they treat reasoning_effort has not been verified.

ModelWithout a thinking parameterTop-level reasoning_tokens
DeepSeek-V4-Flashdoes not think✅
DeepSeek-V4-Flash-Vision-Expdoes not think✅
DeepSeek-V4.1-Flashdoes not think✅
Qwen3.8-Flash-Nextthinks anyway✅
Qwen3.8-27Bthinks anyway❌
GLM-5.3-Flashthinks anyway❌
MiMo-V2.6-Flashthinks anyway❌
MiniCPM5-2Bdoes not think❌
MiniCPM-V-4.7-1Bdoes not thinknot verified
MiniCPM-V-4.7-35B-A3Bdoes not thinknot verified
Gemma-4-31B-ITdoes not thinknot verified

The Qwen3.8-27B usage values were measured on its earlier vLLM deployment.

Thinking text arrives in choices[0].message.reasoning. MiniCPM5-2B answers directly, so that field is empty and reasoning_tokens is 0 — read content for its answer.

For the token count use usage.completion_tokens_details.reasoning_tokens. There are two exceptions. Qwen3.8-27B omitted the completion_tokens_details object on its earlier deployment, and MiMo-V2.6-Flash reports 0 there even when it thinks. Their thinking tokens cannot be separated from the rest of the output. They are still counted in usage.completion_tokens, and still billed.

Modelsystem messagesRole name
DeepSeek-V4-Flashany position, more than one allowedsystem or developer
DeepSeek-V4-Flash-Vision-Expany position, more than one allowedsystem or developer
DeepSeek-V4.1-Flashany position, more than one allowedsystem or developer
Qwen3.8-Flash-Nextexactly one, and it must come firstsystem
Qwen3.8-27Bat most one, and it must come firstsystem
GLM-5.3-Flashany position, more than one allowedsystem
MiMo-V2.6-Flashany position, more than one allowedsystem or developer
MiniCPM5-2Bany position, more than one allowedsystem
MiniCPM-V-4.7-1Bone, first; other placements not verifiedsystem
MiniCPM-V-4.7-35B-A3Bone, first; other placements not verifiedsystem
Gemma-4-31B-ITone, first; other placements not verifiedsystem

The three DeepSeek models and MiMo-V2.6-Flash accept developer as an alias for system. Qwen3.8-27B rejects it with Unexpected message role., and Qwen3.8-Flash-Next, GLM-5.3-Flash and MiniCPM5-2B reject it with a deserialisation error naming the offending index:

Failed to deserialize the JSON body into the target type: messages[0]: unknown role: developer

The developer role has not been verified on the MiniCPM-V-4.7 models or Gemma-4-31B-IT. Newer OpenAI SDKs emit developer in place of system. If yours does, override it back.

The constraints on the two Qwen models come from the Jinja chat template shipped with their weights, not from a gateway rule. Qwen3.8-27B reports a violation as System message must be at the beginning.

The shape every model accepts: a single system message at index 0, with the role spelled system.

Every chat model here supports:

  • response_format: {"type": "json_object"}
  • function calling via tools + tool_choice

parallel_tool_calls is accepted everywhere, but emitting several tool_calls in one turn is the model’s own choice — do not build on it.

Eight chat models take images; put an image_url content part in the content array:

ModelWhere image usage is reported
DeepSeek-V4-Flash-Vision-Expusage.prompt_tokens_details.image_tokens, 115 in the sample
DeepSeek-V4.1-Flashusage.prompt_tokens_details.image_tokens, 202 in the sample
Qwen3.8-Flash-Nextusage.prompt_tokens_details.image_tokens, 144 in the sample
Qwen3.8-27Busage.prompt_tokens_details.multimodal_tokens.image, 72 in the sample, on its earlier deployment
MiMo-V2.6-Flashusage.prompt_tokens_details.image_tokens
MiniCPM-V-4.7-1Busage.prompt_tokens_details.image_tokens
MiniCPM-V-4.7-35B-A3Busage.prompt_tokens_details.image_tokens
Gemma-4-31B-ITnot verified
{
"model": "DeepSeek-V4-Flash-Vision-Exp",
"messages": [{
"role": "user",
"content": [
{ "type": "image_url", "image_url": { "url": "data:image/png;base64,iVBORw0KGgo..." } },
{ "type": "text", "text": "What does this image say?" }
]
}]
}

Check the table above before sending images; the remaining chat models are text-only. To pull text out of a PDF or a scan, use MinerU2.5-Pro — it returns Markdown and is billed per page.

The shape every chat model here accepts:

  • a single system message at index 0, with the role spelled system
  • reasoning_effort of low or medium, or omitted entirely — not high (400 on Qwen3.8-27B) and not xhigh (422 on GLM-5.3-Flash)
  • read thinking text from choices[0].message.reasoning
  • read thinking tokens from usage.completion_tokens_details.reasoning_tokens (Qwen3.8-27B omitted it on its earlier deployment, and MiMo-V2.6-Flash reports 0)
  • use response_format: {"type": "json_object"} for JSON
  • keep content textual unless the target model supports images
  • size max_tokens against the target model’s window — they span 131,072 to 1,048,576, an eightfold difference
Accepted parameterstemperature, max_tokens, top_p, stream, response_format, tools, tool_choice, parallel_tool_calls, reasoning_effort
Forwarded unchangedchat_template_kwargs
Silently droppedstop, seed, logit_bias, logprobs, top_logprobs, top_k, min_p, repetition_penalty
How to turn thinking onreasoning_effort (or the equivalent reasoning.effort); chat_template_kwargs.enable_thinking on the MiniCPM-V-4.7 models and Gemma-4-31B-IT
Reported tokenizerGPT
Stabilityexperimental

Other parameters are stripped before the request reaches the inference backend — no error, no effect. If you need them, serve the model yourself as a model service, which forwards the request body to vLLM untouched.