LLM은 언어 이해 및 의사 결정 등의 Task에서 놀라운 성능을 보여주었지만, LLM의 추론(ex: CoT)과 행동 능력의 수행은 또 다른 문제임
따라서, 본 논문에서는 LLM을 활용해서 문제를 추론하고, 그에 맞는 적절한 행동을 교차적으로 수행하기 위한 방법 2가지를 융합하여 답변의 신뢰성 및 정확도를 높이는 방법을 제시
추론 과정은 모델이 어떤 행동을 할지 선택하고 현재 문제 해결 상황을 파악하며, 행동 과정은 문제를 해결하기 위한 적절한 Knowledge base 및 외부 환경과 상호작용하여 추가 정보를 수집함
사람은 어떤 과제를 해결하기 위한 행동과 언어적 추론을 원활하게 결합할 수 있는 능력을 가지고 있음
예를 들어, 주방에서 요리를 준비하는 상황에서 특정 행동 사이사이에 인간은 언어로 추론하며 자신의 현재 상황을 추적할 수 있음
이러한 행동과 추론의 상호작용을 통해 인간은 새로운 과제를 빠르게 파악하고, 경험하지 못한 낯선 상황에서도 합리적인 의사결정을 수행할 수 있음
본 연구에서는 LLM을 활용하여 다양한 언어 추론 및 의사결정 Task를 해결하기 위해 추론과 행동을 결합한 ReAct를 제안함
ReAct는 LLM이 Task와 관련된 언어적 추론 과정과 행동을 교차적으로 수행하도록 프롬프트를 제공하여 추론과 행동을 통합 가능
추론과 행동의 결합은 단순히 성능 향상 이외에도 추론 과정을 통해 모델의 해석 가능성, 신뢰성을 향상시킴

1. HotpotQA(Yang et al., 2018) 질문을 해결하는 네 가지 프롬프트 방식의 비교: (a) Standard(표준 방식), (b) Chain-of-thought(CoT, 추론만), (c) Act-only(행동만), (d) ReAct(추론 + 행동).
2. AlfWorld(Shridhar et al., 2020b) 게임을 해결하기 위해 (a) Act-only(행동만)와 (b) ReAct(추론 + 행동) 프롬프트를 비교.
ReAct의 강점은 아래와 같다.
1. 직관적이고 설계가 간편함: 사람이 직접 프롬프트 엔지니어링을 통해 간편하게 설계 가능
2. 범용적이고 유연함: 생각-행동의 발생 형식이 유연하기 때문에 QA, 사실 검증, 텍스트 게임, 웹 탐색 등 다양한 추론 요구 사항을 가진 Task에 적용 가능
3. 성능이 뛰어남: 1~6개의 예시만으로도 Task수행이 가능하며 좋은 성능을 보임
4. 인간 친화적이고 제어 가능함: 추론 과정이 문맥에 쌓이기 때문에 의사결정에 대한 근거 제공과 사람의 개입을 통한 수정이 가능함
아래 2가지 데이터셋을 사용하여 지식 검색 및 추론 성능을 테스트
1. HotPotQA : 다단계 질문 응답 벤치마크로, 두 개 이상의 Wikipedia 문단을 기반으로 추론
2. FEVER : 사실 검증 벤치마크로, 각 주장에 대해 해당 주장이 Wikipedia 문단에 의해 지지(SUPPORTS), 반박(REFUTES), 또는 정보 부족(NOT ENOUGH INFO)으로 분류
Wikipedia에서 정보 검색을 지원하기 위한 3 종류의 웹 API를 설계
1. search[entity]: 해당 엔티티의 Wikipedia 페이지에서 첫 5개의 문장을 반환하거나, 존재하지 않을 경우 검색 엔진에서 유사한 엔티티 상위 5개를 제안.
2. lookup[string]: 페이지 내에서 특정 문자열이 포함된 다음 문장을 반환.(Ctrl+F 기능과 유사).
3. finish[answer]: 주어진 답변으로 현재 작업을 종료.
Question 콜로라도 오로제니(Colorado orogeny)의 동부 구역이 확장되는 지역의 고도 범위는 무엇인가요?
Thought 1 Colorado orogeny를 검색하여, Colorado orogeny의 동부 구역이 확장되는 지역을 찾은 다음, 해당 지역의 고도 범위를 찾아야 합니다.
Action 1 Search[Colorado orogeny]
Observation 1 콜로라도 오로제니(Colorado orogeny)는 콜로라도와 그 주변 지역에서 일어난 산악 형성(오로제니) 사건이었습니다.
Thought 2 동부 구역에 대한 언급이 없습니다. 그래서 “eastern sector”를 검색해야 합니다.
Action 2 Lookup[eastern sector]
Observation 2 (Result 1 / 1) 동부 구역은 하이플레인(High Plains)으로 확장되며 센트럴 플레인 오로제니(Central Plains orogeny)라고 불립니다.
Thought 3 콜로라도 오로제니의 동부 구역은 하이플레인(High Plains)으로 확장됩니다. 따라서 High Plains를 검색하여 그 고도 범위를 찾아야 합니다.
Action 3 Search[High Plains]
Observation 3 하이플레인(High Plains)은 두 개의 뚜렷한 지형 지역 중 하나를 의미합니다.
Thought 4 대신 “High Plains (United States)“를 검색해야 합니다.
Action 4 Search[High Plains (United States)]
Observation 4 하이플레인(High Plains)은 대평원(Great Plains)의 하위 지역입니다. 동쪽에서 서쪽으로 갈수록 하이플레인의 고도는 약 1,8007,000피트(5502,130미터)로 상승합니다.
Thought 5 하이플레인의 고도는 약 1,8007,000피트로 상승합니다. 따라서 답은 1,8007,000피트입니다.
Observation 5 Finish[1,800 to 7,000 ft]


