Reflexion: Language Agents with Verbal Reinforcement Learning

Digest (CISELQ)

  • Context: LLM 기반 에이전트(ReAct, AutoGPT 등)가 복잡한 의사결정·코딩·추론 태스크에서 실수를 반복하지만, 기존 RL 방식으로 LLM을 미세조정하는 것은 막대한 compute와 데이터를 요구하며 closed-source 모델에는 적용 불가능하다.
  • Issue: 대형 LLM 에이전트가 자신의 실패로부터 빠르고 저렴하게 학습하려면 gradient 기반 업데이트 없이 trial-and-error 경험을 내재화할 수 있는 메커니즘이 필요하다.
  • Solution: Reflexion은 (1) 행동을 생성하는 Actor, (2) 성과를 점수화하는 Evaluator, (3) 실패 원인을 자연어로 서술하는 Self-Reflection 모듈을 결합하여, 반성문을 episodic memory에 축적하고 다음 trial의 프롬프트에 주입한다.
  • Evidence: HumanEval pass@1 91% (GPT-4 baseline 80%), AlfWorld 130/134 성공, HotpotQA 정확도가 ReAct 대비 크게 향상되는 것을 단 수 회의 self-reflection trial로 달성.
  • Limits: Evaluator의 보상 품질에 성능이 민감하고, 장기 메모리가 커지면 context window 제약에 부딪히며, self-reflection의 환각 가능성이 존재한다.
  • Questions: reflection을 SFT/DPO 시그널로 재사용하면 장기 정착 가능한가? Evaluator가 unreliable할 때(실제 환경) 어떻게 robust하게 학습할 것인가?

섹션별 요약

Introduction

LLM 에이전트는 ReAct·Chain-of-Thought 이후 급격히 확장되었지만 한 번 실수하면 같은 궤적을 반복하는 경향이 강하다. 저자들은 Verbal Reinforcement Learning 이라는 개념을 제안한다. 파라미터 업데이트 대신 자연어 피드백을 메모리에 저장해 정책을 업데이트하는 방식이다. 이는 인간이 실수 후 “다음엔 이렇게 하자”는 내적 독백을 형성하는 과정과 유사하다.

Methods

Reflexion은 세 개의 LLM 모듈로 구성된다.

  1. Actor : 현재 상태와 메모리를 받아 action을 생성 (ReAct/CoT 형식).
  2. Evaluator : trajectory를 받아 스칼라 보상을 산출 (HumanEval은 test case, AlfWorld는 환경 보상, HotpotQA는 EM/LLM judge).
  3. Self-Reflection : 실패한 trajectory와 보상을 입력으로 “무엇이 잘못되었고 다음에 어떻게 고칠지”를 자연어 반성문으로 작성.

반성문은 long-term episodic memory(최근 k개 reflection 유지)에 누적되며, 다음 trial의 프롬프트 앞에 삽입된다. Short-term memory는 현재 trajectory이다.

Results

BenchmarkMetricBaselineReflexion
HumanEval (Python)pass@180% (GPT-4)91%
AlfWorld (134 tasks)success75 (ReAct)130/134
HotpotQAEMReAct baseline큰 폭 개선
MBPP-Py / Rust / Leetcode-Hardpass@1각 baseline일관된 상승

대부분의 개선은 3~6회 trial 내에 포화되며, self-reflection 없는 단순 retry 대비 일관되게 상회한다.

Discussion

Reflexion의 성공은 “자연어가 내부 정책의 고차원 gradient 대용물”이라는 관점에 의존한다. Evaluator가 신뢰할 수 있을 때 자연어 feedback이 효율적인 credit assignment 수단으로 작동한다. 다만 모델이 long-horizon credit assignment를 여전히 못 하며, reflection이 실제 원인을 잘못 짚으면 오히려 성능이 떨어지는 reflection-collapse 사례도 보고된다.

