# Prompt 模板指南
这是一个完整的图片分析 Prompt 模板和指南,适用于各种图片分析场景。
---
## 📋 架构说明
### 三部分数据流
图片分析工作流由三个独立的数据源组成,最终由 Agent 进行综合处理:
1. **OCR 技术结果**(MCP 工具输出)
- 文本内容(text)
- 文本框坐标(boxes)
- 置信度(confidence)
- 技术指标(processing_time, engine等)
- **存储位置**:`ocr_results/` 文件夹
2. **Cursor 视觉模型识别**(内置能力)
- 图片整体布局和结构
- 视觉元素(图表、表格、图像等)
- 非文本信息识别
- **存储位置**:`vision_analysis/` 文件夹
3. **Agent 内容总结**(基于前两者的综合分析)
- 每张图片总结 → `agent_summary/` 文件夹(在图片所在目录)
- 批量汇总(多张图片时)→ `[批次名]_batch_summary.md` 文件(在图片文件夹外,父目录)
### 数据流和协作方式
```
OCR工具 → OCR技术结果 → ocr_results/
↓
Cursor视觉模型 → 视觉识别结果 → vision_analysis/
↓
Agent综合处理
↓
agent_summary/(图片内)或 [批次名]_batch_summary.md(图片外)
```
### 各部分的职责边界
- **OCR 工具**:只负责技术识别,返回纯技术数据(text, boxes, confidence等)
- **Cursor 视觉模型**:分析图片的视觉结构和非文本元素
- **Agent**:通过 Prompt 指导,负责组合使用 OCR 结果和视觉识别,生成最终总结
---
## 🔄 工作流程
### 统一处理流程(单个图片视为批量处理中只有一个元素的情况)
#### 第一阶段:数据收集
对每张图片执行:
1. **OCR 技术识别**
- 使用 `recognize_image_paddleocr` 或 `recognize_image_easyocr` 工具
- 识别图片中的文字内容
- 获取文本、文本框坐标、置信度等信息
- **保存结果**:在图片所在目录创建 `ocr_results/` 文件夹,保存 `[图片名]_ocr.json`(完整JSON格式)和 `[图片名]_ocr.txt`(纯文本版本)
- **重要**:在JSON和TXT文件开头添加源图片链接(JSON文件添加 `source_image` 字段,TXT文件添加markdown格式链接)
2. **Cursor 视觉分析**
- 使用 Cursor 内置视觉识别能力
- 分析图片的视觉元素(布局、结构、图表、表格等)
- 识别图片中的非文本信息
- **保存结果**:在图片所在目录创建 `vision_analysis/` 文件夹,保存 `[图片名]_vision.md`
- **重要**:在文件开头添加源图片链接,格式:`## 📷 源图片\n- [图片文件名](相对路径/图片文件名)`
#### 第二阶段:内容总结
对每张图片生成单独总结:
- 结合 OCR 识别结果和视觉分析
- 提取关键信息和核心观点
- 生成全面的内容总结
- **保存结果**:在图片所在目录创建 `agent_summary/` 文件夹,保存 `[图片名]_summary.md`
- **重要**:在文件开头添加源图片链接,格式:`## 📷 源图片\n- [图片文件名](相对路径/图片文件名)\n\n`
#### 第三阶段:批量汇总(多张图片时)
当处理多张图片时:
1. 汇总所有图片的分析结果
2. 生成整体概要和关键发现
3. 对比分析图片之间的异同点
4. **保存结果**:在图片文件夹的父目录直接保存 `[批次名]_batch_summary.md` 文件(不创建文件夹)
**说明**:单个图片处理时,只需执行第一、二阶段;多张图片时,执行全部三个阶段。
---
## 📋 基础模板
### 通用模板
```
请对以下图片进行分析(单个图片视为批量处理中只有一个元素的情况):
**存储位置**:
- 中间结果(OCR、视觉分析、单个图片总结)保存在图片所在目录
- 批量汇总文件(多张图片时)直接保存在图片文件夹的父目录(不创建文件夹)
**第一阶段:数据收集**
对每张图片执行:
1. **OCR 识别**
- 使用 recognize_image_paddleocr 工具识别图片中的文字内容
- 在图片所在目录创建 `ocr_results/` 文件夹
- 保存两个文件:`ocr_results/[图片名]_ocr.json`(完整JSON格式,必须)和 `ocr_results/[图片名]_ocr.txt`(纯文本版本,可选)
- **重要**:在JSON和TXT文件开头添加源图片链接(JSON文件添加 `source_image` 字段,TXT文件添加markdown格式链接)
2. **视觉分析**
- 分析图片的整体布局、结构、视觉元素(图表、表格、图像等)
- 在图片所在目录创建 `vision_analysis/` 文件夹
- 保存 `vision_analysis/[图片名]_vision.md`
- **重要**:在markdown文件开头添加源图片链接
**第二阶段:内容总结**
对每张图片生成单独总结:
- 结合OCR识别结果和视觉分析,提取关键信息,生成全面的内容总结
- 在图片所在目录创建 `agent_summary/` 文件夹
- 保存 `agent_summary/[图片名]_summary.md`
- **重要**:在markdown文件开头添加源图片链接
**第三阶段:批量汇总**(仅当有多张图片时执行)
1. 汇总所有图片的分析结果
2. 生成整体概要和关键发现
3. 对比分析图片之间的异同点
4. 在图片文件夹的父目录直接保存 `[批次名]_batch_summary.md` 文件(不创建文件夹)
图片列表:
- [图片路径1]
- [图片路径2](可选,单个图片时只有一条)
- ...
```
### 使用示例
#### 示例 1:单个图片
```
请对以下图片进行分析:
**第一阶段:数据收集**
对图片执行:
1. OCR 识别 → 在图片所在目录创建 ocr_results/ 文件夹并保存结果
2. 视觉分析 → 在图片所在目录创建 vision_analysis/ 文件夹并保存结果
**第二阶段:内容总结**
生成单独总结 → 在图片所在目录创建 agent_summary/ 文件夹并保存结果
图片列表:
- 东野圭吾图片测试集/IMG_20251124_220855.jpg
```
#### 示例 2:多张图片
```
请对以下一组图片进行批量分析:
**第一阶段:数据收集**
对每张图片执行:
1. OCR 识别 → 在图片所在目录创建 ocr_results/ 文件夹并保存结果
2. 视觉分析 → 在图片所在目录创建 vision_analysis/ 文件夹并保存结果
**第二阶段:批量内容总结**
对每张图片生成单独总结 → 在图片所在目录创建 agent_summary/ 文件夹并保存结果
**第三阶段:批量汇总**
1. 汇总所有图片的分析结果
2. 生成整体概要和关键发现
3. 对比分析图片之间的异同点
4. 在图片文件夹的父目录直接保存 [批次名]_batch_summary.md 文件(不创建文件夹)
图片列表:
- [图片路径1]
- [图片路径2]
- [图片路径3]
```
---
## 📁 文件约束与规范
### 存储位置约束
**核心原则**:
- **中间结果**(OCR、视觉分析、单个图片总结):必须保存在**图片所在目录**,确保结果与源文件在一起,便于管理
- **批量汇总报告**(多张图片时):直接保存在图片文件夹的**父目录**(不创建文件夹),因为一个文件夹只有一个最终总结文件
**具体规则**:
- **中间结果**:每张图片的中间结果保存在该图片所在目录
- **批量汇总**(多张图片时):
- 如果图片在同一文件夹:批量汇总文件直接保存在图片文件夹的父目录
- 如果图片分散在不同文件夹:批量汇总文件选择公共目录保存
### 文件夹结构要求
#### 统一结构(单个图片视为批量处理中只有一个元素的情况)
**情况1:图片在项目根目录**
```
项目根目录/
├── image.jpg # 源图片(单个图片时)
├── ocr_results/ # OCR技术结果文件夹
│ └── image_ocr.json # 完整JSON格式(必须)
│ └── image_ocr.txt # 纯文本版本(可选)
├── vision_analysis/ # 视觉识别结果文件夹
│ └── image_vision.md
└── agent_summary/ # Agent总结文件夹
└── image_summary.md
```
**情况2:图片在子文件夹中(单个图片)**
```
项目根目录/
└── 图片文件夹/
├── image.jpg # 源图片
├── ocr_results/ # 中间结果保存在图片所在目录
│ └── image_ocr.json # 完整JSON格式(必须)
│ └── image_ocr.txt # 纯文本版本(可选)
├── vision_analysis/
│ └── image_vision.md
└── agent_summary/
└── image_summary.md
```
**情况3:多张图片在同一文件夹**
```
项目根目录/
├── 图片文件夹/
│ ├── img1.jpg # 源图片
│ ├── img2.jpg
│ ├── img3.jpg
│ ├── ocr_results/ # OCR技术结果文件夹(中间结果)
│ │ ├── img1_ocr.json # 完整JSON格式(必须)
│ │ ├── img1_ocr.txt # 纯文本版本(可选)
│ │ ├── img2_ocr.json
│ │ ├── img2_ocr.txt
│ │ └── ...
│ ├── vision_analysis/ # 视觉识别结果文件夹(中间结果)
│ │ ├── img1_vision.md
│ │ ├── img2_vision.md
│ │ └── ...
│ └── agent_summary/ # 单个图片总结文件夹(中间结果)
│ ├── img1_summary.md
│ ├── img2_summary.md
│ └── ...
└── [批次名]_batch_summary.md # 批量汇总文件(在图片文件夹外,不创建文件夹)
```
**说明**:单个图片时,结构相同,只是没有批量汇总文件。
### 文件命名规范
- **OCR结果**:
- `[图片名]_ocr.json` - 完整JSON格式,包含text、boxes、confidence、engine、processing_time等所有技术信息
- `[图片名]_ocr.txt` - 纯文本版本,仅包含识别的文本内容,方便阅读
- **视觉分析**:`[图片名]_vision.md`
- **每张图片总结**:`[图片名]_summary.md`
- **批量汇总**(多张图片时):`[批次名]_batch_summary.md`
**命名建议**:
- 图片名:使用图片文件名(不含扩展名),如 `IMG_20251124_221108`
- 批次名:使用描述性名称,如 `东野圭吾图片集_batch_summary`
**重要说明**:
- 两个文件都需要保存:JSON格式包含完整的OCR识别结果和技术信息,TXT格式便于人工阅读
- JSON格式用于程序处理和数据分析,TXT格式用于快速查看文本内容
### 各文件夹的用途和内容格式
#### ocr_results/
- **用途**:存储OCR识别的技术结果
- **JSON格式**(必须):包含完整的OCR结果
- `source_image`: 源图片路径(相对路径,用于链接)
- `text`: 识别的文本内容
- `boxes`: 文本框坐标数组
- `confidence`: 平均置信度
- `engine`: 使用的OCR引擎
- `processing_time`: 处理时间
- `analysis`: 技术分析信息(可选)
- `progress_history`: 进度历史(可选)
- **TXT格式**(可选):纯文本内容,仅包含识别的文本,便于人工阅读
- **源图片链接**:在文件开头必须包含源图片链接,格式:`## 📷 源图片\n- [图片文件名](相对路径/图片文件名)\n\n`
#### vision_analysis/
- **用途**:存储Cursor视觉模型的分析结果
- **格式**:Markdown格式
- **内容**:整体布局、视觉元素、结构特点等
- **源图片链接**:在文件开头必须包含源图片链接,格式:`## 📷 源图片\n- [图片文件名](相对路径/图片文件名)\n\n`
#### agent_summary/
- **用途**:存储每张图片的综合分析报告
- **格式**:Markdown格式
- **内容**:核心主题、关键观点、重要信息、数据分析等
- **源图片链接**:在文件开头必须包含源图片链接,格式:`## 📷 源图片\n- [图片文件名](相对路径/图片文件名)\n\n`
#### [批次名]_batch_summary.md
- **用途**:批量图片的综合汇总报告(最终总结文件)
- **存储位置**:图片文件夹的父目录(图片文件夹外),直接保存文件,不创建文件夹
- **格式**:Markdown格式
- **内容**:整体概要、关键发现、对比分析、趋势洞察等
- **逻辑关系**:OCR结果、视觉分析、单个图片总结都是为了生成最终的批量汇总报告
---
## 💡 模板使用说明
**灵活使用**:通用模板可以根据需求灵活调整:
- **只做OCR**:只执行第一阶段的数据收集 - OCR识别
- **只做视觉分析**:只执行第一阶段的数据收集 - 视觉分析
- **完整分析**:执行第一、二阶段(单个图片)或全部三个阶段(多张图片)
- **多引擎对比**:在第一阶段使用多个OCR引擎进行识别
- **特定内容类型**:在第二阶段根据内容类型(文档、表格、图表等)调整总结描述
**说明**:单个图片时,只需执行第一、二阶段;多张图片时,执行全部三个阶段。
---
## 📊 输出格式模板
### 单个图片分析报告格式
```markdown
# 图片分析报告
## 📷 源图片
- [图片文件名](相对路径/图片文件名)
## 📸 图片信息
- **路径**:[图片路径]
- **分析时间**:[时间戳]
## 🔍 OCR 识别结果
- **识别引擎**:[引擎名称]
- **识别文本**:[文本内容]
- **置信度**:[数值](优秀/良好/一般/需复核)
- **处理时间**:[时间]
- **文本块数量**:[数量]
## 👁️ 视觉分析
- **整体布局**:[描述]
- **视觉元素**:[元素列表]
- **结构特点**:[特点描述]
- **视觉风格**:[风格描述]
## 📝 内容总结
- **核心主题**:[主题]
- **关键观点**:
1. [观点1]
2. [观点2]
3. [观点3]
- **重要信息**:[信息列表]
## 📊 数据分析
- **结构化数据**:[数据表格或列表]
- **关键指标**:[指标列表]
- **数据关系**:[关系分析]
- **洞察发现**:[发现列表]
## ⚠️ 注意事项
- [低置信度区域]
- [识别不确定的部分]
- [需要人工复核的内容]
## 💡 建议
- [后续分析建议]
- [改进建议]
```
### 批量汇总报告格式
```markdown
# 批量图片分析汇总报告
## 📋 批次信息
- **批次名称**:[批次名]
- **图片数量**:[数量]
- **分析时间**:[时间戳]
## 📊 整体概要
[总结所有图片的共同主题和特点]
## 🔍 关键发现
1. [发现1]
2. [发现2]
3. [发现3]
## 📈 对比分析
### 图片之间的共同点
- [共同点1]
- [共同点2]
### 图片之间的差异点
- [差异点1]
- [差异点2]
## 📉 趋势洞察
[识别数据或内容的变化趋势]
## 💡 综合建议和结论
[提供综合性的建议和结论]
## 📎 详细分析链接
- [图片1]:图片文件夹/agent_summary/[图片1]_summary.md
- [图片2]:图片文件夹/agent_summary/[图片2]_summary.md
- [图片3]:图片文件夹/agent_summary/[图片3]_summary.md
```
---
## 💡 使用说明
### 如何获取模板
```python
# 调用工具获取模板
result = get_prompt_template()
template = result["template"]
```
### 如何使用模板
1. **获取模板**:使用 `get_prompt_template()` 工具获取模板内容
2. **替换路径**:将模板中的 `[替换为实际图片路径]` 替换为实际图片路径
3. **使用模板**:将修改后的模板作为 prompt 使用
### 使用示例
#### 示例 1:分析单张图片(视为批量处理中只有一个元素)
```
请对以下图片进行分析:
**第一阶段:数据收集**
对图片执行:
1. OCR 识别 → 在图片所在目录创建 ocr_results/ 文件夹并保存结果
2. 视觉分析 → 在图片所在目录创建 vision_analysis/ 文件夹并保存结果
**第二阶段:内容总结**
生成单独总结 → 在图片所在目录创建 agent_summary/ 文件夹并保存结果
图片列表:
- 东野圭吾图片测试集/IMG_20251124_220855.jpg
```
#### 示例 2:在代码中使用
```python
# 1. 获取模板
result = get_prompt_template()
template = result["template"]
# 2. 替换图片路径
image_path = "path/to/your/image.jpg"
prompt = template.replace("[替换为实际图片路径]", image_path)
# 3. 使用 prompt 进行分析
# (将 prompt 发送给 AI 进行分析)
```
#### 示例 3:批量处理
```python
# 获取模板
result = get_prompt_template()
template = result["template"]
# 批量处理多张图片
image_paths = [
"image1.jpg",
"image2.jpg",
"image3.jpg"
]
for image_path in image_paths:
# 替换图片路径
prompt = template.replace("[替换为实际图片路径]", image_path)
# 使用 prompt 进行分析
# ...
```
---
## 🚀 快速参考
### 最佳实践
1. **明确目标**:根据分析目标选择合适的模板
2. **指定路径**:使用绝对路径确保图片能被正确找到
3. **多引擎对比**:重要图片建议使用多个 OCR 引擎
4. **结果验证**:结合视觉分析验证 OCR 结果
5. **结构化输出**:使用统一的输出格式便于后续处理
6. **批量处理流程**:对于多张图片,先完成单张分析,再生成汇总报告
### 常见问题
**Q: OCR识别置信度低怎么办?**
A: 可以尝试使用不同的OCR引擎,或结合视觉分析结果进行人工复核。
**Q: 如何选择合适的OCR引擎?**
A:
- 中文文档:推荐 `recognize_image_paddleocr`
- 多语言文档:推荐 `recognize_image_easyocr`
- 需要高精度:在第一阶段使用多个OCR引擎进行对比识别
**Q: 单个图片和批量处理有什么区别?**
A: 统一使用批量处理模式,单个图片视为批量处理中只有一个元素的情况。单个图片时只执行第一、二阶段;多张图片时执行全部三个阶段(包含批量汇总)。
**Q: 如何获取Prompt模板?**
A: 使用 `get_prompt_template` MCP工具获取通用模板,然后根据需求灵活调整。
---
## ⚠️ 注意事项
### 必须遵守的约束
1. **存储位置**:遵循"文件约束与规范"章节中的存储位置约束
2. **文件夹创建**:必须创建 `ocr_results/`、`vision_analysis/`、`agent_summary/` 三个文件夹
3. **OCR结果格式**:必须保存JSON格式(`[图片名]_ocr.json`),可选保存TXT格式(`[图片名]_ocr.txt`)
4. **文件命名**:严格按照命名规范,使用 `[图片名]_ocr.json`、`[图片名]_vision.md`、`[图片名]_summary.md` 格式(多张图片时还有 `[批次名]_batch_summary.md`)
5. **源图片链接**:所有生成的文件(JSON、TXT、Markdown)必须在文件开头包含源图片链接,方便用户比对
### 使用建议
1. **替换路径**:使用前必须将 `[替换为实际图片路径]` 替换为实际路径
2. **工具调用**:模板中提到的工具(如 `recognize_image_paddleocr`)需要在 MCP 环境中可用
3. **灵活调整**:可以根据具体场景调整模板内容,但必须遵守上述文件约束
4. **统一处理模式**:单个图片和批量图片统一使用批量处理模式,单个图片视为只有一个元素的情况
### 其他注意事项
- OCR 识别可能受图片质量、光线、角度等因素影响
- 视觉模型分析结果可能与 OCR 文本有差异,需要综合判断
- 对于复杂布局的图片,可能需要分区域分析
- 重要数据建议人工复核
- 批量处理时,确保先完成单张图片的分析,再生成汇总报告
---
## 🔧 自定义模板
如果需要自定义模板,直接编辑此文件即可。修改后保存,下次调用 `get_prompt_template()` 时会自动读取新内容。
**提示**:保持模板简洁明了,包含清晰的步骤说明,便于 AI 理解和执行。