浏览代码

fix: 补全 requirements/base.txt (262包) + Dockerfile.base 适配

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
WangXuMing 2 周之前
父节点
当前提交
5316fedae4
共有 3 个文件被更改,包括 218 次插入70 次删除
  1. 2 2
      Dockerfile.base
  2. 215 68
      requirements/base.txt
  3. 1 0
      requirements/dev.txt

+ 2 - 2
Dockerfile.base

@@ -72,7 +72,7 @@ ENV PATH="/venv/bin:$PATH"
 
 # 安装 Python 依赖(cache mount 缓存 pip 下载)
 # 有代理时使用官方 PyPI,无代理时切换为清华镜像源
-COPY requirements.txt /tmp/
+COPY requirements/ /tmp/requirements/
 RUN --mount=type=cache,target=/root/.cache/pip,sharing=locked \
     if [ -z "$HTTP_PROXY" ]; then \
         echo "[INFO] 无代理,使用清华 PyPI 镜像源" && \
@@ -81,4 +81,4 @@ RUN --mount=type=cache,target=/root/.cache/pip,sharing=locked \
     else \
         echo "[INFO] 检测到代理配置,使用官方 PyPI 源"; \
     fi && \
-    /venv/bin/pip --default-timeout=1800 install -r /tmp/requirements.txt
+    /venv/bin/pip --default-timeout=1800 install -r /tmp/requirements/base.txt

+ 215 - 68
requirements/base.txt

@@ -1,141 +1,288 @@
 # Web Framework
 fastapi==0.116.0
-uvicorn[standard]==0.35.0
 gunicorn==23.0.0
+httptools==0.6.4
+python-multipart==0.0.20
 sse-starlette==2.4.1
 starlette==0.46.2
-httptools==0.6.4
+uvicorn==0.35.0
 watchfiles==1.1.0
-python-multipart==0.0.20
+websockets==15.0.1
 
 # Async Task Queue
-celery[redis]==5.4.0
-redis==6.2.0
-kombu==5.4.2
-billiard==4.2.3
-vine==5.1.0
-amqp==5.3.1
 aioredis==2.0.1
+amqp
+billiard==4.2.3
+celery
+kombu
+redis==6.2.0
+vine
 
 # AI / LLM
-langchain==1.1.3
-langgraph==1.0.4
-langchain-openai==1.1.1
-langchain-core==1.1.3
-langchain-community==0.4.1
+dashscope==1.23.8
+langchain-chroma==0.2.4
 langchain-classic==1.0.0
+langchain-community==0.4.1
+langchain-core==1.1.3
+langchain-mcp-adapters
+langchain-mcp-tools==0.2.10
+langchain-milvus==0.3.1
+langchain-openai==1.1.1
+langchain-redis>=0.2.5
 langchain-text-splitters==1.0.0
-langgraph-checkpoint==3.0.1
+langchain-voyageai==0.3.0
+langchain==1.1.3
+langfuse==3.9.3
+langgraph-checkpoint-postgres
 langgraph-checkpoint-redis==0.0.8
+langgraph-checkpoint==3.0.1
 langgraph-prebuilt==1.0.5
 langgraph-sdk==0.2.15
+langgraph==1.0.4
+langserve
 langsmith==0.4.58
 openai==2.9.0
 tiktoken==0.12.0
-dashscope==1.23.8
-zhipuai==2.1.5.20250708
 xinference-client==1.7.1.post1
+zhipuai==2.1.5.20250708
 
 # Data / Database
-sqlalchemy[asyncio]==2.0.45
 aiomysql==0.3.2
-pymysql==1.1.1
-mysql-connector-python==9.3.0
-pymilvus==2.6.5
+chromadb==1.0.15
+greenlet==3.3.0
 milvus==2.2.16
+mysql-connector-python==9.3.0
 pgvector==0.4.1
-psycopg==3.2.12
 psycopg-pool==3.2.7
 psycopg2-binary==2.9.11
-chromadb==1.0.15
+psycopg==3.2.12
+pymilvus==2.6.5
+pymysql==1.1.1
 redisvl>=0.12.0
+sqlalchemy==2.0.45
 
 # Document Processing
