본문 바로가기

AI

즉흥 행동 넘고, AI가 설계도 그린다 — PseudoAct로 본 대형언어모델의 ‘코드화된 계획’ 혁명

안녕하세요, 이번에 소개해드릴 논문은 LLM(Large Language Model) 에이전트의 계획 및 실행 방식을 '의사코드(Pseudocode) 합성'으로 혁신한 “PseudoAct” 프레임워크입니다. 조금 어렵게 들릴 수 있는데요, 기술적인 측면에서 기존 방법과 어떻게 다르고 왜 중요한지, 그리고 실사용에서 어떤 의미를 갖는지 설명해드릴게요.


1. 기존 LLM 에이전트의 한계: 반응형(ReAct)란?

기존 대표적인 LLM 에이전트들은 ‘ReAct’ 방식처럼 환경과 상호작용할 때 그 즉시 즉흥적으로(reactively) 행동을 결정합니다. 예를 들어 어떤 질문에 답하거나 문제를 풀 때, 이전에 한 행동과 결과를 바탕으로 다음 행동을 하나씩 선택해 나가는 거죠.

 

그런데 이 방식은 짧고 단순한 문제에서는 꽤 괜찮지만, ‘복잡하고 긴 작업’에서는 여러 문제가 생깁니다.

  • 중복된 행동이 많아져서 불필요한 API 호출 등으로 낭비가 크고
  • 무한 루프나 비효율적 탐색이 발생해 작업이 늦게 끝나거나 아예 실패할 위험이 있고
  • 전역적(글로벌) 계획 부족으로 인해 다음 행동이 들쭉날쭉, 논리적 연결이 깨지기도 합니다.

이런 점들이 특히 ‘조건문’이나 ‘반복문’, ‘복수 툴 연계’가 필수적인 장기·복잡 태스크에서 치명적으로 작용합니다.


2. PseudoAct! 의 핵심 아이디어: 행동 전에 의사코드(일종의 설계도)를 먼저 짜자

이 논문에서는 LLM이 코드를 생성하는 능력에 착안해, 작업을 해결하기 위한 계획을 먼저 ‘의사코드’로 합성(생성)하고, 이 의사코드를 기반으로 행동의 흐름과 제어를 엄격히 관리하는 구조를 제안합니다.

 

의사코드(Pseudocode)는 실제 프로그래밍 언어 구문과 달리 ‘for, if, while’ 같은 제어 흐름 문법과 조건, 반복 등을 자연스럽게 표현할 수 있어서 훨씬 명확한 계획 설계가 가능합니다.

 

PseudoAct 프레임워크는 크게 두 단계로 구분돼요.

  1. Phase I : Pseudocode Plan Synthesis (의사코드 계획 생성)
    LLM이 사용자 질의에 맞춰, 전체 작업을 하위 작업으로 쪼개고 제어 흐름(순차, 조건분기, 반복, 병렬)과 데이터 흐름까지 명백히 포함된 ‘전역 계획’ 의사코드를 작성합니다.
  2. Phase II : Pseudocode-guided Execution (의사코드 기반 실행)
    각 액션 수행은 ReAct 스타일 에이전트가 맡아서 구체적인 API 호출 등을 진행하지만, 전체 흐름과 종료 조건은 계획에서 통제되기에 무한루프 방지나 불필요 행동 최소화가 가능합니다.
    생성된 의사코드 계획에 따라 행동해야 할 시점에, 에이전트는 이 계획을 따라 하나씩 차례로 자연스럽고 논리적으로 액션을 수행합니다.

3. 기존 논문과 차별점

  • ReAct: 행동마다 실행 이력에 따라 즉흥 결정을 반복, 막대한 토큰 소모와 무한 루프 위험 존재
  • DFSDT (Depth-First Search-based Decision Tree): 탐색 경로를 tree 형태로 뒤지는 구조지만, 계획이 ‘미리’ 명시되지 않고, 로컬 선택 중심이라 전역적 종료 조건이나 반복 제어가 모호해 행동 중단 시점 판단 어려움
  • Graph-based/Hierarchical Planner: 사전 정의된 고정 경로 위주, 동적 반복/조건 분기 추적 한계
  • PseudoAct: LLM의 코드 생성 능력을 활용해 기계를 위한 명확한 ‘의사코드’ 생성 → 전체 계획과 제어 흐름을 명백히 설계 → 실행 시 재활용 및 명확한 종료 보장

