AGTCloud API Docs
GuidesAPI ReferenceIntegrations and resourcesUpdate and help
Vendor parameter differences

Kimi parameter and protocol differences

Understand Kimi parameter differences and usage across compatible protocols.

For Kimi models, adjust your chosen protocol's parameters using this page. See Chat Completions, Responses and Messages for full request and response structures.

Applicable models

ModelApplies to
kimi-k3.1-pro, kimi-k3.1-pro-highspeed, kimi-k3Shared parameter rules for the three protocols below; the applicable models for specific extensions are identified in each row

Chat Completions differences

FieldDifference
temperature, top_pFixed at 1.0 and 0.95, respectively; preferably omit them. Other values return an error
n, presence_penalty, frequency_penaltyFixed at 1, 0 and 0, respectively; other values return an error
reasoning_effortSupports low/high/max; default: max. Thinking and retained thinking are always enabled; do not use the K2.x thinking switch
max_completion_tokensDefault: 131072; maximum: 1048576. The output budget is reduced automatically if input plus output budget exceeds the context window; the input itself must still fit
stopAt most 5 strings, each no longer than 32 bytes
tool_choiceSupports auto/none/required; the object form specifying a function is incompatible with enabled thinking and returns 400
messages[].reasoning_contentReplay complete assistant messages unchanged in multi-turn conversations and tool calls, including thinking and tool_calls
messages[].partialKimi Partial Mode extension: set true on the final assistant message to continue from the supplied prefix; do not combine it with response_format.type=json_object
messages[].toolsDynamic tool extension, documented for kimi-k3.1-pro and kimi-k3: append a system message containing the full tool definitions and no content. Tools become visible from that position; retain this message in later requests

Responses differences

FieldDifference
reasoning.effortSupports low/high/max; default: max
max_output_tokensDefault: 131072; maximum: 1048576
tool_choiceOnly auto is supported
tools[].typeOnly function/namespace/custom/web_search is supported; the custom tool name must be apply_patch
text.formatUse type: "json_schema" and schema; name defaults to output when omitted
Conversation state fields in the responsestore and background are fixed at false; previous_response_id and conversation at null. Replay historical input and output on the client rather than relying on a server-side response chain

Messages differences

FieldDifference
max_tokensRequired; minimum: 1; 0 is not allowed
output_config.effortSupports low/high/max; default: max
tool_choice.typeSupports auto/any/none; default: auto
stop_sequencesAt most 5 strings, each no longer than 32 bytes
Historical thinking blocksReplay them unchanged with signature in the next assistant message
output_config.formatStructured output requires type: "json_schema" and schema

Cache differences

FieldDifference
Chat / Responses prompt_cache_optionsmode only supports implicit; ttl supports 5m/1h, defaulting to 5m. Omitting the configuration still writes a 5-minute cache by default
Chat / Responses prompt_cache_breakpointExplicit breakpoints are unsupported; including one in content returns 400
Messages cache_controlOnly the request-level configuration takes effect; markers within messages are ignored. type is fixed at ephemeral; ttl supports 5m/1h, defaulting to 5m. Without it, the cache is still read and written with a 5-minute TTL
Reasoning effortChanging the effort level breaks prefix cache hits; select it at the start of the conversation

Media input differences

InputProtocol content blockDifference
Imageimage_urlChat: image_url.url uses a Base64 Data URL or a vendor ms://<file_id> reference; ordinary public image URLs are unsupported
Videovideo_urlChat: use a Base64 Data URL or an ms://<file_id> reference to an uploaded video
Imageinput_imageResponses: image_url uses a Base64 Data URL; public HTTP(S) URLs are unsupported
ImageimageMessages: provide media_type and data for source.type=base64; for source.type=url, supply the vendor ms://<file_id> reference in source.url
SVGImage inputSVG images are unsupported, including Base64. To analyze SVG, send its XML source as text instead

ms:// is Kimi's native file reference format and requires uploading the file to Kimi first. This page does not provide an AGTCloud file upload endpoint.

Request examples

Replace MODEL_ID with the full model ID available at your selected protocol endpoint, and use your own API Key.

curl 'https://api.agtcloud.ai/v1/chat/completions' \
  -H 'Authorization: Bearer your-api-key' \
  -H 'Content-Type: application/json' \
  --data '{
    "model": "MODEL_ID",
    "messages": [{"role": "user", "content": "Explain how to troubleshoot an API timeout in three points"}],
    "reasoning_effort": "low",
    "max_completion_tokens": 4096,
    "prompt_cache_options": {"mode": "implicit", "ttl": "1h"}
  }'

Official references

On this page