Parameters
采样参数
原文链接:https://openrouter.ai/docs/api/reference/parameters
采样参数塑造模型的 token 生成过程。你可以向 OpenRouter 发送以下列表中的任何参数以及其他参数。
如果你的请求中缺少某些参数,OpenRouter 将默认为列出的值(例如 temperature 为 1.0)。我们还将传输一些 provider 特定的参数,例如 Mistral 的 safe_prompt 或 Hyperbolic 的 raw_mode,如果指定的话,它们会直接发送到各自的 providers。
请参阅模型的 provider 部分以确认支持哪些参数。
Temperature
- Key:
temperature - 可选,float,0.0 到 2.0
- 默认值:1.0
此设置影响模型响应的多样性。较低的值导致更可预测和典型的响应,而较高的值鼓励更不同和不太常见的响应。在 0 时,模型始终为给定输入提供相同的响应。
Top P
- Key:
top_p - 可选,float,0.0 到 1.0
- 默认值:1.0
此设置将模型的选择限制在可能 tokens 的百分比内:只有其概率相加达到 P 的顶级 tokens。较低的值使模型的响应更可预测,而默认设置允许完整的 token 选择范围。将其视为动态 Top-K。
Top K
- Key:
top_k - 可选,integer,0 或以上
- 默认值:0
这限制了模型在每个步骤中选择的 tokens,使其从较小的集合中选择。值为 1 意味着模型将始终选择最可能的下一个 token,导致可预测的结果。默认情况下,此设置被禁用,使模型考虑所有选择。
Frequency Penalty
- Key:
frequency_penalty - 可选,float,-2.0 到 2.0
- 默认值:0.0
此设置旨在根据 tokens 在输入中出现的频率控制 tokens 的重复。它尝试较少使用在输入中出现较多的 tokens,与它们出现的频率成正比。Token 惩罚随出现次数而缩放。负值将鼓励 token 重用。
Presence Penalty
- Key:
presence_penalty - 可选,float,-2.0 到 2.0
- 默认值:0.0
调整模型重复输入中已使用的特定 tokens 的频率。较高的值使这种重复不太可能,而负值则相反。Token 惩罚不随出现次数而缩放。负值将鼓励 token 重用。
Repetition Penalty
- Key:
repetition_penalty - 可选,float,0.0 到 2.0
- 默认值:1.0
帮助减少输入中 tokens 的重复。较高的值使模型不太可能重复 tokens,但值太高可能使输出不太连贯(通常是缺乏小词的连句)。Token 惩罚基于原始 token 的概率进行缩放。
Min P
- Key:
min_p - 可选,float,0.0 到 1.0
- 默认值:0.0
表示要考虑的 token 的最小概率,相对于最可能 token 的概率。(该值根据最可能 token 的置信度而变化。)如果你的 Min-P 设置为 0.1,这意味着它只允许至少是最佳选项 1/10 概率的 tokens。
Top A
- Key:
top_a - 可选,float,0.0 到 1.0
- 默认值:0.0
仅考虑基于最可能 token 概率"足够高"概率的顶级 tokens。将其视为动态 Top-P。较低的 Top-A 值根据最高概率 token 集中选择,但范围较窄。较高的 Top-A 值不一定影响输出的创造力,而是根据最大概率优化过滤过程。
Seed
- Key:
seed - 可选,integer
如果指定,推理将确定性采样,使得具有相同 seed 和参数的重复请求应返回相同结果。某些模型不保证确定性。
Max Tokens
- Key:
max_tokens - 可选,integer,1 或以上
这设置了模型可以生成的 tokens 数量的上限。它不会产生超过此限制的内容。最大值是上下文长度减去 prompt 长度。
Max Completion Tokens
- Key:
max_completion_tokens - 可选,integer,1 或以上
这设置了模型可以生成的 tokens 数量的上限。它不会产生超过此限制的内容。最大值是上下文长度减去 prompt 长度。
Logit Bias
- Key:
logit_bias - 可选,map
接受一个 JSON 对象,该对象将 tokens(由 tokenizer 中的 token ID 指定)映射到 -100 到 100 的关联偏差值。从数学上讲,偏差被添加到模型生成的 logits 中,然后进行采样。确切的效果因模型而异,但介于 -1 和 1 之间的值应该减少或增加选择的可能性;-100 或 100 等值应该导致禁止或排他性地选择相关 token。
Logprobs
- Key:
logprobs - 可选,boolean
是否返回输出 tokens 的对数概率。如果为 true,则返回每个返回的输出 token 的对数概率。
Top Logprobs
- Key:
top_logprobs - 可选,integer
一个介于 0 到 20 之间的整数,指定在每个 token 位置返回的最可能的 tokens 数量,每个都带有相关的对数概率。如果使用此参数,必须将 logprobs 设置为 true。
Response Format
- Key:
response_format - 可选,map
强制模型产生特定输出格式。设置为 { "type": "json_object" } 启用 JSON 模式,这保证了模型生成的消息是有效 JSON。
注意:使用 JSON 模式时,你还应该通过 system 或 user 消息指示模型自己生成 JSON。
Structured Outputs
- Key:
structured_outputs - 可选,boolean
如果模型可以使用 response_format json_schema 返回结构化输出。
Stop
- Key:
stop - 可选,array
如果模型遇到 stop 数组中指定的任何 token,立即停止生成。
Tools
- Key:
tools - 可选,array
Tool calling 参数,遵循 OpenAI 的 tool calling 请求格式。对于非 OpenAI providers,它将被相应转换。
Tool Choice
- Key:
tool_choice - 可选,string 或 object
控制模型调用哪个工具(如果有的话)。'none' 意味着模型不会调用任何工具,而是生成一条消息。'auto' 意味着模型可以在生成消息或调用一个或多个工具之间进行选择。'required' 意味着模型必须调用一个或多个工具。通过 {"type": "function", "function": {"name": "my_function"}} 指定特定工具会强制模型调用该工具。
Parallel Tool Calls
- Key:
parallel_tool_calls - 可选,boolean
- 默认值:true
是否在工具使用期间启用并行函数调用。如果为 true,模型可以同时调用多个函数。如果为 false,函数将按顺序调用。仅在提供 tools 时适用。
Verbosity
- Key:
verbosity - 可选,enum (low, medium, high, xhigh, max)
- 默认值:medium
约束模型响应的详细程度。较低的值产生更简洁的响应,而较高的值产生更详细和全面的响应。由 OpenAI 为 Responses API 引入。
对于 Anthropic 模型,此参数映射到 output_config.effort。Anthropic Claude 4.7 Opus 及更高版本支持 'xhigh' 级别。Anthropic Claude 4.6 Opus 及更高版本支持 'max' 级别。