Spaces:
Running
on
Zero
Running
on
Zero
🚀 Hugging Face Spaces 部署检查清单
✅ 当前配置状态
核心文件(必需)
- ✅ app.py - 入口文件,带
@spaces.GPU装饰器 - ✅ requirements.txt - Python 依赖(包含 gsplat)
- ✅ README.md - Space 配置(Python 3.11)
- ✅ packages.txt - 系统依赖(build-essential, git)
- ✅ pyproject.toml - 项目配置
备用文件(可选)
- ✅ requirements-basic.txt - 不包含 gsplat 的版本(如果构建失败)
- ✅ runtime.txt - Python 版本备用配置
- ✅ GSPLAT_SOLUTIONS.md - gsplat 问题解决方案
- ✅ SPACES_SETUP.md - 详细部署指南
📋 部署前检查
1. 文件检查
# 确认所有必需文件存在
[ -f app.py ] && echo "✅ app.py" || echo "❌ app.py missing"
[ -f requirements.txt ] && echo "✅ requirements.txt" || echo "❌ requirements.txt missing"
[ -f README.md ] && echo "✅ README.md" || echo "❌ README.md missing"
[ -d src/depth_anything_3 ] && echo "✅ Source code" || echo "❌ Source code missing"
2. 配置检查
README.md 必须包含: ```yaml
sdk: gradio app_file: app.py python_version: 3.11
**requirements.txt 必须包含:**
```txt
torch>=2.0.0
gradio>=5.0.0
spaces
gsplat @ git+https://... # 如果需要 3DGS
app.py 必须包含:
import spaces
@spaces.GPU(duration=120)
def gpu_run_inference(self, *args, **kwargs):
...
3. 本地测试(推荐)
# 测试 Python 版本
python --version # 应该是 3.11+
# 测试安装依赖
pip install -r requirements.txt
# 测试应用启动
python app.py
# 测试 gsplat(如果需要)
python -c "import gsplat; print('✅ gsplat OK')"
🎯 部署步骤
方式 A:通过网页界面
创建 Space
- 访问 https://huggingface.co/new-space
- Space name: 输入名称
- SDK: 选择 Gradio
- Hardware: 选择 GPU (T4 或更高)
- Visibility: Public/Private
上传文件
- 上传所有文件(app.py, requirements.txt, src/, 等)
- 或者通过 Git 克隆上传
等待构建
- 查看 "Build logs" 标签
- 首次构建可能需要 10-20 分钟(因为 gsplat)
测试应用
- 构建成功后自动启动
- 测试所有功能
方式 B:通过 Git
# 1. 创建 Space(通过网页)
# 2. 克隆 Space 仓库
git clone https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME
cd YOUR_SPACE_NAME
# 3. 复制文件
cp -r /path/to/depth-anything-3/* .
# 4. 提交并推送
git add .
git commit -m "Initial deployment"
git push
# 5. 查看构建日志
# 在网页界面查看
🐛 常见问题快速解决
问题 1:gsplat 构建失败 ⚠️
症状:
Building wheel for gsplat (setup.py) ... error
快速修复:
# 方法 1: 切换到不含 gsplat 的版本
mv requirements.txt requirements-full.txt
mv requirements-basic.txt requirements.txt
git commit -am "Use basic requirements without gsplat"
git push
或者在网页界面:
- 打开 requirements.txt
- 注释掉 gsplat 那行:
# gsplat @ git+... - 提交更改
详见:GSPLAT_SOLUTIONS.md
问题 2:构建超时
症状:
Build timeout after 60 minutes
解决方法:
- 使用 requirements-basic.txt(不含 gsplat)
- 或者联系 HF 支持增加构建时间限制
问题 3:应用启动失败
症状:
ModuleNotFoundError: No module named 'depth_anything_3'
解决方法:
- 确认
src/目录结构正确 - 在 app.py 开头添加:
import sys sys.path.append('./src')
问题 4:GPU 不可用
症状:
torch.cuda.is_available() = False
解决方法:
- 确认 Space 硬件选择了 GPU(不是 CPU)
- 在 Settings 中切换到 GPU 硬件
- 可能需要付费 GPU(T4 是最便宜的)
📊 构建时间预估
| 配置 | 首次构建 | 后续构建 | 启动时间 |
|---|---|---|---|
| 含 gsplat | 15-25 分钟 | 2-5 分钟* | 30-60 秒 |
| 不含 gsplat | 5-10 分钟 | 1-2 分钟* | 20-40 秒 |
*后续构建可能使用缓存
🎓 部署后测试清单
基础功能
- 应用成功启动
- 可以访问 Space URL
- UI 正常显示
- 可以上传图片/视频
深度估计功能
- 可以运行深度估计
- 结果正确显示
- Point Cloud 可视化正常
- 相机姿态显示正常
3DGS 功能(如果启用 gsplat)
- 3DGS 选项可见
- 可以生成 3DGS 视频
- 视频可以播放
性能测试
- GPU 正确识别
- 推理速度合理(不超时)
- 内存使用正常
💾 配置文件快速参考
README.md
---
title: Depth Anything 3
sdk: gradio
sdk_version: 5.49.1
app_file: app.py
python_version: 3.11
---
app.py 关键部分
import spaces
from depth_anything_3.app.gradio_app import DepthAnything3App
original_run_inference = ModelInference.run_inference
@spaces.GPU(duration=120)
def gpu_run_inference(self, *args, **kwargs):
return original_run_inference(self, *args, **kwargs)
ModelInference.run_inference = gpu_run_inference
if __name__ == "__main__":
app = DepthAnything3App(...)
app.launch(host="0.0.0.0", port=7860)
requirements.txt 关键依赖
torch>=2.0.0
gradio>=5.0.0
spaces
gsplat @ git+https://github.com/nerfstudio-project/gsplat.git@0b4dddf04cb687367602c01196913cde6a743d70
packages.txt
build-essential
git
🔗 相关文档
本项目的详细文档:
- SPACES_SETUP.md - 完整部署指南和 Spaces 机制说明
- GSPLAT_SOLUTIONS.md - gsplat 安装的各种解决方案
- HF_SPACES_BUILD.md - HF Spaces 构建流程详解
- PYTHON_VERSION_CONFIG.md - Python 版本配置说明
外部资源:
📞 获取帮助
如果遇到问题:
- 查看构建日志 - Space 页面的 "Build logs" 标签
- 查看运行日志 - Space 页面的 "Logs" 标签
- 参考文档 - 本项目的 *.md 文档
- HF 论坛 - https://discuss.huggingface.co/
- GitHub Issues - 项目的 Issues 页面
✨ 成功部署后
恭喜!🎉 你的 Depth Anything 3 应用已经在 HF Spaces 上运行了!
下一步:
- 📝 更新 README.md 添加使用说明
- 🎨 自定义 UI(如果需要)
- 📊 监控使用情况
- 🔄 根据反馈持续改进
分享你的 Space:
- Space URL:
https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME - 可以嵌入到网页、博客等
祝你使用愉快!🚀