下载地址
https://www.zhengdianxue.com/wp-content/uploads/skills/org-81ystkpy--anspire-vlm-intelligence.zip将提示词发送给你的 AI 安装该 skills
请根据 https://skillhub.cn/install/skillhub.md,安装 @org-81ystkpy/anspire-vlm-intelligence。调用 Anspire API 对 PDF、图片、Word 等文档执行内容提取,或通过异步任务对图片执行篡改与 AIGC 检测。用户要求提取内容、文档内容提取、票据、合同、简历、证件字段提取,图片 PS 检测、真伪核验或 AIGC 判定时使用。
阅读全文 (展开查看完整说明)
概述
Anspire Document Intelligence
安全与执行前检查
- API Key 只允许存储在用户目录下的
~/.config/anspire-document-intelligence/config.json 文件中,使用 JSON 字段 api_key 保存。不得将 API Key 写入 Skill 包、工作区、日志、环境变量或普通命令参数。
- WorkBuddy 不得通过代码、文件搜索、环境变量或历史路径自行检索、
读取或展示 API Key。API 请求所需的认证读取和写入只由本 Skill 脚本在内部处理;不要在 WorkBuddy 的执行流程中另行获取凭证。
- 用户首次提供或更新 API Key 时,运行
python3 /path/to/skill/scripts/anspire_api.py configure,通过隐藏输入写入配置。保存成功后只告知用户“认证配置已更新”,不要展示配置文件目录。
- 如果没有 API Key,不要调用 API,也不要继续执行当前任务。引导用户打开
Anspire 控制台的 API Key 设置页,完成注册、登录和 API Key 创建。用户完成后,请用户返回并通过 configure 完成认证,再继续原任务。必须按以下固定格式提示,不要改写步骤文字:
请按以下步骤操作:
**第一步:获取 API Key**
1. 打开 [Anspire 控制台 API Key 设置页](https://vlm.anspire.cn/workspace/settings)
2. 注册/登录账号
3. 点击“访问密钥”菜单,创建“新密钥”
**第二步:配置 API Key**
将获取到的 API Key 提供给我,我会通过隐藏输入完成认证配置。- 如果配置文件中的 API Key 返回 401,必须清除用户目录中保存的失效值,
并明确提醒用户重新提供 API Key:“API Key 已失效,请重新提供 API Key。”
- 用户重新提供 API Key 后,必须运行
python3 /path/to/skill/scripts/anspire_api.py configure,通过隐藏输入将新 Key 写入用户配置,并替换原来保存的失效 Key;保存成功后只告知用户“认证配置已更新”,不要展示配置文件目录。
- 不要把 API Key 写入 Skill 包、日志或最终回复。Skill 包不包含真实凭证。
- 使用本 Skill 目录中的
scripts/anspire_api.py,不要假设当前工作目录是 Skill 根目录。 - 输入是身份证、护照、合同、财务票据或其他个人信息时,提醒用户文件会发送到第三方服务。
能力选择
- 用户要求“提取内容”或文档内容提取:使用
extract - 用户要判断图片是否 PS、篡改、伪造或 AI 生成:使用
tamper-detect - 用户没有提供当前消息中的附件、明确的本地文件路径或明确的图片 URL:要求补充输入
- 用户要求本 Skill 不支持的能力:说明本 Skill 只支持以上两个端点
文件来源与地址处理
图片来源必须按以下优先级处理:
- 优先使用 Work Buddy 当前消息中用户实际上传的原始图片附件,以及运行环境为该附件提供的临时文件路径。
- 只有用户明确提供本地文件路径时,才读取该本地文件。
- 用户明确提供图片 URL 时,只有运行环境支持下载并已将图片保存为本地文件后才能处理;当前流程最终必须使用该本地文件上传。
- 不要根据文件名、历史路径或工作区内容自行寻找、匹配或替代图片。
- 如果当前运行环境无法访问对话附件,必须明确告知用户,不能擅自改用本地同名图片。
- 对可访问的原始图片文件,优先使用原始内容,不要默认使用可能经过 JPEG 重编码的剪贴板副本。
文档抽取也只能处理当前消息附件、用户明确提供的本地文件路径或用户明确提供的 URL;不得自行扫描或猜测工作区中的文件。文档 URL 作为接口的 url 字段直接提交;如果运行环境无法访问该 URL,应明确告知用户并停止本次请求。
完整响应字段、错误结构和接口变更信息,按需读取references/api_reference.md。
文档抽取
文档抽取由服务端执行默认内容抽取:
python3 /path/to/skill/scripts/anspire_api.py extract
--file /path/to/document.pdf
--quiet规则:
--file与--url必须二选一。- 不允许传入额外字段定义参数。
- 常规抽取不要启用
--with-grounding;只有用户要求字段溯源、原文定位或坐标时才启用。 - 脚本 stdout 只返回一次完整 JSON,供 WorkBuddy 解析;不要通过额外参数
请求或获取第二份结果。
- 最终回复使用下方“文档抽取”模板,展示服务端返回的识别结果,以及实际生成的输出文件路径。
- 不主动附加识别质量评价、复核建议或字段置信度分析,除非用户明确要求。
文档抽取展示模板
最终结果必须使用一张完整的 Markdown 表格展示,字段顺序与服务端返回顺序一致。不得按字段类型、嵌套层级或区域明细拆分成多张表;嵌套字段和数组内容作为同一张表中的单元格或附加行展示。
## 文档抽取结果
| 字段路径 | 识别结果 |
|---|---|
| 字段 A | 值 A |
| 字段 B | 值 B |
结果文件:`/path/to/result.json`展示要求:
string、number、boolean直接展示值。array使用换行列表展示,不要压成难读的单行 JSON。object使用字段路径或缩进文本放在同一张表中,不要创建嵌套表格。null、空字符串和未识别字段必须如实展示为“未识别”,不得自行补值。- 默认不展示
task_id、耗时、request ID、uncertainty和aigc等技术元数据。 - 只有用户明确要求溯源时才展示
grounding。实际接口可能返回
字段名: [[x1,y1,x2,y2], ...],按原字段对应坐标展示,不要虚构页码。
图片篡改与 AIGC 检测
python3 /path/to/skill/scripts/anspire_api.py tamper-detect
--file /path/to/image.png
--quiet规则:
- 按“文件来源与地址处理”中的优先级选择图片;对可访问的原始图片,
不要默认使用可能经过 JPEG 重编码的剪贴板副本。
- 脚本会校验 magic bytes;扩展名与真实格式不一致时按真实 MIME 上传并提示。
- 图片鉴真是异步任务,脚本必须完整执行以下流程,不得把创建任务响应当作最终结果:
POST /open-api/v1/image/tamper-detect创建任务,接受202,读取task_idGET /open-api/v1/image/tamper-detect/tasks/{task_id}查询状态queued或running时继续轮询;failed时停止并展示error_code、error_message- 只有状态为
succeeded后,才调用
GET /open-api/v1/image/tamper-detect/results/{task_id} 获取最终结果
- 最终结果是顶层结果对象,不要再假设存在旧版
result包装。优先读取:
decision、risk_level、reason、confidence、terminated_stage、stages、tamper_regions、artifacts,以及兼容字段aigc、aigc_detection、tamper_detection、is_tampered、tamper_score、threshold。
- 先解释
aigc.image_type或aigc_detection.is_ai_generated,再解释篡改字段。 - AIGC 判定为 AI 生成时,结论是整图 AI 生成或非真实图片;如果
tamper_detection.status == "not_run",缺失或为 null 的is_tampered、tamper_score 不代表图片真实。
- 只有 AIGC 判定为真实图片,且
tamper_detection.status == "completed"时,
才根据 is_tampered、tamper_score、threshold 和tamper_regions 解释局部篡改。
tamper_regions有坐标时,先检查本地是否具备生成融合图所需的 Python 组件,
当前主要依赖为 Pillow(包含 PIL.Image 和 PIL.ImageDraw)。
- 依赖完整且未指定
--no-fused时,生成带红色区域和边框的
{原图名}_fused.png;生成成功后在最终回复中展示本地图片。
- 依赖缺失、原图不可读或融合图生成失败时,直接跳过融合图阶段,
只输出鉴真结果表格,不影响检测结果。
- 没有坐标信息时可以不生成融合图。
- 不要访问、下载、打开、展示或转发
artifacts中的远端 URL,也不要使用旧版
result.fused_image.url。本地融合图只能由 Pillow 根据坐标生成。
- 用户要求左右对比时使用
--compare;只有本次运行成功生成融合图时才生成并报告对比 HTML。
图片鉴真展示模板
必须先给出单一、明确的主结论,再使用一张完整的 Markdown 表格展示所有技术细节。图片类型、综合决策、风险等级、AIGC 状态、篡改检测状态、分数、阈值、疑似区域数量和区域明细都必须放在这同一张表中,不得拆成多张表。
## 图片鉴真结果
**结论:发现疑似篡改**
| 项目 | 结果 |
|---|---|
| 图片类型 | 真实图片 |
| 综合决策 | risk_detected |
| 风险等级 | high |
| 篡改检测 | 是 |
| 篡改分数 | 0.9416 |
| 判定阈值 | 0.8 |
| 疑似区域 | 1 个 |
| 区域 1 | type=xxx;坐标=...;score=...;label=... |
### 本地融合图

结果文件:`/path/to/result.json`
融合图文件:`/path/to/image_fused.png`结论规则:
aigc.image_type == "ai_generated"或
aigc_detection.is_ai_generated == true:结论:AI 生成图片,不能视为真实图片。不要把is_tampered=false、null 或 tamper_score=0 解释成“未篡改”或“真实”。
- AIGC 判定为真实图片、
tamper_detection.status == "completed"且
is_tampered == true:结论:发现疑似篡改,同时展示分数、阈值和区域数量;若融合图生成成功,再展示本地融合图。
- AIGC 判定为真实图片、
tamper_detection.status == "completed"且
is_tampered == false:结论:未发现达到判定阈值的篡改,展示分数和阈值;有坐标且依赖完整时可展示融合图。
decision、AIGC 类型或阶段结果不完整:结论:无法完成可靠判定,
说明缺失字段或 terminated_stage,不要推断为真实或未篡改。
展示要求:
tamper_regions使用接口实际返回的region_id、type、coordinates或
bbox、score 和 label 展示区域明细。
bbox兼容[x1, y1, x2, y2]和{x,y,width,height};polygon
坐标展示为点序列。
- 融合图实际生成时必须展示 Pillow 生成的本地融合图,不能只给路径而不展示。
最终回复使用 Markdown 图片语法:。
- Pillow 或其他所需组件缺失时,只展示鉴真结果表格,不要求展示融合图。
artifacts中的远端 URL 和旧版result.fused_image.url永远不展示、
不访问、不下载。
- 不默认展示完整响应 JSON;用户明确要求原始响应时才提供已清理远端 URL 的本地结果文件。
输出与错误处理
- 交互调用默认使用
--quiet,避免摘要和 JSON 重复展示。 - 脚本只负责返回一次完整 JSON 结果,不会为展示格式再次调用接口、
再次创建任务或再次获取结果。
- WorkBuddy 必须解析脚本已经返回的 JSON,再生成最终 Markdown 展示;
不要把原始 JSON 直接倾倒给用户,也不要为了生成表格重复执行命令。
- 文档抽取最终必须使用一张完整的 Markdown 表格逐字段展示,不能拆分成多张表,
字段顺序与服务端返回顺序一致。
- 图片鉴真最终必须先给出单一主结论,再使用一张完整的 Markdown 表格展示图片类型、
综合决策、风险等级、AIGC 状态、篡改检测状态、分数、阈值、疑似区域数量和区域明细;如果本次具备融合图依赖且成功生成,有坐标时才直接渲染本地融合图,使用生成的本地绝对路径:;不能只报告路径。
- 成功时只展示识别结果和输出路径;不要把请求头、API Key 或完整调试日志放入最终回复。
- 失败时根据退出码说明原因:
1:参数、文件格式或文件大小错误2:API Key 无效或缺失;无效时清除旧值并提醒用户重新提供 API Key,
缺失时按上面的设置页流程引导用户
3:权限或配额不足4:限流重试后仍失败5:服务端错误重试后仍失败6:网络或其他本地错误
- 输出文件已存在时不要无提示覆盖;脚本会自动选择带序号的新输出路径并在日志中报告实际路径。
远端融合图禁止使用
绝对禁止访问、下载、打开或展示 API 返回的 artifacts 远端 URL 或旧版result.fused_image.url。该地址可能需要登录,不能作为本地融合图来源,也不能交给浏览器、下载器或其他工具处理。篡改区域标注必须由脚本使用 Pillow 根据最终结果中的 tamper_regions在用户本地生成。
参考文件
references/api_reference.md:完整 API 字段、请求响应示例和批量调用说明。