LiteLLM
通过本机 LiteLLM 网关接入 CoffeeRouter,并在 ChatBox 中使用。
接入链路
ChatBox
↓ 本机 Master Key
http://127.0.0.1:4000/v1/chat/completions
↓ LiteLLM 模型映射
https://www.coffeerouter.ai/v1/chat/completions
↓ CoffeeRouter API Key
MiniMax-M2.7
LiteLLM 对客户端暴露别名 coffee-minimax-m2-7,而发送给 CoffeeRouter 的实际模型 ID 是 MiniMax-M2.7。两者用途不同,不要混用。
01. 准备并安装 LiteLLM
开始前请准备:
- CoffeeRouter API Base:
https://www.coffeerouter.ai/v1。 - CoffeeRouter 中创建的有效令牌,以及该令牌允许使用的准确模型 ID。
- 用于保存配置的目录,例如 Windows 的
C:\litellm-coffeerouter。 - 可选:已安装最新版 ChatBox,用于完成客户端验证。
LiteLLM 1.84.0 及以上版本需要 Python 3.10 或更高版本。官方安装脚本和 uv 可以自动准备兼容的 Python 环境。
macOS、Linux 或 Windows WSL
LiteLLM 官方将下面的一键脚本列为本地和初学者的推荐安装方式:
curl -fsSL https://raw.githubusercontent.com/BerriAI/litellm/main/scripts/install.sh | sh
脚本安装 litellm[proxy] 后可能自动进入通用配置向导。本文会使用专门的 config.yaml 接入 CoffeeRouter,因此可以退出向导并继续下一节。
Windows PowerShell
原生 PowerShell 通常没有 sh,建议先安装 uv,再使用 LiteLLM 官方提供的 uv tool 安装方式:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
uv tool install "litellm[proxy]"
litellm --version
安装完成后如找不到 uv 或 litellm,请关闭并重新打开终端。
02. 配置 CoffeeRouter 与 LiteLLM 密钥
在配置目录中新建 .env:
COFFEEROUTER_API_BASE=https://www.coffeerouter.ai/v1
COFFEEROUTER_API_KEY=sk-your-coffeerouter-key
LITELLM_MASTER_KEY=sk-your-litellm-master-key

COFFEEROUTER_API_KEY是在 CoffeeRouter 令牌管理页获取的上游令牌。LITELLM_MASTER_KEY是客户端连接本机 LiteLLM 时使用的独立密码,必须以sk-开头。- 两个 Key 不应相同,也不要把真实值写入
config.yaml、截图或 Git。
将 .env 加入项目的 .gitignore:
.env
03. 配置模型映射
在同一目录新建 config.yaml:
model_list:
- model_name: coffee-minimax-m2-7
litellm_params:
model: openai/MiniMax-M2.7
api_base: os.environ/COFFEEROUTER_API_BASE
api_key: os.environ/COFFEEROUTER_API_KEY
litellm_settings:
drop_params: true
general_settings:
master_key: os.environ/LITELLM_MASTER_KEY

| 配置项 | 作用 | 示例 |
|---|---|---|
model_name | 客户端调用 LiteLLM 时使用的别名 | coffee-minimax-m2-7 |
model | LiteLLM 发往上游的 Provider 与实际模型 ID | openai/MiniMax-M2.7 |
api_base | CoffeeRouter 的 OpenAI 兼容 Base URL | https://www.coffeerouter.ai/v1 |
api_key | CoffeeRouter 上游令牌 | 从 .env 读取 |
CoffeeRouter 是 OpenAI 兼容接口,因此 LiteLLM Provider 前缀使用 openai/。MiniMax-M2.7、coffee-minimax-m2-7 及 ChatBox 中填写的模型名都必须逐字匹配各自配置,注意大小写。
需要添加更多模型时,可以在 model_list 中继续增加条目:
- model_name: coffee-your-model
litellm_params:
model: openai/your-exact-coffeerouter-model-id
api_base: os.environ/COFFEEROUTER_API_BASE
api_key: os.environ/COFFEEROUTER_API_KEY
04. 启动本机 LiteLLM
从包含 .env 和 config.yaml 的目录启动:
cd C:\litellm-coffeerouter
litellm --config .\config.yaml --port 4000
macOS、Linux 或 WSL:
cd ~/litellm-coffeerouter
litellm --config ./config.yaml --port 4000
看到 LiteLLM 监听 http://0.0.0.0:4000 后保持终端运行。本机客户端请使用更明确的回环地址 http://127.0.0.1:4000。
05. 高级选项:使用 Docker 长期运行
如果需要后台常驻、服务器部署或容器隔离,可以改用 Docker。普通本机体验可以跳过本节。
先安装并启动 Docker Desktop;Windows 建议启用 WSL 2 后端。然后在配置目录创建 docker-compose.yml:
services:
litellm:
image: docker.litellm.ai/berriai/litellm:latest
container_name: litellm-coffeerouter
command:
- "--config"
- "/app/config.yaml"
- "--port"
- "4000"
ports:
- "4000:4000"
volumes:
- ./config.yaml:/app/config.yaml:ro
env_file:
- .env
restart: unless-stopped

