Fits Calc
ИИ для инженера · агенты · Wave AI R5

Human-in-the-loop: где ставить approval gates в инженерном агенте

ставить подтверждение перед необратимыми, дорогостоящими или нормативно значимыми действиями, а не после них.

Короткий ответ

Human-in-the-loop: где ставить approval gates в инженерном агенте — это production-задача, а не демонстрационный prompt. Практический принцип: ставить подтверждение перед необратимыми, дорогостоящими или нормативно значимыми действиями, а не после них. Ключевое решение: человек должен видеть не общий вопрос «продолжить?», а конкретный diff, аргументы tool-call, последствия и способ отката. В инженерной среде результат принимается по evidence, traceability и воспроизводимой проверке, а не по уверенности формулировки модели.

Agent/RAG-платформы быстро меняются. Технические ссылки этой статьи проверены 02.10.2026; перед внедрением перепроверяются статусы API, preview/GA, лимиты, хранение данных и доступность функций.

Граница системы и предмет контроля

Агентный контур отличается от обычного чата наличием цикла действий. Модель не только формирует текст, но выбирает инструмент, передаёт типизированные аргументы, получает результат, обновляет состояние и решает, требуется ли следующий шаг. Поэтому объект проектирования — не prompt как строка, а полный runtime: модель, tools, permissions, state, approvals, verifier и журнал выполнения.

Для инженерного применения критично отделять рассуждение и предложение действий от изменения реальных данных. Чтение справочника, расчёт в детерминированном модуле, создание рабочей копии CAD-файла и выпуск утверждённой ревизии имеют разный риск. Права должны назначаться по операциям, а не по факту того, что «агенту нужен доступ к системе». Это позволяет увеличивать полезную автономность без потери управляемости.

Рабочее правилочеловек должен видеть не общий вопрос «продолжить?», а конкретный diff, аргументы tool-call, последствия и способ отката. Это правило должно быть закреплено в runtime policy, а не существовать только как рекомендация пользователю.

Что должно быть определено до запуска

классификация действий по рискуФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
роль утверждающегоФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
preview/diffФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
rollback planФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
контекст решенияФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.

Артефакты и архитектурные границы

Архитектуру агента удобно раскладывать на control plane и execution plane. В control plane находятся policy, identity, лимиты, approvals и выбор маршрута; в execution plane — конкретные tools, очереди, sandbox и внешние API. Такое разделение не даёт модели самостоятельно расширять собственные полномочия и позволяет независимо версионировать orchestration и исполнительные компоненты.

Контракт tool должен быть строже естественного языка: схема аргументов, единицы, enum, обязательность полей, idempotency key, ожидаемые ошибки и postcondition. Если инструмент меняет реальный объект, ответ «200 OK» недостаточен — нужен change receipt и повторное чтение состояния либо другой независимый verifier.

approval requestИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
change diffИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
risk summaryИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
approver identityИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
approval timestampИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.

Практический workflow

Шаг 1. разделить операции по уровню риска. Сначала исключите неоднозначность цели: агент не должен сам изобретать критерий завершения.
Шаг 2. сформировать payload для просмотра. Tool contract валидируется отдельно от prompt и имеет тесты на неверные аргументы.
Шаг 3. показывать diff и последствия. Write-операции отделяются отдельным permission и не наследуются от read-доступа.
Шаг 4. зафиксировать hash подтверждаемого действия. Checkpoint сохраняет уже выполненные side effects и контекст следующего шага.
Шаг 5. выполнить только после approval. Verifier должен быть независим от генеративного утверждения, где это возможно.
Шаг 6. проверить фактический результат. Trace должен позволять восстановить последовательность действий без чтения скрытого reasoning.
Шаг 7. сохранить decision record. До повышения прав версия обязана пройти regression и негативные cases.

После tool-call проверяется не текстовый комментарий модели, а фактический результат инструмента: код возврата, схема ответа, изменённый объект и ожидаемая postcondition. Несовпадение переводит задачу в controlled exception и блокирует следующий side effect.

Инженерный сценарий

Входклассификация действий по риску; роль утверждающего; preview/diff; rollback plan; контекст решения. Данные должны быть привязаны к проекту, revision и владельцу.
Действиеставить подтверждение перед необратимыми, дорогостоящими или нормативно значимыми действиями, а не после них. Каждый tool-call проходит серверную валидацию и попадает в trace.
Контрольapproval до side effect; двухуровневая проверка для критических операций; time-bound approval; не переносить approval на изменившийся payload; read-only preview. Для критических изменений добавляется независимое подтверждение.
Выходapproval request; change diff; risk summary; approver identity; approval timestamp. Финальный результат должен быть пригоден для повторной проверки без скрытого контекста.

