HTTP API¶
Flexgate 在本地监听(默认 127.0.0.1:8765)提供以下端点:
端点 |
说明 |
|---|---|
|
Anthropic Messages API 代理(核心端点) |
|
OpenAI 兼容图像生成(转 MiniMax |
|
固定返回 501(上游仅支持文生图) |
其他路径 |
结构化 JSON 错误(404 / 405 / 501,见下文) |
POST /v1/messages¶
标准的 Anthropic Messages 格式代理。请求体中的 model 字段用于路由:
模型别名归一化:匹配路由前,裸别名(
sonnet/opus/haiku/default,大小写不敏感,可带[plan]后缀)映射为对应的claude-<tier>前缀(default→ sonnet);旧编号名 (如claude-3-7-sonnet-latest)归约为 tier 前缀;其余名称原样匹配。命中路由后,仅当路由显式配置了
model时才改写上游请求的 model 字段; 认证头替换为该 provider 当前 active key 的x-api-key。流式(SSE)响应按原始字节透传,不做解析;非流式 JSON 原样转发。
key 级 fallback:可重试错误按
api_keys顺序切换(详见 配置文件)。多模态降级:请求携带图片块且目标模型不在多模态允许列表 (
MULTIMODAL_MODELS,当前为MiniMax-M3、glm-4.6v)中时,图片会被 剥离,并在请求与响应中注入[flexgate]文本说明,避免非多模态上游报 4xx。
POST /v1/images/generations¶
OpenAI Images API 兼容端点,让 OpenAI 风格的客户端无需任何额外配置即可 通过网关生成图片:
上游自动发现:使用配置中
base_url指向 MiniMax (api.minimaxi.com/api.minimax.io)的 provider 及其 key,无需单独 配置图像 provider。模型名映射:请求中的
model含已知图像模型提示(gpt-image、dall-e、image-01、seedream、flux、sdxl、stable-diffusion、minimax等)即接受并映射为 MiniMax 的image-01;无法识别的模型名 返回 501model_not_supported。尺寸:
size: "WxH"映射为 width/height,各边钳制到 512–2048 并取 8 的倍数;无法解析的 size 忽略(用上游默认值)。prompt 超过 1500 字符会被截断。
响应:MiniMax 返回的
data.image_base64[](JPEG)原样转发为 OpenAI 风格的data[].b64_json,不引入转码依赖。
POST /v1/images/edits¶
固定返回 501:MiniMax image-01 仅支持文生图,没有通用的图像编辑 /
inpainting 能力。
未支持端点的结构化错误¶
所有未匹配的请求都不会得到裸 404,而是返回 Anthropic / OpenAI 双兼容 的 JSON 错误体,客户端可以据此判断"端口错了"还是"网关不支持该能力":
{"type": "error", "error": {"type": "...", "message": "...", "code": "..."}}
状态码 |
code |
触发条件 |
|---|---|---|
404 |
|
完全未知的路径;message 中列出全部有效路由 |
405 |
|
路径有效但 HTTP 方法不对 |
501 |
|
识别出的 API 家族但网关不服务( |
501 |
|
有效路由上不支持的操作或模型名(由所属模块返回) |