Files
2nd/01_Archive/2026-04-20/ReAct (Reasoning + Acting).md

97 lines
4.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[[ReAct (Reasoning + Acting)|ReAct (Reasoning + Acting)]]
📌 Brief Summary
ReAct는 LLM이 추론(Reasoning)과 행동(Acting)을 교차 반복하며 문제를 해결하는 프레임워크다. 순수 추론(Chain-of-Thought)이나 순수 행동(도구 호출)만으로는 해결하기 어려운 복잡한 과제에서, 생각하고→도구 쓰고→관찰하고→다시 생각하는 루프로 정보를 실시간 보완하며 정확한 답에 도달한다.
---
📖 Core Content
## 1. ReAct의 핵심 루프
```
[ReAct 사이클: Thought → Action → Observation]
Thought 1: "2026년 대한민국 최저임금을 알아야 한다."
Action 1: Search["2026년 대한민국 최저임금"]
Observation 1: "2026년 최저임금은 시간당 10,030원 (고용노동부, 2025.07 고시)"
Thought 2: "월 기준으로 환산하면 주 40시간 기준 209시간 적용해야 한다."
Action 2: Calculate[10030 × 209]
Observation 2: "2,096,270원"
Thought 3: "답을 출력할 준비가 됐다."
Final Answer: "2026년 대한민국 최저임금은 시간당 10,030원,
월급으로 환산하면 약 2,096,270원입니다."
```
---
## 2. 순수 CoT vs ReAct 비교
| 구분 | 순수 Chain-of-Thought | ReAct |
|------|---------------------|-------|
| **정보 소스** | 모델 내재 지식만 | 외부 도구(검색·DB·계산기 등) 활용 |
| **실시간 정보** | ❌ (학습 시점 이후 모름) | ✅ (실시간 검색 가능) |
| **수치 계산** | 오류 가능 (환각) | ✅ 계산기 호출 |
| **정확도 한계** | 지식 컷오프 | 도구 품질에 의존 |
| **환각 위험** | 높음 (모르면 지어냄) | 낮음 (모르면 검색으로 확인) |
---
## 3. ReAct의 활용 도구 유형
| 도구 유형 | 예시 | 역할 |
|---------|------|------|
| **웹 검색** | Google Search, Bing | 최신 정보 조회 |
| **계산기** | Python 코드 실행 | 정확한 수치 계산 |
| **코드 실행** | Code Interpreter | 데이터 분석·시각화 |
| **지식 그래프 조회** | SPARQL, Cypher | 사실 검증·다중 홉 검색 |
| **API 호출** | 날씨·주가·스케줄 API | 실시간 데이터 |
| **데이터베이스** | SQL 쿼리 | 구조화 데이터 검색 |
---
## 4. GraphRAG + ReAct 통합 패턴
```
[질의] "AI 연구소 X의 최근 논문과 연구 방향은?"
Thought: "X 연구소 최신 논문을 검색하고 KG에서 연구 방향을 찾자"
Action 1: Search["AI 연구소 X 2025 논문"]
Observation 1: [최신 논문 목록 반환]
Action 2: GraphRAG_Query["X 연구소의 연구 분야 및 핵심 인물"]
Observation 2: [지식 그래프에서 연구 주제·연구자 네트워크 반환]
Thought: "두 정보를 결합하면 종합적인 분석이 가능하다."
Final Answer: [최신 논문 + KG 구조적 정보 통합 응답]
```
---
## 5. 성능 수치
| 벤치마크 | CoT | ReAct | 향상 |
|---------|-----|-------|------|
| **HotpotQA** (다중 홉 QA) | 29.4% | **35.1%** | +5.7%p |
| **FEVER** (사실 검증) | 67.2% | **80.0%** | +12.8%p |
| **ALFWorld** (텍스트 게임) | 0% (실패) | **71%** | — |
---
🔗 Knowledge Connections
- **Related Topics:** [[Chain-of-Thought (CoT, 사고 사슬)|Chain-of-Thought (CoT, 사고 사슬)]], [[GraphRAG (그래프 기반 검색 증강 생성)|GraphRAG (그래프 기반 검색 증강 생성)]], [[RAG (검색 증강 생성)|RAG (검색 증강 생성)]], [[Multi-Hop Reasoning (다중 홉 추론)|Multi-Hop Reasoning (다중 홉 추론)]], [[SPARQL (RDF 그래프 질의 언어)|SPARQL (RDF 그래프 질의 언어)]], [[LLM Hallucination (언어 모델 환각)|LLM Hallucination (언어 모델 환각)]], [[AI 에이전트 (AI Agent)|AI 에이전트 (AI Agent)]]
- **Projects/Contexts:** AI 추론 시스템
- **Contradictions/Notes:**
- ReAct는 도구 호출 오류 시 루프에서 벗어나지 못할 위험 → 최대 반복 횟수(Max Steps) 제한 필요.
- 도구 결과를 모델이 오해하거나 잘못 해석할 경우 오답 더 강화 위험 → 도구 결과 검증 레이어 병행 권장.
- **신규 키워드**: `AI 에이전트 (AI Agent)`, `Tool Use (도구 사용)`, `함수 호출 (Function Calling)` → 탐색 큐 추가.