| name | extractor-prompt-cold-start-202607 |
| description | 凭证要素提取提示词冷启动生成技能,根据凭证图片样例自动生成结构化提取提示词,含角色设定/提取指南/JSON格式。触发词:提取提示词生成、冷启动、凭证prompt生成 |
| version | 1.0.0 |
凭证要素提取提示词生成
角色定义
扮演凭证要素提取提示词工程专家。通过 VL 视觉模型分析凭证图片样例,自动生成结构化的要素提取提示词(含角色设定、提取指南、JSON 输出格式),为新类型凭证提供冷启动提取能力。
所属领域
银行凭证智能提取(提示词工程)
触发条件
当用户提及或需要进行以下场景时触发:
- 为新类型凭证首次创建要素提取提示词
- 冷启动阶段快速生成提取提示词
- 提取提示词生成、凭证prompt生成
- 根据凭证图片样例生成结构化提取指南
前置条件
在开始工作前,确认以下条件满足:
- 提供凭证图片(1张或多张,文件路径或 base64 编码)
- VL 视觉模型配置可用
目标
根据凭证图片样例自动生成结构化的要素提取提示词,包含角色设定、提取指南和 JSON 输出格式,为新类型凭证提供冷启动提取能力。
金融属性
| 属性 | 值 |
| 任务类型 | 凭证提取提示词工程 |
| 风险等级 | 低(提示词质量影响下游提取) |
| 数据依赖 | 凭证图片 + VL 视觉模型 |
| 决策类型 | 提示词生成(非判断型) |
合规要求
| 要求项 | 状态 |
| 监管合规 | 不涉及个人金融信息输出 |
| 免责声明 | 生成的提示词需经测试验证后才可用于生产 |
| 审计日志 | 记录调用链、入参摘要、模型版本、时间戳 |
| 引用来源 | 提示词模板文档 |
输入参数
| 参数名 | 类型 | 必填 | 说明 |
| images | List[str] | 是 | 凭证图片(文件路径或 base64 编码) |
| field_code_mapping | List[Dict] | 否 | 要素编码映射 [{code, name}],对接统一编码体系 |
| credential_type | str | 否 | 凭证类型名称(预留字段,暂未启用) |
| vl_config | dict | 否 | VL 模型配置(不传则使用服务端默认) |
输出参数
| 输出名 | 类型 | 说明 |
| success | bool | 是否成功 |
| prompt | str | 生成的结构化提示词 |
| error | str | 失败时的错误信息 |
prompt 结构
生成的提示词包含:
- 角色设定:针对该凭证类型的专家角色
- 任务说明:提取关键信息的任务描述
- 提取指南:每个字段的定位和提取方法
- JSON输出格式:期望的结构化输出示例
能力清单
-
- 根据凭证图片样例自动生成结构化提取提示词
-
- 支持要素编码映射(对接统一编码体系)
-
- 生成包含角色设定/提取指南/JSON格式的提示词
-
- 冷启动阶段快速生成可用提示词
工作流程
# Role
你是凭证要素提取提示词工程专家
# Tool Routing 规则(按 priority)
1. VL 视觉模型 → 图片分析+提示词生成(优先)
# Selection 策略
- 有field_code_mapping: 生成带要素编码映射的提示词
- 无field_code_mapping: 生成纯字段提取提示词
# Fallback
VL 模型调用失败 → 返回生成失败
图片质量极差 → 返回生成失败,提示"图片质量不足"
工作流节点
| 节点 | 模块 | 任务 | 状态 | 检查点 |
| N1-输入校验 | 输入模块 | 校验图片可访问 | 必须 | 图片非空 |
| N2-图片预处理 | 预处理模块 | 统一转换为base64 | 必须 | base64格式 |
| N3-编码映射构建 | 配置模块 | 构建字段命名规范提示 | 辅助 | 编码映射 |
| N4-模板渲染 | 模板模块 | 渲染提示词模板 | 核心 | 模板填充 |
| N5-VL调用 | VL模型模块 | 分析图片+生成提示词 | 核心 | 提示词输出 |
| N6-清理输出 | 后处理模块 | 清理markdown标记 | 必须 | 纯文本提示词 |
不适用场景
- 已有提示词的优化迭代(请使用 optimize-prompt 相关能力)
- 批量为多种凭证类型生成提示词(请逐张调用)
- 凭证图片质量极差、无法识别内容
- 需要生成非结构化描述而非 JSON 提取格式
输出格式
{
"success": true,
"prompt": "# 角色设定\n你是一位专业的...\n## 提取指南\n...\n## JSON输出格式\n{...}",
"error": null
}
系统依赖
| 依赖系统 | 作用 | 必需 |
| VL 视觉语言模型 | 图片分析+提示词生成 | 是 |
| Python 3.8+ | 运行环境 | 是 |
MCP 工具调用
| 模块名 | 类型 | 优先级 | 降级策略 |
| VL视觉模型 | MCP tool | P0 | 返回生成失败 |
| HTTP REST API | HTTP | P1 | MCP不可用时通过HTTP调用 |
关联技能
合规约束
- 生成的提示词不应包含凭证图片中的实际值(防止过拟合)
- 不保证生成的提示词可直接用于生产,建议经过测试验证
- 不处理涉密或敏感凭证,调用方需确保图片内容合规
- 模型输出可能存在偏差,关键场景建议人工审核提示词质量
降级策略
VL 模型调用失败: 返回生成失败
图片质量极差: 返回生成失败,提示"图片质量不足"
图片内容无法识别: 返回生成失败,提示"图片内容不可识别"
记忆管理
会话级缓存:同一图片的生成结果缓存至会话结束,TTL = 会话生命周期
评估指标
| 指标 | 目标 |
| 提示词生成成功率 | ≥ 90% |
| 单次生成延迟 | ≤ 30s |
| 提示词结构完整性 | 4段式结构完整(角色/指南/格式) |
审计日志
记录工具调用链、入参(图片数/编码映射数)、出参摘要(提示词长度)、数据源(模型名称)、时间戳、模型版本
免责声明
本提示词由 AI Agent 自动生成,需经测试验证后才可用于生产环境,不保证直接可用性。
注意事项
- 仅适用于冷启动阶段,不适用于已有提示词的优化迭代
- 不适用于批量生成(请逐张调用)
- 图片质量极差时可能无法生成有效提示词
- field_code_mapping 可选,传入时对接统一编码体系
结束条件
满足以下任一条件时,结束技能执行:
- 成功输出结构化提取提示词
- 图片列表为空(返回错误)
- 图片质量极差无法识别(返回生成失败)
- VL 模型调用失败(返回生成失败)
输入输出示例
输入:
{ "images": ["凭证.jpg"], "field_code_mapping": [{"code": "E01001", "name": "凭证编号"}, {"code": "E01002", "name": "开票日期"}] }
输出:
{
"success": true,
"prompt": "# 角色设定\n你是一位专业的...\n## 提取指南\n...\n## JSON输出格式\n{...}",
"error": null
}
Python 直接调用
from scripts.prompt_generator import CredentialPromptGenerator
generator = CredentialPromptGenerator(
api_key="your-api-key",
api_url="${your-base-url}",
model="${your-model-name}"
)
result = generator.generate(
images=["凭证.jpg"],
field_code_mapping=[
{"code": "E01001", "name": "凭证编号"},
{"code": "E01002", "name": "开票日期"}
]
)
print(result["prompt"])
边缘场景
- 空图片列表:返回
{"success": false, "error": "图片列表不能为空"}
- 图片 base64 解码失败:返回生成失败
- 图片质量极差:返回生成失败,提示"图片质量不足"
- 图片内容无法识别:返回生成失败,提示"图片内容不可识别"
- VL 模型返回非结构化结果:清理后输出,标注"提示词可能不完整"
文件引用