feat: 新增 OCR 单据字段精确提取模块

- 新增 backend/ocr_extractor.py: 两阶段提取流水线 (文档分析 + 字段提取)
- 四种提取策略: 精确KV匹配/模糊KV匹配/正则模式/表格结构匹配
- agent/state.py: 新增 ocr_extraction_result 和 uploaded_file_path 字段
- agent/nodes.py: process_input() 中自动触发 OCR 提取钩子
- app.py: 文件上传时保留图片路径, 总结卡片中展示提取结果
- .env.example: 新增 OCR_USE_GPU / OCR_CONFIDENCE_THRESHOLD 配置项
- tests/test_ocr_extraction.py: 48 个单元测试全部通过
This commit is contained in:
2026-05-20 08:06:55 +08:00
parent 067880bf2e
commit c9f003e1b7
6 changed files with 1417 additions and 2 deletions
+6
View File
@@ -63,3 +63,9 @@ HISTORY_MAX_SNAPSHOTS=10
# 意图识别模型(默认使用主 LLM 模型)
# INTENT_MODEL=gpt-4o-mini
# OCR 字段提取配置
# 是否使用 GPU 加速 OCR(需要 CUDA 驱动和 GPU 版 EasyOCR/PaddleOCR
OCR_USE_GPU=false
# OCR 文本置信度最低阈值(0-1),低于此值的元素将被忽略
OCR_CONFIDENCE_THRESHOLD=0.5