본문 바로가기

인공지능

ReCode: 계획과 실행을 하나로 통합하는 LLM 에이전트의 새로운 패러다임

728x90
반응형
728x170

대규모 언어모델(LLM)을 활용한 에이전트 시스템은 빠르게 발전하고 있지만, 여전히 하나의 한계에 부딪히고 있다. 바로 ‘계획(Plan)’과 ‘실행(Action)’이 분리되어 있다는 점이다. 대부분의 기존 프레임워크는 모델이 생각(Plan)하고, 그 다음에 행동(Action)을 수행하도록 설계되어 있다. 그러나 실제 복잡한 문제를 다루는 과정에서는 이 두 단계를 긴밀하게 연결하고, 상황에 따라 유연하게 전환할 수 있어야 한다.

ReCode는 이러한 문제를 해결하기 위해 등장했다. 이름 그대로 “Recursive Code Generation(재귀적 코드 생성)” 방식을 통해 계획과 행동을 하나의 통합 구조로 다루며, 복잡한 태스크를 세밀한 단계로 나누어 처리할 수 있는 새로운 접근법을 제시한다.

이 글에서는 ReCode의 핵심 아이디어, 기술 구조, 실험 결과, 그리고 실행 방법을 단계별로 살펴본다.

반응형

ReCode란 무엇인가?

ReCode의 개요와 등장 배경

ReCode는 LLM 에이전트의 ‘생각과 행동’을 통합하기 위해 고안된 프레임워크로, 모든 계획 단계를 실행 가능한 코드 형태로 표현한다.
즉, ReCode는 에이전트의 사고 과정을 코드 트리(Tree)로 구성하고, 각 단계가 더 세밀한 하위 함수로 분해되도록 설계되어 있다.

기존의 ReAct, CodeAct 등의 접근 방식은 계획을 세우는 단계와 실제로 행동을 수행하는 단계를 명확히 구분했지만, ReCode는 이 둘을 “하나의 재귀적 실행 구조”로 묶어낸다는 점에서 차별화된다. 이를 통해 에이전트는 전략적 사고(Planning)에서부터 구체적 행동(Execution)까지의 전 과정을 자연스럽게 오가며 작업을 수행할 수 있다.


ReCode의 핵심 아이디어

1. 트리 구조의 코드(Tree-Structured Code)

ReCode는 태스크를 트리 구조로 표현한다. 각 노드는 하나의 하위 작업(Sub-task)을 담당하며, 그 실행 결과(Trace)가 저장된다.
이 방식은 복잡한 문제를 여러 작은 단위로 나누는 분할정복(divide-and-conquer) 전략을 코드 차원에서 실현한 것이다.

2. 재귀적 확장(Recursive Expansion)

각 노드는 ‘플레이스홀더 함수(placeholder function)’ 형태로 존재하며, LLM이 이를 더 구체적인 함수나 코드 블록으로 재귀적으로 확장한다.
이 확장 과정은 환경별 프롬프트와 few-shot 예시를 활용하여 이루어지며, 모델이 상황에 맞게 세부적인 행동을 설계하도록 돕는다.

3. 동적 실행 루프(Dynamic Execution Loop)

ReCode는 실행과 계획을 동시에 반복적으로 수행한다. 각 노드는 실행 즉시 평가되며, 새로운 관찰(observation)을 바탕으로 다음 행동을 결정한다.
필요하면 다시 확장하거나, 재시도하거나, 종료를 결정할 수 있는 동적 제어 흐름을 가진다.

4. 공유 실행 상태(Shared Executor State)

ReCode는 제약된 파이썬 실행기(constrained Python executor)를 사용한다.
이 실행기는 환경 변수, 코드 검증, 사용 가능한 도구(toolset)를 관리하며, 모든 하위 태스크가 동일한 상태를 공유하도록 한다.
이를 통해 코드 블록 간의 일관성이 유지되고, LLM이 수행하는 전체 작업의 추적 가능성이 높아진다.


ReCode의 성능 및 실험 결과

ReCode는 다양한 LLM 기반 에이전트 프레임워크(ReAct, CodeAct, AdaPlanner, ADaPT 등)와 비교 실험을 통해 우수한 성능을 입증했다.

1. Inference 결과

ReCode는 세 가지 환경(ALFWorld, WebShop, ScienceWorld)에서 모든 기존 방법보다 높은 평균 점수(60.8점)를 기록했다.
이는 이전 최고 성능 대비 10.5점 향상된 수치이며, 상대적으로 20.9% 개선된 결과다.
특히 ALFWorld 환경에서는 Claude-4-Sonnet 모델을 기반으로 100점 만점을 달성해, 복잡한 환경에서도 완전한 태스크 수행이 가능함을 보여줬다.

2. Training 결과

ReCode는 Qwen2.5-7B-Instruct 모델을 기반으로 Supervised Fine-Tuning(SFT)을 진행했을 때, 평균 70.4%의 성능을 기록했다.
이는 ReAct+SFT(67.6%)나 CodeAct+SFT(55.8%)보다 월등히 높은 수치로, ReCode의 데이터 효율성과 학습 적응력이 뛰어남을 보여준다.
즉, ReCode는 학습 데이터가 동일하더라도 더 빠르고 효율적으로 태스크 수행 능력을 향상시킬 수 있다.


728x90

ReCode는 단순한 코드 실행 프레임워크가 아니라, LLM 에이전트의 사고 과정을 구조적으로 혁신한 시스템이다.
‘계획’과 ‘행동’을 별도로 다루지 않고, 이를 하나의 재귀적 코드 트리로 통합함으로써 에이전트는 더 세밀하고 유연하게 태스크를 수행할 수 있다.

이는 단순히 성능 향상 이상의 의미를 가진다. ReCode는 LLM이 단일 지시에서 벗어나, 스스로 문제를 분해하고, 학습하며, 행동하는 AI 에이전트로 진화할 수 있는 기반을 마련한다.
앞으로 ReCode는 복잡한 멀티스텝 작업, 과학 실험 시뮬레이션, 웹 쇼핑 자동화 등 다양한 응용 분야에서 중요한 전환점을 제공할 것으로 기대된다.

300x250

https://github.com/FoundationAgents/ReCode/

 

GitHub - FoundationAgents/ReCode: Next paradigm for LLM Agent. Unify plan and action through recursive code generation for adapt

Next paradigm for LLM Agent. Unify plan and action through recursive code generation for adaptive, human-like decision-making. - FoundationAgents/ReCode

github.com

728x90
반응형
그리드형