aps-agent/docs/architecture/platform-matrix.md

38 lines
2.3 KiB
Markdown
Raw Normal View History

# 平台与依赖兼容性矩阵(矩阵 102:国产化/信创多架构交付——依赖矩阵部分)
> 状态:依赖矩阵与检测脚本已交付(round-45);四组合(麒麟/统信 × x86-64/ARM64)实机安装与求解性能验收需外部信创环境。
## 支持范围
| 维度 | 声明 | 备注 |
| --- | --- | --- |
| Python | >=3.11(pyproject `requires-python`),实测 3.13.9 | 3.11/3.12/3.13 均支持;3.10 及以下不支持 |
| 操作系统 | Windows 10/11 x64、Linux x86-64、Linux aarch64(ortools 官方 wheel 覆盖) | 麒麟/统信基于 Linux 内核,按 Linux x86-64/aarch64 处理 |
| 架构 | x86-64(AMD64)、ARM64(aarch64) | 依赖官方 wheel 可用性,见下 |
## 依赖兼容性
| 依赖 | 用途 | 跨平台性 | 平台注意 |
| --- | --- | --- | --- |
| fastapi / uvicorn[standard] | Web/SSE | 纯 Python + 平台 wheel | uvicorn 需编译(有官方 wheel) |
| httpx / pydantic / python-dotenv | HTTP/契约/配置 | 纯 Python | — |
| ortools>=9.10 | CP-SAT 求解 | 官方 wheel:win-amd64 / manylinux x86_64 / aarch64 | **信创关键依赖**:aarch64 Linux wheel 自 9.x 提供;无 wheel 平台需源码编译(不推荐) |
| scipy / numpy(经 ortools 或独立) | 数值/统计 | 官方 wheel 覆盖主要平台 | — |
| openpyxl / pdfplumber / python-docx | 导入/RAG | 纯 Python | pdfplumber 依赖 pdfminer.six(纯 Python) |
| sqlalchemy / alembic / pymysql | 持久层/迁移/MySQL | 纯 Python + pymysql 纯 Python | — |
| cryptography>=42 | 审计归档加密 | 官方 wheel(win/linux x86_64/aarch64) | 信创平台需 wheel 或编译(有 aarch64 wheel) |
| python-multipart | 上传 | 纯 Python | — |
## 检测脚本
`scripts/platform-deps-check.py`:检测当前环境 python 版本、平台/架构、requirements.txt 全部依赖可导入性与版本下限,输出对照矩阵。用于安装前检查/CI 冒烟。
用法:`.venv\Scripts\python.exe scripts/platform-deps-check.py`(退出码 0=通过;非 0=缺失/版本不满足)。
## 外部验收(未完成)
- 麒麟 V10 / 统信 UOS × x86-64 / ARM64 四组合实机安装
- 求解性能基线(四组合至少满足黄金算例时限)
- 驱动(GPU 非必需;无 GPU 依赖)与离线依赖(内网 pip 源/离线 wheel 包)
- 信创环境 Defender/杀软等安全软件兼容性