跳到主要内容

模型与提供商目录参考手册

Ante 根据**目录(Catalog)**解析每个提供商与模型:包括本文档中记录的内置预设,以及在启动时合并覆盖的 ~/.ante/catalog.json。目录在每个进程启动时读取一次 —— 修改后请重启 Ante 以生效。

本页面为详尽的参考手册。登录与 API 密钥配置请参阅连接提供商,配置范例请参阅自定义模型目录。

内置提供商列表​

以下预设对应 v0.3.2:15 个托管提供商预设,以及离线服务运行时注册的 local。

提供商key通信协议格式 (Wire style)凭据
AnthropicanthropicAnthropicMessageANTHROPIC_API_KEY
Anthropic Subscriptionanthropic-subscriptionAnthropicMessageOAuth(anthropic)
OpenAIopenaiOpenAiResponseOPENAI_API_KEY
OpenAI Compatibleopenai-compatibleOpenAiCompatibleOPENAI_COMPATIBLE_API_KEY
OpenAI Subscriptionopenai-subscriptionOpenAiResponseOAuth(openai)
GeminigeminiGeminiGEMINI_API_KEY
Vertex AI Geminivertex-geminiGeminiVERTEX_GEMINI_API_KEY
Open RouteropenrouterOpenAiCompatibleOPENROUTER_API_KEY
Open Router Responsesopenrouter-responsesOpenAiResponseOPENROUTER_API_KEY
Open Router Anthropicopenrouter-anthropicAnthropicMessageOPENROUTER_API_KEY
Grok (xAI)xaiOpenAiResponseXAI_API_KEY
ZaizaiOpenAiCompatibleZAI_API_KEY
DeepSeekdeepseekOpenAiCompatibleDEEPSEEK_API_KEY
MiniMaxminimaxOpenAiCompatibleMINIMAX_API_KEY
AntixantixAnthropicMessageOAuth(antix),其次 ANTIX_API_KEY
LocallocalOpenAiCompatible无

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-astraOpenAI 面向复杂智能体任务的最强模型1.05M
gpt-6.1-solGPT-6.1 Sol,适用于复杂编码与智能体工作流1.05M
gpt-6.1-terraGPT-6.1 Terra,适用于视觉推理、计算机操作与写作1.05M
gpt-6-lunaGPT-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-flashGemini 3.8 Flash,适用于长程编码与自主智能体1.05M
gemini-4-argonGemini 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.7Grok 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 FlashX1M
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-1017DeepSeek V4.1 Flash 10 月 17 日编码升级版,支持视觉1.05M
reflection/beam-1.0-501b-a23bReflection Beam 1.0,适用于编码与长程智能体任务1.05M
google/gemini-4-argon通过 OpenRouter 提供的 Gemini 4 Argon 复杂推理模型1.05M
google/gemini-3.8-flashGemini 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 Wonder1.05M
meta/muse-spark-openMuse Spark Open,适用于智能体编码工作流1.05M
meta/muse-spark-1.3Muse 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-flashMiniMax M3.1 Flash 多模态推理模型1M
qwen/qwen3.8-max-prime支持视觉的高吞吐 Qwen 3.8 Max1M
qwen/qwen3.8-omni-flashQwen 3.8 Omni Flash 多模态推理1M
z-ai/glm-5.3-prime高吞吐 GLM 5.3,纯文本1M
z-ai/glm-5.3-flashx支持原生视觉的高速 GLM 5.3 FlashX1.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 Flash1M
ante --provider deepseek --model deepseek-flash

需配置环境变量 DEEPSEEK_API_KEY,可选配置 DEEPSEEK_BASE_URL。

MiniMax​

模型 ID说明上下文大小
MiniMax-M3.1-FlashMiniMax 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-flashGemini 3.8 Flash,适用于长程编码与自主智能体1.05M
gemini-4-argonGemini 4 Argon,适用于复杂推理与自主智能体1.05M
grok-4.6Grok 4.6 旗舰推理模型500K
kimi-k3.1-proKimi K3.1 Pro 多模态推理模型,适用于长程智能体任务1M
qwen3.8-max最新 Qwen 3.8 Max1M
qwen3.7-plus最新 Qwen 3.7 Plus1M
claude-haiku-5-5适合高并发、低延迟任务的最快 Claude 模型1M
claude-sonnet-5-5速度与智能的最佳平衡1M
claude-opus-5-5长时间运行的智能体编码与知识工作1M
claude-fable-5-1最强大的 Claude 模型1M
gpt-6-astraOpenAI 面向复杂智能体任务的最强模型1.05M
gpt-6.1-solGPT-6.1 Sol,适用于复杂编码与智能体工作流1.05M
gpt-5.6-terraGPT-5.6 智能水平与成本的平衡模型1.05M
gpt-5.6-luna面向高效、高吞吐任务的 GPT-5.6 模型1.05M
gpt-5.4-mini更快、更经济的 GPT-5.4 模型400K
gpt-5.4-nanoGPT-5.4 家族最小轻量模型400K
deepseek-flashDeepSeek 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 FlashX1M
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​

  1. 在 openrouter.ai 注册并生成 API 密钥。
  2. 配置环境变量:
    export OPENROUTER_API_KEY="sk-or-..."
  3. 调用 Open Router 模型列表 中的任意模型:
    ante --provider openrouter --model deepseek/deepseek-v4.1-flash-1017

兼容 OpenAI 格式的提供商​

许多提供商均提供 OpenAI 兼容的 API(如 Together AI、Fireworks、Groq Cloud、Perplexity 等)。临时调用时可直接利用内置的 openai-compatible 提供商而无需编辑 catalog 文件:

  1. 设置基础 URL(该特定环境变量优先级高于 MODEL_BASE_URL):
    export OPENAI_COMPATIBLE_BASE_URL="https://api.together.xyz/v1"
  2. 设置 API 密钥:
    export OPENAI_COMPATIBLE_API_KEY="your-provider-api-key"
  3. 启动调用:
    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保留关键字列表
AnthropicMessagemodel, max_tokens, messages, system, temperature, tools, stream, thinking, stop_sequences, output_config, cache_control
OpenAiCompatiblemodel, 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
OpenAiResponsemodel, instructions, input, tools, tool_choice, parallel_tool_calls, max_output_tokens, temperature, reasoning, stream, include, store
Geminicontents, 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:NAMEhelpers 中某个命令的输出。
  • 列表按顺序尝试,发送第一个有值的引用。在 /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_pNucleus 采样截断阈值
top_kTop-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 时分两层覆盖(后生效者覆盖前者):

  1. 提供商的模型声明 — 优先采用所选提供商 preferred_models 中的声明(含您的修改);未列出时,使用目录中首个包含该 ID 的提供商声明。未知 ID 回退为基础默认规格。
  2. 环境变量覆盖 — 进程环境变量优先级高于一切。

提供商与模型的匹配: 若仅传入 --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_TEMPERATUREtemperature
MODEL_TOP_Ptop_p
MODEL_MAX_TOKENSmax_tokens
MODEL_CONTEXT_LIMITcontext_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 会直接使用内置预设。