CoT + ReAct (250810)

WonTerry·2025년 8월 10일

LLM

목록 보기
13/38

Prompt (Chroma)

Create a bright and engaging infographic-style illustration that explains the concepts of “Chain of Thought (CoT)” and “ReAct” in large language models.
Scene 1 (CoT): Show a thoughtful AI robot sitting at a desk with a notepad, drawing a sequence of logical steps in bubbles (e.g., “Thought → Action → Action Input → Observation”), connected by arrows. Use a clear example such as solving a math problem (e.g., "5x + 3 = 23"). The atmosphere should be calm and analytical, with light blue and soft gray tones.
Scene 2 (ReAct): Next to it, depict the same AI robot actively interacting with the world—looking up weather information on a computer, checking an observation, then taking another action (e.g., handing someone an umbrella). The steps “Think → Act → Observe → Repeat” should be shown in a loop diagram. Use dynamic poses, bright yellows and greens to convey action.
Include small icons for “thought” (light bulb), “action” (gear or hand icon), and “observation” (eye icon) to make the cycle clear.
The style should be modern, friendly, and easy to understand, suitable for a tech blog audience, with clean vector lines and simple, bold colors.

생각의 사슬(Chain of Thought, CoT)

정의
Chain of Thought(이하 CoT)는 대규모 언어 모델(LLM)이 답을 결정하기 전, 내부적으로 ‘생각하는 과정’을 거치도록 유도하는 기법이다. 이를 통해 단순한 결과 출력이 아니라, 답에 도달하기까지의 논리적 흐름을 함께 제시한다.
대표 논문으로는 *“Chain-of-Thought Prompting Elicits Reasoning in Large Language Models”*가 있다.

작동 방식
CoT는 다음과 같은 사고 전개 과정을 거친다.

생각(Thought) → 행동(Action) → 행동 입력(Action Input) → 관찰(Observation) → 반복

목표에 도달할 때까지 이 사이클을 계속 수행한다.

예제

문제: 어떤 수의 5배에 3을 더하면 그 값은 23입니다. 그 수는?

  • 생각(Thought): 문제를 분석 — “그 수를 x라고 하자.”
  • 행동(Action): 필요한 연산을 선택 — “계산: 5x + 3 = 23”
  • 행동 입력(Action Input): 선택한 연산 수행 — “5x = 20 → x = 4”
  • 관찰(Observation): 결과 확인 — “정답은 4”

장점

  • 사고 과정의 가시성: 결과뿐만 아니라 중간 논리 전개가 드러나므로, 사람이 이해·검증하기 쉽다.
  • 정답률 향상: 복잡한 문제 해결에서 모델의 논리적 일관성을 유지할 수 있다.

단점

  • 외부 지식 부족: 모델 내부 지식에만 의존하므로, 최신 정보나 추가 데이터가 필요한 문제에서 오답 가능성.
  • 계산량 증가: 사고 과정을 모두 전개하므로 처리 속도 저하.
  • 불필요한 장황함: 단순한 문제에도 과도한 설명이 붙을 수 있음.

CoT는 AI가 단순히 ‘정답을 아는 것’처럼 보이게 하는 것이 아니라, 스스로 생각하는 것처럼 보이게 만드는 기술이다.


ReAct: 생각과 행동의 결합

정의
ReAct(Reasoning + Acting)는 LLM이 생각과 행동을 번갈아 수행하며 문제를 해결하는 프레임워크다. CoT가 ‘생각 중심’이라면, ReAct는 실행 중심의 순환 구조를 가진다.

작동 구조

  1. 생각(Thought): 다음에 필요한 행동을 결정.
  2. 행동(Action): 결정을 실행에 옮김.
  3. 관찰(Observation): 실행 결과를 확인.
  4. 반복: 결과에 따라 다음 생각과 행동을 이어감.

예제

질문: “내일 날씨 어때?”

  • 생각: “내일 날씨를 알아봐야겠다.”
  • 행동: 날씨 예보 API 호출.
  • 관찰: “서울에 비 소식 있음.”
  • 다시 생각: “우산을 챙기라고 알려줘야겠다.”
  • 최종 행동: “내일 비 온대! 우산 챙겨!”

장점

  • 외부 세계와 실시간 상호작용 가능 → 환각(Hallucination) 감소.
  • 과정 투명성: 어떤 순서로 생각하고 행동했는지 드러나므로, 인간의 개입·수정이 용이.
  • 피드백 루프: 결과가 만족스럽지 않으면 다른 전략·도구로 재시도 가능.

단점

  • 루프 현상: 부정확한 조건에서 동일 행동 반복 가능.
  • 리소스 소모: 불필요한 도구 호출이나 처리 시간 증가.
  • 운영 조건 필요: 도구 종류, 사용 조건, 실패 대응 규칙이 사전 정의되어야 안정적 운영 가능.

CoT와 ReAct의 결합

  • CoT: 깊이 있는 사고 과정을 통해 문제를 체계적으로 이해.
  • ReAct: 외부 도구 활용과 실시간 실행을 통해 사고를 행동으로 연결.

두 방법을 결합하면, 논리적 일관성 + 실시간 실행력을 모두 갖춘 강력한 AI 에이전트를 구현할 수 있다.


참고문헌

  • 《Agentic AI 시대 : 조직을 움직이는 새로운 엔진》, pp. 243~244
  • 《RAG 마스터 : 랭체인으로 완성하는 LLM 서비스》, pp. 428~451
profile
Hello, I'm Terry! 👋 Enjoy every moment of your life! 🌱 My current interests are Signal processing, Machine learning, Python, Database, LLM & RAG, MCP & ADK, Multi-Agents, Physical AI, ROS2...

0개의 댓글