簡短回答
max_tokens 控制模型單次回覆最多生成多少個 token。API易 不對 max_tokens 做額外限制,該引數會直接透傳給上游模型。你可以自行設定,不設定則使用模型的預設值。
API易 的立場:我們不強制限制
max_tokens,完全由你自行控制。不設定時,模型會使用各自的預設值輸出。max_tokens 的作用
max_tokens(最大輸出 token 數)是呼叫大模型 API 時最常見的引數之一,它告訴模型:這次回覆最多生成多少個 token。
- 設定得太小:模型可能在回答到一半時被截斷(返回
finish_reason: "length") - 設定得太大:不會強制模型生成那麼多內容,但可能消耗更多費用(部分模型按輸出 token 計費)
- 不設定:使用模型的預設值(各廠商不同,見下方表格)
OpenAI 引數名稱演變
OpenAI 在不同時期和不同 API 中使用了不同的引數名稱,容易造成混淆:為什麼要改名?
2024 年 9 月 OpenAI 釋出 o1 推理模型時,引入了「隱藏推理 token」的概念——模型內部會生成大量推理 token(reasoning tokens),但這些 token 不會出現在你的回覆中。 原來的max_tokens 既表示「生成的 token 數」又表示「你收到的 token 數」,但在推理模型中這兩者不再相等。因此 OpenAI 改用 max_completion_tokens 來明確表示「你收到的回覆 token 上限」。
後來 Responses API 統一使用了 max_output_tokens 這個更直觀的名稱。
不設定 max_tokens 會怎樣?
不同廠商的處理方式不同:各模型最大輸出 tokens 參考
以下為主流模型的最大輸出 token 數參考值。實際數值請以各廠商官方文件為準,因為模型更新頻繁。官方文件參考(獲取最新數值):
- OpenAI:
platform.openai.com/docs/models - Anthropic Claude:
docs.anthropic.com/en/docs/about-claude/models - Google Gemini:
ai.google.dev/gemini-api/docs/models - DeepSeek:
api-docs.deepseek.com/api/create-chat-completion
使用建議
常見問題
API易 有沒有對 max_tokens 做限制?
API易 有沒有對 max_tokens 做限制?
沒有。API易 完全透傳
max_tokens 引數給上游模型,不做任何額外限制。你設定多少,上游模型就按多少處理。唯一的限制來自模型本身的最大輸出 token 上限。max_tokens 設定得比模型最大值還大會怎樣?
max_tokens 設定得比模型最大值還大會怎樣?
不會報錯,模型會自動按自身的最大輸出上限生成。例如 GPT-4o 最大輸出 16,384 tokens,即使你設定
max_tokens: 100000,它最多也只會輸出 16,384 tokens。max_tokens 和 max_completion_tokens 有什麼區別?
max_tokens 和 max_completion_tokens 有什麼區別?
功能相同,都是限制輸出 token 數。區別在於:
max_tokens:OpenAI 早期引數名,適用於 GPT 系列非推理模型max_completion_tokens:2024 年 9 月起,OpenAI o 系列推理模型使用的引數名max_output_tokens:OpenAI Responses API 統一使用的引數名
輸出被截斷了(finish_reason 為 length),怎麼辦?
輸出被截斷了(finish_reason 為 length),怎麼辦?
這說明模型生成的內容達到了
max_tokens 上限。解決方法:- 增大
max_tokens值 - 最佳化 prompt,讓模型生成更簡潔的回覆
- 檢查是否使用了正確的引數名(o 系列模型需用
max_completion_tokens)
相關文件
如何選擇合適的 AI 模型?
根據應用場景選擇最適合的模型
API 可以開多少併發?
瞭解不同模型的併發限制
Base URL 配置指南
各類工具中配置 API易 Base URL 的方法
API易-令牌管理
管理 API 金鑰、檢視用量和餘額