Обзор
Предупреждения в отчёте сравнения лиц фиксируют каждое условие, замеченное Didit при выполнении сравнения лиц 1:1. Они попадают в массивwarnings[] для каждого элемента в face_matches[] (см. Отчёт сравнения лиц). Каждая запись также содержит 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 для фиксации события.
В отдельном Face Match API существует только порог отклонения (параметр запроса face_match_score_decline_threshold, по умолчанию 30); любое сработавшее предупреждение отклоняет запрос, а NO_REFERENCE_IMAGE срабатывает, когда лицо вообще не удалось сравнить.
Создаваемые предупреждения
Примеры
In Review — пограничное сходство
In Review — не удалось рассчитать оценку сходства
Автоматическое отклонение — отсутствует эталонное изображение
Повторные попытки исчерпаны — применен статус последней попытки
Отдельный API сравнения лиц возвращает предупреждения того же формата без поля
node_id (сравнение не привязано к узлу сценария).Типы предупреждений
Каждому риску присваивается уровень критичности в зависимости от конфигурации вашего приложения. Существует три уровня критичности:Связанные материалы
- Отчет о сравнении лиц — полная схема отчета и статусы.
- Предупреждения проверки живости — предшествующие предупреждения при захвате селфи.
- Webhook’и —
session.status.updatedпередает предупреждения сразу после завершения шага. - Модели данных — Сравнение лиц — каноническая схема.
- Модели данных — Объект предупреждения — формат каждой записи в
warnings[].