Datadog разработала систему Temper для управления кодом, сгенерированным ИИ-агентами
Инженеры Datadog создали среду, в которой ИИ-агенты пишут не готовый код, а строгие спецификации. Это решает главную проблему применения ИИ в разработке — сложность верификации.

Внедрение генеративного искусственного интеллекта в процесс разработки программного обеспечения меняет роль инженера. По мере того как ИИ-агенты берут на себя написание значительной части кода, разработчики превращаются в управленцев, формулирующих задачи и проверяющих результаты. Компания Datadog столкнулась с тем, что проверка сгенерированного кода стала узким местом, и разработала систему Temper — универсальный инструмент для безопасной работы автономных агентов.
Проблема использования сложных агентов, таких как Claude от Anthropic, заключается в их самостоятельности. При длительных сессиях агенты начинают изобретать собственные инструменты, промежуточный код и внутренние соглашения. Это делает их полезными, но усложняет интеграцию их работы в традиционные системы, созданные для людей. Разрыв между тем, что агент способен сгенерировать, и тем, что человек способен надежно проверить, порождает критические ошибки в производственной среде.
Чтобы решить эту проблему, Datadog прошла через несколько этапов эволюции внутренних процессов. В 2024 году они вручную создали систему очередей Courier, уделив особое внимание формальному моделированию. В 2025 году появилась система BitsEvolve, где модели генерировали варианты кода, а бенчмарки отбирали лучшие из них. Затем, с помощью Claude Code, за несколько дней был создан аналог Kafka под названием Helix. На каждом этапе становилось ясно: агенты могут строить сложные системы, но для вывода их в рабочую среду требуются огромные усилия по координации.
Система Temper меняет базовый подход к генерации. Вместо того чтобы писать готовый прикладной код, ИИ-агент создает спецификации. Ядро Temper читает эту спецификацию, проводит ее через четыре уровня анализа и развертывает описанную систему. Поскольку спецификация является одновременно и проверяемым артефактом, и исполняемым файлом, расхождения между тем, что было протестировано, и тем, что работает, полностью исключаются.

Изображение из источника



