Update readme

This commit is contained in:
Yaojia Wang
2026-02-01 23:41:38 +01:00
parent b602d0a340
commit 45d74d048a

View File

@@ -19,14 +19,14 @@
packages/
├── shared/ # 共享库 (PDF, OCR, 规范化, 匹配, 存储, 训练)
├── training/ # 训练服务 (GPU, 按需启动)
└── inference/ # 推理服务 (常驻运行)
└── backend/ # 后端服务 (Web API + 推理, 常驻运行)
frontend/ # React 前端 (Vite + TypeScript + TailwindCSS)
```
| 服务 | 部署目标 | GPU | 生命周期 |
|------|---------|-----|---------|
| **Frontend** | Vercel / Nginx | 否 | 常驻 |
| **Inference** | Azure App Service / AWS | 可选 | 常驻 7x24 |
| **Backend** | Azure App Service / AWS | 可选 | 常驻 7x24 |
| **Training** | Azure ACI / AWS ECS | 必需 | 按需启动/销毁 |
两个服务通过共享 PostgreSQL 数据库通信。推理服务通过 API 触发训练任务,训练服务从数据库拾取任务执行。
@@ -37,8 +37,8 @@ frontend/ # React 前端 (Vite + TypeScript + TailwindCSS)
|------|------|
| **已标注文档** | 9,738 (9,709 成功) |
| **总体字段匹配率** | 94.8% (82,604/87,121) |
| **测试** | 1,601 passed |
| **测试覆盖率** | 28% |
| **测试** | 2,058 passed |
| **测试覆盖率** | 60% |
| **模型 mAP@0.5** | 93.5% |
**各字段匹配率:**
@@ -86,7 +86,7 @@ cd /mnt/c/Users/yaoji/git/ColaCoder/invoice-master-poc-v2
# 4. 安装三个包 (editable mode)
pip install -e packages/shared
pip install -e packages/training
pip install -e packages/inference
pip install -e packages/backend
```
## 项目结构
@@ -119,11 +119,11 @@ invoice-master-poc-v2/
│ │ ├── processing/ # CPU/GPU worker pool, task dispatcher
│ │ └── data/ # training_db, autolabel_report
│ │
│ └── inference/ # 推理服务 (常驻)
│ └── backend/ # 后端服务 (Web API + 推理, 常驻)
│ ├── setup.py
│ ├── Dockerfile
│ ├── run_server.py # Web 服务器入口
│ └── inference/
│ └── backend/
│ ├── cli/ # infer, serve
│ ├── pipeline/ # YOLO 检测, 字段提取, 解析器
│ ├── web/ # FastAPI 应用
@@ -224,7 +224,7 @@ python -m training.cli.train \
```bash
# 命令行推理
python -m inference.cli.infer \
python -m backend.cli.infer \
--model runs/train/invoice_fields/weights/best.pt \
--input path/to/invoice.pdf \
--output result.json \
@@ -371,8 +371,8 @@ print(f"Customer Number: {result}") # "UMJ 436-R"
| 组件 | 配置位置 |
|------|---------|
| 全局常量 | `packages/shared/shared/config.py` -> `DEFAULT_DPI = 150` |
| Web 推理 | `packages/inference/inference/web/config.py` -> `ModelConfig.dpi` |
| CLI 推理 | `python -m inference.cli.infer --dpi 150` |
| Web 推理 | `packages/backend/backend/web/config.py` -> `ModelConfig.dpi` |
| CLI 推理 | `python -m backend.cli.infer --dpi 150` |
| 自动标注 | `packages/shared/shared/config.py` -> `AUTOLABEL['dpi']` |
## 数据库架构
@@ -427,9 +427,9 @@ DB_PASSWORD=xxx pytest tests/ --cov=packages --cov-report=term-missing
| 指标 | 数值 |
|------|------|
| **测试总数** | 1,601 |
| **测试总数** | 2,058 |
| **通过率** | 100% |
| **覆盖率** | 28% |
| **覆盖率** | 60% |
## 存储抽象层