Его главная идея — описывать агента как один Python-класс, а не разносить логику по промптам, схемам инструментов, колбэкам и графам выполнения.
В NOOA:
• методы — это действия агента;
• поля — его состояние;
• docstring становятся промптами;
• тип возвращаемого значения задаёт контракт ответа.
Самая интересная особенность — «пустые» методы. Если тело метода содержит только
..., его реализацию во время выполнения генерирует LLM. Если внутри есть обычный Python-код, он выполняется без участия модели. Так в одном классе сразу видно, где модель может принимать решения, а где поведение полностью детерминировано.Ещё одна сильная сторона — работа с данными. Если методу передать список из 100 элементов, модель увидит только имя переменной, её тип, размер и несколько элементов с начала и конца. Все данные остаются в памяти процесса, а модель взаимодействует с ними через код, который пишет на лету. Благодаря этому ограничения начинают определяться не размером контекстного окна, а ресурсами машины, на которой выполняется код.
По словам NVIDIA, на SWE-bench Verified с GPT-5.5 NOOA набирает 82,2% против 78,6% у OpenCode, используя примерно вдвое меньше обращений к модели и токенов.
Статья: http://arxiv.org/abs/2607.20709
Репозиторий: http://github.com/nvidia-nemo/labs-OO-Agents
👉 @PythonPortal
