본문 바로가기

NLP

[Paper Review] Reflexion: Language Agents with Verbal Reinforcement Learning

Paper: Shinn, Noah, et al. "Reflexion: Language agents with verbal reinforcement learning." Advances in Neural Information Processing Systems 36 (2024).

link: https://proceedings.neurips.cc/paper_files/paper/2023/hash/1b44b878bb782e6954cd888628510e90-Abstract-Conference.html

 

Reflexion: language agents with verbal reinforcement learning

Requests for name changes in the electronic proceedings will be accepted with no questions asked. However name changes may cause bibliographic tracking issues. Authors are asked to consider this carefully and discuss it with their co-authors prior to reque

proceedings.neurips.cc

1. Abstract

- LLM을 weight update가 아닌 linguistic feedback으로 reinforce하는 Reflexion 프레임워크를 제시

- task에 대한 verbal feedback을 episodic memory buffer에 저장해서 이어지는 trials에서 더 나은 Decision-making을 함

 

2. Method

- Reflexion은 환경으로부터 받은 binary or scalar feedback을 textual summary 형태의 verbal feedback으로 바꾸고 이를 LLM agent가 다음 episode의 additional context로 사용한다.

- useful한 reflective feedback을 만들기 위해서는 어디서 실수를 저질렀는 지 이해하는 능력과 개선을 위한 행동을 담은 summary를 만들어내는 능력이 필요하다

 

Reflexion

Components

 

- Actor(M_a): generate text and actions

- Evaluator(M_e): score the outputs produced by Actor 

- Self-Refleciton(M_sr): generate verbal reinforcement cues to assist the Actor in self-improvement 

- Memory

  • Short-term memory: the trajectory history
  • Long-term memory: output from the Self-Reflection model

 

Process

  1. Actor가 trajectory를 생성
  2. Evaluator가 scalar reward를 계산
  3. Self-Reflection이 trajectory와 scalar reward를 기반으로 summary를 생성. summary는 memory에 저장됨 (1개에서 3개까지만 저장함)
  4. Evaluator가 trajectory가 correct하다고 판단할 때까지 반복 

3. Experiments

Reflexion works on decision-making, programming, and reasoning tasks

1. Decision making

  • Benchmark
    • ALFWorld: text-based environments로 agent는 multi-step task를 풀어야함
  • Metric
    • Natural langugage classification using an LLM
    • hand-written heuristic

- ReAct를 Actor로 이용

 

2. Reasoning

  • Benchmark
    • HotpotQA: Wikipedia-based dataset with 113k QA pairs. Content를 parse하고 여러 document들로부터 reason해야함
  • Metric
    • exact match answer grading using the environment to give a binary success signal to the agent

- Reflexion + CoT : Reasoning ability만을 측정하기 위해서 large sections of the provided text만으로부터 reasoning하도록 함

- Reflexion : ReAct : Wikipedia API로 retrieve함

 

3. Code generation

- Benchmark

*MBPP, HumanEval, LeetcodeHardGym

- CoT로 generate한 unit tests들을 가지고 test suite를 만들어냄

- Metric

*pass@1 accuracy: 단 한번의 시도에서 정확한 결과를 생성할 확률 (정답을 맞춘 첫 문제 수 / 총 문제 수) 

4. Limitation

- LLM의 self-evaluation 능력에 의존함

- Success에 대한 formal guarantee가 없음

5. Notes

- Inference speed가 얼마나 될까

- CoT말고 다른 모델로는 어떠할까