Skip to content

多 provider

deepcode 内置三家国内厂商后端(DeepSeek / GLM·智谱 / Kimi·Moonshot),外加一个 OpenAI 兼容的 custom 档,可以接任意自建或第三方 OpenAI 兼容端点。四者共享同一套主循环、工具与权限体系——切后端只是换 key 和 baseURL,用法不变。

四类后端一览

providerenv keybaseURLsmart(主循环)fast(子操作)
deepseek(默认)DEEPSEEK_API_KEYhttps://api.deepseek.comdeepseek-v4-prodeepseek-v4-flash
glmZHIPUAI_API_KEYhttps://open.bigmodel.cn/api/paas/v4glm-5.2glm-5-turbo
kimiMOONSHOT_API_KEYhttps://api.moonshot.cn/v1kimi-k2.7-code(仅思考)kimi-k2.5
custom自定义(缺省 DEEPCODE_API_KEY自填自填自填

不设置 provider 时缺省即 deepseek

配置方式

方式一:环境变量

最简单,装机即用,apiKey 只认对应厂商的 env:

bash
export DEEPSEEK_API_KEY=sk-...
# 或
export ZHIPUAI_API_KEY=...
# 或
export MOONSHOT_API_KEY=...

方式二:~/.deepcode/settings.json

provider 选当前后端,providers.{} 存各家的 key(或自定义端点)。三份示例:

切到 GLM:

jsonc
{
  "provider": "glm",
  "providers": {
    "glm": { "apiKey": "sk-..." }
  }
}

切到 Kimi:

jsonc
{
  "provider": "kimi",
  "providers": {
    "kimi": { "apiKey": "sk-..." }
  }
}

接自建 / 第三方 OpenAI 兼容端点(custom):

jsonc
{
  "provider": "custom",
  "providers": {
    "custom": {
      "baseURL": "https://your-endpoint.example.com/v1",
      "apiKeyEnv": "MY_ENDPOINT_API_KEY", // 缺省 DEEPCODE_API_KEY
      "dialect": "openai",                // deepseek | glm | kimi | openai
      "models": { "fast": "your-fast-model", "smart": "your-smart-model" }
    }
  }
}

custom.baseURL + custom.models.fast/models.smart 是必填项,缺一个都会被判定为配置不全、静默回落 deepseekdialect 只认 deepseek/glm/kimi/openai 四个值,其余会被丢弃。providersprovider 字段只在用户层(~/.deepcode/settings.json)生效,项目层配置会被剥离,避免协作仓库里的 settings 悄悄改你的 key 归属。

运行时切换:/model

交互 TUI 里输入 /model 打开选择器(也可以 /model <名字> 直接切),列表按当前 provider 的档在前、其它已配置 key 的 provider 档在后展示。

  • 切同一 provider 内的档(比如 deepseek 内 fast/smart 互切):立即生效,不重启。
  • 切到另一个 provider(比如 deepseek 切 GLM):需要重启一次进程,deepcode 会自动帮你完成——写设置、退出、带 --resume 重新拉起,当前会话历史原样恢复,只是换了底座。

目标 provider 没配 key 时选择器会标注「未配置」,选中会被拒绝,不会真的重启到一个打不通的后端。

smart / fast 双档

每个 provider 都有两档:主循环规划、写代码、下决策用 smart;工具内部的子操作(比如子代理、摘要)用更便宜更快的 fast。默认组合见上面的总览表。

各家内置模型全貌(标「仅思考」的模型不能关闭 thinking,见下节):

DeepSeekdeepseek-v4-flashdeepseek-v4-pro

GLMglm-5.2glm-5.1glm-5glm-5-turboglm-4.7glm-4.6glm-4.5glm-4.5-airglm-4.6vglm-4.6v-flash

Kimikimi-k3(仅思考)、kimi-k2.7-code(仅思考)、kimi-k2.7-code-highspeed(仅思考)、kimi-k2.6kimi-k2.5

thinking 开关与仅思考守卫

thinking 默认 disabled(关),省 token、出手快;/think 开关切换,/effort low|medium|high 调思考力度。

有一类模型是「仅思考」——发 thinking:{type:"disabled"} 会被端点直接拒绝(比如上面标注的 Kimi 三个档)。deepcode 对这类模型做了守卫:关 thinking 时不发 disabled 字段,而是整体省略,让模型走它自己恒定的思考默认,不会因为想关思考反而把请求打崩。

定价

各厂定价见其官网。


下一步:settings 与环境变量