CoT의 경우 false positive rate가 14%로 할루시네이션이 심각한 문제임. 이는 CoT가 잘못된 사실에 의존해서 답변하는 것을 증명하는 지표로 답변 실패 이유의 56%를 차지
반면 ReAct는 추론, 행동, 관찰을 순차적으로 수행하며 답변의 신뢰성은 높지만, 추론 단계가 경직되어 있어 이전의 생각과 행동을 반복 생성하는 reasoning error rate가 47%를 차지
또한 ReAct가 제대로 된 정보를 검색하지 못한 경우에도 전체 오류 사례 중 23%를 차지
신뢰성과 유연성이라는 각각의 장점을 결합하는 전략이 필요함

language-based interactive decision-making task인 ALFWorld와 WebShop에서 성능 테스트를 진행
ALFWorld는 텍스트로 진행되는 가상 게임으로 텍스트 기반의 행동(예: coffeetable 1로 이동, paper 2 가져오기, desklamp 1 사용)을 통해 목표(예: 데스크램프 아래의 종이를 조사하기)를 달성해야 함
프롬프트는 각 과제 유형 별로 ReAct, Act, ReAct-IM 3개의 학습 경로를 무작위로 주석 처리하였으며, 프롬프트의 특징은 아래와 같음
1. 목표를 세분화
2. 하위 목표의 완료 여부 추적
3. 다음 하위 목표 결정
4. 상식을 활용하여 물건이 어디에 있을 가능성이 높은지와 이를 사용하려면 무엇을 해야 하는지 추론
Webshop은 실제 상품과 사용자 요구사항으로 구성된 온라인 쇼핑 환경으로 에이전트가 사용자 요구사항(예: “서랍이 있는 나이트스탠드를 찾고 있습니다. 니켈 마감이어야 하고 가격은 140달러 이하이어야 합니다.”)에 따라 제품을 구매해야 함
Act 프롬프트는 검색, 제품 선택, 옵션 선택, 구매 등의 행동을 포함하고 있으며, ReAct 프롬프트는 추가적으로 다음을 추론:
1. 무엇을 탐색할지
2. 언제 구매할지
3. 어떤 제품 옵션이 지침과 관련이 있는지

ReAct는 ALFWorld, WebShop 모두 Act보다 우수한 성능을 달성
ALFWorld에서 Act는 thoughts 과정이 생략된 한계로 목표를 세분화 하거나 현재 상태를 파악하는 것을 실패하는 경우가 많았음
WebShop의 경우 one-shot Act prompting으로도 기존 방법론을 넘는 성능을 보였고 ReAct의 경우 Act에서 추가적으로 10% 정도의 성능 향상을 보였지만, 아직 human expert 대비 15% 정확도가 떨어짐
요새 핫한 LLM Agent나, gpt o1을 이해하는데 도움이 되는 논문이라고 생각한다.
ReAct는 "차근 차근 단계 별로 설명해줘"로 대표되는 CoT기법(추론)과 추론을 위한 정확한 정보를 제공하기 위해 다양한 외부 상호작용 행동을 결합해서 어려운 문제를 정확하게 해결한다.
하지만, 결론에 도달하기 위해 추론을 여러 번 수행하기 때문에 시간 소요에 오랜 시간이 걸린다는 점은 매우 치명적인 단점이다.
결국 논문에서도 언급했던 바와 같이 정확도와 유연성, 시간 간의 Trade-off를 잘 조율해서 내 분야에 잘 적용하는 게 관건이겠다.