간단한 게임을 통해 ReAct (Reasoning + Action) 이해하기

발행: (2026년 2월 4일 오후 02:16 GMT+9)
6 분 소요
원문: Dev.to

Source: Dev.to

제가 처음 뉴욕시에서 필라델피아로 이사했을 때, 사람과의 교류가 절실히 필요했습니다. 그래서 당연히 성인이라면 하는 대로 Meetup을 다운로드했죠. 첫 번째 사회 활동은 작가 모임이었고, 아이스‑브레이커는 “Pass the Story” 라는 어린 시절 게임이었습니다.

“Pass the Story” 게임

  1. 종이 한 장을 돌려가며 사용합니다.
  2. 한 사람이 한 줄을 쓰고, 다음 사람에게 종이를 넘깁니다.
  3. 새로운 참여자는 지금까지 적힌 내용을 읽고, 다음 줄을 추가한 뒤 다시 넘깁니다.
  4. 그룹이 함께 이야기를 완성할 때까지 이 과정을 반복합니다.

게임을 ReAct에 매핑하기

ReAct (Observing + Reasoning + Acting)은 게임 단계와 다음과 같이 대응됩니다:

ReAct 구성 요소게임 행동
Observe (관찰)사람은 지금까지 적힌 이야기를 읽는다.
Reason (추론)사람은 이야기를 어떻게 이어갈지 생각한다.
Act (행동)사람은 다음 줄을 쓰고 종이를 넘긴다.

페이지에 적힌 첫 번째 줄이 쿼리가 됩니다. 이후 각 참여자는 이야기가 완성될 때까지 Observe → Reason → Act 루프를 반복합니다.

언어 모델의 무상태성

다음 플레이어가 종이를 읽기 전까지는 이야기를 전혀 모르는 것처럼, LLM은 무상태(stateless) 합니다: API 호출이나 대화 턴 사이에 기억을 유지하지 않죠. 각 요청은 새로 시작됩니다—볼리우드 영화 Ghajini의 주인공처럼 말이죠.

전체 이야기를 다음 호출에 전달하는 것은 대화 기록을 LLM에 다시 보내는 것과 동일합니다. 누적된 이야기가 모델의 컨텍스트가 됩니다.

제한 사항 및 실용적인 해결책

무한 루프

참여자(또는 모델)의 “어휘”가 매우 제한적이면 같은 문장을 반복할 수 있습니다:

“고양이와 개는 동물이다. 동물은 고양이와 개이다.”

AI에서는 이것이 무한 루프로 나타납니다—관찰이 새로운 정보를 제공하지 않고, 추론이 반복되며, 같은 행동을 계속하게 됩니다.

해결책: 반복 횟수에 엄격한 제한을 두기(예: “최대 5번 반복 허용”).

컨텍스트 윈도우 제한

이야기가 커지면(예: 100페이지) 뒤에 오는 참여자는 전체를 읽을 수 없습니다. LLM도 비슷한 문제에 직면합니다: 각 Observe → Reason → Act 루프가 토큰을 추가하면서

  • 비용 증가
  • 응답 시간 지연
  • 모델 컨텍스트 한도 초과 위험

해결책: 컨텍스트 프루닝 – 매번 전체 기록을 보내는 대신 가장 최근 단계만 유지하고, 이전 단계는 고수준 요약으로 보관합니다.

ReAct vs. ReWOO

  • ReAct: 매 단계마다 생각한다(즉흥적).
  • ReWOO: 한 번 깊게 생각하고 구조화된 계획을 만든 뒤 실행한다(전략적).

이는 다음과 같은 차이와 같습니다:

  • 즉흥적으로 한 줄씩 이야기를 이어가는 것 vs.
  • 플롯을 먼저 합의하고 장을 쓰는 것.

두 접근법 모두 유용합니다: 하나는 반응형, 다른 하나는 전략형입니다.

의견

저는 IBM 영상이 “2026년은 다중 에이전트 시대”라고 말한 것이 ReWOO를 의미한다고 생각합니다. 올해 말까지 이 블로그는 이미 구식이 될 수도 있지만, ReAct 루프가 어떻게 작동하는지 명확히 이해하는 데 도움이 되었길 바라며 여러분의 생각을 공유해 주세요.


멋진 필라델피아 작가 모임에 환영해 주셔서 감사합니다!

Reddit | LLMs

Back to Blog

관련 글

더 보기 »

AI가 당신에게 뺨을 때릴 때

AI가 당신을 뺨 때릴 때: Adama에서 Claude가 생성한 코드 디버깅 AI에게 복잡한 기능을 “vibe‑code”하게 맡겨본 적이 있나요? 그 결과 미묘한 버그를 디버깅하느라 몇 시간을 보내게 됩니다.