Insights

  • Verbal RL은 closed-source LLM에도 적용 가능한 “외부 학습 루프”를 제공한다.
  • 메모리 구조(reflection slot)의 설계가 policy improvement의 상한을 결정한다.
  • Binary success signal만으로도 자연어 반성이 rich gradient처럼 동작한다.

Discussion Points

  • Reflection을 RLHF/DPO 샘플로 변환해 모델 파라미터에 정착시킬 수 있는가?
  • Reflection 누적이 context 한계를 넘을 때 어떤 compression이 최적인가?
  • Evaluator가 noisy할 때(real-world tool-use) self-reflection은 over-confident hallucination으로 붕괴하지 않는가?

메타데이터

항목
제목Reflexion: Language Agents with Verbal Reinforcement Learning
저자Noah Shinn, Federico Cassano, Edward Berman, Ashwin Gopinath, Karthik Narasimhan, Shunyu Yao
발표NeurIPS 2023
코드github.com/noahshinn024/reflexion
카테고리Application / LLM Agent
태스크Coding(HumanEval), Decision-making(AlfWorld), Reasoning(HotpotQA)

왜 이 연구를 하는가?

대규모 LLM을 매번 fine-tuning으로 개선하는 것은 비용·접근성·데이터 효율 측면에서 심각한 제약을 가진다. 특히 GPT-4 같은 closed API 모델은 가중치에 직접 접근할 수 없다. 반면 LLM은 “자기 자신에 대해 언어로 추론”하는 능력을 갖추고 있다. 저자들은 이 능력을 학습 신호로 재활용한다. 환경에서 받은 보상을 자연어 반성으로 번역하고, 이를 다음 에피소드의 프롬프트 컨텍스트로 주입하면, 사실상 “프롬프트 공간에서의 policy gradient”를 수행할 수 있다는 가설이다. 이 접근은 sample efficiency(수 trial 내 수렴)와 배포 가능성(API-only 모델) 양쪽에서 실용적 가치를 갖는다.

방법 (Method)

flowchart LR
    ENV[Environment / Task] -->|observation| ACTOR[Actor M_a<br/>ReAct/CoT]
    ACTOR -->|action| ENV
    ENV -->|trajectory tau_t| EVAL[Evaluator M_e<br/>scalar/binary reward]
    EVAL -->|r_t, tau_t| SR[Self-Reflection M_sr<br/>verbal feedback]
    SR -->|reflection text| MEM[(Episodic Memory<br/>last-k reflections)]
    MEM -->|prepended context| ACTOR
    ACTOR -.->|short-term working memory| ACTOR

핵심 루프는 while not success and t < N: 형태로 반복된다. 각 trial은 (1) 메모리+task prompt로 trajectory 생성, (2) Evaluator가 success/score 산출, (3) 실패 시 Self-Reflection이 “가설적 실패 원인 + 개선안”을 작성, (4) 메모리에 push. Actor는 매 trial 새로 시작되며, 오직 reflection 텍스트가 세대 간 유일한 정보 전달 채널이다.

발견

#발견증거
F1자연어 reflection만으로 HumanEval pass@1 80→91%Table 1
F2AlfWorld 134개 중 130개 성공 (ReAct 대비 큰 폭 개선)Table 3
F33~6 trial 내 성능 포화 (sample-efficient)Fig. 3 learning curve
F4reflection을 제거한 단순 retry는 개선폭이 훨씬 작음Ablation
F5메모리 크기 k를 키우면 수익 체감, 과잉 시 noise 증가Sec. 4 analysis

이론적 의의

