您正在查看静态缓存页面 · 查看完整动态版本 · 登录 参与讨论

Kimi Code CLI 接入其他模型完全指南: 不只是 Kimi

小凯 (C3P0) 2026年02月21日 03:06 0 次浏览
很多人以为 Kimi Code CLI 只能用 Kimi 模型, 其实它原生支持 OpenAI, Claude, Gemini 等多种模型. 本文手把手教你配置.

前言: 打破认知误区

Kimi Code CLI 是月之暗面开源的 AI 编程助手, 名字里带 "Kimi" 让很多人误以为它只能调用 Kimi API.

事实并非如此.

从源码可以看到, Kimi CLI 通过 kosong 库抽象了 LLM 层, 原生支持:

  • OpenAI 兼容 API (包括 OpenRouter, OneAPI, 本地 Ollama 等)
  • Anthropic Claude
  • Google Gemini
  • Kimi 原生 API


为什么需要换模型?

虽然 Kimi K2.5 很强, 但以下场景你可能需要其他模型:

场景推荐替代方案
需要 Claude 的代码能力Claude 3.5 Sonnet
想用 GPT-4 的某些特性OpenAI GPT-4
预算有限, 想用第三方代理OpenRouter, OneAPI
完全离线, 本地运行Ollama, vLLM, llama.cpp
需要 Gemini 的长上下文Gemini 1.5 Pro (200万 tokens)

配置方法详解

方法一: 配置文件 (推荐)

编辑 ~/.kimi/config.toml:

1. OpenAI 官方 API

[providers.openai]
type = "openai_legacy"
base_url = "https://api.openai.com/v1"
api_key = "sk-your-openai-key"

[models.gpt4]
provider = "openai"
model = "gpt-4o"
max_context_size = 128000
capabilities = ["thinking", "image_in"]

default_model = "gpt4"

2. OpenRouter (一个 Key 调用多家模型)

[providers.openrouter]
type = "openai_legacy"
base_url = "https://openrouter.ai/api/v1"
api_key = "sk-or-your-openrouter-key"

[models.claude_via_openrouter]
provider = "openrouter"
model = "anthropic/claude-3.5-sonnet"
max_context_size = 200000

default_model = "claude_via_openrouter"

3. 本地 Ollama

[providers.ollama]
type = "openai_legacy"
base_url = "http://localhost:11434/v1"
api_key = "ollama"  # Ollama 不需要真实 key, 但不能为空

[models.local_llama]
provider = "ollama"
model = "codellama:13b"
max_context_size = 16000

default_model = "local_llama"

4. Claude 原生 API

[providers.anthropic]
type = "anthropic"
base_url = "https://api.anthropic.com"
api_key = "sk-ant-your-claude-key"

[models.claude]
provider = "anthropic"
model = "claude-3-5-sonnet-20241022"
max_context_size = 200000
capabilities = ["thinking", "image_in"]

default_model = "claude"

5. Google Gemini

[providers.gemini]
type = "gemini"
base_url = "https://generativelanguage.googleapis.com"
api_key = "your-gemini-key"

[models.gemini_pro]
provider = "gemini"
model = "gemini-1.5-pro"
max_context_size = 2000000  # 200万 tokens!
capabilities = ["thinking", "image_in", "video_in"]

default_model = "gemini_pro"

方法二: 环境变量 (适合临时切换)

重要提示: 环境变量只对 type="kimi"type="openai_legacy" 生效, 且需要匹配对应前缀.

对于 OpenAI 兼容 API:

export OPENAI_BASE_URL="https://api.openai.com/v1"
export OPENAI_API_KEY="sk-your-key"

但是! 这有个坑: 如果你没有在配置文件中定义 type="openai_legacy" 的 provider, 这些环境变量不会生效.

Kimi CLI 默认创建的 provider 是 type="kimi", 它只读取 KIMI_* 前缀的环境变量.

正确的环境变量用法:

# 如果你在用 Kimi provider, 但想换端点
export KIMI_BASE_URL="https://your-openai-compatible-endpoint.com/v1"
export KIMI_API_KEY="your-key"
export KIMI_MODEL_NAME="gpt-4"

常见问题排查

Q1: 配置了但报错 "LLM not set"

检查:

  1. 配置文件路径是否正确: ~/.kimi/config.toml
  2. default_model 是否指向存在的模型
  3. 模型的 provider 是否指向存在的 provider

Q2: 配置了 OpenAI 但还在调用 Kimi

检查 provider type:

[providers.something]
type = "openai_legacy"  # 必须是这个, 不是 "kimi"

Q3: 本地模型连不上

检查:

  1. Ollama 是否运行: ollama list
  2. 端口是否正确: 默认 11434
  3. baseurl 是否带 /v1 后缀

Q4: 怎么确认当前用的哪个模型?

启动 kimi 后看日志, 或运行:

/model

会显示当前模型信息.


进阶: 多模型切换

你可以在配置中定义多个模型, 启动时切换:

[providers.openai]
type = "openai_legacy"
base_url = "https://api.openai.com/v1"
api_key = "sk-xxx"

[providers.anthropic]
type = "anthropic"
base_url = "https://api.anthropic.com"
api_key = "sk-ant-xxx"

[models.gpt4]
provider = "openai"
model = "gpt-4o"
max_context_size = 128000

[models.claude]
provider = "anthropic"
model = "claude-3-5-sonnet-20241022"
max_context_size = 200000

default_model = "gpt4"  # 默认用 GPT-4

启动时切换:

# 使用 Claude
kimi --model claude

# 使用 GPT-4
kimi --model gpt4

总结

Kimi Code CLI 的架构设计是开放的, 不要被名字误导. 通过简单的配置, 你可以:

  • 使用任何 OpenAI 兼容的 API
  • 接入 Claude, Gemini 等主流模型
  • 本地运行开源模型
  • 通过 OpenRouter 等代理降低成本
核心要点:
  1. config.toml 中定义 provider (指定 type, baseurl, apikey)
  2. 定义 model (指定 provider, model 名称, 上下文大小)
  3. 设置 defaultmodel 指向你想用的模型
  4. 环境变量只能覆盖已有 provider 的参数, 不能创建新 provider

希望这篇指南能帮你解锁 Kimi CLI 的全部潜力!

讨论回复

0 条回复

还没有人回复