diff --git a/ .env b/ .env new file mode 100644 index 0000000..ce0e77a --- /dev/null +++ b/ .env @@ -0,0 +1,55 @@ +# ============================================ +# 初中物理作业批改工作流 - 环境变量配置示例 +# ============================================ +# 复制此文件为 .env 并填写实际值 +# cp .env.example .env + +# ============================================ +# 必需配置 - 大语言模型 API +# ============================================ + +# LLM API 密钥(从火山引擎或OpenAI获取) +LLM_API_KEY=your-api-key-here + +# LLM API 基础URL +# 火山引擎: https://ark.cn-beijing.volces.com/api/v3 +# OpenAI: https://api.openai.com/v1 +LLM_BASE_URL=https://ark.cn-beijing.volces.com/api/v3 + +# 模型名称 +# 火山引擎推荐: doubao-seed-2-0-pro-260215 +# OpenAI推荐: gpt-4o +LLM_MODEL_NAME=doubao-seed-2-0-pro-260215 + +# 注意:不需要配置对象存储(S3/TOS/OSS等) +# 图片直接使用原始URL,不上传存储 + + +# ============================================ +# 可选配置 - 日志与缓存 +# ============================================ + +# 日志级别: DEBUG, INFO, WARNING, ERROR +LOG_LEVEL=INFO + +# 缓存目录(默认: /tmp/cache) +CACHE_DIR=/tmp/cache + +# 单张图片处理超时(秒,默认: 120) +SINGLE_IMAGE_TIMEOUT=120 + + +# ============================================ +# 可选配置 - 并发控制 +# ============================================ + +# 最大并发数(默认: 10) +MAX_CONCURRENT=10 + + +# ============================================ +# 工作目录(系统自动设置,无需修改) +# ============================================ + +# 工作目录路径(由系统自动设置) +# COZE_WORKSPACE_PATH=/workspace/projects diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..1eaa4dc --- /dev/null +++ b/Dockerfile @@ -0,0 +1,53 @@ +FROM registry-vpc.cn-chengdu.aliyuncs.com/zhixueli-prod/python:3.12-slim + +WORKDIR /app + +# 设置国内镜像源 +RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list.d/debian.sources 2>/dev/null || \ + sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list + +# 安装完整的系统依赖(包含所有 PyGObject 需要的库) +RUN apt-get update && apt-get install -y --no-install-recommends \ + # 编译工具 + gcc \ + g++ \ + make \ + pkg-config \ + cmake \ + # D-Bus 相关 + dbus \ + dbus-x11 \ + libdbus-1-dev \ + libdbus-glib-1-dev \ + # GLib 和 GObject 相关 + libglib2.0-dev \ + libgirepository1.0-dev \ + gobject-introspection \ + # Cairo 图形库 + libcairo2-dev \ + libcairo-gobject2 \ + # GTK 相关(如果需要) + libgtk-3-dev \ + # 其他常用库 + libffi-dev \ + libxml2-dev \ + libxslt1-dev \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +# 设置 pip 国内镜像源 +ENV PIP_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/ \ + PIP_TRUSTED_HOST=mirrors.aliyun.com + +# 升级 pip 和构建工具 +RUN pip install --no-cache-dir --upgrade pip setuptools wheel meson ninja + +# 复制并安装依赖 +COPY requirements.txt . +RUN pip install --no-cache-dir -r requirements.txt + +# 复制项目文件 +COPY . . + +EXPOSE 8000 +CMD ["python", "src/main.py", "-m", "http", "-p", "8000"] \ No newline at end of file