Для agent workflow удобно иметь три режима: dry-run без side effects, execute-with-approval и bounded execution. Переход между ними определяется классом риска и зрелостью eval-набора.

Что измерять

approval rateФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
rejection rateФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
median approval latencyСмотрите распределение, минимум median и p95; отдельно выделяйте timeout/длинный хвост.
post-approval defect rateПоказывайте абсолютное число и нормированную частоту; critical события не усредняйте с обычными.
approval bypass attemptsОпределение метрики, единица, denominator и окно наблюдения фиксируются в metric dictionary.

Для агента итоговая точность без анализа траектории недостаточна. Одновременно контролируют success, выбор tools, число шагов, вмешательства человека, policy violations, latency и стоимость успешной задачи.

Критерии приёмки

КонтрольМинимальный критерий
ScopeДля «Human-in-the-loop: где ставить approval gates в инженерном агенте» однозначно определено, что система делает и что остаётся вне её полномочий.
DataВсе входы имеют источник, revision/status и область применимости; неизвестные значения не подставляются автоматически.
Controlapproval до side effect; двухуровневая проверка для критических операций; time-bound approval.
EvidenceСохраняются approval request, change diff, risk summary, approver identity; по ним можно восстановить ход операции.
QualityМинимум две профильные метрики контролируются на versioned eval-наборе: approval rate и rejection rate.
ReleaseИзменяющие действия имеют approval/rollback там, где цена ошибки выходит за согласованный риск.

Failure modes и защитные меры

Главная ошибка — считать правильный финальный ответ доказательством правильной траектории агента. В production проверяются выбранные tools, аргументы, approvals, фактические side effects и postconditions.
  • автоматическое подтверждение привычных действий. Защитная мера: approval до side effect; событие сохраняется как regression/incident case.
  • approval fatigue. Защитная мера: двухуровневая проверка для критических операций; событие сохраняется как regression/incident case.
  • подмена параметров после подтверждения. Защитная мера: time-bound approval; событие сохраняется как regression/incident case.
  • неясный объект согласования. Защитная мера: не переносить approval на изменившийся payload; событие сохраняется как regression/incident case.
  • отсутствие владельца решения. Защитная мера: read-only preview; событие сохраняется как regression/incident case.

Как переводить из пилота в production

Пилотный агент получает один класс задач и минимальный набор tools. Сначала снимаются traces в read-only/dry-run, затем добавляются approvals для side effects. Model upgrade и изменение tool schema проходят один и тот же regression suite; несовместимый schema change блокирует rollout.

Перед выдачей write-доступа отдельно тестируют timeouts, retry, duplicate delivery, partial failure и отмену задачи. Canary-версия получает ограниченную долю трафика и budget; превышение intervention/rollback threshold автоматически возвращает стабильную версию.

Traceability и эксплуатационная запись

Минимальный trace: task ID, actor identity, model/runtime, prompt/template, список доступных tools, каждый tool-call с аргументами и результатом, policy decision, approval, state transition, verifier и final status.

Чек-лист перед production

КонтрактScope, входы, tools и stop condition описаны до запуска.
ПраваRead/write, сеть и секреты ограничены минимально необходимым.
EvidenceКаждый критичный вывод или action связан с источником и trace.
EvalsЕсть обычные, граничные, негативные и regression cases.
RollbackДля side effect проверено восстановление, а не только наличие команды отката.
OwnerНазначен владелец качества процесса и владелец технической платформы.

Навигация по Wave AI R5 · часть 1 из 5

Связать AI-контур с проверяемыми данными Fits Calc

Fits Calc целесообразно использовать как детерминированный расчётный и справочный слой: агент получает структурированные входы и результаты через контролируемые tools, а не воспроизводит инженерный расчёт свободным текстом. Это упрощает verifier, traceability и повторную проверку.

Открыть Fits Calc →

Источники и официальная документация

  1. OpenAI — Agents SDK
  2. OpenAI Agents SDK — core primitives
  3. OpenAI — Using tools
  4. OpenAI Agents SDK — Guardrails
  5. OpenAI Agents SDK — Tracing
  6. OpenAI — MCP servers and approvals
  7. NIST — AI Risk Management Framework
Проверено: 02.10.2026Production controls обязательныHuman approval — по риску действия