模型与提供商目录参考手册
Ante 根据**目录(Catalog)**解析每个提供商与模型:包括本文档中记录的内置预设,以及在启动时合并覆盖的 ~/.ante/catalog.json。目录在每个进程启动时读取一次 —— 修改后请重启 Ante 以生效。
本页面为详尽的参考手册。登录与 API 密钥配置请参阅连接提供商,配置范例请参阅自定义模型目录。
内置提供商列表
以下预设对应 v0.3.2:15 个托管提供商预设,以及离线服务运行时注册的 local。
| 提供商 | key | 通信协议格式 (Wire style) | 凭据 |
|---|---|---|---|
| Anthropic | anthropic | AnthropicMessage | ANTHROPIC_API_KEY |
| Anthropic Subscription | anthropic-subscription | AnthropicMessage | OAuth(anthropic) |
| OpenAI | openai | OpenAiResponse | OPENAI_API_KEY |
| OpenAI Compatible | openai-compatible | OpenAiCompatible | OPENAI_COMPATIBLE_API_KEY |
| OpenAI Subscription | openai-subscription | OpenAiResponse | OAuth(openai) |
| Gemini | gemini | Gemini | GEMINI_API_KEY |
| Vertex AI Gemini | vertex-gemini | Gemini | VERTEX_GEMINI_API_KEY |
| Open Router | openrouter | OpenAiCompatible | OPENROUTER_API_KEY |
| Open Router Responses | openrouter-responses | OpenAiResponse | OPENROUTER_API_KEY |
| Open Router Anthropic | openrouter-anthropic | AnthropicMessage | OPENROUTER_API_KEY |
| Grok (xAI) | xai | OpenAiResponse | XAI_API_KEY |
| Zai | zai | OpenAiCompatible | ZAI_API_KEY |
| DeepSeek | deepseek | OpenAiCompatible | DEEPSEEK_API_KEY |
| MiniMax | minimax | OpenAiCompatible | MINIMAX_API_KEY |
| Antix | antix | AnthropicMessage | OAuth(antix),其次 ANTIX_API_KEY |
| Local | local | OpenAiCompatible | 无 |
key 列即为传递给 --provider 的参数值。API 密钥类提供商先读取对应环境变量,其次读取通过 ante auth add <key> 存储或在 /providers 中粘贴的密钥。OAuth 类提供商在 TUI 的 /providers 中登录,或在 CLI 中运行 ante auth login <key>。antix 两种方式均支持:优先使用 Antix 登录,其次 ANTIX_API_KEY,最后是已存储的密钥。如需调整,请参阅凭据。
各提供商的模型清单
每个提供商均预设了一组 preferred_models —— 即在模型选择器中展示的模型 ID。当您选择提供商而未显式指定模型时,Ante 默认选用其**权重等级最高(heaviest-weight)**的模型(参见权重等级),而非简单地选择列表第一项。显式指定的提供商具有最高权威性:若传入了 --provider,即使该模型 ID 未列在 preferred_models 中,Ante 也会将该模型 ID 发送给该提供商(参见解析规则)。
Anthropic
anthropic 与 anthropic-subscription 提供相同的模型:
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
claude-haiku-5-5 | 适合高并发智能体任务的快速高效模型 | 1M |
claude-sonnet-5-5 | 速度与智能的最佳平衡 | 1M |
claude-opus-5-5 | 长时间运行的智能体编码与知识工作 | 1M |
claude-fable-5-1 | 针对高要求推理的最强能力 | 1M |
ante --provider anthropic --model claude-sonnet-5-5
OpenAI
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
gpt-6-astra | OpenAI 面向复杂智能体任务的最强模型 | 1.05M |
gpt-6.1-sol | GPT-6.1 Sol,适用于复杂编码与智能体工作流 | 1.05M |
gpt-6.1-terra | GPT-6.1 Terra,适用于视觉推理、计算机操作与写作 | 1.05M |
gpt-6-luna | GPT-6 模型,适用于明确、大规模的任务 | 1.05M |
ante --provider openai --model gpt-6.1-sol
openai-subscription 提供商(ChatGPT/Codex OAuth)提供 gpt-6-astra(默认,272K 上下文)、gpt-6.1-sol 和 gpt-6.1-terra(500K),以及 gpt-6-luna(272K),均支持图片输入。gpt-6-luna 是其中最轻量的模型,因此负责辅助调用。
OpenAI 传输协议
openai 与 openai-subscription 提供商支持两种流式响应传输方式:
| 传输协议 | 端点地址 | 默认状态 |
|---|---|---|
http_sse (HTTP + SSE) | https://api.openai.com/v1/responses(或订阅对应端点) | ✅ |
websocket_auto (持久化 WebSocket) | wss://.../v1/responses | 可选启用 |
WebSocket 模式在每个会话中保持单条长连接,并通过 previous_response_id 仅传递新增输入项以继续下一轮 Turn。在长链路的智能体工具调用循环中,这能显著消除每轮往返的网络建立延迟。协议细节可参考 OpenAI 的 WebSocket 模式指南。
通过进程级环境变量启用(默认为 http_sse):
ANTE_OPENAI_TRANSPORT=websocket_auto ante --provider openai --model gpt-6-luna
支持的值:http_sse、websocket_auto。未识别的值会打印警告并回退至 http_sse。
注意事项:
-
所有模型生成调用都使用流式传输,包括 TUI、无头任务、压缩、目标判定和环境提示。需要完整回复的调用会收集同一条流,因此启用 WebSocket 时这些调用也可使用它。取消 WebSocket 调用后,Ante 会丢弃连接,避免下一次请求读到已放弃的回复。
-
符合回退条件的 WebSocket 故障会在剩余调用预算内回退到 HTTP/SSE;回退不会重置截止时间。预算耗尽时,调用报告超时。认证失败(
401/403)会在本会话剩余生命周期内禁用 WebSocket。 -
同时适用于
api.openai.com(API Key)与 ChatGPT 订阅后端chatgpt.com/backend-api/codex。 -
验证当前激活的传输方式:在调试构建中按
Ctrl+L打开调试面板查看 Info 选项卡中的OpenAI Transport:行;或在日志中检索transport selected:grep "transport selected" ~/.ante/logs/*/ante.*.log
Gemini
gemini 与 vertex-gemini 提供相同的模型:
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
gemini-3.8-flash | Gemini 3.8 Flash,适用于长程编码与自主智能体 | 1.05M |
gemini-4-argon | Gemini 4 Argon,适用于复杂推理与自主智能体 | 1.05M |
gemini-3.5-flash-lite | 最快、成本最低的 Gemini 3.5 模型,适用于高吞吐量任务 | 1M |
ante --provider gemini --model gemini-3.8-flash
仅指定 --provider gemini 或 --provider vertex-gemini 且命令行和设置均未指定模型时,会选择最高权重的 Gemini 4 Argon。其原生预设最大输出为 32,768 Token;OpenRouter 的 google/gemini-4-argon 预设为 65,536 Token。两者均支持图像输入及 low、medium、high 三档思考深度。
Grok (xAI)
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
grok-4.7 | Grok 4.7 旗舰推理模型 | 500K |
ante --provider xai --model grok-4.7
Zai(智谱)
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
glm-5.3 | 最新 GLM-5.3 模型,适用于编程与智能体任务 | 1M |
glm-5.3-flash | 快速、低成本的 GLM-5.3 多模态模型 | 1M |
glm-5.3-flashx | 支持原生视觉的高速 GLM 5.3 FlashX | 1M |
ante --provider zai --model glm-5.3
Open Router
Open Router 拆分为共享同一 API 密钥的三个提供商(按协议方言划分):openrouter(兼容 OpenAI Chat Completions)、openrouter-responses(OpenAI Responses)与 openrouter-anthropic(Anthropic Messages)。
openrouter 预设模型:
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
deepseek/deepseek-v4.1-flash-1017 | DeepSeek V4.1 Flash 10 月 17 日编码升级版,支持视觉 | 1.05M |
reflection/beam-1.0-501b-a23b | Reflection Beam 1.0,适用于编码与长程智能体任务 | 1.05M |
google/gemini-4-argon | 通过 OpenRouter 提供的 Gemini 4 Argon 复杂推理模型 | 1.05M |
google/gemini-3.8-flash | Gemini 3.8 Flash,适用于长程编码与自主智能体 | 1.05M |
x-ai/grok-4.7 | 通过 OpenRouter 调用的 Grok 4.7 旗舰推理模型 | 500K |
qwen/qwen3.8-max-0902 | 通义千问 3.8 旗舰多模态推理模型 | 1M |
qwen/qwen3.7-plus | 高性价比且支持视觉的通义千问 3.7 模型 | 1M |
qwen/qwen3.8-flash | 通义千问 3.8 Flash 多模态推理模型 | 1M |
meta/muse-wonder | 面向复杂智能体推理与编码的 Muse Wonder | 1.05M |
meta/muse-spark-open | Muse Spark Open,适用于智能体编码工作流 | 1.05M |
meta/muse-spark-1.3 | Muse Spark 1.3 多模态智能体推理模型 | 1.05M |
tencent/hy3 | 腾讯混元 Hy3 智能体推理模型 | 262K |
xiaomi/mimo-v2.6-pro | 小米 MiMo-V2.6-Pro 多模态智能体模型 | 1.05M |
xiaomi/mimo-v2.6-flash | 小米 MiMo-V2.6-Flash 多模态智能体模型 | 1.05M |
z-ai/glm-5.3 | 通过 OpenRouter 调用的 GLM 5.3 编程与智能体推理模型 | 1.05M |
z-ai/glm-5.3-flash | 通过 OpenRouter 调用的快速 GLM 5.3 多模态模型 | 1.05M |
moonshotai/kimi-k3.1-pro | 月之暗面 Kimi K3.1 Pro 多模态推理模型,适用于长程智能体任务 | 1.05M |
moonshotai/kimi-k2.7-code | 支持视觉的 Kimi K2.7 Code 代码推理模型 | 262K |
minimax/minimax-m3.1-flash | MiniMax M3.1 Flash 多模态推理模型 | 1M |
qwen/qwen3.8-max-prime | 支持视觉的高吞吐 Qwen 3.8 Max | 1M |
qwen/qwen3.8-omni-flash | Qwen 3.8 Omni Flash 多模态推理 | 1M |
z-ai/glm-5.3-prime | 高吞吐 GLM 5.3,纯文本 | 1M |
z-ai/glm-5.3-flashx | 支持原生视觉的高速 GLM 5.3 FlashX | 1.05M |
meta/muse-spark-1.3-contributor | 高性价比 Muse Spark 1.3 contributor 模型 | 1.05M |
nvidia/nemotron-3-ultra-550b-a55b | 复杂智能体推理,纯文本;支持 medium/high 思考深度 | 202.8K |
openrouter-responses 提供 openai/gpt-6-astra、openai/gpt-6-astra-pro、openai/gpt-6.1-sol、openai/gpt-6.1-sol-pro、openai/gpt-6.1-terra、openai/gpt-6.1-terra-pro、openai/gpt-6-luna、openai/gpt-6-luna-pro,均支持 1.05M 上下文。带有 -pro 后缀的 ID 会走 OpenRouter 的专业推理路由。
openrouter-anthropic 通过 Anthropic Messages 协议提供 Claude 家族:anthropic/claude-haiku-5.5(1M 上下文),以及 anthropic/claude-sonnet-5.5、anthropic/claude-opus-5.5、anthropic/claude-fable-5.1(1M 上下文)。
每个提供商还可以通过完整 ID 调用 Open Router 模型列表 中的任意模型,只要其符合该提供商的协议格式即可。
ante --provider openrouter --model deepseek/deepseek-v4.1-flash-1017
ante --provider openrouter-responses --model openai/gpt-6.1-sol
ante --provider openrouter-anthropic --model anthropic/claude-fable-5.1
DeepSeek
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
deepseek-flash | 支持视觉的 DeepSeek V4.1 Flash | 1M |
ante --provider deepseek --model deepseek-flash
需配置环境变量 DEEPSEEK_API_KEY,可选配置 DEEPSEEK_BASE_URL。
MiniMax
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
MiniMax-M3.1-Flash | MiniMax M3.1 Flash 多模态编码与推理模型 | 1M |
ante --provider minimax --model MiniMax-M3.1-Flash
需配置环境变量 MINIMAX_API_KEY,可选配置 MINIMAX_BASE_URL。
Antix
antix 通过 Antigma 平台提供以下模型,可使用 Antix 登录或 Antix API 密钥:
| 模型 ID | 说明 | 上下文大小 |
|---|---|---|
gemini-3.8-flash | Gemini 3.8 Flash,适用于长程编码与自主智能体 | 1.05M |
gemini-4-argon | Gemini 4 Argon,适用于复杂推理与自主智能体 | 1.05M |
grok-4.6 | Grok 4.6 旗舰推理模型 | 500K |
kimi-k3.1-pro | Kimi K3.1 Pro 多模态推理模型,适用于长程智能体任务 | 1M |
qwen3.8-max | 最新 Qwen 3.8 Max | 1M |
qwen3.7-plus | 最新 Qwen 3.7 Plus | 1M |
claude-haiku-5-5 | 适合高并发、低延迟任务的最快 Claude 模型 | 1M |
claude-sonnet-5-5 | 速度与智能的最佳平衡 | 1M |
claude-opus-5-5 | 长时间运行的智能体编码与知识工作 | 1M |
claude-fable-5-1 | 最强大的 Claude 模型 | 1M |
gpt-6-astra | OpenAI 面向复杂智能体任务的最强模型 | 1.05M |
gpt-6.1-sol | GPT-6.1 Sol,适用于复杂编码与智能体工作流 | 1.05M |
gpt-5.6-terra | GPT-5.6 智能水平与成本的平衡模型 | 1.05M |
gpt-5.6-luna | 面向高效、高吞吐任务的 GPT-5.6 模型 | 1.05M |
gpt-5.4-mini | 更快、更经济的 GPT-5.4 模型 | 400K |
gpt-5.4-nano | GPT-5.4 家族最小轻量模型 | 400K |
deepseek-flash | DeepSeek V4.1 Flash 原生多模态视觉模型 | 1M |
deepseek-v4-pro | 复杂智能体任务,纯文本;支持 low/high/max 思考深度 | 1M |
glm-5.3 | 最新 GLM-5.3 模型,适用于编程与智能体任务 | 1M |
glm-5.3-flash | 快速 GLM-5.3 Flash,适用于编程与智能体任务 | 1M |
glm-5.3-flashx | 支持原生视觉的高速 GLM 5.3 FlashX | 1M |
ante auth login antix # or: export ANTIX_API_KEY=...
ante --provider antix --model claude-sonnet-5-5
Local(本地模型)
通过内置 llama.cpp 引擎运行本地 GGUF 模型,无需 API 密钥。离线模型就绪时,local 提供商可用;对于托管模型,其设置反映当前生效的上下文窗口、思考、温度与视觉能力。卸载模型或停止服务后,local 不再可用。使用 --provider local 前请先启动或连接模型;该参数本身不会启动引擎。配置方法参见离线模式。
ante --provider local
自定义模型目录
创建 ~/.ante/catalog.json 以添加 Ante 未内置的提供商、修改内置提供商属性或微调模型默认参数。该文件在启动时会合并覆盖到内置预设之上,因此只需声明新增或修改的部分。如果不想手写,可在 TUI 中运行 /add-provider:Ante 会发现端点提供的模型、探测每个模型接受的思考深度,并写入配置(重启后加载)。常见示例如下;完整字段请查阅下方的 Schema,各种认证方式请参阅凭据。
添加托管型提供商
大多数托管端点均兼容 OpenAI 协议。配置 wire_style: "OpenAiCompatible",指定 base_url 并列出希望在选择器中展示的模型:
{
"providers": {
"together": {
"display_name": "Together AI",
"base_url": "https://api.together.xyz/v1",
"wire_style": "OpenAiCompatible",
"credential": "env:TOGETHER_API_KEY",
"preferred_models": [
{
"id": "moonshotai/Kimi-K2-Instruct",
"description": "Kimi K2 on Together",
"max_tokens": 16384,
"context_limit": 128000,
"effort": "medium"
}
]
}
}
}
export TOGETHER_API_KEY="..."
ante --provider together --model moonshotai/Kimi-K2-Instruct
如果不想把密钥写进 shell 配置文件,可省略 credential,并用 ante auth add together 存储一次密钥。未设置 credential 的新提供商会读取以其自身名称存储的密钥。
声明模型支持的思考深度
思考深度滑块的档位通常由提供商和模型家族内置推导,因此自定义端点上的模型可能得到不符合实际接口的档位。可使用 supported_efforts 声明真实集合;滑块将只显示这些级别,OpenAI 兼容提供商会把选择值作为同名的 reasoning_effort 发送:
"preferred_models": [
{
"id": "kimi-k3",
"effort": "high",
"supported_efforts": ["low", "medium", "high"]
}
]
空列表("supported_efforts": [])表示该模型完全不接受思考深度设置。端点没有报告支持档位的标准 API;不确定时可让 /add-provider 自动探测。
添加无需认证的本地服务
对于无需 API 密钥的本地服务,将 credential 设为 null;若提供商模型变动频繁(如 Ollama)也可省略 preferred_models。您仍可以通过 --provider 与 --model 显式调用任意模型 ID:
{
"providers": {
"ollama": {
"display_name": "Ollama",
"base_url": "http://localhost:11434/v1",
"wire_style": "OpenAiCompatible",
"credential": null
}
}
}
ante --provider ollama --model qwen2.5-coder:7b
覆盖内置提供商配置
当配置中的 key 匹配内置提供商时,仅会修改指定的字段。"credential": null 让提供商不再发送凭据,适合本地代理:
{
"providers": {
"openai": {
"base_url": "http://localhost:8080/v1",
"credential": null
}
}
}
发送会话请求头
若网关需要按对话归类请求,可在 headers 的值或 extra_body 的字符串中使用 ${session_id}。下面的示例修改内置 OpenAI 提供商;配置自己的网关时,请换成该网关的提供商标识:
{
"providers": {
"openai": {
"headers": { "X-Session-ID": "${session_id}" },
"extra_body": { "prompt_cache_key": "ante-${session_id}" }
}
}
}
Ante 为各会话填入对话 ID。恢复会话时保留 ID,分叉则使用新会话自己的 ID。子智能体请求沿用父会话 ID,便于网关将委派工作归入父会话。在同样位置使用环境变量的方法参见模板。
传递额外自定义请求体参数
网关或自定义代理服务经常需要特定请求参数。将其配置在 extra_body 中,会自动合并到该提供商的所有 Chat 和 Streaming 请求体中:
{
"providers": {
"my-gateway": {
"display_name": "My Gateway",
"base_url": "https://gateway.example.com/v1",
"wire_style": "OpenAiCompatible",
"credential": "env:MY_GATEWAY_API_KEY",
"extra_body": {
"service_tier": "priority"
}
}
}
}
extra_body 只能追加新字段 —— Ante 为选定 wire style 生成的保留键(model、messages、stream 等)在启动时会被自动丢弃并打印提示,提供商仍会正常加载。参见保留关键字列表。
覆盖模型默认参数
在列出该模型的提供商上修改模型。preferred_models 中 id 与内置模型匹配的条目只会修改您设置的字段,其余保持不变:
{
"providers": {
"anthropic": {
"preferred_models": [
{ "id": "claude-opus-5-5", "effort": "max" },
{ "id": "claude-sonnet-5-5", "effort": "high", "max_tokens": 64000 }
]
},
"openai": {
"preferred_models": [{ "id": "gpt-6.1-sol", "temperature": 0.2 }]
}
}
}
由多个提供商提供的模型,需在您使用的每个提供商上分别修改。
第三方提供商接入
使用 Open Router
- 在 openrouter.ai 注册并生成 API 密钥。
- 配置环境变量:
export OPENROUTER_API_KEY="sk-or-..."
- 调用 Open Router 模型列表 中的任意模型:
ante --provider openrouter --model deepseek/deepseek-v4.1-flash-1017
兼容 OpenAI 格式的提供商
许多提供商均提供 OpenAI 兼容的 API(如 Together AI、Fireworks、Groq Cloud、Perplexity 等)。临时调用时可直接利用内置的 openai-compatible 提供商而无需编辑 catalog 文件:
- 设置基础 URL(该特定环境变量优先级高于
MODEL_BASE_URL):export OPENAI_COMPATIBLE_BASE_URL="https://api.together.xyz/v1" - 设置 API 密钥:
export OPENAI_COMPATIBLE_API_KEY="your-provider-api-key"
- 启动调用:
ante --provider openai-compatible --model meta-llama/Llama-3-70b-chat-hf
catalog.json 配置规范
启动时,~/.ante/catalog.json 会合并覆盖在内置预设之上。包含三个可选的顶层键,均为按名称索引的 map:
{
"providers": { /* add or patch providers */ },
"oauth_profiles": { /* OAuth sign-ins; see Credentials */ },
"helpers": { /* credential commands; see Credentials */ }
}
在 providers 中,若 key 匹配内置提供商(如 openai),则逐字段修改该预设;若为新 key 则添加新提供商。Map 的 key 即为传递给 --provider 的名称。内部的 id(或历史 name)字段会被忽略。
~/.ante 目录可通过环境变量 ANTE_HOME 重定向;目录配置文件路径始终为 $ANTE_HOME/catalog.json。
提供商字段
| 字段 | 必填 | 说明 |
|---|---|---|
display_name | 新增提供商:可选 | 在 TUI 中展示的友好名称。省略时默认使用 map key |
base_url | 新增提供商:✅ | API 基础 URL |
wire_style | 新增提供商:✅ | Ante 通信采用的 API 方言 —— AnthropicMessage、OpenAiCompatible、OpenAiResponse 或 Gemini |
credential | — | 要发送的凭据:一个引用(如 env:MY_KEY)、引用列表,或 null 表示不发送(参见凭据)。新增提供商省略时读取 secret:<其 key> |
credential_header | — | 放置凭据的请求头,凭据原样发送。省略时以 Authorization: Bearer <credential> 发送 |
headers | — | 随每次请求发送的额外 HTTP Header 映射表(string→string)。值支持模板。将某个 key 设为 null 可移除内置预设的该请求头。凭据不应放在这里 |
extra_body | — | 合并到每个 Chat 和 Streaming 请求体顶层的专属 JSON 字段(参见额外请求字段)。字符串值支持模板 |
thinking_display | — | 可读推理输出:off、concise 或 detailed,与思考深度独立(参见推理显示) |
max_request_images | — | 非负整数,限制该提供商所有模型的每次请求图片数。保留最新图片,将较早图片替换为文本标记;0 表示不发送图片,null 清除上限。参见请求图片上限。自 v0.3.2 起可用 |
supports_web_search | — | 该提供商是否提供原生网络搜索功能。为 true 时自动向该提供商的会话添加 WebSearch 工具;为 false(默认)时不提供 |
preferred_models | — | 在选择器中展示并作为默认模型的推荐列表(参见模型字段)。对于内置提供商,匹配的模型 ID 会被合并修改,新 ID 会被追加;省略时保持内置列表不变 |
stream_idle_timeout_secs | — | 超时秒数,默认 300。打开流时,响应头、错误响应体、OAuth 刷新、传输重试与退避,以及 WebSocket 到 HTTP 的回退共用一次预算;非流式 HTTP 调用还需在此预算内读完响应体。流建立后,同一时长限制连续静默,每次底层读取均重置计时,包括 keepalive、生命周期事件和工具参数片段。所有模型生成调用(包括压缩、目标判定和环境提示)都使用流式传输。慢速本地或代理端点可调高该值,需更快发现停滞时可调低。 |
{
"providers": {
"my-provider": {
"display_name": "My Provider",
"base_url": "https://api.example.com/v1",
"wire_style": "OpenAiCompatible",
"credential": "env:MY_PROVIDER_API_KEY",
"headers": { "X-Org": "my-team" },
"preferred_models": [
{
"id": "my-model",
"description": "My fine-tuned model",
"max_tokens": 32000,
"context_limit": 200000,
"effort": "medium",
"supported_efforts": ["low", "medium", "high"]
}
]
}
}
}
针对内置提供商,仅需填写希望修改的字段。设置的 credential 会整体替换预设列表。将 Anthropic 指向无需密钥的本地代理,并去掉内置的 beta 请求头:
{
"providers": {
"anthropic": {
"base_url": "http://localhost:8080/v1",
"credential": null,
"headers": { "anthropic-beta": null }
}
}
}
推理显示
thinking_display 控制可读推理输出,与思考深度相互独立。可选值为 off、concise 和 detailed。内置托管提供商预设默认为 detailed;覆盖内置项时省略该字段会保留预设,设为 null 则清除预设并交由端点决定。新增自定义提供商在未设置时不会发送显示参数。
{
"providers": {
"openai": { "thinking_display": "concise" },
"anthropic": { "thinking_display": "off" }
}
}
该设置不会改变思考深度或延续状态。OpenAI Responses 会分别映射为不返回摘要、简洁摘要和详细摘要;Anthropic 将 off 映射为省略可读推理,并将两个可读档位映射为摘要;Gemini 在 concise 与 detailed 时启用思考摘要。通用 OpenAI-compatible Chat Completions 没有标准显示参数,因此会忽略该字段;端点专属控制仍可放入 extra_body。
请求图片上限
当端点限制单次请求可接受的图片数量时,可设置 max_request_images。该上限作用于此提供商的所有模型,统计整个请求中的图片,包括用户消息和工具结果。PDF 等文档附件不计入图片数量。
{
"providers": {
"openrouter": { "max_request_images": 8 }
}
}
Ante 按请求顺序保留最新图片,并将较早的图片替换为文本,说明其因提供商图片上限而被省略。四种通信协议格式均在发送请求前应用这一限制,已保存的对话仍保留图片。设置为 0 可停止发送所有图片。内置预设没有上限;省略字段保留提供商已有设置,null 清除上限。修改目录后需重启 Ante。
达到上限后,每张新图片都可能使发送请求中的较早消息有一张图片被替换。这会改变提示词前缀,可能降低从该位置开始的缓存复用率。
额外请求字段
部分网关或代理需要 Ante 原生未建模的特定参数(服务等级、路由提示、厂商专属 Beta 字段)。extra_body 是一个 JSON 对象,会直接合并到发送给该提供商的每个请求体顶层:
{
"providers": {
"my-gateway": {
"base_url": "https://gateway.example.com/v1",
"wire_style": "OpenAiCompatible",
"credential": "env:MY_GATEWAY_API_KEY",
"extra_body": {
"service_tier": "priority",
"routing": { "region": "us-east" }
}
}
}
}
参数值原样透传,因此支持任意 JSON 结构。在内置提供商覆盖层中,extra_body 会逐键合并到预设中 —— 匹配的键被替换,其他键保留。
extra_body 只能追加新字段,绝不能覆盖 Ante 为选定 wire_style 生成的保留关键字:
wire_style | 保留关键字列表 |
|---|---|
AnthropicMessage | model, max_tokens, messages, system, temperature, tools, stream, thinking, stop_sequences, output_config, cache_control |
OpenAiCompatible | model, messages, reasoning_effort, max_tokens, stream, stream_options, temperature, top_p, top_k, stop, tools, tool_choice, thinking, enable_thinking, thinking_budget, enable_search, search_options |
OpenAiResponse | model, instructions, input, tools, tool_choice, parallel_tool_calls, max_output_tokens, temperature, reasoning, stream, include, store |
Gemini | contents, systemInstruction, generationConfig, tools, toolConfig |
保留关键字在加载目录时会被自动丢弃并在启动提示中命名;提供商的其余配置仍正常加载。若想修改这些参数,请使用模型字段或环境变量覆盖:
Skipped 1 entry in ~/.ante/catalog.json:
- providers.my-gateway.extra_body: ignoring Ante-owned request field(s): model
凭据
提供商的 credential 指定它发送哪个凭据。取值为一个引用、引用列表或 null:
{
"providers": {
"corp": { "base_url": "https://llm.corp/v1", "wire_style": "OpenAiCompatible",
"credential": ["env:CORP_API_KEY", "secret:corp"] },
"keyed": { "base_url": "https://api.keyed.dev/v1", "wire_style": "OpenAiCompatible",
"credential": "env:KEYED_API_KEY", "credential_header": "x-api-key" },
"local-proxy": { "base_url": "http://127.0.0.1:4000/v1", "wire_style": "OpenAiCompatible",
"credential": null }
}
}
| 引用 | 读取来源 |
|---|---|
env:NAME | 环境变量 NAME。 |
secret:NAME | 通过 ante auth add NAME(或在 /providers 中添加)存储的密钥。 |
oauth:PROFILE | 通过 ante auth login PROFILE 完成的登录。PROFILE 为 anthropic、openai、antix,或您的某个 oauth_profiles。 |
helper:NAME | helpers 中某个命令的输出。 |
- 列表按顺序尝试,发送第一个有值的引用。在
/providers中可为当前会话改选其他引用。 - 省略时,新增提供商的
credential读取secret:<提供商 key>,因此只需运行ante auth add <提供商 key>即可完成配置。 null表示不发送凭据。- 拒绝明文密钥。
"credential": "sk-..."会报错,以免密钥出现在catalog.json中。请用ante auth add存储,并以secret:NAME引用。 - 放置位置:凭据以
Authorization: Bearer <credential>发送。设置credential_header可将其原样放入其他请求头,例如x-api-key。
只要有一个引用有值,提供商即为就绪。未就绪的提供商在自动检测时会被跳过;使用时会报错并给出修复方法,例如 "Set environment variable CORP_API_KEY or run ante auth add corp"。
第二个账号
添加 /label 可在同一 Profile 上登录第二个账号,或存储第二个密钥:
ante auth login anthropic/work
ante auth add corp/staging
不带标签的引用(如 oauth:anthropic)可使用其中任意一个;带标签的引用(如 oauth:anthropic/work)只使用对应的那一个。
Helper 命令
Helper 是一条输出凭据的命令:可从密钥库、云 CLI 或轮换密钥中获取令牌。在 helpers 下定义,并以 helper:NAME 引用:
{
"helpers": {
"corp": { "command": ["corp-token", "--audience", "llm"], "ttl_secs": 3000 }
},
"providers": {
"corp": { "base_url": "https://llm.corp/v1", "wire_style": "OpenAiCompatible",
"credential": "helper:corp" }
}
}
command 按原样执行,不经过 shell,且必须在 15 秒内完成。输出的第一行即为凭据。Ante 会在 ttl_secs 秒内复用它(最长一年),到期或服务端拒绝该凭据时重新运行命令。命令失败时,请求会失败并注明 helper 名称;Ante 不会回退到其他凭据。
OAuth Profile
OAuth Profile 是一次登录的配置方案。内置的有 anthropic、openai 和 antix。在 oauth_profiles 下添加自己的 Profile,即可登录其他服务,无需修改代码:
{
"oauth_profiles": {
"corp": {
"client_id": "ante",
"redirect_uri": "http://localhost:1455/callback",
"authorize_url": "https://sso.corp/authorize",
"token_url": "https://sso.corp/token",
"scopes": ["openid", "offline_access"],
"account_claim": ["email"]
}
},
"providers": {
"corp": { "base_url": "https://llm.corp/v1", "wire_style": "OpenAiCompatible",
"credential": "oauth:corp" }
}
}
然后运行 ante auth login corp。client_id、redirect_uri、authorize_url 和 token_url 为必填项;redirect_uri 必须位于 http://localhost 或 http://127.0.0.1。可选字段包括 scopes、resource、authorize_params、token_request_encoding(json 或 form)以及 account_claim(在 ante auth list 中作为账号显示的 JWT claim)。与内置 Profile 同名的条目会整体替换它。oauth: 引用不存在的 Profile 会报错。
模板
提供商 headers 和 extra_body 中的字符串值,以及 oauth_profiles 条目中的字符串值,可使用:
| 模板 | 替换为 |
|---|---|
${NAME} | 环境变量 NAME。 |
${NAME:-default} | NAME,未设置时为 default。 |
${session_id} | 发起请求的会话 ID,仅限 headers 和 extra_body(参见发送会话请求头)。 |
环境变量在加载目录时读取。${NAME} 既无值也无默认值时,整个条目会被拒绝,并指出该变量。模板不用于传递凭据;请使用 credential。
模型字段
模型在提供商的 preferred_models 中声明。在内置提供商上,id 匹配已有模型的条目会修改该模型,新 id 则会被添加。除 id 以外的所有字段均为可选:
| 字段 | 说明 |
|---|---|
id | 模型 ID(兼容历史别名 name) |
display_name | 友好展示名称 |
description | 在模型选择器中展示的简短说明 |
temperature | 采样温度。在 AnthropicMessage 提供商上,开启思考推理时必须为 1;Claude Haiku 5.5 无论思考设置如何都要求为 1。其他值会在发送请求前报错 |
top_p | Nucleus 采样截断阈值 |
top_k | Top-k 采样截断阈值 |
max_tokens | 单轮最大输出 Token 数。在需要显式思考预算的 AnthropicMessage 提供商上,设置思考等级时必须大于 1024 —— API 的最低预算要求 |
stop_sequences | 停止生成的标记字符串列表 |
context_limit | 上下文窗口上限(Token 数) |
effort | 默认思考深度等级 —— min、low、medium、high、xhigh 或 max。不支持推理调节的模型请省略(Ante 不会发送 effort 参数并隐藏滑块) |
supported_efforts | 该模型在当前提供商上接受的思考深度级别,按升序排列(取值同 effort)。它会替换内置档位:滑块只显示这些级别,OpenAI 兼容提供商会发送同名 reasoning_effort(min 在线上拼写为 minimal)。空列表表示模型不接受思考深度设置;省略则保留内置档位 |
weight_class | 规模/成本等级 —— Feather(轻量/快速/低成本)、Middle(中等)或 Heavy(最大/能力最强)。驱动默认模型与辅助模型选取(参见权重等级) |
support_vision | 是否支持图片输入。内置模型显式声明此能力;自定义模型未指定时默认为 true,覆盖已有预设时省略该字段则保留预设值。纯文本端点应设置为 false。发送给无视觉能力的模型之前会过滤图片,不影响保存的历史记录;读取图片时返回元数据而非像素。 |
权重等级
每个内置模型均带有 weight_class(Feather、Middle 或 Heavy),Ante 根据此属性自动进行智能选择:
- 默认模型 — 选择提供商但未指明具体模型时,默认解析为其 Heavy 旗舰模型。
- 环境感知 UI 调用 — 加载状态语和下一提示词建议等装饰性调用会在提供商拥有 Feather 或 Middle 模型时选用其最轻量模型。WebFetch 会把网页内容直接返回给当前会话模型,不走此路径。
未设置 weight_class 的模型回退到目录声明顺序。在自定义模型上设置 weight_class 可以精确引导这些自动化选择。
模型与提供商的解析仲裁规则
显式指定的 --provider 和 --model 参数优先于 ~/.ante/settings.json 中的 provider 和 model 设置。两处均未指定时,Ante 使用下方的自动检测规则。
解析模型 ID 时分两层覆盖(后生效者覆盖前者):
- 提供商的模型声明 — 优先采用所选提供商
preferred_models中的声明(含您的修改);未列出时,使用目录中首个包含该 ID 的提供商声明。未知 ID 回退为基础默认规格。 - 环境变量覆盖 — 进程环境变量优先级高于一切。
提供商与模型的匹配:
若仅传入 --model,Ante 会挑选已认证且其 preferred_models 列表包含该 ID 的提供商,其次回退至没有 preferred_models 的已认证提供商,最后回退至默认提供商。
通过 --provider 指定或保存在设置中的提供商,即使尚未配置也会保留:Ante 会在该提供商上启动,并提示需在 /providers 中完成配置。若同时传入 --provider 与 --model,Ante 优先使用该提供商的模型声明,再应用环境变量覆盖;该提供商未列出该 ID 时才全局查找。未知 ID 作为基础模型规格原样透传。
当命令行与设置均未指定模型或提供商时,Ante 执行自动检测:按目录顺序(Antix 排在首位)选用第一个已认证提供商的最高权重模型(参见权重等级)。若均未认证,则在 Antix 上启动,等待配置。
环境变量覆盖
无需编辑文件即可覆盖会话级目录参数:
| 环境变量 | 覆盖目标字段 |
|---|---|
MODEL_BASE_URL | 所有提供商的基础 URL(专属变量如 ANTHROPIC_BASE_URL 优先级更高) |
MODEL_TEMPERATURE | temperature |
MODEL_TOP_P | top_p |
MODEL_MAX_TOKENS | max_tokens |
MODEL_CONTEXT_LIMIT | context_limit |
思考深度(Effort)无通用环境变量 —— 请通过命令行参数 --effort 或配置文件中的 effort 字段指定。
多个预设也支持专属的 base-URL 环境变量,且优先级高于 MODEL_BASE_URL:ANTHROPIC_BASE_URL、OPENAI_BASE_URL、OPENAI_COMPATIBLE_BASE_URL、OPENROUTER_BASE_URL、DEEPSEEK_BASE_URL。
容错处理
单个无效条目不会破坏整个配置文件。Ante 对 catalog.json 进行宽容解析:任何加载失败的提供商、Profile 或 helper 条目会被跳过,其余条目仍正常加载。采用旧版本写法的设置会被跳过,并提示其替代写法(参见升级到 v0.3)。跳过的条目会在启动时以及 ante doctor 中报告,例如:
Skipped 1 entry in ~/.ante/catalog.json:
- providers.my-provider: missing field `base_url`
仅当文件**根本不是一个 JSON 对象(isn't a JSON object at all)**时才会被整体拒绝。缺少 catalog.json 完全正常 —— Ante 会直接使用内置预设。
相关章节
- 连接提供商 — 通过 OAuth 或 API 密钥登录
- 存储与目录结构参考手册 —
catalog.json在磁盘上的位置 - 离线模式 — 本地运行 GGUF 模型