将 Z.AI 转换为 OpenAI 兼容 API 的代理服务。
/v1/chat/completions 和 /v1/models 端点前往 Releases 下载对应平台的二进制文件。
git clone https://github.com/XxxXTeam/zai2api.git
cd zai2api
go build -o zai2api ./cmd/main.go
复制配置文件并修改:
cp .env.example .env
编辑 .env 文件,设置必要的配置项:
PORT=8000
AUTH_TOKEN=your-api-key
./zai2api
服务将在 http://localhost:8000 启动。
| 端点 | 方法 | 描述 |
|---|---|---|
/ |
GET | 服务状态和遥测数据 |
/v1/models |
GET | 获取可用模型列表 |
/v1/chat/completions |
POST | 聊天补全接口 |
| 配置项 | 默认值 | 描述 |
|---|---|---|
PORT |
8000 | 服务端口 |
AUTH_TOKEN |
- | API 认证令牌(支持多个,逗号分隔) |
BACKUP_TOKEN |
- | 备用令牌(用于多模态) |
DEBUG_LOGGING |
false | 调试日志 |
TOOL_SUPPORT |
true | 工具调用支持 |
RETRY_COUNT |
5 | 请求失败时的重试次数(不含首次请求) |
LOG_LEVEL |
info | 日志级别:debug/info/warn/error |
完整配置请参考 .env.example
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-api-key" \
-d '{
"model": "GLM-4.5",
"messages": [{"role": "user", "content": "Hello!"}],
"stream": true
}'
from openai import OpenAI
client = OpenAI(
api_key="your-api-key",
base_url="http://localhost:8000/v1"
)
response = client.chat.completions.create(
model="GLM-4.5",
messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)
/v1/models-thinking、-search、-thinking-searchGLM-4.5
GLM-4.5-Search
GLM-4.5-V
GLM-4.5-Air
GLM-4.6
GLM-4.6-Thinking
GLM-4.6-Search
GLM-4.6-V
GLM-4.7
GLM-5
GLM-5-Turbo
GLM-5v-Turbo
GLM-5.1
glm-4.6v
glm-4-flash
glm-4-air-250414
GLM-4.1V-Thinking-FlashXzai2api/
├── cmd/
│ ├── main.go # 主程序入口
│ └── register/ # Token 注册工具
├── internal/
│ ├── chat.go # 聊天补全处理
│ ├── config.go # 配置管理
│ ├── models.go # 模型定义
│ ├── token_manager.go # Token 管理
│ ├── tools.go # 工具调用
│ └── ...
├── .env.example # 配置示例
└── README.md
本项目采用 GNU General Public License v3.0 许可证。
$ claude mcp add zai2api \
-- python -m otcore.mcp_server <graph>