文档解析工具
📁 文件夹说明
此文件夹用于存放需要解析的保险产品文档,脚本将自动读取并生成配置。
🚀 使用方法
1. 添加文档
将客户提供的 PDF/Word 文档复制到此文件夹:
docs/to-parse/
├── WIOP3E 产品说明书.pdf
├── 宏挚传承保障计划.docx
└── MBC PRO 保障计划.pdf
2. 执行解析脚本
# 查看待处理的文档
pnpm run parse:docs:list
# 解析所有文档(默认仅生成待审核文件,不写入配置)
pnpm run parse:docs
# 解析指定文档(默认仅生成待审核文件,不写入配置)
pnpm run parse:docs:file -- --file="产品说明书.pdf"
# 解析并写入配置(需要显式开启)
pnpm run parse:docs:file -- --file="产品说明书.pdf" --write-config
3. 查看结果
解析成功后会生成待审核文件,位置如下:
docs/parse-audit/pending/
审核通过后再手动合并到 src/config/plan-templates.js,或使用 --write-config 明确写入。
🔗 功能链路
文档放入 docs/to-parse/
↓
markitdown 抽取文本
↓
启发式推断基础信息(产品名称/类型/币种)
↓
生成配置代码与待审核文件
↓
人工审核(pending → approved)
↓
合并到 src/config/plan-templates.js
🧭 使用思路
- 先审核再合并:默认只生成待审核文件,避免直接污染配置。
- 先读再写:审核时重点核对产品名称、币种、缴费年期、年龄范围。
- 分离责任:解析用于提取线索,最终配置仍由人工确认。
- 可追溯:审计日志记录每次解析结果与变更摘要。
📋 支持的文档格式
- ✅ PDF (.pdf)
- ✅ Word (.doc, .docx)
- ✅ 纯本文档 (.txt, .md)
🧪 Fixtures 文档样本说明
用于测试的样本文档建议放在此目录,命名规则建议包含产品名与类型,便于回归验证:
docs/to-parse/
├── fixtures-life-insurance-sample.pdf
├── fixtures-critical-illness-sample.docx
└── fixtures-savings-sample.txt
执行测试前请确认样本文档内容完整且可被抽取为文本。
📊 解析摘要与审计日志
每次解析都会输出成功/失败/耗时摘要,并在以下位置记录审计日志:
docs/parsed-backup/parse-audit.jsonl
日志包含解析汇总与本次变更摘要,便于回溯与排查。
🔧 配置 AI 服务
脚本当前使用 markitdown CLI 进行文档抽取,AI 服务仍待接入。
⚠️ 注意事项
- 文档命名:建议使用有意义的文件名,方便识别产品
- 手动审核:生成后请检查配置是否正确
- 版本控制:生成的配置会自动备份