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

Tool calling для инженера: типизированные контракты вместо «сделай что-нибудь»

описывать инструмент как API-контракт с типами, единицами, допустимыми диапазонами и явными ошибками.

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

Tool calling для инженера: типизированные контракты вместо «сделай что-нибудь» — это production-задача, а не демонстрационный prompt. Практический принцип: описывать инструмент как API-контракт с типами, единицами, допустимыми диапазонами и явными ошибками. Ключевое решение: надёжность агента в значительной мере определяется качеством tool schema и серверной валидацией, а не длиной системного prompt. В инженерной среде результат принимается по evidence, traceability и воспроизводимой проверке, а не по уверенности формулировки модели.

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

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

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

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

Рабочее правилонадёжность агента в значительной мере определяется качеством tool schema и серверной валидацией, а не длиной системного prompt. Это правило должно быть закреплено в runtime policy, а не существовать только как рекомендация пользователю.

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

OpenAPI/JSON Schema или Pydantic-модельВерсионируется как технический контракт; изменения проходят совместимость и regression до production.
единицы измеренияФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
enum для режимовФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
политика ошибокФиксируется явно, имеет owner и проходит валидацию до использования в следующем шаге.
idempotency key для измененийФиксируется явно, имеет 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.

tool schemaКонфигурационно управляемый объект: version, owner, change history и дата действия.
validation layerИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
error taxonomyИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
dry-run responseИмеет стабильный идентификатор, статус приёмки и связь с исходной задачей.
audit eventEvidence для аудита и сравнения версий; по нему восстанавливается фактическое выполнение.

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

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

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

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

ВходOpenAPI/JSON Schema или Pydantic-модель; единицы измерения; enum для режимов; политика ошибок; idempotency key для изменений. Данные должны быть привязаны к проекту, revision и владельцу.
Действиеописывать инструмент как API-контракт с типами, единицами, допустимыми диапазонами и явными ошибками. Каждый tool-call проходит серверную валидацию и попадает в trace.
Контрольserver-side validation; reject unknown fields; нормализация единиц; детерминированные error codes; проверка revision перед записью. Для критических изменений добавляется независимое подтверждение.
Выходtool schema; validation layer; error taxonomy; dry-run response; audit event. Финальный результат должен быть пригоден для повторной проверки без скрытого контекста.

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

Что измерять

schema validation pass rateФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
invalid-call rateФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
retry successФиксируйте numerator/denominator и сегментируйте по типу/сложности задач; общий процент может скрыть critical slice.
unit-conversion defectsПоказывайте абсолютное число и нормированную частоту; critical события не усредняйте с обычными.
side-effect duplicationОпределение метрики, единица, denominator и окно наблюдения фиксируются в metric dictionary.

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

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

КонтрольМинимальный критерий
ScopeДля «Tool calling для инженера: типизированные контракты вместо «сделай что-нибудь»» однозначно определено, что система делает и что остаётся вне её полномочий.
DataВсе входы имеют источник, revision/status и область применимости; неизвестные значения не подставляются автоматически.
Controlserver-side validation; reject unknown fields; нормализация единиц.
EvidenceСохраняются tool schema, validation layer, error taxonomy, dry-run response; по ним можно восстановить ход операции.
QualityМинимум две профильные метрики контролируются на versioned eval-наборе: schema validation pass rate и invalid-call rate.
ReleaseИзменяющие действия имеют approval/rollback там, где цена ошибки выходит за согласованный риск.

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

Главная ошибка — считать правильный финальный ответ доказательством правильной траектории агента. В production проверяются выбранные tools, аргументы, approvals, фактические side effects и postconditions.
  • строковые свободные параметры вместо enum. Защитная мера: server-side validation; событие сохраняется как regression/incident case.
  • молчаливое округление. Защитная мера: reject unknown fields; событие сохраняется как regression/incident case.
  • неоднозначные единицы. Защитная мера: нормализация единиц; событие сохраняется как regression/incident case.
  • успех HTTP при частичной ошибке. Защитная мера: детерминированные error codes; событие сохраняется как regression/incident case.
  • повторный side effect при retry. Защитная мера: проверка revision перед записью; событие сохраняется как 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

Часть «Агенты» содержит 7 связанных материалов. Серия идёт от архитектуры к контролю и измерению; каждая статья самостоятельна и ссылается на соседние элементы общего production-контура.

Связать 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 — по риску действия