Skip to content

本页详细说明 OpenRouter API 支持的所有采样参数:temperature(随机性)、top_p(核采样)、top_k(词表截断)、frequency_penalty/presence_penalty(重复惩罚)、repetition_penalty、min_p、top_a、seed(确定性输出)、max_tokens、response_format(JSON 输出)、structured_outputs、stop、tools/tool_choice(函数调用)、parallel_tool_calls,以及 verbosity(响应详细程度)。

API 参数完整指南

采样参数控制模型的 token 生成过程。可以发送以下列表中的任意参数。

OpenRouter 会为缺省的参数设置默认值(如 temperature 默认 1.0)。部分提供商特定参数(如 Mistral 的 safe_prompt、Hyperbolic 的 raw_mode)会直接透传给对应提供商。

参阅模型的提供商章节确认哪些参数被支持。关于提供商特定参数的管理,点击此处


Temperature

  • Key: temperature
  • 类型: float,范围 0.0 ~ 2.0
  • 默认值: 1.0

控制模型响应的多样性。值越低,响应越可预测;值越高,响应越多样。设为 0 时,相同输入始终产生相同输出。


Top P

  • Key: top_p
  • 类型: float,范围 0.0 ~ 1.0
  • 默认值: 1.0

将模型的选择限制在累计概率达到 P 的 token 集合内。值越低,响应越可预测。类似动态的 Top-K。


Top K

  • Key: top_k
  • 类型: integer,0 或以上
  • 默认值: 0(禁用)

限制每步可选的 token 数量。设为 1 时,模型始终选最可能的下一个 token。默认禁用(模型考虑所有候选)。


Frequency Penalty(频率惩罚)

  • Key: frequency_penalty
  • 类型: float,范围 -2.0 ~ 2.0
  • 默认值: 0.0

基于输入中的出现频率控制 token 重复。出现频率越高的 token,被重新使用的可能性越低(与出现次数成比例)。负值鼓励重用。


Presence Penalty(存在惩罚)

  • Key: presence_penalty
  • 类型: float,范围 -2.0 ~ 2.0
  • 默认值: 0.0

调整已出现过的 token 被重复的概率。与 frequency_penalty 不同,不按出现次数缩放(只要出现过就惩罚)。负值鼓励重用。


Repetition Penalty(重复惩罚)

  • Key: repetition_penalty
  • 类型: float,范围 0.0 ~ 2.0
  • 默认值: 1.0

降低输入中已有 token 的重复概率。值过高可能导致输出不连贯(长句中缺少小词)。惩罚基于原始 token 的概率缩放。


Min P

  • Key: min_p
  • 类型: float,范围 0.0 ~ 1.0
  • 默认值: 0.0

设置 token 被考虑的最低概率阈值(相对于最可能的 token)。例如 Min-P = 0.1,则只允许概率至少为最佳选项 1/10 的 token。


Top A

  • Key: top_a
  • 类型: float,范围 0.0 ~ 1.0
  • 默认值: 0.0

动态 Top-P 变体,只考虑概率"足够高"的 token。值越低,越聚焦于高概率 token;值越高,筛选范围越宽。


Seed(随机种子)

  • Key: seed
  • 类型: integer

设置后,相同 seed 和参数的重复请求应产生相同结果。注意:部分模型不保证确定性。


Max Tokens / Max Completion Tokens

  • Key: max_tokens / max_completion_tokens
  • 类型: integer,1 或以上

设置模型能生成的 token 上限。最大值为上下文长度减去 prompt 长度。


Logit Bias

  • Key: logit_bias
  • 类型: map(token ID → bias)

调整特定 token 的选中概率。bias 范围 -100 ~ 100,加到 logits 上。-1 ~ 1 微调概率,-100 或 100 分别禁止或强制选中该 token。


Logprobs / Top Logprobs

  • Key: logprobs(boolean)、top_logprobs(integer,0 ~ 20)

logprobs: true 返回输出 token 的对数概率。top_logprobs 指定每个位置返回多少个最可能的 token(需先开启 logprobs)。


Response Format(响应格式)

  • Key: response_format
  • 类型: map

强制模型输出特定格式:

json
// JSON 对象模式
{ "type": "json_object" }

// JSON Schema 模式
{
  "type": "json_schema",
  "json_schema": { "name": "...", "schema": { ... }, "strict": true }
}

使用 JSON 模式时,需同时在 system/user message 中要求模型输出 JSON。


Structured Outputs

  • Key: structured_outputs
  • 类型: boolean

如果模型支持,使用 response_format.json_schema 返回结构化输出。


Stop

  • Key: stop
  • 类型: array

遇到指定的任意 token 时立即停止生成。


Tools(工具调用)

  • Key: tools
  • 类型: array

工具调用参数,遵循 OpenAI 工具调用格式,非 OpenAI 提供商会自动转换。详见工具调用文档


Tool Choice

  • Key: tool_choice
  • 类型: string 或 object

控制模型使用工具的方式:

含义
'none'不调用工具,直接生成消息
'auto'自动决定是生成消息还是调用工具
'required'必须调用一个或多个工具
{ "type": "function", "function": { "name": "..." } }强制调用指定工具

Parallel Tool Calls

  • Key: parallel_tool_calls
  • 类型: boolean
  • 默认值: true

是否允许并行函数调用。true 时模型可同时调用多个工具,false 时按顺序调用。仅在提供了 tools 时有效。


Verbosity(响应详细程度)

  • Key: verbosity
  • 类型: enum(low / medium / high / xhigh / max)
  • 默认值: medium

控制响应的详细程度。值越低越简洁,值越高越详细。

对于 Anthropic 模型,映射到 output_config.effort

  • xhigh:Claude 4.7 Opus 及以上支持
  • max:Claude 4.6 Opus 及以上支持

常见问题

Q: temperature 和 top_p 能同时设置吗?

A: 可以,但建议只调整其中一个。同时修改两个参数效果难以预测,通常选一个调整即可。

Q: 设置 seed 后是否能保证完全相同的输出?

A: 不一定。部分模型不支持确定性输出,即使支持,因底层基础设施差异也可能有微小变化。

Q: 如何知道某个模型支持哪些参数?

A: 通过 Models API 返回的 supported_parameters 字段查看。