File size: 4,684 Bytes
7e55e53
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
# 部署前检查清单

## ✅ 文件准备

### 已完成(配置文件)
- [x] Dockerfile
- [x] pyproject.toml
- [x] requirements.txt
- [x] config.defaults.toml
- [x] .env.example
- [x] .dockerignore
- [x] .gitignore
- [x] scripts/entrypoint.sh
- [x] scripts/init_storage.sh
- [x] app_hf.py
- [x] README.md
- [x] DEPLOY_GUIDE.md
- [x] QUICKSTART.md
- [x] PROJECT_INFO.md
- [x] keepalive/ 目录完整配置

### 待获取(源代码)
- [ ] **app/ 目录**(从 GitHub 原项目获取)

**获取命令:**
```bash
git clone https://github.com/chenyme/grok2api.git temp
cp -r temp/app ./
rm -rf temp
```

## 🌐 Hugging Face Space 配置

### Space 创建
- [ ] 访问 https://huggingface.co/new-space
- [ ] 选择 **Docker SDK**(非常重要!)
- [ ] 选择硬件配置(建议 CPU basic)
- [ ] 记录 Space URL

### 环境变量配置(必需)
在 Space Settings → Variables 中添加:

- [ ] `APP_KEY` = 你的管理密码
- [ ] `API_KEY` = sk-your-api-key-here
- [ ] `APP_URL` = https://your-username-your-space.hf.space
- [ ] `DATA_DIR` = /data
- [ ] `ACCOUNT_STORAGE` = local
- [ ] `ACCOUNT_LOCAL_PATH` = /data/accounts.db
- [ ] `CONFIG_LOCAL_PATH` = /data/config.toml

### 可选环境变量
- [ ] `LOG_LEVEL` = INFO
- [ ] `SERVER_WORKERS` = 1
- [ ] `GROK_FEATURES_STREAM` = true
- [ ] `GROK_FEATURES_THINKING` = true
- [ ] `TZ` = Asia/Shanghai

### 代理配置(如需要)
- [ ] `GROK_PROXY_EGRESS_MODE` = url
- [ ] `GROK_PROXY_EGRESS_PROXY_URL` = http://proxy:port

### Persistent Storage
- [ ] **启用 Persistent Storage**(Settings 中)

## 🔄 保活项目配置

### GitHub 仓库
- [ ] 创建新的 GitHub 仓库或 Fork wankuzidi/hf-keepalive
- [ ] 上传 `keepalive/` 目录的文件:
  - [ ] `.github/workflows/keep-alive.yml`
  - [ ] `keepalive.py`
  - [ ] `spaces.txt`

### GitHub Variables
在仓库 Settings → Variables → Actions 中:
- [ ] 添加 `HF_SPACES` = 你的 Space URL

### GitHub Secrets(私有 Space 需要)
在仓库 Settings → Secrets → Actions 中:
- [ ] 添加 `HF_TOKEN` = 你的 HF Token

### 启用 Actions
- [ ] 进入 Actions 标签
- [ ] 启用 Workflows
- [ ] (可选)手动运行一次测试

## 📤 代码上传

### Git 配置
- [ ] 初始化 git(如需要)
  ```bash
  git init
  ```

- [ ] 添加所有文件
  ```bash
  git add .
  ```

- [ ] 提交更改
  ```bash
  git commit -m "Initial Hugging Face Spaces deployment"
  ```

- [ ] 添加 HF 远程仓库
  ```bash
  git remote add hf https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE
  ```

- [ ] 推送到 HF
  ```bash
  git push hf main
  ```

## 🧪 部署测试

### 构建检查
- [ ] 等待 Space 构建完成(5-10分钟)
- [ ] 查看 Logs 标签确认无错误
- [ ] 访问 Space URL 确认可访问

### 功能测试
- [ ] 访问管理后台:`https://your-space.hf.space/admin/login`
- [ ] 使用 APP_KEY 登录成功
- [ ] 添加至少一个 X Token
- [ ] 测试 API 调用(见下方)

### API 测试
```python
import openai

client = openai.OpenAI(
    api_key="your_api_key",
    base_url="https://your-space.hf.space/v1"
)

response = client.chat.completions.create(
    model="grok-4.20-auto",
    messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)
```

### 保活测试
- [ ] 检查保活 Actions 是否运行
- [ ] 查看运行日志确认成功
- [ ] 等待 12 小时后确认 Space 未休眠

## 📊 监控设置

### Space 监控
- [ ] 添加到浏览器书签
- [ ] 定期查看 Logs
- [ ] 监控 Persistent Storage 使用量

### 保活监控
- [ ] 设置 GitHub Actions 通知
- [ ] 定期检查运行记录
- [ ] 关注失败通知

## 🔧 后续维护

### 定期任务
- [ ] 每周检查 Space 状态
- [ ] 每月清理缓存(如空间不足)
- [ ] 定期更新 X Token

### 配置优化
- [ ] 根据使用情况调整缓存大小
- [ ] 优化保活频率
- [ ] 根据需要调整 Worker 数量

## ⚠️ 常见错误排查

### Space 无法启动
1. [ ] 检查 Dockerfile 语法
2. [ ] 确认环境变量配置
3. [ ] 查看详细错误日志
4. [ ] 确认 app/ 目录存在

### 数据丢失
1. [ ] 确认 Persistent Storage 已启用
2. [ ] 检查 DATA_DIR 配置
3. [ ] 确认保活项目正常运行

### API 调用失败
1. [ ] 确认 API_KEY 正确
2. [ ] 检查 APP_URL 配置
3. [ ] 确认账号已添加
4. [ ] 查看后台错误日志

## 📱 联系支持

如遇到问题:
1. 查看 [DEPLOY_GUIDE.md](./DEPLOY_GUIDE.md)
2. 检查 [PROJECT_INFO.md](./PROJECT_INFO.md)
3. 访问原项目 Issues: https://github.com/chenyme/grok2api/issues

---

**检查完成后,删除此文件或标记为完成日期:____**