Overview
人脸比对报告中的警告会标出 Didit 在执行 1:1 人脸比对过程中观察到的每一种情况。它们会出现在face_matches[] 中每个项目的 warnings[] 数组中(参见人脸比对报告)。每个条目还包含 feature: "FACEMATCH" 以及触发该警告的工作流节点的 node_id。
每个警告包含三个层面:
risk代码 — 供您在代码中进行匹配的稳定标识符。log_type—information、warning或error,由工作流的相似度分数阈值衍生而来。- 决策影响 — 由工作流中针对相似度分数设置的人工审核与拒绝阈值决定。
自动拒绝条件
以下风险始终会强制将人脸比对报告(以及会话)置为Declined:
当
NO_REFERENCE_IMAGE 触发时,LOW_FACE_MATCH_SIMILARITY 将被抑制(因为没有任何内容可供评分)。
存在一种例外情况。
当身份证件验证步骤通过非证件查询完成,且对应登记系统不返回肖像也不核验人脸时,人脸比对在设计上就没有任何参考内容可与实时捕获的图像进行比对。
这种情况会报告为 FACE_MATCH_NOT_COMPUTED,分数为 null,并由下方的 face_match_not_computed_action 决定处理方式,而不是直接自动拒绝。
可配置的验证设置
在 Didit 控制台中,人脸比对相似度分数受两个阈值控制(没有通过/审核/拒绝切换开关):
如果您观察到过多误通过,可调高审核阈值;如果您观察到过多误拒绝,可调低拒绝阈值。
另一项独立设置用于控制当相似度分数完全无法计算时的情况:两张图像之一未检测到人脸,或者非证件查询未留下任何可供比对的参考照:
该操作控制
FACE_MATCH_NOT_COMPUTED(证件肖像中没有人脸,或非证件查询后完全没有参考照)以及用尽重试次数后的 NO_FACE_IN_SELFIE(用户重试后自拍照中仍没有人脸)。如果问题出在自拍照上,系统首先会要求用户重新拍摄 — 详见下文 — 只有在尝试次数额度用尽且仍然无法检测到人脸时,该操作才会生效。
低相似度失败在状态最终确定前也会进入重新拍摄重试循环:用户最多可获得 face_match_max_attempts 次总尝试机会(默认为 3 次,每个工作流节点可配置 2–5 次)以重新拍摄。NO_FACE_IN_SELFIE 失败使用相同的重试循环,因为重新拍摄一张更清晰的自拍照即可解决该问题。FACE_MATCH_NOT_COMPUTED 失败不会重试 — 在此步骤中无法重新拍摄证件肖像。只有当尝试额度用尽时,最后一次尝试的状态才会生效 — 并记录 FACE_MATCH_MAX_ATTEMPTS_EXCEEDED。
在独立的人脸比对 API 上仅存在拒绝阈值(face_match_score_decline_threshold 请求选项,默认 30);触发的任何警告都会拒绝请求,而在完全无法比对人脸时会触发 NO_REFERENCE_IMAGE。
生成的警告
示例
In Review — 边缘相似度
In Review — 无法计算人脸比对
自动拒绝 — 缺少参考图像
重试次数已用尽 — 已应用最后一次尝试的状态
独立人脸比对 API返回相同的警告结构,但没有
node_id(该比对未绑定到工作流节点)。警告类型
根据您应用的配置,系统会为每项风险分配一个严重程度。共有三种严重程度:相关内容
- 人脸比对报告 — 完整的报告架构和状态。
- 活体检测警告 — 自拍照采集的上游警告。
- Webhook — 步骤完成后,
session.status.updated会立即携带相关警告。 - 数据模型 — 人脸比对 — 规范架构。
- 数据模型 — 警告对象 —
warnings[]中每个条目的结构。