[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"glossary-tool-error-recovery::ru":3,"gloss-cluster-tool-error-recovery::ru":23,"gloss-next-tool-error-recovery::ru":9},{"slug":4,"category":5,"name":6,"definition":7,"meta_desc":8,"faq":9,"schema_markup":9,"related":10},"tool-error-recovery","agents","Восстановление после ошибки инструмента (Tool Error Recovery)","Восстановление после ошибки инструмента — это то, что агент делает, когда вызов инструмента не удался. Это важнее, чем звучит: в агенте ошибка возвращается не в программу, знающую, как её обработать, а текстом в контекст модели, и дальше решение принимает модель. Что написано в этом тексте — единственное основание для решения.\n\nРазумных ответов всего три, и они отвечают на разные сбои. Повтор подходит для временной неисправности: тайм-аут, лимит запросов, недоступный на минуту сервис. Перепланирование подходит для вызова, который был не неудачным, а неправильным — пропущенный аргумент, несуществующая запись, отсутствующее у агента право, — где повторение будет проваливаться одинаково бесконечно. Остановка подходит для всего остального, и именно её команды чаще всего не реализуют: так прогон и тратит весь бюджет, крутясь между двумя сломанными вариантами.\n\nИнженерия состоит в различении этих случаев. Модель, получившая голую трассировку стека или строку «ошибка», обычно угадывает, и её догадка смещена в сторону повтора, потому что повторить — это то, что делает услужливый ассистент. Сообщения об ошибках, возвращаемые агенту, — часть промпта: они должны говорить, что именно не удалось, стоит ли повторять и как выглядел бы корректный вызов. Это другое сообщение, чем то, которое вы записали бы в лог для инженера, и его стоит написать отдельно.\n\nПовторы опасны ровно там, где они соблазнительнее всего. Если неудавшийся вызов успел подействовать до ошибки — платёж прошёл, а ответ потерялся, — повтор выполнит его дважды, и узнать об этом модели неоткуда. Любой инструмент, который что-то меняет, должен быть безопасен для повторного вызова с теми же аргументами; там, где этого не добиться, его нужно исключить из автоматического повтора, что бы модель ни предлагала.\n\nПоследняя часть — предел. Попытки восстановления расходуют шаги, токены и время точно так же, как продуктивная работа, и агент, который никогда не сдаётся, по стоимости неотличим от упавшего. Задайте лимит на инструмент и на прогон, а происходящее на пределе сделайте настоящим путём — частичный результат, передача человеку, явный отказ, — а не просто концом прогона.","Восстановление после ошибки инструмента: повторить, перепланировать или остановиться. Текст ошибки — часть промпта, а слепой повтор дублирует эффект.",null,[11,14,17,20],{"slug":12,"name":13},"agent-loop","Цикл агента (Agent Loop)",{"slug":15,"name":16},"escalation-path","Маршрут эскалации",{"slug":18,"name":19},"idempotency","Идемпотентность (Idempotency)",{"slug":21,"name":22},"tool-calling","Вызов инструментов",[24,28,32,35,38,41,42,45,48,51,54,57],{"slug":25,"category":5,"name":26,"updated_at":27},"acceptance-criteria","Критерии приёмки (Acceptance Criteria)","2026-09-08T21:32:37+00:00",{"slug":29,"category":5,"name":30,"updated_at":31},"agent-budget","Бюджет агента (Agent Budget)","2026-09-08T21:32:36+00:00",{"slug":33,"category":5,"name":34,"updated_at":31},"agent-checkpointing","Контрольные точки агента",{"slug":36,"category":5,"name":37,"updated_at":31},"agent-handoff","Передача между агентами (Agent Handoff)",{"slug":39,"category":5,"name":40,"updated_at":27},"agent-identity","Идентичность агента (Agent Identity)",{"slug":12,"category":5,"name":13,"updated_at":31},{"slug":43,"category":5,"name":44,"updated_at":31},"agent-memory","Память агента (Agent Memory)",{"slug":46,"category":5,"name":47,"updated_at":31},"agent-sandbox","Песочница агента",{"slug":49,"category":5,"name":50,"updated_at":27},"agent-simulation","Симуляция агента (Agent Simulation)",{"slug":52,"category":5,"name":53,"updated_at":31},"agent-trajectory","Траектория агента",{"slug":55,"category":5,"name":56,"updated_at":31},"agentic-rag","Агентный RAG (Agentic RAG)",{"slug":58,"category":5,"name":59,"updated_at":27},"approval-fatigue","Усталость от согласований (Approval Fatigue)"]