생각(Thought) → 행동(Act) → 관찰(Observe)의 단계에서 AI Agent가 자신의 행동의 결과를 인식하는 방식에 대해서 살펴보자.
Observe
Observe단계란 무엇일까? AI Agent가 방금 실행한 Action의 결과를 보고, 그 정보를 메모리에 추가한 뒤 다음 Thought를 업데이트하는 단계라고 할 수 있다. 즉, 행동의 결과를 인식하는 단계인 것이다. 외부의 환경과 상호작용한다고 표현하는데 API에서 온 응답이나 오류 메세지, 계산 결과 등의 정보가 AI Agent 내부로 들어와서 현재 어떤 상태인지 파악해야 한다는 것이다.
Observe 단계에서는 AI Agent가 다음을 수행한다.
- Collects Feedback: Action이 성공했는지 실패했는지, 결과가 무엇인지 받는다.
- Appends Results: 받은 정보를 프롬프트(맥락) 끝에 붙인다. 즉, LLM의 다음 추론에 사용할 수 있게 대화 히스토리에 저장하는 것이다.
Thought: 뉴욕 날씨를 알아야겠다.
Action: { "action": "get_weather", "location": "New York" }
Observation: "partly cloudy, 15°C"
- Adapts Strategy: 이 Observation을 보고 다음 Thought를 다시 계산한다.
Observe 이 없으면 안 되나?
안 된다! 왜냐하면 AI Agent는 실행한 tool의 결과를 다음 Thought에서 사용해야 하기 때문이다.
만약 Observe 을 AI Agent가 수행하지 않는다면 LLM은 API 호출 결과를 알 수 없게 되고 다음 단계의 계획을 짤 수 없게 된다, 그렇게 되면 Thought-Action-Observation 의 순환이 결국은 끊기게 될 것이다.
아주 쉽게 예시를 들어보자.
AI Agent를 게임 캐릭터라고 생각했을 때...
Thought = “이제 오른쪽으로 가야겠다.”
Action = 오른쪽으로 한 칸 이동
Observation = 실제로 오른쪽으로 갔는지? 벽에 막혔는지? 보물이 있었는지?
Observation이 없으면?
캐릭터는 내가 어떻게 됐는지 전혀 모르고 계속 같은 행동만 반복
→ 게임 불가능
그래서 AI Agent가 어떻게 동작하는건데?
즉, 전체적인 과정을 좀 더 자세히 생각해보면 다음과 같다.
만약 사용자의 입력이 '현재 뉴욕을 날씨는 어때?' 라고 해보자.
Thought
"뉴욕 현재 날씨를 알아야 한다."
Action
{ "action": "get_weather", "location": "New York" }
→ 해당 입력을 받아서 외부 tool이 실행되고 → API 결과가 출력됨
Observation
"15°C, partly cloudy"
→ 해당 결과는 LLM의 프롬프트 끝에 붙게 됨 → 프롬프트 갱신됨
다음 Thought (Observation을 반영한 새로운 생각)
"음 이정도면 답변할 수 있겠다."
Response
"뉴욕은 현재 15도, 구름 조금 있습니다."
'헷개정 - 헷갈리는 개념 정리 > 더 탐구해보쟛!' 카테고리의 다른 글
| Agentic AI 탐구일지 4편: Act 단계? AI Agent가 환경과 상호작용한다는 말이 무슨 말이야? (0) | 2025.11.20 |
|---|---|
| Agentic AI 탐구일지 3편: Thought 단계? AI가 어떻게 생각하고 계획하는건데? (0) | 2025.11.20 |
| Agentic AI 탐구일지 2편: Tools는 뭐야? (0) | 2025.11.11 |
| Agentic AI 탐구일지 1편: AI Agent란 무엇일까? (0) | 2025.11.11 |
| Agentic AI 탐구일지 0편: AI Agent? (0) | 2025.11.11 |