Note
本项目仅供学习与研究交流。请务必遵守 Grok 的使用条款及当地法律法规,不得用于非法用途。
本仓库基于上游 chenyme/grok2api 二次开发,新增多账号池管理、Console 免费模型、配额轮换、防封部署等能力。欢迎 PR 和 Fork,二开请保留原作者与前端标识。
| 能力 | 说明 |
|---|---|
| OpenAI 兼容 | /v1/chat/completions、/v1/responses、/v1/images/generations、/v1/videos |
| Anthropic 兼容 | /v1/messages(Claude SDK 直接对接) |
| 多账号池 | basic / super / heavy 三级池,自动负载均衡与配额同步 |
| 免费账号 | 支持 console.x.ai SSO Token,*-console 模型零成本使用 |
| 媒体生成 | 文生图、图像编辑、文生视频、图生视频,本地缓存与代理链接 |
| 防封内置 | x-statsig-id 兼容修复,WARP + FlareSolverr 一键部署 |
| 管理后台 | Admin 配置、账号管理、Web Chat、Masonry 画廊、ChatKit 语音 |
本项目提供两种部署方式:
| 方式 | 说明 | 适用场景 |
|---|---|---|
| 标准版 | 仅 grok2api,直连 Grok | IP 干净、无 Cloudflare 拦截 |
| 防封版 | grok2api + WARP + Privoxy + FlareSolverr | IP 被 Cloudflare 拦截、需要稳定访问 |
Tip
当前版本已内置 403 兼容修复,标准版可直接验证。仍遇 403 时再切防封版。
Docker Compose(推荐):
git clone https://github.com/jiujiu532/grok2api
cd grok2api/grok2api-main/grok2api-main
cp .env.example .env
docker compose up -d查看日志:
docker compose logs -f grok2apiDocker 单容器:
docker run -d --name grok2api \
-p 8000:8000 \
-e TZ=Asia/Shanghai \
-e LOG_LEVEL=INFO \
-e ACCOUNT_STORAGE=local \
-v $(pwd)/data:/app/data \
-v $(pwd)/logs:/app/logs \
--restart unless-stopped \
ghcr.io/jiujiu532/grok2api:latestWindows PowerShell:
docker run -d `
--name grok2api `
-p 8000:8000 `
-e TZ=Asia/Shanghai `
-e LOG_LEVEL=INFO `
-e ACCOUNT_STORAGE=local `
-v ${PWD}/data:/app/data `
-v ${PWD}/logs:/app/logs `
--restart unless-stopped `
ghcr.io/jiujiu532/grok2api:latest前置要求:服务器需支持
NET_ADMIN+SYS_MODULE权限(KVM/XEN 虚拟化均支持,OpenVZ/LXC 不支持)。
git clone https://github.com/jiujiu532/grok2api
cd grok2api/grok2api-main/grok2api-main
docker compose -f docker-compose.warp.yml up -d防封版自动启动以下服务:
| 服务 | 说明 |
|---|---|
warp-proxy |
Cloudflare WARP 出口代理,提供干净 IP |
privoxy |
HTTP 代理,将流量转发到 WARP |
flaresolverr |
自动解 Cloudflare 挑战,获取 cf_clearance |
init-config |
初始化容器,自动写入代理配置 |
grok2api |
主服务 |
启动后代理配置已自动完成,进入 Admin 后台添加账号即可使用。
升级 / 回滚 / 卸载 / 迁移
无论标准版还是防封版,升级时只需更新 grok2api 主镜像,防封组件不需要更新。
标准版升级:
docker pull ghcr.io/jiujiu532/grok2api:latest
docker compose up -d --no-deps grok2api防封版升级(只更新主服务,不动 WARP/FlareSolverr):
docker pull ghcr.io/jiujiu532/grok2api:latest
docker compose -f docker-compose.warp.yml up -d --no-deps grok2api
--no-deps确保只重启 grok2api,WARP/Privoxy/FlareSolverr 继续运行不中断。
./data/中的配置(config.toml)和数据库(accounts.db)挂载在 volume 中,升级不会覆盖。
# 查看可用版本:https://github.com/jiujiu532/grok2api/pkgs/container/grok2api
docker pull ghcr.io/jiujiu532/grok2api:<tag>
# 标准版回滚
docker compose up -d --no-deps grok2api
# 防封版回滚
docker compose -f docker-compose.warp.yml up -d --no-deps grok2api标准版卸载:
cd grok2api/grok2api-main/grok2api-main
docker compose down
# 如需删除数据(不可恢复):
rm -rf ./data ./logs防封版卸载:
cd grok2api/grok2api-main/grok2api-main
docker compose -f docker-compose.warp.yml down
# 如需删除数据(不可恢复):
rm -rf ./data ./logs数据完全保留,无需重新配置:
# 停止标准版
docker compose down
# 用防封版启动(自动检测已有配置,不覆盖)
docker compose -f docker-compose.warp.yml up -d前置:Python 3.13+、uv
git clone https://github.com/jiujiu532/grok2api
cd grok2api/grok2api-main/grok2api-main
cp .env.example .env && uv sync
uv run granian --interface asgi --host 0.0.0.0 --port 8000 --workers 1 app.main:app访问 http://localhost:8000/admin/login,默认密码 grok2api,进入后设置:
app.app_key— Admin 密码app.api_key— API 鉴权密钥(留空不鉴权)app.app_url— 公网地址(图片/视频链接需要)
配置保存即时生效,无需重启。
basic表示free账号,spuer和heavy 为付费
| 模型名 | mode | 账号等级 | 备注 |
|---|---|---|---|
grok-4.20-fast / grok-4.3-fast |
fast | basic(优先高等级) | |
grok-4.20-auto |
auto | super | |
grok-4.20-expert |
expert | super | |
grok-4.20-heavy |
heavy | heavy | |
grok-4.3-beta |
grok-420-computer-use-sa | super | |
grok-4.20-multi-agent-0309 |
heavy | heavy | |
grok-4.20-0309-non-reasoning |
fast | basic | |
grok-4.20-0309 |
auto | super | |
grok-4.20-0309-reasoning |
expert | super | |
grok-4.20-0309-non-reasoning-super |
fast | super | |
grok-4.20-0309-super |
auto | super | |
grok-4.20-0309-reasoning-super |
expert | super | |
grok-4.20-0309-non-reasoning-heavy |
fast | heavy | |
grok-4.20-0309-heavy |
auto | heavy | |
grok-4.20-0309-reasoning-heavy |
expert | heavy |
通过 SSO Token 免费访问,不消耗付费额度。所有免费模型使用 basic 等级账号。
| 模型名 | reasoning effort | 账号等级 |
|---|---|---|
grok-4.3-console |
用户传入(默认 medium) | basic |
grok-4.3-low |
low(固定) | basic |
grok-4.3-medium |
medium(固定) | basic |
grok-4.3-high |
high(固定) | basic |
grok-4.20-0309-console |
默认 | basic |
grok-4.20-0309-reasoning-console |
固定 reasoning | basic |
grok-4.20-0309-non-reasoning-console |
无 reasoning | basic |
grok-4.20-multi-agent-console |
用户传入(默认 medium) | basic |
grok-4.20-multi-agent-low |
low(固定)→ 4 agents | basic |
grok-4.20-multi-agent-medium |
medium(固定)→ 4 agents | basic |
grok-4.20-multi-agent-high |
high(固定)→ 16 agents | basic |
grok-4.20-multi-agent-xhigh |
xhigh(固定)→ 16 agents | basic |
grok-build-console |
默认 | basic |
Console 配额:30 次 / 15 分钟窗口,采用延迟恢复轮换策略(消耗至剩余 15 次时启动计时器,评分机制自动轮换到其他账号)。后台每 30 秒巡检并自动重置过期配额。
| 模型名 | 能力 | 账号等级 |
|---|---|---|
grok-imagine-image-lite |
文生图 | basic |
grok-imagine-image / image-pro |
文生图 | super |
grok-imagine-image-edit |
图像编辑 | super |
grok-imagine-video |
文生视频 | super |
| 类型 | 等级 | 适用模型 |
|---|---|---|
| 付费账号(x.ai 官方) | super / heavy | grok-4.20-*、grok-4.3-beta、grok-4.3-fast |
| 免费账号(console.x.ai SSO) | basic | 所有 *-console / *-low / *-medium / *-high / *-xhigh |
免费账号获取方式:
- 浏览器 F12 打开开发者工具
- 访问
https://console.x.ai/ - Network 面板找任意请求,Cookie 中复制
sso值 - Admin 后台 → 账号管理 → 添加账号,粘贴 token
SSO Token 属于敏感凭证,请勿写入代码或提交到版本库。
| 端点 | 说明 |
|---|---|
GET /v1/models |
列出可用模型 |
POST /v1/chat/completions |
聊天 / 图像 / 视频统一入口 |
POST /v1/responses |
OpenAI Responses API |
POST /v1/messages |
Anthropic Messages API |
POST /v1/images/generations |
图像生成 |
POST /v1/images/edits |
图像编辑 |
POST /v1/videos |
异步视频任务 |
GET /v1/videos/{id} / {id}/content |
查询 / 下载视频 |
| 变量名 | 说明 | 默认值 |
|---|---|---|
TZ |
时区 | Asia/Shanghai |
LOG_LEVEL |
日志级别 | INFO |
LOG_FILE_ENABLED |
写入本地文件日志 | true |
SERVER_HOST |
监听地址 | 0.0.0.0 |
SERVER_PORT |
监听端口 | 8000 |
SERVER_WORKERS |
Granian worker 数量 | 1 |
HOST_PORT |
Compose 宿主机映射端口 | 8000 |
DATA_DIR |
本地数据根目录 | ./data |
LOG_DIR |
本地日志目录 | ./logs |
ACCOUNT_STORAGE |
存储后端:local / redis / mysql / postgresql |
local |
ACCOUNT_SYNC_INTERVAL |
增量同步间隔(秒) | 30 |
ACCOUNT_SYNC_ACTIVE_INTERVAL |
活跃同步间隔(秒) | 3 |
ACCOUNT_LOCAL_PATH |
SQLite 路径 | ${DATA_DIR}/accounts.db |
ACCOUNT_REDIS_URL |
Redis DSN | "" |
ACCOUNT_MYSQL_URL |
MySQL DSN | "" |
ACCOUNT_POSTGRESQL_URL |
PostgreSQL DSN | "" |
ACCOUNT_SQL_POOL_SIZE |
连接池核心连接数 | 5 |
ACCOUNT_SQL_MAX_OVERFLOW |
连接池最大溢出 | 10 |
ACCOUNT_SQL_POOL_TIMEOUT |
等待空闲连接超时(秒) | 30 |
ACCOUNT_SQL_POOL_RECYCLE |
连接最大复用时间(秒) | 1800 |
运行时配置支持 GROK_ 前缀覆盖,如 GROK_APP_API_KEY 覆盖 app.api_key。
# 付费账号对话
curl http://localhost:8000/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"grok-4.20-auto","stream":true,"messages":[{"role":"user","content":"你好"}]}'
# 免费账号对话
curl http://localhost:8000/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"grok-4.3-console","stream":true,"messages":[{"role":"user","content":"你好"}]}'| 问题 | 解决方案 |
|---|---|
| Admin 打不开 | 确认端口映射和防火墙:docker compose ps |
| 图片/视频链接 403 | 设置 app.app_url 为公网地址(含 https://) |
| Cloudflare 拦截 | 更换代理,或者切换防封版部署,再或者手动配置 proxy.clearance.mode |
| 多 Worker 冲突 | 无冲突,调度器通过文件锁选举 leader |
- 上游:chenyme/grok2api
- DeepWiki:chenyme/grok2api
- 项目文档:blog.cheny.me
- 社区:Linux.do
MIT License
