Agent Skills
返回列表
💻

身份证OCR识别

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_628f4cb3/ocr-id-card。

技能介绍

在业务里识别身份证,难点通常不在 OCR 本身,而是三件事:第一,需要区分卡片正反面并抽取不同字段;第二,需要对身份证号做基本有效性校验;第三,需要把识别能力封装成一个可被模型调用的工具,而不是让用户手写脚本。这个技能对应的场景就是把图片输入交给 scripts.tools 里的函数,拿到结构化结果后再继续处理。

核心能力

  • 自动判断输入的是身份证正面还是背面,并按对应版面提取字段。
  • 正面提取姓名、性别、民族、出生日期、住址、身份证号。
  • 背面提取签发机关和有效期限。
  • 对身份证号执行有效性校验。
  • 同时提供两种输入方式:图片链接和图片 BASE64。

工作方式

这个技能把大模型作为路由层,负责理解用户意图、选择工具、提取参数;实际识别由代码层调用外部 API 完成。

  1. 检查 API 密钥:如果 scripts.config.settings.api_key 为空,必须通过 AskUserQuestion 向用户询问密钥,然后用 scripts.config.set_api_key(api_key) 保存。
  2. 选择工具:根据图片输入形式选择对应函数:

- scripts.tools.ocr_id_card:接收图片链接,参数为 dataUrl。
- scripts.tools.ocr_id_card_for_data_base64:接收 BASE64,参数为 dataBase64。

  1. 提取参数:缺少图片链接或 BASE64 时,继续用 AskUserQuestion 补齐。
  2. 调用工具:使用关键字参数调用工具函数。
  3. 处理返回值:函数返回 dict,其中 result["raw"] 是 API 原始 JSON,result["success"] 表示成功与否,result["message"] 是状态消息。

适用边界与注意点

适合在对话式流程中快速识别身份证字段,不适合离线批处理场景。没有有效 API 密钥时不应继续,也不能通过搜索或编造数据补齐结果。输入图片质量、字段遮挡、截图拼接和不同版式会影响识别稳定性,正式业务中应把识别结果当作可复核数据,而不是直接落库。

使用场景

  • 客服或HR收到候选人身份证正面照片,需要自动提取姓名、性别、民族、出生日期、住址和身份证号并校验号码。
  • 证件有效期审核时只拿到身份证背面截图,需要识别签发机关和有效期限,并确认卡片正反面。
  • 内部系统已有身份证图片链接,需要在对话流程中调用图片链接识别工具返回结构化字段。
  • 后端服务已把身份证图片转成BASE64,需要调用BASE64识别工具完成字段抽取和号码校验。

适合人员

  • 后端工程师,想把身份证识别封装成可由助手调用的内部工具。
  • 运营或数据录入人员,需要从多张身份证图片中提取字段后写入审核表。
  • 合规审核人员,需要在人工复核前获得结构化的姓名、地址、签发机关和有效期限。
  • AI应用开发者,正在构建带API密钥校验和追问缺失参数的对话流程。