https://api.mistral.ai/v1 提供 OpenAI 兼容 API。GoModel
通过共享的 OpenAI 适配器路由聊天补全、模型列表、Embedding 与透传请求;/v1/responses
端点通过聊天补全进行翻译(Mistral 也提供原生端点;经由聊天翻译可以保证下文的推理标准化在聊天补全、流式
以及 /v1/responses 上都生效;/p/mistral/... 透传请求原样转发,不做此转换)。该提供商不提供文件和批处理。
推理(思考)输出
在启用推理时,例如mistral-large-4-0、mistral-small-2603 以及托管的
zai-glm-5-3 等模型会将助手内容作为类型化分块列表返回——推理轨迹是 thinking 分块,
回答是 text 分块——同时在缓冲响应和 SSE 流中。这种格式不是标准的 OpenAI 聊天输出,
SillyTavern 等客户端会将其渲染为乱码。
GoModel 的 mistral 提供商会自动将其转换为标准格式:
thinking分块合并为reasoning_content字段;text分块合并为纯字符串content。
choices[].delta)与非流式(choices[].message)响应均适用此转换。无需任何客户端配置。
没有标准聊天对应形式的分块类型(例如 Mistral 引用功能在工具调用后返回的 reference 分块)会保留在 mistral_content_chunks
厂商成员中,因此不会丢失任何上游数据。超过 16 MiB 的 SSE 事件也会原样转发而不做转换。
请使用标准的嵌套参数发送推理力度;GoModel 会将其映射为 Mistral 的扁平 reasoning_effort:
none、minimal、low、medium、high、xhigh、max,
该值会规范化为小写后透传。每个模型接受哪些档位因模型而异——例如 Mistral Large 4 接受
low/medium/high,托管的 GLM 模型接受 low/high/max,mistral-small-2603 还
接受 none——因此为所选模型传入不支持的档位会被 Mistral 自身拒绝,这与使用 Mistral
自家 SDK 的行为一致。在 zai-glm-5-3 上,无论推理力度为何,响应始终是分块列表。
当客户端回放先前的助手回合时,GoModel 会将该回合的推理作为 Mistral thinking 分块放回消息内容中——Mistral 的指南警告,删除推理痕迹会降低输出质量——并丢弃 Mistral 无法解析的成员(mistral_content_chunks,Mistral 对它们会返回 422)。回放的 reasoning 成员(部分客户端使用的写法)会按 reasoning_content 处理。
Mistral 会拒绝其模式未定义的请求成员,因此 GoModel 会调整常见的 OpenAI 字段,而不是让请求失败:
max_completion_tokens改为max_tokens,seed改为random_seed。service_tier: "default"改为standard_only;Mistral 不提供的层级会被丢弃。stream_options、user、logit_bias、store、verbosity和safety_identifier会被丢弃。流式响应仍会在最后一个分块中报告用量。- 消息只保留 Mistral 对其角色接受的成员:例如
name只保留在工具消息上,助手回合中回传的refusal或annotations会被丢弃。
配置
config.yaml 中:
提供商
type 为 mistral。配置键(上例中的 mistral)是任意的,仅用于在配置中标识
此条目,可以更改。在默认的
allowlist 模式下,设置 MISTRAL_MODELS 会将此提供商服务的模型限制为该
列表——其他模型的请求返回 404。
Models modes 提供了 merge/fallback 替代方案。
404 仅适用于基于模型的路由:当运营者为该提供商启用透传(ENABLED_PASSTHROUGH_PROVIDERS,
参见 Passthrough)时,/p/mistral/... 请求不受此列表限制,
仍会到达上游。模型
GoModel 的GET /v1/models 是网关范围的列表(包含所有已配置提供商的可见模型,而不仅限于此提供商);
此提供商实际服务的模型取决于其模型模式,因此可能只是您 Mistral 账户可用模型的一个子集。
可通过 OpenAI 兼容的 /v1/chat/completions 端点直接调用其模型:
Embedding
Mistral 的/v1/embeddings 端点(例如 mistral-embed)受支持。