ai-business-write/技术文档/AI智能处理说明.md

210 lines
5.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# AI智能模板处理说明
## 功能概述
两个脚本已升级为AI智能版本使用硅基流动大模型API智能分析文档内容识别需要替换为占位符的位置。
### 主要特性
1. **AI智能分析** - 使用大模型理解文档语义,识别可替换内容
2. **组合字段识别** - 能够识别组合字段,如"山西XXXX集团有限公司(职务+姓名)"
3. **规则匹配补充** - AI分析后使用规则匹配作为补充
4. **置信度过滤** - 只应用置信度大于0.7的AI替换建议
## 脚本说明
### process_templates.py
- 处理原始模板(包含 .doc 转换)
- 支持 AI 智能分析
- 适用于需要自动转换 .doc 文件的场景
### process_templates_docx_only.py
- 处理已转换的 .docx 文件
- 支持 AI 智能分析
- 适用于文件已手动转换为 .docx 的场景
## 环境配置
### 1. 确保 .env 文件配置正确
```env
SILICONFLOW_API_KEY=你的API密钥
SILICONFLOW_MODEL=deepseek-ai/DeepSeek-V3.2-Exp
```
### 2. 安装依赖
```bash
pip install python-docx python-dotenv requests
```
## 使用方法
### 运行脚本
```bash
# 处理已转换的 .docx 文件(推荐)
python process_templates_docx_only.py
# 或处理原始模板(包含 .doc 转换)
python process_templates.py
```
## AI分析能力
### 1. 识别明确的字段值
- 姓名、单位、职务等明确信息
- 示例:`张三``{{target_name}}`
### 2. 识别示例值
- XXX、待填等占位符
- 示例:`被核查人姓名: XXX``被核查人姓名: {{target_name}}`
### 3. 识别组合字段
- 包含多个字段信息的组合文本
- 示例:
- `山西XXXX集团有限公司(职务+姓名)``{{target_organization_and_position}}({{target_name}})`
- `张三1980年5月``{{target_name}}{{target_gender}}{{target_date_of_birth}}`
### 4. 识别格式化值
- 日期、时间等格式化内容
- 示例:`2024年12月7日``{{date}}`
### 5. 识别上下文相关字段
- 根据上下文理解字段含义
- 示例:在"被核查人"上下文中,`张三` 会被识别为 `{{target_name}}`
## 处理流程
### 1. AI分析阶段
- 分析文档段落和表格单元格
- 识别可替换内容
- 生成替换建议(包含置信度)
### 2. 规则匹配阶段
- 使用正则表达式匹配字段名称
- 补充AI可能遗漏的替换
### 3. 应用替换
- 按置信度排序替换建议
- 只应用置信度 > 0.7 的替换
- 避免重复替换
## 输出示例
### 成功处理
```
处理: 1.请示报告卡XXX.docx
类型: REPORT_CARD
输入: 模板\原始模板\...\1.请示报告卡XXX.docx
输出: 模板\2-初核模版\1.初核请示\1.请示报告卡XXX.docx
✓ AI分析已启用
处理: 1.请示报告卡XXX.docx
✓ 处理成功AI识别 5 处,规则匹配 2 处
```
### AI分析失败自动降级
```
处理: 2.初步核实审批表XXX.docx
⚠ AI分析不可用: 未配置 SILICONFLOW_API_KEY将使用基础模式
处理: 2.初步核实审批表XXX.docx
✓ 处理成功,规则匹配 8 处
```
## 注意事项
### 1. API配置
- 确保 `.env` 文件中配置了正确的 API 密钥
- 如果未配置,脚本会自动降级为规则匹配模式
### 2. API调用限制
- AI分析会增加处理时间每个段落/单元格需要API调用
- 如果API调用失败会自动跳过AI分析使用规则匹配
### 3. 置信度阈值
- 默认只应用置信度 > 0.7 的替换
- 可以在代码中调整阈值
### 4. 人工审核
- AI分析结果需要人工审核
- 某些复杂场景可能需要手动调整
## 常见问题
### Q1: AI分析失败怎么办
**A:** 脚本会自动降级为规则匹配模式,不会影响处理流程。检查:
1. `.env` 文件中的 API 密钥是否正确
2. 网络连接是否正常
3. API 配额是否充足
### Q2: 某些内容没有被替换?
**A:** 可能原因:
1. AI置信度低于阈值0.7
2. 内容不在可用字段列表中
3. 内容格式特殊AI无法识别
**解决方案:**
- 检查生成的模板
- 手动调整未替换的内容
- 可以降低置信度阈值(修改代码)
### Q3: 组合字段替换不正确?
**A:** AI会尝试识别组合字段但可能不够准确。建议
1. 检查AI识别的替换结果
2. 手动调整不正确的组合字段
3. 提供更多示例帮助AI学习
### Q4: 处理速度慢?
**A:** AI分析需要调用API会增加处理时间。可以
1. 只对重要文档使用AI分析
2. 批量处理时考虑API调用限制
3. 使用 `use_ai=False` 参数禁用AI分析
## 性能优化建议
1. **批量处理** - 一次性处理多个文件减少API调用开销
2. **缓存结果** - 对于相同内容可以缓存AI分析结果
3. **选择性使用** - 只对复杂文档使用AI分析简单文档使用规则匹配
## 示例场景
### 场景1: 组合字段替换
```
原始文本: 山西XXXX集团有限公司(职务+姓名)
AI识别: 包含单位信息和姓名信息
替换结果: {{target_organization_and_position}}({{target_name}})
```
### 场景2: 上下文识别
```
原始文本: 被核查人:张三
AI识别: 在"被核查人"上下文中,"张三"是姓名
替换结果: 被核查人:{{target_name}}
```
### 场景3: 格式化日期
```
原始文本: 2024年12月7日
AI识别: 日期格式
替换结果: {{date}} 或 {{approval_time}}
```
## 下一步
1. **检查生成的模板** - 打开处理后的模板文件
2. **审核AI替换结果** - 确认占位符是否正确
3. **手动调整** - 修正不正确的替换
4. **运行初始化脚本** - `python init_all_templates.py`
## 技术支持
如有问题,请检查:
1. `.env` 文件配置
2. API 密钥有效性
3. 网络连接状态
4. 脚本输出日志