# 🚀 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