-python-docx==1.2.0
+Pillow>=9.0.0
+beautifulsoup4==4.14.3
+bs4==0.0.2
+docopt==0.6.2
+docutils==0.21.2
+docx2pdf>=0.1.8
+ffmpeg-python==0.2.0
+lxml==6.0.2
 markdownify==1.2.2
-opencv-python-headless>=4.8.0
-rapidocr_onnxruntime>=1.3.0
-ultralytics>=8.0.0
+pandocfilters==1.5.1
+pillow==12.0.0
 pymupdf==1.26.3
 pypdf==6.2.0
-pillow>=9.0.0
-lxml==6.0.2
+python-docx==1.2.0
+soupsieve==2.8
 
 # Observability
 opentelemetry-api==1.34.1
-opentelemetry-sdk==1.34.1
 opentelemetry-exporter-otlp-proto-common==1.34.1
 opentelemetry-exporter-otlp-proto-grpc==1.34.1
 opentelemetry-exporter-otlp-proto-http==1.34.1
 opentelemetry-proto==1.34.1
+opentelemetry-sdk==1.34.1
 opentelemetry-semantic-conventions==0.55b1
-langfuse==3.9.3
 posthog==5.4.0
 
-# Serialization
-pydantic==2.12.5
+# Serialization / Types
+annotated-types==0.7.0
+dataclasses-json==0.6.7
+fastjsonschema==2.21.2
+jsonpatch==1.33
+jsonpath-ng==1.7.0
+jsonpointer==3.0.0
+jsonschema-pydantic==0.6
+jsonschema-specifications==2025.4.1
+jsonschema==4.24.0
+marshmallow==3.26.1
+mypy-extensions==1.1.0
+openapi-pydantic==0.5.1
+orjson==3.11.5
 pydantic-core==2.41.5
 pydantic-settings==2.12.0
+pydantic==2.12.5
 pyyaml==6.0.3
-orjson==3.11.5
+typing-extensions==4.15.0
+typing-inspect==0.9.0
+typing-inspection==0.4.2
 ujson==5.10.0
 
-# Infrastructure
-cryptography==45.0.5
-requests==2.32.5
+# Infrastructure / Network
+aiohappyeyeballs==2.6.1
 aiohttp==3.13.2
-httpx==0.28.1
-httpx-sse==0.4.3
-python-dotenv==1.2.1
-google-auth==2.40.3
+aiolimiter==1.2.1
+aiosignal==1.4.0
+anyio==4.12.0
+async-timeout==5.0.1
 authlib==1.6.0
+backoff==2.2.1
+bcrypt==4.3.0
+cachetools==5.5.2
+certifi==2025.11.12
+cffi==1.17.1
+charset-normalizer==3.4.4
+cryptography==45.0.5
+distro==1.9.0
+durationpy==0.10
 filelock==3.20.0
+frozenlist==1.8.0
+google-auth==2.40.3
+googleapis-common-protos==1.70.0
+h11==0.16.0
+httpcore==1.0.9
+httpx-sse==0.4.3
+httpx==0.28.1
+idna==3.11
+multidict==6.7.0
+oauthlib==3.3.1
 portalocker==3.2.0
+propcache==0.4.1
+pyasn1-modules==0.4.2
+pyasn1==0.6.1
+pybase64==1.4.1
+pycparser==2.22
+pyjwt==2.8.0
+python-dotenv==1.2.1
+requests-oauthlib==2.0.0
+requests-toolbelt==1.0.0
+requests==2.32.5
+rsa==4.9.1
+sniffio==1.3.1
+urllib3==2.6.1
+yarl==1.22.0
 
 # RAG / Vector
-langchain-milvus==0.3.1
-langchain-chroma==0.2.4
-langchain-redis>=0.2.5
-langchain-voyageai==0.3.0
 voyageai==0.3.6
 
-# MCP
-langchain-mcp-adapters
-langchain-mcp-tools==0.2.10
-mcp==1.10.1
-fastmcp==2.10.4
-
-# OCR / Layout
+# OCR / CV
+onnxruntime==1.22.0
+opencv-python-headless>=4.8.0
+rapid-layout==1.2.0
 rapid-layout>=0.3.0
 rapid-table>=0.1.0