Reflexion은 RL 관점에서 보면 “policy parameter 대신 prompt context를 업데이트하는 actor-critic”의 구체적 인스턴스이다. Evaluator가 critic, Self-Reflection이 policy improvement operator, episodic memory가 policy의 non-parametric 저장소 역할을 한다. 이는 in-context learning을 학습 알고리즘으로 공식화하는 흐름(예: ICL-as-gradient-descent)과 맞닿아 있으며, “언어가 학습 신호의 표현 공간”이라는 주장에 강한 실증적 지지를 제공한다. 또한 metacognition(자기감시·자기수정) 관점에서 LLM이 behavioral level의 자의식적 수정 능력을 갖는다는 증거로 인용되어, Theory-of-Mind 및 Self-Consciousness 연구와 연결된다.

재현성 및 신뢰도 평가

평가근거
코드 공개AGitHub 공식 레포 제공, 환경별 실행 스크립트 포함
데이터셋AHumanEval/AlfWorld/HotpotQA 모두 공개 벤치마크
하이퍼파라미터 명세A-trial 수, memory k, 프롬프트 템플릿 부록에 명시
통계적 유의성Bseed별 variance는 일부 실험에서만 보고
모델 접근성B+GPT-4 API 의존(비용 재현 부담)
종합 Evidence QualityA다중 도메인·강한 baseline·공개 코드

관련 연구

  • ReAct (Yao et al., 2022): action+reasoning 교차. Reflexion의 Actor 기반.
  • Self-Refine (Madaan et al., 2023): 단일 turn 내 자기 수정. Reflexion은 cross-trial 메모리로 확장.
  • Chain-of-Hindsight (Liu et al., 2023): 파라미터 업데이트 기반 언어 피드백 학습과 대비.
  • Voyager (Wang et al., 2023): Minecraft에서 skill library 형태의 언어 메모리 — 동일 패러다임.
  • Generative Agents (Park et al., 2023): reflection 기반 memory stream을 사회 시뮬레이션에 적용.

원자적 인사이트

  1. “보상→자연어→프롬프트”의 번역 루프 자체가 학습 알고리즘이다. gradient를 계산하지 않아도, 보상을 언어화해 다음 컨텍스트에 주입하면 policy improvement가 일어난다. 이는 prompt space를 parameter space의 대체 가능한 학습 매체로 제안한다.
  2. Evaluator 품질이 상한을 결정한다. Reflexion의 개선폭은 Evaluator가 얼마나 정확하고 dense한 feedback을 줄 수 있는가에 선형적으로 비례한다. 즉 verbal RL의 병목은 self-reflection이 아니라 보상 신호의 신뢰성이다.
  3. 에피소드 간 언어 메모리는 non-parametric policy이다. reflection 리스트가 곧 정책이며, 메모리 설계(slot 수·요약 전략)는 RL에서 replay buffer 설계와 동형이다.
  4. 메타인지 능력의 실증. 자기 행동의 오류를 자연어로 귀인(attribute)하고 수정안을 제시하는 능력은 ToM/Self-Consciousness 연구에서의 behavioral-level self-monitoring 지표와 연결된다.

핵심 용어 정리

  • Verbal Reinforcement Learning: 가중치 업데이트 대신 자연어 피드백을 메모리에 축적해 policy를 개선하는 학습 패러다임.
  • Actor / Evaluator / Self-Reflection: 각각 행동 생성, 보상 평가, 반성문 생성을 담당하는 LLM 모듈 삼각 구조.
  • Episodic Memory (long-term): 지난 trial들의 reflection 텍스트를 저장하는 버퍼. 프롬프트에 prepend.
  • Trial / Trajectory: 한 에피소드의 행동-관찰-보상 시퀀스. Reflexion은 trial 간 학습을 수행.
  • Reward Shaping via Language: 스칼라 보상을 자연어 원인 분석으로 확장해 credit assignment를 강화하는 기법.
  • Reflection Collapse: 잘못된 self-reflection이 반복 축적되어 오히려 성능이 저하되는 실패 모드.

Tags

paper LLM-Agent Reflexion Verbal-RL Self-Reflection Episodic-Memory NeurIPS2023 Application Metacognition Prompt-Engineering