Update readme
This commit is contained in:
24
README.md
24
README.md
@@ -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% |
|
||||
|
||||
## 存储抽象层
|
||||
|
||||
|
||||
Reference in New Issue
Block a user