+rapidocr_onnxruntime>=1.3.0
+ultralytics>=8.0.0
 
 # NLP
 jieba==0.42.1
 nltk==3.9.1
 regex==2025.11.3
+tokenizers==0.22.1
 
-# Serialization & Utilities
+# CLI / Rich
+click-didyoumean
+click-plugins==1.1.1.2
+click-repl
+click==8.3.1
+colorama
+coloredlogs==15.0.1
+concurrent-log-handler==0.9.28
+humanfriendly==10.0
+markdown-it-py==3.0.0
+prompt-toolkit
+pygments==2.19.2
+rich-rst==1.3.1
+rich==14.0.0
+typer-slim==0.20.0
+typer==0.16.0
+wcwidth==0.2.14
+
+# Utilities
+defusedxml==0.7.1
+docstring-parser==0.16
+fastmcp==2.10.4
+flatbuffers==25.2.10
+fsspec==2025.12.0
+future==1.0.0
+grandalf==0.8
+hf-xet==1.2.0
+huggingface-hub==1.2.1
+importlib-metadata==8.7.0
+importlib-resources==6.5.2
+jinja2==3.1.6
+jiter==0.12.0
+joblib==1.5.1
+markupsafe==3.0.3
+mcp==1.10.1
+mdurl==0.1.2
+ml-dtypes==0.5.3
+mmh3==5.1.0
+mpmath==1.3.0
+nest-asyncio==1.6.0
+numpy==2.3.5
 numpy>=1.21.0
+ormsgpack==1.12.0
+overrides==7.7.0
+packaging==25.0
 pandas==2.3.3
+pip
+platformdirs==4.5.1
+ply==3.11
+protobuf
+psutil==7.0.0
+pyparsing==3.2.5
+pyperclip==1.9.0
+pypika==0.48.9
 python-dateutil
 python-ulid==3.1.0
 pytz==2025.2
+referencing==0.36.2
+rpds-py==0.26.0
+setuptools==80.9.0
+shellingham==1.5.4
+six
+sympy==1.14.0
+tenacity==9.1.2
+tqdm==4.67.1
 tzdata
+uuid-utils==0.12.0
+webencodings==0.5.1
+wheel==0.45.1
+wrapt==1.17.3
+xxhash==3.6.0
+yarg==0.1.9
+zipp==3.23.0
+zstandard==0.25.0
 
-# Rich / CLI
-rich==14.0.0
-typer==0.16.0
-click==8.3.1
-colorama
-coloredlogs==15.0.1
-concurrent-log-handler==0.9.28
-
-# Kubernetes
-kubernetes==33.1.0
+# Jupyter (dev dependency)
+asttokens==3.0.1
+backcall==0.2.0
+bleach==6.3.0
+decorator==5.2.1
+exceptiongroup==1.3.0
+executing==2.2.1
+iniconfig==2.1.0
+jedi==0.19.2
+jupyter-client==8.7.0
+jupyter-core==5.9.1
+jupyterlab-pygments==0.3.0
+matplotlib-inline==0.2.1
+nbclient==0.10.2
+nbconvert==7.16.6
+nbformat==5.10.4
+parso==0.8.5
+pickleshare==0.7.5
+pluggy==1.6.0
+pure-eval==0.2.3
+pyreadline3==3.5.4
+pywin32==311; sys_platform == 'win32'
+pyzmq==27.1.0
+stack-data==0.6.3
+tinycss2==1.4.0
+tornado==6.5.2
+traitlets==5.14.3
 
 # Misc
-beautifulsoup4==4.14.3
-markdown-it-py==3.0.0
-docx2pdf>=0.1.8
-ffmpeg-python==0.2.0
-huggingface-hub==1.2.1
+attrs==25.4.0
+cyclopts==3.22.2
+dnspython==2.7.0
+email-validator==2.2.0
+grpcio==1.76.0
+kubernetes==33.1.0
+mistune==3.1.4
+uv==0.7.20
+websocket-client==1.8.0

+ 1 - 0
requirements/dev.txt

@@ -14,3 +14,4 @@ mypy>=1.0
 ipython==8.12.3
 pipreqs==0.5.0
 build==1.2.2.post1
+pyproject-hooks==1.2.0