File size: 4,245 Bytes
59bd45e | 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 | # 🚀 Hugging Face Spaces 部署指南
## ✅ 部署前检查清单
### 1. 根目录必需文件
确保以下文件在**根目录**(不是子目录):
- ✅ `Dockerfile` - Docker 构建配置
- ✅ `start.py` - 应用启动脚本
- ✅ `requirements.txt` - Python 依赖
- ✅ `README_HF.md` - Hugging Face 专用 README(带 frontmatter)
### 2. 前端构建文件
确保前端已构建:
```bash
cd frontend
npm install
npm run build
```
检查 `frontend/dist/` 目录是否存在且包含:
- ✅ `index.html`
- ✅ `assets/` 目录(包含 JS 和 CSS 文件)
### 3. 环境变量配置
在 Hugging Face Space 的 **Settings → Variables and secrets** 中配置:
**必需:**
- `ZHIPU_API_KEY` - 智谱 AI API 密钥
**可选:**
- `MINIMAX_API_KEY` - MiniMax API 密钥
- `MINIMAX_GROUP_ID` - MiniMax Group ID
### 4. README 配置
确保 `README_HF.md` 包含正确的 frontmatter:
```yaml
---
title: Nora - 治愈系记录助手
emoji: 🌟
colorFrom: purple
colorTo: pink
sdk: docker
pinned: false
license: mit
---
```
## 🔧 部署步骤
### 方法 1:通过 GitHub 同步(推荐)
1. **提交所有更改到 GitHub**:
```bash
git add .
git commit -m "Fix: Add required files to root directory for HF deployment"
git push origin main
```
2. **在 Hugging Face Space 中同步**:
- 进入你的 Space:https://huggingface.co/spaces/kernel14/Nora
- 点击 **Settings**
- 找到 **Sync from GitHub** 部分
- 点击 **Sync now**
3. **等待构建完成**:
- 查看 **Logs** 标签页
- 等待 Docker 构建完成(可能需要 5-10 分钟)
### 方法 2:直接上传文件
1. **在 Hugging Face Space 中上传文件**:
- 进入 **Files** 标签页
- 上传以下文件到根目录:
- `Dockerfile`
- `start.py`
- `requirements.txt`
- `README_HF.md`(重命名为 `README.md`)
2. **上传应用代码**:
- 上传 `app/` 目录
- 上传 `data/` 目录
- 上传 `frontend/dist/` 目录
3. **触发重新构建**:
- 点击 **Factory reboot**
## 🐛 常见问题
### 问题 1:Space 显示 "Missing app file"
**原因**:根目录缺少 `Dockerfile` 或 `start.py`
**解决方案**:
1. 确认根目录有 `Dockerfile` 和 `start.py`
2. 如果使用 GitHub 同步,确保这些文件已提交并推送
3. Factory reboot 重启 Space
### 问题 2:Docker 构建失败
**原因**:依赖安装失败或文件路径错误
**解决方案**:
1. 查看 **Logs** 标签页的详细错误信息
2. 检查 `requirements.txt` 是否正确
3. 检查 `Dockerfile` 中的路径是否正确
### 问题 3:前端无法加载
**原因**:`frontend/dist/` 目录不存在或未包含在 Docker 镜像中
**解决方案**:
1. 本地运行 `cd frontend && npm run build`
2. 确认 `frontend/dist/` 目录存在
3. 提交并推送到 GitHub
4. 重新同步 Space
### 问题 4:API 调用失败
**原因**:未配置环境变量
**解决方案**:
1. 在 Space Settings 中配置 `ZHIPU_API_KEY`
2. Factory reboot 重启 Space
3. 检查 Logs 确认环境变量已加载
## 📊 验证部署
部署成功后,访问你的 Space URL,应该能看到:
1. ✅ 前端页面正常加载
2. ✅ AI 角色形象显示
3. ✅ 可以进行文本输入
4. ✅ 可以查看心情、灵感、待办数据
测试 API 端点:
- `https://你的space.hf.space/health` - 应该返回健康状态
- `https://你的space.hf.space/docs` - 应该显示 API 文档
## 🔄 更新部署
当你更新代码后:
1. **提交到 GitHub**:
```bash
git add .
git commit -m "Update: 描述你的更改"
git push origin main
```
2. **同步到 Hugging Face**:
- 在 Space Settings 中点击 **Sync now**
- 或者等待自动同步(如果已配置)
3. **重启 Space**(如果需要):
- 点击 **Factory reboot**
## 📚 相关文档
- [Hugging Face Spaces 文档](https://huggingface.co/docs/hub/spaces)
- [Docker SDK 文档](https://huggingface.co/docs/hub/spaces-sdks-docker)
- [项目完整文档](README.md)
## 🆘 需要帮助?
如果遇到问题:
1. 查看 Space 的 **Logs** 标签页
2. 检查 **Community** 标签页的讨论
3. 在 GitHub 仓库提 Issue
|