使用 OpenCode 配置本地 LLM
Source: Dev.to
将自定义 OpenAI 兼容端点添加到 OpenCode
OpenCode 目前在 UI 中没有提供简单的“自带端点”选项。相反,它随附了一份预定义的云提供商列表。
OpenCode 完全支持 OpenAI 兼容的 API,这意味着你可以接入任何兼容的端点(例如 vLLM、LM Studio、带代理的 Ollama,或你自己的自定义服务器)。
本指南展示了如何将本地 vLLM 服务器接入为提供商;相同的方法同样适用于任何 OpenAI 兼容端点。
前置条件
- 已安装并运行 OpenCode
- 正在运行的 OpenAI 兼容端点(例如本地 vLLM 服务器,地址为
http://:8000/v1)
vLLM 提供的 /v1 API 与 OpenAI 的 Chat Completions API 完全匹配,是理想的即插即用后端。
1. 存储提供商的认证信息
OpenCode 将认证数据保存在 ~/.local/share/opencode/auth.json 中。
如果该文件不存在,创建它并添加以下条目:
{
"vllm": {
"type": "api",
"key": "sk-local"
}
}
- vLLM 并不需要 API 密钥,但 OpenCode 需要一个键存在。任意占位符值均可(例如
sk-local)。 - 如果
auth.json已经存在,请将vllm区块合并到现有 JSON 中。
2. 定义提供商配置
创建(或编辑)~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"vllm": {
"npm": "@ai-sdk/openai-compatible",
"name": "vLLM (local)",
"options": {
"baseURL": "http://100.108.174.26:8000/v1"
},
"models": {
"Qwen3-Coder-30B-A3B-Instruct": {
"name": "My vLLM model"
}
}
}
},
"model": "vllm/Qwen3-Coder-30B-A3B-Instruct",
"small_model": "vllm/Qwen3-Coder-30B-A3B-Instruct"
}
关键字段
- npm –
@ai-sdk/openai-compatible告诉 OpenCode 将此提供商视为 OpenAI 兼容。 - options.baseURL – 必须指向你服务器的
/v1端点。 - models – 键必须与后端公开的模型 ID 完全一致。
- model / small_model – 设置 OpenCode 使用的默认模型。
3. 重启 OpenCode
如果 OpenCode 已经在运行,重启它以加载新的配置。
4. 使用自定义提供商
现在,你可以通过 /model 命令(或 UI 选择列表)选择你的自定义提供商和模型。条目 “vLLM (local) – My vLLM model” 将出现在可用选项中。