解决国产大模型在多 AI 编程工具间配置繁琐的问题,提供各工具 base URL 和环境变量的正确填法,覆盖 Cursor、Cline、Claude Code、Aider 等七种主流客户端。
使用中国前沿模型最别扭的地方不在模型本身,而在于要把同一个模型接入到你已经打开的七种不同工具里。
这是过去几个月我配置过的每种客户端的抄作业版本。一个 endpoint,多种工具。直接翻到你用的那一个。
下面几乎所有工具都要求填"base URL"。这是配置失败的第一原因,而且规则烦人地不一致:
在 Anthropic 客户端上加 /v1,就会在 /v1/v1/messages 收到 404。90% 的问题都是这个 bug。
两个环境变量,不需要配置文件:
export ANTHROPIC_BASE_URL="https://api.lbase.com"
export ANTHROPIC_AUTH_TOKEN="sk-your-key"
claude
想要指定模型?Claude Code 也支持 model 环境变量:
export ANTHROPIC_MODEL="deepseek-v4-flash" # 如果你的 gateway 有映射,也可以用 claude-* 名称
提示:把便宜配置和旗舰配置分别维护一个独立的 shell profile(或者一个小 wrapper 脚本)。切换时只需一条命令,不用再手动改配置文件了。
Settings → Models → OpenAI API Key,然后添加一个自定义模型:
Base URL: https://api.lbase.com/v1
Model name: deepseek-v4-flash
把不想在选择器里看到的模型关掉(Cursor 默认会列出一大堆噪音)。
Cursor 是 chat/completion 导向的;对于长时间 agentic 运行,在非 Anthropic 模型上 Claude Code 或 Cline 处理 tool-call 循环的效果更好。
在扩展设置里选择 OpenAI Compatible:
Base URL: https://api.lbase.com/v1
Model ID: deepseek-v4-flash
Cline 的 agentic 循环很吃 token。这正是 prompt caching 发挥作用的地方——同样的 system prompt 和文件上下文每一步都会重新发送,而用了 cached-input 费率之后,输入侧几乎免费。
export OPENAI_API_BASE="https://api.lbase.com/v1"
export OPENAI_API_KEY="sk-your-key"
aider --model openai/deepseek-v4-flash
Aider 也支持 Anthropic 风格的 endpoint,如果你更喜欢用 Claude model 别名的话。
~/.continue/config.json:
{
"models": [
{
"title": "DeepSeek V4.1 (NovaAPI)",
"provider": "openai",
"model": "deepseek-v4-flash",
"apiBase": "https://api.lbase.com/v1",
"apiKey": "sk-your-key"
}
]
}
这三个都想要一个 OpenAI-compatible 的 provider。用任何一个你没用过的 provider,或者添加一个自定义的:
# LangChain
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(
model="deepseek-v4-flash",
base_url="https://api.lbase.com/v1",
api_key="sk-your-key",
)
对于 Dify:Settings → Model Provider → OpenAI-API-compatible,粘贴 base URL 和 key,然后把 deepseek-v4-flash 作为模型名称添加进去。
每次都是同样的模式:选择"OpenAI"作为 provider 类型,然后用 https://api.lbase.com/v1 覆盖 API host,粘贴 key,获取模型列表(它们会拉取这个 endpoint 暴露的任何模型)。
推理模型的一个注意事项:一些 GUI 会把模型的 reasoning_content 字段内联渲染出来。这是客户端渲染的怪癖,不是响应损坏——知道这点可以避免你提一个 bug。
1. 模型名称会变。 提供商会给模型重命名(DeepSeek 在 V4.1 上线当天就把 deepseek-v4-flash 改成了 deepseek-flash),并开始自动在不同层级之间路由流量。如果某个工具硬编码了旧名称,就会悄无声息地挂掉。gateway 在这里能帮上忙,因为映射在服务端:你的客户端只需要一直发送它一贯发送的名称就行了。
2. 峰谷定价是真实存在的。 如果你的 provider 在峰时计费(DeepSeek 的峰时是周一至周五 01:00–04:00 和 06:00–10:00 UTC,2 倍价),那么"同一个请求"在不同时间跑批处理成本可能翻倍。把夜间任务安排在峰时窗口之外;大批量跑下来这是零代码改动的直接 50% 节省。
3. Caching 是没人配置的最大的杠杆。 Cached-input 费率比 cache-miss 费率低一个数量级。Agentic 工具一直在重新发送一个稳定的 prefix,所以启用 caching 对账单的改变比换模型还大。
curl https://api.lbase.com/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-key" \
-d '{"model":"deepseek-v4-flash","messages":[{"role":"user","content":"reply with OK"}],"max_tokens":5}'
返回 200 且有 "choices" 说明你的 endpoint、key 和模型名称都没问题——之后任何客户端问题都是客户端配置问题,不是 gateway 的问题。
我开发了 NovaAPI,这个例子中用到的 gateway——一个 OpenAI/Anthropic 兼容的中国前沿模型访问通道,支持 PayPal/USDT 结算。上述每个代码片段在任何兼容的 gateway 上都能工作;base-URL 规则和坑无论你选哪一个都是一样的。