논문 · arXiv 2210.03629
ReAct: 언어 모델에서 추론과 행동의 시너지 창출하기
ReAct: Synergizing Reasoning and Acting in Language Models
세 줄 요약
- 🎯 순수 chain-of-thought만 수행하는 LLM은 고립된 채 추론하여 환각을 일으키고, 행동 전용 에이전트는 작업 기억과 전략적 계획 능력이 부족합니다.
- 🔧 물리적/API 행동 사이에 자유 형식의 자연어 생각을 끼워 넣도록 에이전트의 행동 공간을 확장하여, 동적으로 계획하고 추적하며 행동하게 합니다.
- 📈 ReAct는 ALFWorld에서 71%, WebShop에서 40.0%의 성공률을 달성해 모방/RL 베이스라인을 능가하는 동시에 QA 과업의 환각을 대폭 줄였습니다.
초록
대규모 언어 모델(LLM)은 언어 이해 및 대화형 의사결정 과업 전반에서 인상적인 역량을 입증해 왔으나, 추론(예: chain-of-thought 프롬프팅)과 행동(예: 행동 계획 생성) 능력은 주로 별개의 주제로 연구되었습니다. 본 논문에서는 LLM이 추론 과정(reasoning traces)과 과업별 행동을 번갈아 가며 생성하도록 하여 두 능력 간의 더 큰 시너지를 창출하는 방안을 탐구합니다. 추론 과정은 모델이 행동 계획을 유도, 추적, 업데이트하고 예외 상황을 처리하도록 돕고, 행동은 지식 베이스나 환경과 같은 외부 소스와 상호작용하여 추가 정보를 수집할 수 있게 합니다. 본 연구에서는 ReAct라는 이름의 접근법을 다양한 언어 및 의사결정 과업에 적용하였으며, 최첨단 베이스라인 대비 우수한 성능뿐만 아니라 추론 또는 행동 요소가 결여된 방식에 비해 향상된 인간 해석 가능성 및 신뢰성을 입증하였습니다. 구체적으로 질의응답(HotpotQA) 및 사실 검증(Fever) 과업에서 ReAct는 단순한 Wikipedia API와 상호작용함으로써 chain-of-thought 추론에 흔히 나타나는 환각 및 오류 전파 문제를 극복하고, 추론 과정이 없는 베이스라인보다 더 해석하기 쉬운 인간다운 과업 해결 궤적을 생성합니다. 또한 두 가지 대화형 의사결정 벤치마크(ALFWorld 및 WebShop)에서 ReAct는 단 1~2개의 인컨텍스트 예시만을 프롬프트로 제공받고도 모방 학습 및 강화학습 방식을 절대 성공률 기준 각각 34% 및 10% 앞섰습니다. 프로젝트 웹사이트 및 코드: https://react-lm.github.io
영어 원문 초록
While large language models (LLMs) have demonstrated impressive capabilities across tasks in language understanding and interactive decision making, their abilities for reasoning (e.g. chain-of-thought prompting) and acting (e.g. action plan generation) have primarily been studied as separate topics. In this paper, we explore the use of LLMs to generate both reasoning traces and task-specific actions in an interleaved manner, allowing for greater synergy between the two: reasoning traces help the model induce, track, and update action plans as well as handle exceptions, while actions allow it to interface with external sources, such as knowledge bases or environments, to gather additional information. We apply our approach, named ReAct, to a diverse set of language and decision making tasks and demonstrate its effectiveness over state-of-the-art baselines, as well as improved human interpretability and trustworthiness over methods without reasoning or acting components. Concretely, on question answering (HotpotQA) and fact verification (Fever), ReAct overcomes issues of hallucination and error propagation prevalent in chain-of-thought reasoning by interacting with a simple Wikipedia API, and generates human-like task-solving trajectories that are more interpretable than baselines without reasoning traces. On two interactive decision making benchmarks (ALFWorld and WebShop), ReAct outperforms imitation and reinforcement learning methods by an absolute success rate of 34% and 10% respectively, while being prompted with only one or two in-context examples. Project site with code: https://react-lm.github.io
논문 해설
문제 및 동기
대규모 언어 모델(LLM)은 Chain-of-Thought (CoT)를 통한 추론과 실행 가능한 명령을 출력하는 의사결정 모두에서 뛰어난 능력을 보입니다. 그러나 이 두 가지 능력은 대개 별개로 연구되어 왔습니다:
- CoT 추론은 그라운딩(grounding)되지 않습니다. 모델은 고정된 내부 표현에만 전적으로 의존하므로 사실적 환각(hallucination), 최신 지식의 부족, 오류의 누적 전파에 취약합니다.
- 행동 전용(Action-only) 시스템은 컨텍스트를 환경 행동으로 바로 매핑합니다. 이로 인해 추상적인 목표를 수립하거나, 중간 하위 목표를 유지하거나, 예상치 못한 상태 변화를 처리할 수 있는 명시적인 작업 기억(working memory)이 부족합니다.
인간의 내적 언어(inner speech)에서 영감을 얻은 본 논문은 추론 단계와 환경 상호작용을 번갈아 배치함으로써 상호 강화 루프를 형성할 수 있는지 탐구합니다. 즉, 추론은 행동을 안내하고 행동 피드백은 추론을 그라운딩합니다.
핵심 아이디어
- 행동 공간 확장(Action Space Augmentation): 에이전트의 행동 공간을 확장하여, 외부 관측을 발생시키지는 않지만 내부 컨텍스트를 업데이트하는 언어적 생각(thoughts)을 포함합니다.
- 조밀한(Dense) 생각 vs. 희소한(Sparse) 생각 체계: 과업에 따라 생각은 밀접하게 결합될 수도 있고(다단계 QA를 위해 한 단계씩 교차), 비동기적이고 희소하게 사용될 수도 있습니다(장기적인 게임에서 계획을 세우거나 예기치 못한 상황을 처리할 때만 사용).
- 하이브리드 추론(Hybrid Reasoning): 내부 파라메트릭 지식(CoT self-consistency 활용)과 검색된 외부 피드백(ReAct 활용)을 결합하여 사실적 정확성과 추론 유연성의 균형을 유지합니다.
방법론 (핵심 수식 포함)
대화형 환경에서 시간 에 에이전트가 관측 를 수신하고, 궤적 컨텍스트 를 유지하며, 정책 에 따라 행동한다고 가정해 보겠습니다.
ReAct는 행동 공간을 다음과 같이 확장합니다: 여기서 은 자유 형식 자연어 표현의 공간입니다.
- 에이전트가 환경 행동 를 생성하면 환경은 관측 를 반환하여 다음 컨텍스트 를 형성합니다.
- 에이전트가 생각 을 생성하면 외부 관측은 생성되지 않으며, 생각이 에이전트 컨텍스트에 직접 추가됩니다: .
지식 과업(HotpotQA, FEVER)의 경우 API 행동 집합은 입니다. 하이브리드 구성의 경우:
- : ReAct가 정해진 단계(예: HotpotQA의 경우 7단계, FEVER의 경우 5단계) 내에 완료되지 않으면 CoT self-consistency의 다수결 투표 방식으로 전환(fallback)합니다.
- : 개 샘플 간의 다수 일치율이 아래로 떨어지면 ReAct로 전환합니다.
결과 (핵심 수치 중심)
- 지식 추론 (PaLM-540B):
- HotpotQA에서 두 방식을 결합한 설정()은 Standard (28.7%), CoT (29.4%), Act (25.7%)에 비해 **35.1%의 완전 일치율(Exact Match, EM)**을 기록했습니다.
- FEVER에서 는 Standard (57.1%) 및 CoT (56.3%) 대비 **64.6%의 정확도(Accuracy)**에 도달했습니다.
- 오류 분석에 따르면 ReAct는 HotpotQA의 실패 사례 중 환각 발생률이 0%였던 반면, CoT 실패 원인의 56%는 환각이었습니다.
- 의사결정 (ALFWorld 및 WebShop):
- ALFWorld에서 Best-of-6 ReAct는 평균 성공률 71%(프롬프트 전반의 평균은 57%)를 달성하여 Act 전용(최고 45%), Inner Monologue 스타일 프롬프팅(최고 53%), 개의 궤적으로 훈련된 모방 학습 에이전트 BUTLER(최고 37%)를 능가했습니다.
- WebShop에서 1-shot ReAct는 40.0%의 성공률과 66.6점의 평균 점수를 기록하여, 10,000개 이상의 지시문으로 훈련된 모방 + 강화학습 베이스라인(28.7% 성공률, 62.4점)을 앞섰습니다.
- 파인튜닝: 3,000개의 자체 생성된 정답 궤적으로 PaLM-8B 및 PaLM-62B를 부트스트래핑한 결과 ReAct가 최고의 성능을 보였으며, 파인튜닝된 PaLM-8B ReAct는 모든 62B 프롬프팅 방식보다 뛰어난 성능을 기록했습니다.
한계점 및 열린 질문
- 인컨텍스트 프롬프팅의 한계: 컨텍스트 윈도우의 제약으로 인해 LLM은 극소수의 데모(1~6개 예시)만 볼 수 있어, 프롬프트만으로는 매우 방대한 행동 공간을 완벽히 마스터하기 어렵습니다.
- 검색 탈선 및 루프 현상: 탐욕적 디코딩(greedy decoding) 환경에서 정보성이 없는 검색 결과가 반환될 경우 ReAct 오류 사례의 23%가 발생하며, 때때로 모델이 반복 루프에 갇히기도 합니다.
- 안전성 및 도구 실행: 개방형 환경에서 LLM에 외부 행동 권한을 부여하면 원치 않는 동작(예: 의도치 않은 웹 거래 실행, 민감한 데이터 검색)을 초래할 위험이 있습니다.
핵심 용어
- ReAct
- 대규모 언어 모델이 일반적인 과업 해결을 위해 교차 배치된 추론 과정과 도메인별 행동을 생성하도록 유도하는 프롬프트 기반 패러다임.
- Chain-of-Thought (CoT)
- 외부 환경에서 행동을 취하지 않고, 최종 답변을 생성하기 전에 모델이 내부 추론 단계를 먼저 출력하도록 하는 프롬프팅 접근법.
- Action Space Augmentation
- 환경을 변경하지 않는 생각(thought)으로 정의된 임의의 자연어 발화를 포함하도록 에이전트의 이산적 행동 집합을 공식적으로 확장하는 것.
- Inner Monologue (IM)
- 언어 모델의 생각이 유연한 내부 전략 계획보다는 주로 외부 환경 피드백에 국한되는 베이스라인이자 선행 접근법.
- CoT-SC
- 자기 일관성(self-consistency)과 결합된 chain-of-thought 프롬프팅으로, 0이 아닌 온도로 답변을 여러 번 샘플링한 후 다수결 투표로 최종 답을 선택하는 방식.
- ALFWorld
- 다단계 가정 내 목표 분해, 내비게이션, 객체 조작 능력을 평가하는 ALFRED 벤치마크 기반의 텍스트 기반 대화형 환경.
- WebShop
- 실제 아마존에서 수집한 118만 개의 실제 상품을 바탕으로 텍스트 지시문을 만족하는 상품을 탐색하고 구매하는 에이전트의 능력을 평가하는 현실적 웹 내비게이션 벤치마크.
- Self-Reflection / Thought Editing
- 가중치나 행동 기록을 수정하는 대신 생성된 언어 생각을 수동으로 조정하여 모델의 궤적을 수정하거나 유도하는 인간 참여형(human-in-the-loop) 개입 방식.
자주 묻는 질문
ReAct가 표준 Chain-of-Thought보다 환각에 덜 취약한 이유는 무엇인가요?
CoT는 순전히 내부 파라메트릭 메모리에만 의존하므로 존재하지 않는 사실을 자주 지어냅니다. 반면 ReAct는 구체적인 행동을 통해 외부 소스(예: Wikipedia API)를 확인하므로, 이후의 생각을 검색된 관측값에 직접 그라운딩합니다.
ReAct는 WebGPT나 SayCan과 어떻게 다른가요?
WebGPT와 SayCan은 인간 피드백이나 어포던스(affordance) 모델을 사용하여 행동이나 계획을 예측하는 데 초점을 맞추며, 모델이 교차 루프 내에서 자체적인 언어적 추론 과정을 유지, 분해, 조정하도록 명시적으로 유도하지는 않습니다.
ReAct에서 검색 결과가 유용하지 않으면 어떤 일이 발생하나요?
검색 실패는 HotpotQA에서 ReAct 실패 사례의 약 23%를 차지했습니다. 모델이 검색 쿼리를 재구성하는 데 어려움을 겪을 수 있으며, 탐욕적 디코딩 환경에서는 반복적인 행동 루프에 갇히기도 합니다.
ReAct에서 인간 참여형(human-in-the-loop) 생각 편집은 어떻게 작동하나요?
추론 과정이 일반적인 자연어로 작성되므로, 작업자는 실패한 궤적을 살펴보고 도중에 한두 개의 중간 생각을 즉석에서 편집하여 파라미터 파인튜닝 없이도 에이전트를 루프나 잘못된 판단에서 즉각 벗어나게 할 수 있습니다.
이 페이지의 해설은 AI가 논문을 바탕으로 작성했으며 오류가 있을 수 있습니다. 자세한 내용은 원문을 확인하세요.