Spaces:
Runtime error
Runtime error
| # 基础镜像:Python 3.10(兼容所有依赖,稳定性高) | |
| FROM python:3.10-slim | |
| # 工作目录(Spaces默认/app,统一路径) | |
| WORKDIR /app | |
| # 安装系统依赖(仅保留llama-cpp-python必需的编译工具) | |
| # 安装系统依赖:完整的C/C++编译工具链 + cmake | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| build-essential \ | |
| cmake \ | |
| && rm -rf /var/lib/apt/lists/* # 清理缓存,减小镜像体积 | |
| # 复制修复后的requirements.txt | |
| COPY requirements.txt . | |
| # 关键:合并安装所有依赖,同时指定llama-cpp-python的CPU加速参数 | |
| # 避免重复安装,一次编译完成 | |
| RUN CMAKE_ARGS="-DLLAMA_AVX2=ON -DLLAMA_AVX=ON -DLLAMA_FMA=ON" \ | |
| pip install --no-cache-dir --force-reinstall \ | |
| llama-cpp-python==0.2.70 \ | |
| && pip install --no-cache-dir -r requirements.txt \ | |
| && pip install --upgrade pip | |
| # 复制核心代码 | |
| COPY model_space.py . | |
| # 创建模型缓存目录(给足权限,避免下载时权限错误) | |
| RUN mkdir -p /app/models && chmod 777 /app/models | |
| # 环境变量:解决中文乱码,优化日志 | |
| ENV PYTHONIOENCODING=utf-8 | |
| ENV LC_ALL=C.UTF-8 | |
| ENV LOG_LEVEL=INFO | |
| # 暴露端口(必须与uvicorn端口一致) | |
| EXPOSE 7860 | |
| # 启动命令(直接启动服务,无冗余参数) | |
| CMD ["uvicorn", "model_space:app", "--host", "0.0.0.0", "--port", "7860", "--timeout-keep-alive", "300"] |