本项目将 CodeBuddy 官方接口反向代理为 OpenAI 兼容接口,推荐通过 Docker Compose 部署。
git clone https://github.com/sliverkiss/codebuddy2api.git
cd codebuddy2apicp .env.example .env编辑 .env,至少填写以下内容:
# 访问本代理服务的鉴权密码(给客户端使用)
CODEBUDDY_PASSWORD=your_proxy_password
# 推荐 API Key 模式
CODEBUDDY_AUTH_MODE=api_key
CODEBUDDY_API_KEY=your_codebuddy_api_key
CODEBUDDY_INTERNET_ENVIRONMENT=internal
# Docker 建议
CODEBUDDY_HOST=0.0.0.0
CODEBUDDY_PORT=8001说明:
internal适用于中国版网络环境(会自动走https://copilot.tencent.com)。CODEBUDDY_API_ENDPOINT留空即可自动选择官方端点。
docker compose up -d --build查看运行状态:
docker compose ps
docker compose logs -f codebuddy2api健康检查:
curl http://127.0.0.1:8001/health获取模型:
curl -H "Authorization: Bearer your_proxy_password" \
http://127.0.0.1:8001/v1/models对话测试:
curl -X POST "http://127.0.0.1:8001/v1/chat/completions" \
-H "Authorization: Bearer your_proxy_password" \
-H "Content-Type: application/json" \
-d '{
"model": "glm-5.1",
"messages": [{"role": "user", "content": "你是什么模型"}],
"stream": false
}'from openai import OpenAI
client = OpenAI(
api_key="your_proxy_password",
base_url="http://127.0.0.1:8001/v1"
)
resp = client.chat.completions.create(
model="glm-5.1",
messages=[{"role": "user", "content": "你是什么模型"}]
)
print(resp.choices[0].message.content)git pull
docker compose up -d --build- 不要把
.env提交到 Git。 - 如果怀疑密钥泄露,请立即更换
CODEBUDDY_API_KEY和CODEBUDDY_PASSWORD。 - 对公网暴露时,建议在反向代理层增加 HTTPS 与 IP 白名单。