Разобраны способы повторного запуска задач ИИ-агентами
В статье на Хабре рассмотрены четыре подхода к повторному выполнению задач агентами: сохранённый промпт, скиллы, граф и код. Это помогает снизить расход токенов и стабилизировать формат результатов.
Агентные системы при повторном запуске одной и той же задачи каждый раз заново планируют шаги, тратя токены и время. Это приводит к нестабильности формата результата и возможным пропускам важных действий. Существует четыре подхода к решению проблемы: сохранённый промпт, скиллы (Agent Skills), граф шагов и код с кэшем действий.
Первый способ — сохранённый промпт — используется в ChatGPT Scheduled Tasks и задачах по расписанию в Claude Cowork. Система хранит текст запроса и условие запуска, а при срабатывании открывает новую сессию агента и передаёт ей этот текст. В документации OpenAI описаны три режима: разовая или повторяющаяся задача по расписанию, мониторинг изменений и задача по событию. Задачи по событию срабатывают не чаще 30 раз в час и 720 раз в сутки, а действия, изменяющие внешние данные, могут требовать подтверждения пользователя.
Второй способ — скиллы (Agent Skills) — представляет собой папку с файлом SKILL.md, содержащим YAML-заголовок и инструкцию в markdown. Формат появился в Claude Code, затем был опубликован как открытая спецификация и поддерживается Codex, ChatGPT, Gemini CLI, GitHub Copilot, Cursor и другими агентами. Anthropic называет механизм progressive disclosure: название и описание всех скиллов загружаются при старте (около 100 токенов на скилл), тело читается при необходимости (рекомендуется до 5000 токенов и 500 строк), а скрипты выполняются в песочнице, возвращая только вывод. Это позволяет выносить детерминированные операции в код, экономя токены.
Третий способ — граф шагов (DAG) — используется в n8n, Copilot Studio и сценариях Айвы. Задача описывается направленным ациклическим графом, где каждый узел фиксирует действие. При повторном запуске модель вызывается только в узле анализа, получая уже собранные данные. Условный расчёт показывает, что при 10 шагах и системном промпте в 8000 токенов граф может сократить вход с 155 000 до 6000 токенов, то есть примерно в 25 раз, а 10 последовательных вызовов модели превращаются в один.
Четвёртый способ — код с кэшем действий — реализован в Stagehand. Агент записывает последовательность действий в виде программы, которая затем выполняется без участия модели. Кэширование префикса снижает стоимость повторяющейся части контекста: облачные провайдеры тарифицируют кэшированные токены дешевле, а в vLLM Automatic Prefix Caching переиспользует KV-кэш общего префикса. Однако число последовательных вызовов и задержка остаются прежними.
Выбор способа зависит от требований к стабильности и адаптивности. Чем большая часть плана вынесена из модели, тем меньше токенов уходит на повторный запуск и тем ближе результат к предыдущему. Но за это приходится платить устойчивостью к изменениям во входных данных: зафиксированный план рассчитан на тот вход, под который его составили. Например, если поставщик переименует колонку в прайс-листе, агент с сохранённым промптом обработает новую структуру как незнакомый файл, а скилл может молча обойти проблему, и отчёт будет собран иначе.
Таким образом, все четыре подхода сосуществуют, и крупные вендоры предлагают их комбинации. В Claude Cowork задача по расписанию запускает агентный прогон по промпту, а процедуру агент берёт из скилла: промпт отвечает за то, когда и что запускать, скилл — за то, как выполнять. Для проверки регрессии используются прогоны эталонных задач (evals), поскольку от запуска к запуску модель может выполнить процедуру по-разному.
Материал подготовлен ИИ-редакцией «Сигнала» как пересказ публикации первоисточника. Фактическую точность и подробности проверяйте по оригиналу.