2한 문장 요약
3- LLM은 생각만 하면 사실을 지어내고, 행동만 하면 왜 그랬는지 설명하지 못한다 — ReAct는 이 둘을 한 궤적 안에서 번갈아 놓아 서로를 교정하게 만든 루프다 (Yao et al., 2023).
41. What — ReAct가 무엇인가
5- ReAct(Reasoning + Acting)는 언어모델의 출력 공간을 자연어 사고(Thought)와 외부 도구 행동(Action)으로 동시에 확장한 프레임워크다.
6- 매 스텝에서 모델은 사고 \tau_t를 쓰고, 행동 a_t를 내보내고, 환경으로부터 관찰 o_t를 돌려받는다.
7- 이때 문맥은 c_t = (\tau_1, a_1, o_1, \dots, \tau_t, a_t, o_t)처럼 누적되고, 다음 스텝은 이 누적 문맥에 조건화된다.
8- 즉 ReAct의 정책은 \pi(\tau_t, a_t \mid c_{t-1})이며, 사고는 행동의 근거, 관찰은 사고의 검증 역할을 한다.
92. Why — 왜 필요한가 (기존 두 방식의 실패)
10(가) 순수 사고(Chain-of-Thought)의 한계 — 환각
11- CoT(Wei et al., 2022)는 중간 추론을 언어로 풀어써서 산술·상식 추론 성능을 크게 올렸지만, 추론에 필요한 사실을 모두 파라미터 기억에서 꺼낸다.
12- 파라미터 기억은 학습 시점에 고정되어 있으므로 최신 정보(오늘 환율, 어제 발표된 논문)는 원리적으로 알 수 없다.
13- 더 나쁜 것은 모른다고 말하지 않고 그럴듯하게 지어낸다는 점이다(Ji et al., 2023).
14- ReAct 논문의 HotpotQA 오류 분석: CoT 실패 사례 중 사실 환각이 56%인 반면 ReAct는 6%였다(Yao et al., 2023).
15- 비유하면, 사전을 덮어놓고 기억만으로 답하는 학생이다 — 문장은 유창하지만 인용은 가짜다.
16(나) 순수 행동(Act-only)의 한계 — 설명 불가·자가진단 불가
17- 행동만 생성하는 에이전트는 도구를 호출해 실제 관찰을 얻으므로 사실성은 확보하지만, 행동의 이유가 궤적에 남지 않는다.
18- 그래서 (1) 목표를 여러 단계로 쪼개지 못하고, (2) 실패했을 때 어느 가정이 틀렸는지 되짚지 못하며, (3) 관찰이 예상과 달라도 계획을 수정하지 못한다.
19- ALFWorld 실험에서 Act-only는 성공률 45%, ReAct는 71%였고, 격차의 대부분은 '어디를 먼저 찾아야 하는가'라는 상식적 계획 사고에서 나왔다(Yao et al., 2023).
20- WebShop에서도 Act-only 대비 ReAct가 성공률을 약 30% → 40% 수준으로 끌어올렸다.
21(다) 두 축은 서로의 약점을 정확히 메운다
22- 사고 → 행동: 사고가 검색 쿼리를 정하고 하위 목표를 세워 행동 공간을 좁힌다.
23- 관찰 → 사고: 실제 관찰이 파라미터 기억을 덮어써서 환각을 잘라낸다(grounding).
24- 사고가 궤적에 남기 때문에 사람이 로그를 읽고 어느 스텝에서 왜 틀렸는지 진단할 수 있다 — 해석 가능성은 부수 효과가 아니라 설계 목표다.
253. How — 어떤 문제에서 쓰이는가
26- 멀티홉 질문답변 (HotpotQA, Yang et al., 2018): "A의 감독이 만든 다른 영화의 주연은?"처럼 두 번 이상 검색해야 답이 나오는 문제. 1차 관찰이 2차 쿼리를 결정하므로 사고-행동 교대가 필수다.
27- 가정 시뮬레이션 내비게이션 (ALFWorld, Shridhar et al., 2021): "식힌 사과를 조리대에 놓아라" 같은 지시를 텍스트 환경에서 수행. "사과는 보통 냉장고·조리대에 있다"는 사고가 탐색 순서를 정한다.
28- 웹 기반 쇼핑 에이전트 (WebShop, Yao et al., 2022): 실제 상품 페이지 118만 개 위에서 조건을 만족하는 상품을 검색·비교·구매. 노이즈 많은 관찰을 사고로 요약해야 다음 클릭을 고를 수 있다.
29- 공통점: 정답이 모델 안이 아니라 환경 안에 있고, 환경을 한 번 보는 것만으로는 부족해 반복 상호작용이 필요하다.
304. 이 레슨의 범위
31- 이 레슨은 특정 API 사용법이 아니라 '생각-행동-관찰' 루프 자체의 구조와 이론을 다룬다.
32- 구체적으로: 루프의 형식적 정의, 프롬프트 궤적 설계, 종료 조건과 스텝 예산, 관찰 주입 방식, 실패 패턴과 디버깅.
33- 도구 호출을 JSON 스키마로 강제하는 구조화 방식은 별도 레슨의 주제이며, 여기서는 루프의 골격에 집중한다.