MossHubAPI 文档
开发者文档 文本对话

文本对话

下载代码

通过 Chat Completions 发送消息,接收回答或工具调用。

当前示例通用示例
未指定模型
参数只用于生成下方示例代码,不会发起请求。
POST/v1/chat/completionsBearer 鉴权 · JSON / SSE

请求说明

请求使用 Authorization: Bearer ... 和 Content-Type: application/json。在上方示例面板填入模型 ID 后,下方示例会同步更新;从控制台模型卡进入时会自动带入。

核心参数

modelstring必填

取 GET /v1/models 返回的 id,列表只含当前密钥可用的模型。目录展示名称不能直接作为模型 ID。

默认:无
messagesarray必填

按顺序提供消息,包含 role 与 content。发送图片前确认模型支持图片输入,见 GET /v1/models 中的 capabilities.image_input。

默认:无
streamboolean可选

设为 true 时按 SSE 接收事件,正常结束收到 [DONE]。解析方式和用量块见流式输出。

示例值:false
max_tokensinteger可选

原样转给上游,取值范围由模型决定;模型的最大输出见 GET /v1/models 中的 max_tokens。编辑器选项是示例预算,不代表模型规格。

默认:由上游模型决定
temperaturenumber按模型支持

控制随机性。示例编辑范围为 0–2,实际范围和兼容性以所选模型为准。

默认:由上游模型决定
response_formatobject按模型支持

支持 JSON 模式时可使用 json_object。可解析的 JSON 仍需在应用侧校验字段。

默认:由上游模型决定
toolsarray按模型支持

声明可执行的函数。模型提出调用后,由应用校验、执行并回传结果。

默认:不声明工具

参数转发

网关对请求体只做两处改动:把 model 换成上游使用的 ID;流式请求打开上游的用量统计,见流式输出。其余字段,包括 max_tokens、max_completion_tokens、temperature、tools 与 response_format,都原样转给上游,网关不补默认值,也不校验取值。

各模型支持的参数不同;上游不接受某个参数时,返回上游自己的状态码和错误体。三种协议的差异见协议兼容。

成功响应

响应体由上游原样返回,其中的 model 可能与请求的 ID 不同。

字段读取方式
choices[0].message.content普通文本回答;工具调用时可能为空
choices[0].message.tool_calls模型提出的工具调用,需由应用执行
choices[0].finish_reason检查正常结束或输出截断
usage上游报告的用量,也是计费依据;扣费金额见控制台用量记录

常见失败

状态 / 错误码下一步
400请求体须是带 model 的 JSON 对象,顶层字段不能重复;模型未开放此接口时也返回 400。code 为 null,按 error.message 排查
401 · invalid_api_key核对密钥是否正确、未停用、未过期
402 · insufficient_quota预算已用完,在控制台申请追加;项目密钥由项目负责人续期
403 · model_not_allowed检查密钥的模型范围
404 · model_not_found用 GET /v1/models 重新查询模型 ID
413 · request_too_large请求体超过 32 MiB,缩小后重试
429 · rate_limit_exceeded上游容量已满,按 Retry-After 等待后重试
502 · upstream_failed上游出错或无法连接,稍后重试
503 · service_unavailable模型暂时没有可用上游,稍后重试
504 · upstream_timeout上游未按时响应,稍后重试

网关自己的错误体为 OpenAI 格式,读取 error.message、error.type 与 error.code。上游返回的错误保留原状态码和错误体,只有上游的 401、402、403 会改为 502 upstream_failed。完整分类见错误码。

追踪与继续接入

每个响应都带 X-Request-Id,排查问题时提供它,也可以在控制台用量记录里按它查找调用。需要关联自己的请求时,可以附带 X-Client-Request-Id(最多 128 个可打印 ASCII 字符,否则忽略),它会随用量记录保存。网关在转发前就拒绝的请求没有用量记录。

多轮聊天、结构化输出、工具调用与图片理解提供完整场景示例。多轮请求应自行携带消息历史,工具消息不能只保留可见文本。

请求示例

无需安装 SDK,使用终端中的 curl。

curl --fail-with-body "$MOSSHUB_API_BASE/v1/chat/completions" \
  -H "Authorization: Bearer $MOSSHUB_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"YOUR_MODEL_ID","messages":[{"role":"user","content":"你好"}],"stream":false}'
实际可调用的模型、授权与价格以控制台为准。
页面字体:MiSans(小米,依《MiSans 字体知识产权许可协议》使用);Google Sans Flex(SIL Open Font License 1.1)。