NVIDIA представила NOOA, фреймворк, где ИИ-агент это Python-объект

NVIDIA представила Object-Oriented Agents (NOOA), не зависящий от конкретной модели Python-фреймворк для построения ИИ-агентов. Авторы отмечают, что разработка агентов сегодня раздроблена: промпт-шаблоны, схемы инструментов, callback-код и графы рабочих процессов живут отдельно друг от друга и плохо стыкуются между собой. NOOA предлагает другой подход: агент, это обычный Python-объект. Его методы, это действия, которые может выполнить модель, поля, это состояние агента, докстроки методов служат промптами, а аннотации типов задают контракты на вход и выход. Если тело метода состоит из многоточия ("..."), такой метод во время выполнения достраивается циклом на основе LLM; методы с обычным телом остаются стандартным детерминированным Python-кодом. Благодаря этому разработчики и сам агент работают с одним и тем же интерфейсом, поведение агента можно тестировать, трассировать, рефакторить и улучшать так же, как обычное программное обеспечение.
В статье заявлено три вклада. Во-первых, авторы описывают саму модель программирования "агент как Python-объект" и принципы её дизайна: там, где в Python уже есть готовые абстракции, NOOA использует их напрямую, а специфичные для агентов возможности, контекст, события, отображение состояния, долговременная память, валидируемые циклы обращения к LLM, выставлены через простые Pythonic-API. Во-вторых, авторы выделяют шесть идей, обращённых к самой модели, которые NOOA, по их утверждению, впервые объединяет на одной поверхности: типизированный вход/выход, передача по ссылке на живые объекты, код как действие, программируемая инженерия цикла агента, явное состояние объекта и вызываемые моделью API среды исполнения для работы с контекстом и событиями. Авторы указывают, что сообщество уже независимо приходит к нескольким из этих идей, обычно в виде экспериментальных или частичных возможностей, и приводят сравнение, чтобы стимулировать их дальнейшее принятие. В-третьих, авторы показывают, что современные модели эффективно работают с таким интерфейсом, как в целевых тестах отдельных возможностей, так и на агентных и рассуждательных бенчмарках SWE-bench Verified, Terminal-Bench 2.0 и ARC-AGI-3.
Ключевые факты
- NVIDIA представила Python-фреймворк NOOA (Object-Oriented Agents) для построения ИИ-агентов; фреймворк не привязан к конкретной модели
- Ключевая идея: агент, это Python-объект, методы, действия, поля, состояние, докстроки, промпты, типы, контракты
- Метод с телом "..." достраивается LLM-циклом во время выполнения, методы с обычным кодом остаются детерминированными, агента можно тестировать и рефакторить как обычный софт
- Авторы заявляют шесть идей, впервые объединённых в одном фреймворке: типизированный вход/выход, передача по ссылке на живые объекты, код как действие, программируемая инженерия цикла, явное состояние объекта, вызываемые моделью API контекста и событий
- Эффективность подхода проверена на бенчмарках SWE-bench Verified, Terminal-Bench 2.0 и ARC-AGI-3
Почему это важно
Разработка ИИ-агентов сегодня разбросана по разным слоям: отдельно живут промпт-шаблоны, схемы инструментов, callback-код и графы рабочих процессов. NOOA сводит всё это к одной знакомой разработчикам абстракции, классу и объекту Python, где действия, состояние, промпты и контракты типов, это части одного и того же кода, а не разрозненных конфигураций.
Кому это важно
Материал адресован разработчикам, которые строят ИИ-агентов на Python и сталкиваются с разрозненностью инструментов агентных фреймворков, а также исследователям и инженерам, оценивающим агентные архитектуры на бенчмарках вроде SWE-bench Verified и Terminal-Bench.
Как это применить
Агент пишется как обычный Python-класс: метод, чьё тело состоит из многоточия ("..."), на этапе выполнения достраивается циклом на основе LLM, а методы с обычным кодом работают как стандартный детерминированный Python. Специфичные для агентов возможности, контекст, события, отображение состояния, долговременная память, валидируемые LLM-циклы, доступны через простые Pythonic-API, так что агента можно тестировать, трассировать и рефакторить теми же средствами, что и обычный код.
Можно ли доверять
Это исследовательская работа NVIDIA, опубликованная на HuggingFace Papers; авторы проверяют подход не только на целевых тестах отдельных возможностей, но и на признанных агентных и рассуждательных бенчмарках SWE-bench Verified, Terminal-Bench 2.0 и ARC-AGI-3. Внимание к публикации на момент сбора материала скромное, 19 отметок и 1 комментарий.
Риски и подводные камни
В тексте нет данных о дате выхода, лицензии или доступности исходного кода NOOA, судить о готовности фреймворка к практическому применению по одной статье преждевременно. Авторы сами признают, что сообщество уже независимо приходит к части из заявленных шести идей в виде экспериментальных или частичных решений, то есть NOOA, не единственный подход в этом направлении, а один из вариантов его оформления.