즉, 기존 Reactive, Tree Search, Graph Planner 방법들이 각각 단점 (즉흥성, 전역 계획 미흡, 고정 경로 종속)을 갖고 있을 때, PseudoAct는 LLM이 가진 프로그래밍적 사고 역량을 적극 활용해 ‘미리 계획된 코드화 전략’을 세우고 이를 엄격히 따른다는 점에서 확실히 다릅니다.


4. 기술적 가치와 강점

  • 복잡한 제어 흐름을 자연스럽게 표현
    FOR, IF, WHILE, TRY-CATCH, 병렬처리 등의 로직을 의사코드 단계에서 명확히 설계합니다. 그래서 작업 논리가 깨지지 않고 실행 단계에서도 안전한 흐름 관리가 가능하죠.
  • 재활용 가능한 전역 계획 생성
    한 번 작성된 의사코드는 ‘설계도’ 개념으로, 반복적인 의사결정 과정을 줄이고 훨씬 적은 토큰으로 실행 가능해 효율성이 크게 향상됩니다.
  • 실패 안정성 및 무한루프 방지
    종료 조건과 최대 반복 횟수를 의사코드 내에 명백히 명시하고, 실행기는 이를 엄격히 감시해 무한 반복 위험 차단.
  • 컴퓨팅 자원 절약
    기존 방식들은 매 번 실행 기록 전체를 참조하지만, PseudoAct는 한 번 계획을 만들고 부분적 맥락만 고려해 실행하기 때문에 토큰 사용량 절감.

5. 실험 결과 및 응용 현황

  • FEVER (팩트 검증): 기존 최고 수준 대비 정확도 +20.93% 점프! (88.24% 달성)
  • 특히 기존 방법들이 증거 탐색 후에도 계속 엉뚱한 탐색을 하는 문제를 해결하고, 명확한 정지 조건으로 불필요 행동 차단
  • HotpotQA (다중 단계 질문답변): 복잡한 연쇄 추론에서 명확한 중간 단계 계획이 ‘다리 역할’하는 대상을 고정적으로 찾고, 무한 탐색 없이 효율적 해결로 기존 대비 큰 성능 향상
  • 전력망 제어 시나리오: 실제 산업 분야에 적용해, 복잡한 전압 조절·상태 변화 반복·오류 처리·동시 작업 관리 가능 → 기존 reactive 방식으로는 어려웠던 연속적 상태 관리·오류 대응 기능 안정적으로 완성

6. 마무리하며: AI 계획의 ‘코드화’가 가져올 미래

이번 “PseudoAct” 논문에서 나온 가장 인상적인 점은, 대형 언어모델이 단지 ‘대화하고 단일 행동 선택하는’ 도구를 넘어, 마치 ‘프로그래머’처럼 구체적이고 체계적인 문제해결 계획을 줄 수 있음을 증명했다는 것입니다.

 

Reactive 방식의 즉흥적 행동 선택에서 벗어나, 의사코드처럼 명확한 ‘미리 짜인 설계도’를 만들고 그 설계도를 따라 수행하는 방식은

  • 추론 안정성 강화
  • 연산·토큰 비용 절감
  • 복잡 업무의 체계적 수행과 실패 관리

등에서 게임체인저가 될 가능성이 큽니다.

 

또한, 이 연구는 기존 다른 ‘계획 기반’ LLM 에이전트 연구들과 달리 직접적으로 LLM의 ‘코드 생성 능력’을 전면에 내세워, 기계가 가장 친숙한 형태(코드)로 플래닝을 맡겼다는 점에서 매우 신선합니다.

 

앞으로 AI 에이전트 설계에서 “계획은 코드화하자!”라는 흐름이 하나의 큰 트렌드가 되지 않을까 싶네요.


여러분의 생각은 어떠신가요?

  • 혹시, 매 단계마다 즉흥 대응하는 AI보다 ‘전체 설계도를 짜고 움직이는 AI’가 실제 업무에선 더 신뢰도가 높고 효율적일 거라 느껴지시나요?
  • PseudoAct처럼 코드를 계획에 활용하는 방법이 AI 협업 팀에도 유용할까요?

아래 댓글로 자유롭게 의견 남겨주세요! 앞으로도 AI 기술의 재미있고 쓸모 있는 변화들 함께 탐구해요 😀


참고: 본 글은 arXiv에 공개된 “PseudoAct: Leveraging Pseudocode Synthesis for Flexible Planning and Action Control in Large Language Model Agents” 논문 내용을 바탕으로 작성되었습니다.