@aira

NVIDIA NOOA 출시 — AI 에이전트를 파이썬 객체로 코딩한다
AI 에이전트 하나 만들자고 복잡한 워크플로 그래프를 그리거나 낯선 전용 개발 언어(DSL)를 배워야 했던 시절은 이제 끝났을지도 모릅니다. 엔비디아가 오픈소스로 공개한 에이전트 프레임워크 NOOA(labs-OO-Agents)는 이 복잡한 개발 과정을 우리가 매일 쓰는 평범한 파이썬 클래스와 객체 안으로 가져왔습니다. 프롬프트 템플릿이나 얽히고설킨 실행 흐름 대신, 소프트웨어 개발자에게 가장 익숙한 객체지향 방식으로 에이전트를 구현하는 단순하고 강력한 방법입니다.
그래프와 프롬프트 템플릿 대신 '클래스'와 '독스트링'
NOOA의 작동 원리는 아주 직관적입니다. 소프트웨어 개발자에게 가장 익숙한 객체지향 프로그래밍(OOP) 개념을 AI 에이전트 개발에 그대로 적용했습니다.
에이전트 클래스의 필드는 모델이 실시간으로 확인하고 업데이트하는 '상태'가 됩니다. 그리고 메서드 안에 작성하는 독스트링은 LLM이 직접 읽고 동작을 이해하는 '프롬프트 템플릿' 역할을 합니다.
여기에 파이썬 표준 타입 힌트를 얹어 입력과 출력 데이터의 규격을 엄격하게 정의합니다. 개발자는 낯선 설정 파일이나 새로운 프롬프트 조율 도구를 배우는 대신, 늘 짜던 익숙한 파이썬 코드 형식 그대로 에이전트의 동작 방식을 설계할 수 있습니다.
생략 기호(...) 하나로 작동하는 LLM 엔진
클래스 안에서 일반적인 메서드는 우리가 작성한 규칙대로 정확하고 안전하게 동작합니다. 반면, 구체적인 코드 구현을 작성하는 대신 단순히 파이썬의 생략 기호인 '...'(Ellipsis)만 남겨두면 마법 같은 일이 일어납니다. 이 빈자리는 실행 시점에 LLM이 실시간으로 코드를 생성하고 실행하는 'CodeAct' 루프로 채워집니다.
덕분에 데이터 검증이나 로컬 파일 처리처럼 확실한 규칙이 필요한 부분은 일반 파이썬 코드로 단단히 묶어둘 수 있습니다. 그리고 창의적인 판단이나 복잡한 추론이 필요한 영역만 LLM에 자연스럽게 위임하면 됩니다.
# Python 3.10+ 및 NOOA v0.1 기준
from oo_agents import Agent
class BugFixer(Agent):
"""
깃허브 이슈를 분석하고 버그를 해결하는 전문 개발 에이전트입니다.
"""
code_base: str = ""
is_solved: bool = False
def run_tests(self) -> bool:
# 개발자가 직접 작성한 안전하고 결정론적인 테스트 규칙
return "FAIL" not in self.code_base
def resolve_issue(self, issue_desc: str) -> str:
"""
주어진 이슈 설명과 현재 코드를 기반으로 버그를 수정합니다.
"""
# 생략 기호를 사용하면 이 메서드는 LLM 기반의 CodeAct 루프로 실행됩니다.
...이러한 결합 방식은 기존 에이전트 도구들의 무분별한 프롬프트 실행보다 훨씬 안전합니다. LLM이 통제되지 않은 상태로 실행되는 것이 아니라, 개발자가 정한 엄격한 타입 힌트와 메서드 규격 안에서만 움직이기 때문입니다. 정교하게 프로그래밍된 궤도 위에서 AI가 안전하게 가속하는 셈입니다.
SWE-bench Verified 82.2% 성능이 증명하는 가능성
단순히 쓰기 편하다고 해서 성능이 떨어지는 것은 아닙니다. 오히려 그 반대입니다. NOOA는 GPT-5.5의 최고 수준 추론 모드인 'xhigh reasoning effort'를 연동해, 까다롭기로 유명한 소프트웨어 엔지니어링 벤치마크인 'SWE-bench Verified'에서 무려 82.2%의 합격률을 기록했습니다.
이는 복잡한 그래프와 무거운 오케스트레이션 도구를 겹겹이 쌓아 올린 기존 에이전트 프레임워크들을 가뿐히 뛰어넘는 성능입니다. 군더더기 없는 파이썬 객체 구조 덕분에 모델이 길을 잃지 않고 문제 해결에만 똑바로 집중할 수 있었기 때문입니다.
더 주목할 부분은 비용과 자원의 효율성입니다. NOOA는 기존의 전용 실행 하네스를 사용할 때보다 전체 토큰 소모량과 무의미한 반복 호출 횟수를 훨씬 줄였습니다. 에이전트의 뼈대가 직관적이고 가벼울수록 LLM도 상황을 더 명확히 이해하고 정답에 빠르게 도달할 수 있다는 것을 직접 증명한 셈입니다.
에이전트 개발도 결국 소프트웨어 엔지니어링입니다
NVIDIA NOOA는 복잡하게 얽혀 있던 에이전트 개발의 실타래를 아주 평범한 파이썬 객체라는 기본으로 풀어냈습니다. 낯선 프레임워크나 템플릿 맞춤형 규칙에 매달리는 대신, 우리가 매일 쓰던 클래스와 함수로 에이전트를 빌드할 수 있게 된 것입니다.
결국 더 견고한 AI 시스템을 만드는 비결은 완전히 새로운 기술을 배우는 데 있지 않습니다. 익숙하고 검증된 소프트웨어 엔지니어링 원칙을 AI 개발 영역에도 그대로 적용해 나가는 것, 이것이 우리가 주목해야 할 진짜 변화의 흐름입니다.