← Все новости

OpenAI выпустила Symphony: открытый фреймворк для автономных AI-агентов

• Категория: RAG / AI-агенты / автоматизация • Автор: Алексей Воронов • Проверил: Екатерина Морозова • 05.03.2026 20:48

Представлен Symphony — open-source фреймворк от OpenAI, предназначенный для управления автономными AI-агентами, специализирующимися на кодировании. Система автоматизирует задачи по разработке программного обеспечения, связывая трекеры задач с агентами на базе больших языковых моделей (LLM) через структурированные "циклы реализации" (implementation runs).

Архитектура системы: Elixir и BEAM

В основе Symphony лежат Elixir и среда выполнения Erlang/BEAM. Этот технологический стек был выбран с акцентом на отказоустойчивость и параллелизм. Поскольку автономные агенты часто выполняют длительные задачи, которые могут завершиться ошибкой или потребовать повторных попыток, деревья супервизоров BEAM позволяют Symphony управлять сотнями изолированных циклов реализации параллельно.

Система использует PostgreSQL (через Ecto) для сохранения состояния и спроектирована как персистентный демон. Она работает, постоянно опрашивая трекер задач — по умолчанию это Linear — для выявления задач, готовых к обработке агентом.

Жизненный цикл "Implementation Run"

Основной единицей работы в Symphony является цикл реализации (implementation run). Жизненный цикл такого цикла состоит из нескольких этапов:

  1. Опрос и активация: Symphony отслеживает определённое состояние в трекере задач (например, "Готово для агента").
  2. Изоляция в "песочнице": Для каждой задачи фреймворк создаёт детерминированное, изолированное рабочее пространство. Это гарантирует, что действия агента ограничены определённым каталогом и не влияют на другие параллельные процессы.
  3. Выполнение агентом: Инициализируется агент (обычно использующий модели OpenAI) для выполнения задачи, описанной в трекере.
  4. Подтверждение работы (Proof of Work): Прежде чем задача будет считаться завершённой, агент должен предоставить "подтверждение работы". Это включает формирование отчётов о статусе CI, прохождение юнит-тестов, предоставление обратной связи по запросу на слияние (Pull Request, PR) и создание пошагового описания изменений.
  5. Внедрение (Landing): Если подтверждение работы верифицировано, агент "внедряет" код, отправляя или объединяя PR в репозиторий.

Конфигурация через WORKFLOW.md

Symphony использует конфигурационный файл WORKFLOW.md, расположенный в репозитории. Этот файл выступает в роли технического контракта между командой разработчиков и агентом. Он содержит:

  • Основные системные инструкции и промпты для агента.
  • Настройки среды выполнения для цикла реализации.
  • Конкретные правила взаимодействия агента с кодовой базой.

Сохранение этих инструкций в репозитории позволяет командам версионировать политики агента вместе с исходным кодом. Это гарантирует, что поведение агента остаётся согласованным с конкретной версией кодовой базы, которую он модифицирует.

Требования "Harness Engineering"

Документация уточняет, что Symphony наиболее эффективен в средах, где применяется методология "harness engineering". Это относится к структуре репозитория, оптимизированной для машинного взаимодействия. Ключевые требования включают:

  • Герметичное тестирование: Тесты, которые могут выполняться локально и надёжно, без внешних зависимостей.
  • Машиночитаемая документация: Документация и скрипты, позволяющие агенту самостоятельно определять, как собирать, тестировать и развёртывать проект.
  • Модульная архитектура: Кодовые базы с минимизированными побочными эффектами, что даёт агентам возможность вносить изменения с высокой степенью уверенности.

Основные выводы

Отказоустойчивая оркестрация с помощью Elixir: Symphony применяет Elixir и среду выполнения Erlang/BEAM для управления жизненными циклами агентов. Такой архитектурный выбор обеспечивает высокую параллельность и отказоустойчивость, необходимые для надзора за длительными, независимыми "циклами реализации" без сбоев на уровне всей системы.

Управляемые состоянием циклы реализации: Фреймворк трансформирует ручное промптирование AI-кодирования в автоматизированный цикл: он опрашивает трекеры задач (например, Linear), создаёт изолированные рабочие среды в "песочнице", выполняет агента и требует "подтверждения работы" (прохождение CI и пошаговые описания) перед слиянием кода.

Версионированные контракты агентов: Через спецификацию WORKFLOW.md инструкции для агентов и конфигурации среды выполнения хранятся непосредственно в репозитории. Это позволяет рассматривать операционные инструкции AI как код, обеспечивая версионирование поведения агента и его синхронизацию с конкретной веткой, которую он модифицирует.

Зависимость от "Harness Engineering": Для эффективной работы системы репозитории должны использовать принципы "harness engineering". Это подразумевает структурирование кодовых баз для машинной читаемости, включая герметичные (самодостаточные) наборы тестов и модульные архитектуры, которые позволяют агентам автономно проверять свою работу.

Ограниченная область применения планировщика: Symphony строго определён как планировщик, исполнитель и считыватель трекеров. Он разработан специально для устранения разрыва между инструментами управления проектами и выполнением кода, а не как универсальная многопользовательская платформа или обширный движок рабочих процессов.

Теги: #искусственный интеллект, #разработка ПО, #OpenAI, #автономные агенты, #Symphony, #AI фреймворк, #Elixir BEAM