勘察报告内审助手(survey-review)
定位
把勘察报告内审中的机械性核查自动化,让人工专注于数据一致性、评价结论与强条符合性。
一次调用完成「文本提取 → 预检 → 工作台 → 定向核验 → 校审单」全流程。
环境准备
- Python 3.10+,执行以下命令安装依赖:
pip install -r requirements.txt - 必装:python-docx(docx 解析与校审单生成)、olefile(旧版 .doc 解析)
- 可选:PyMuPDF(PDF 文本提取;未安装时自动跳过 PDF 表格解析)
- 脚本在
scripts/目录下,所有命令在技能包根目录执行。
工作流(四步)
第1步 文本提取 + 自动预检
python scripts/audit_precheck.py <报告文件或目录> --project "<项目名>"
- 单文件模式:直接传 docx / doc / pdf / txt / md 路径。
- 目录模式:传项目目录,自动扫描候选报告(按体量与文件名打分),
--top N控制最多处理文件数(默认4)。 - 输出(在
scripts/_precheck/下):<项目>_预检.md(详细预检报告)与<项目>_全文.txt(全文缓存,供后续定向核验复用)。 - 自动检查项:
1. 章节骨架(定位需精读的章节);
2. 统计表自动反算:平均值越界 / 标准值>平均值 / 变异系数≠标准差÷平均值;
3. 规范编号核验:年份位数、通用规范(GB 55xxx)漏写为 GB 50xxx、常见错号;
4. 模板残留扫描:其他项目/其他专业模板段落关键词(高危词单独标记);
5. 编制深度实体核验:勘察纲要 / 任务委托书 / 勘探点一览表 / 柱状图 / 试验报告 / 照片 / 交通位置图;
6. 数据一致性线索速查:孔数 / 进尺 / 取样件数 / 剪切波速 / 烈度 / 加速度(供交叉比对);
7. 疑似错字与连写(区间值波浪号丢失等)。
第2步 生成审查工作台
python scripts/review_extract.py scripts/_precheck/<项目>_全文.txt [--kw 词1,词2]
- 把全文加工成
<项目>_工作台.md,含三部分:
1. 章节骨架(带全文行号,可直取上下文);
2. 全部拍平表格重排(长行折行,避免读取截断);
3. 关键词行号索引(默认高频审查词 +--kw追加)。
第3步 定向核验(人工 + 规范对照)
- 阅读工作台 → 按行号定向读取全文 → 对照
references/审查依据清单.md逐项核验。 - 重点核验项:数据一致性(孔数/进尺/取样件数/波速/烈度/加速度交叉比对)、结论与建议矛盾、地层编号混乱、强条符合性(如取样与原位测试每层不少于6组、剪切波速实测深度、勘察纲要与勘探点平面布置图等)、填土/液化/抗震地段评价完整性。
第4步 生成校审单
- 将审查意见整理为 JSON 配置(参考
examples/review_config.example.json,review_items为意见列表,可按顺序编号); - 生成校审单:
python scripts/generate_review.py <config.json> [输出.docx]
- 校审单版式:标题「勘察文件校审单」+ 校审信息表 + 校审说明 + 意见列表(自动编号)。
- 可选页眉图片:在 config 中设置
"logo_file": "图片路径.png",未设置或文件不存在时自动跳过。
可选:初版 vs 终版比对
python scripts/review_diff.py --config <config.json> --final "<用户终版意见.docx>"
# 或
python scripts/review_diff.py <初版意见.docx> <用户终版.docx>
- 输出条目序列对齐(同/删/增/改)、条数字数统计、校审表逐格比对、页眉图片 md5。
输出物汇总
| 产物 | 位置 | 说明 |
|---|---|---|
| 预检报告 | scripts/_precheck/<项目>_预检.md |
机械性核查明细 |
| 全文缓存 | scripts/_precheck/<项目>_全文.txt |
复核阶段免二次提取 |
| 工作台 | <项目>_工作台.md |
章节/表格/关键词索引 |
| 校审单 | 指定输出路径 | 勘察文件校审单 docx |
边界与免责
- 本技能提供机械性核查与文书生成,不替代有资质人员的专业审查;重要结论(强条、重大修改)必须人工复核。
- 统计表反算仅覆盖含「平均值 / 标准差 / 变异系数 / 标准值」列的表;PDF 表格不做自动解析;扫描件需先 OCR。
- 规范原文不随包附带,请使用正版文本(见
references/审查依据清单.md)。