59API

← 返回教程列表

从消息数组到流式响应:读懂 OpenAI 兼容 Chat Completions 格式

入门教程 · ZH · 2026-10-04

Chat Completions 是什么

OpenAI 兼容的 Chat Completions 格式,是目前应用调用大语言模型最常见的接口约定。客户端通常向 /v1/chat/completions 发送一个 JSON 请求:指定模型、传入消息列表,再获得模型生成的回答。所谓“兼容”,指的是大多数现有 OpenAI SDK、代码示例和工具可以继续使用,只需替换 API Key、Base URL 与模型名。

例如,59API 的 API Base URL 为 https://api.59api.com。开发者可通过它按量付费接入 GPT,以及 Claude Opus、Sonnet、Haiku、Fable 等原生官方质量模型;对于已有 OpenAI SDK 项目,这种接入方式能显著减少迁移代码和多供应商适配成本。

一个请求由哪些字段组成

最小请求通常包含 model 和 messages。model 是你在服务商控制台或模型列表中确认可用的模型标识;messages 是按对话顺序排列的数组。每条消息至少包含 role 与 content。

概念上的请求结构如下:先设置 system 消息,再加入 user 问题,然后传入 model。不要只把最后一句用户输入发送给模型;需要连续对话时,应带上必要的历史消息。不过历史越长,输入 token 和费用越高,因此应保留与当前问题有关的内容,并在合适时总结旧上下文。

常用参数如何选择

temperature 控制随机性:接近 0 更稳定,适合提取、分类和代码修复;较高值更有发散性,适合头脑风暴。max_tokens 限制本次生成的最大长度,可避免意外产出过长内容。若接口支持 stream: true,服务端会分段推送生成结果,聊天界面应逐段追加文本,而不是等待完整答案后一次显示。

生产环境还应设置合理超时、记录请求 ID,并处理限流、网络失败与非 2xx 响应。切勿把 API Key 写进浏览器前端或公开仓库;应由自己的后端代为调用,并通过环境变量读取密钥。

如何读取普通响应与流式响应

非流式响应一般在 choices 数组中返回结果,常见路径是 choices[0] 中的 assistant 消息内容。调用代码不能假定 choices 永远非空,也要检查结束原因:正常完成、达到长度上限,或触发工具调用,后续处理并不相同。

流式响应则由多个增量事件组成。每个片段可能只包含几个字符,最后还会有结束信号。正确做法是累积每个增量中的文本字段,并在结束后再保存完整回答。不要把每个片段当成一条独立消息,否则会导致界面闪烁、日志碎片化,也难以统计最终内容。

工具调用与模型切换的注意点

当你向请求加入 tools 参数时,模型可能返回工具名与参数,而不是直接给出最终答案。应用应先验证参数、执行受控的业务函数,再把工具执行结果作为后续消息传回模型。对于转账、删除数据、发邮件等高风险动作,必须在服务端做权限校验和用户确认,不能仅凭模型输出执行。

通过 59API 使用时,建议先在其文档或控制台确认模型标识与能力,再将 OpenAI SDK 的 base URL 指向 https://api.59api.com。这样同一套 Chat Completions 调用可以按任务切换经济型模型和更强模型:简单分类、摘要可优先考虑成本,复杂推理或高要求写作再选择更合适的模型。59API 提供低价按量计费、原生官方质量模型与推荐返利,适合希望控制 AI 成本又不想牺牲兼容性的开发团队。可以注册 59API,先用一个最小聊天请求验证你的 SDK、密钥和模型配置。

价格 · 接入文档

准备好开始了吗?

几分钟接入 Claude 与 GPT,全网超低价,原生不降智。立即注册即可领取 API 密钥。

免费注册