启动并检查容器:
cd C:\litellm-coffeerouter
docker compose pull
docker compose up -d --force-recreate
docker compose ps
docker compose logs --tail 50 litellm


确认 Master Key 已注入,但不要输出真实值:
docker compose exec litellm sh -c 'test -n "$LITELLM_MASTER_KEY" && echo MASTER_KEY_OK || echo MASTER_KEY_MISSING'

验证阶段可以使用 latest;生产环境应固定经过验证的具体版本标签或镜像摘要,便于回滚和复现。
日志中的 Failed to fetch remote model cost map 表示远程成本表获取失败并回退本地备份。如果后续请求成功,该警告通常不影响基础聊天;如果请求也失败,请继续检查网络、代理和 TLS 证书。
06. 可选:先直连 CoffeeRouter 验证上游
如果 LiteLLM 返回上游错误,可以先绕过 LiteLLM 验证 CoffeeRouter 的 Base URL、令牌和实际模型 ID:
$baseUrl = "https://www.coffeerouter.ai/v1"
$coffeeKey = "sk-your-coffeerouter-key"
$directBody = @{
model = "MiniMax-M2.7"
messages = @(
@{ role = "user"; content = "请只回复:CoffeeRouter 直连成功" }
)
stream = $false
} | ConvertTo-Json -Depth 10
$directResult = Invoke-RestMethod `
-Uri "$baseUrl/chat/completions" `
-Method Post `
-Headers @{ Authorization = "Bearer $coffeeKey" } `
-ContentType "application/json; charset=utf-8" `
-Body $directBody
$directResult.choices[0].message.content

测试后请清除终端中的敏感变量或关闭该终端,不要公开命令历史和截图。
07. 测试 LiteLLM 本机端点
保持 LiteLLM 运行,打开另一个 PowerShell:
$litellmKey = "sk-your-litellm-master-key"
$proxyBody = @{
model = "coffee-minimax-m2-7"
messages = @(
@{ role = "user"; content = "请只回复:LiteLLM 接入成功" }
)
stream = $false
} | ConvertTo-Json -Depth 10
$proxyResult = Invoke-RestMethod `
-Uri "http://127.0.0.1:4000/v1/chat/completions" `
-Method Post `
-Headers @{ Authorization = "Bearer $litellmKey" } `
-ContentType "application/json; charset=utf-8" `
-Body $proxyBody
$proxyResult.choices[0].message.content
这里必须使用 LiteLLM Master Key 和客户端别名 coffee-minimax-m2-7,不能改用 CoffeeRouter Key 或实际上游模型 ID。
08. ChatBox 接入 LiteLLM
在 ChatBox 中进入 设置 → Model Provider → Add Custom Provider,选择 OpenAI API Compatible,然后填写:
| ChatBox 配置项 | 填写内容 |
|---|---|
| Name | LiteLLM |
| API Mode | OpenAI API Compatible |
| API Key | .env 中的 LITELLM_MASTER_KEY |
| API Host | http://127.0.0.1:4000 |
| API Path | /v1/chat/completions |
| Model | coffee-minimax-m2-7 |

点击 Fetch 或手动添加 coffee-minimax-m2-7,保存后回到聊天页面选择该模型并发送测试消息。

ChatBox 只保存本机 LiteLLM Master Key,不应填写 CoffeeRouter 上游令牌。
常见问题
为什么 ChatBox 提示连接被拒绝?
确认 LiteLLM 进程或 Docker 容器正在运行,并检查 API Host 是否为 http://127.0.0.1:4000。如果 ChatBox 在另一台设备上,127.0.0.1 指向的是那台设备自身,不能访问当前电脑上的 LiteLLM。
为什么 LiteLLM 返回 401?
如果请求尚未到达 CoffeeRouter,检查 ChatBox 使用的是否为 LITELLM_MASTER_KEY;如果日志显示上游 401,则检查 COFFEEROUTER_API_KEY 是否完整、有效、未过期且有可用额度。
为什么提示模型不存在?
ChatBox 和本机测试请求应使用 model_name 的别名 coffee-minimax-m2-7;config.yaml 中 openai/ 后面的 MiniMax-M2.7 必须与 CoffeeRouter 令牌允许的实际模型 ID 完全一致。
为什么修改 .env 或 config.yaml 后没有生效?
停止并重新启动 LiteLLM。本机运行时请从配置目录启动;Docker 用户执行 docker compose up -d --force-recreate,再查看容器日志。
可以把 LiteLLM 提供给局域网或公网使用吗?
可以,但不属于本文的本机快速接入范围。请先使用独立 Master Key、限制监听和防火墙规则,并通过 HTTPS 反向代理提供服务;不要直接把未加固的 4000 端口暴露到公网。
安全提示
- 为 LiteLLM 创建独立 CoffeeRouter 令牌,方便单独撤销和更换。
.env、终端历史和 LiteLLM 日志都可能包含凭证或请求信息,不要上传或分享。- 不要让客户端直接获得 CoffeeRouter 上游令牌;客户端只使用 LiteLLM Master Key。
- 如果任一 Key 疑似泄露,请先在对应系统中撤销,再更新
.env并重启 LiteLLM。