nvidia_router.py 变更: - device 默认值从 'cpu' 改为 'auto',自动检测 MPS/CUDA/CPU - AutoConfig 替换为 DebertaV2Config + 手动解析 config.json (nvidia/prompt-task-and-complexity-classifier 的 config.json 无 model_type, transformers 5.x 的 AutoConfig 会直接报错) - MPS 设备自动转换 float16,修复 MPS 矩阵乘法数据类型冲突崩溃 (MPS NDArrayMatrixMultiplication 要求 dst/accumulator 同类型) - 日志增加设备和精度信息输出 docker-compose.yml 变更: - 端口映射改为 402:8000 (本地开发端口) - volume 从 named volume 改为 ./data 本地目录映射 - API Key 改回环境变量引用 (密钥存 .env 文件,已在 .gitignore 中) 测试环境: Mac Mini M4 Pro / 64GB / macOS 15.3.1 运行方式: .venv/bin/python -m uvicorn main:app --host 0.0.0.0 --port 402 测试结果: - MPS + FP16 分类器正常工作,稳态路由延迟 ~53ms - NVIDIA 3-tier 路由决策正确 (simple/medium/complex) - OpenAI 兼容 API 正常响应,DashScope Qwen 模型调用正常
Dockerfile: 多阶段构建, CPU版PyTorch, 模型预加载 docker-compose: 健康检查, 数据卷持久化, 环境变量注入 requirements.lock.txt: 锁定依赖版本确保构建可复现