글 요약

1. 에이전트란?

2. 에이전트를 설계하는 단계

1단계: 계획 (Planning)

2단계: 기억 (Memory)

3단계: 도구 활용 (Tools)

4단계: 통합 (All Together)

3. 왜 이런 설계가 중요한가?

결론


글에 대한 연구

주의

본문에서 정의한 "에이전트는 기억, 추론, 도구 활용, 답변 생성, 행동 실행의 모든 단계를 통합한 시스템"이라는 정의는 특정 공식 문서나 학계에서 표준적으로 인정된 정의는 아니다. 단지 기술 블로그나 연구자들이 에이전트의 개념을 설명할 때 자주 사용되는 직관적이고 실용적인 정의일 뿐이다.

에이전트를 위와 같은 방식으로 설계해야 하는 이유는 아래와 같습니다.

1단계: 계획 (Planning)

관련 주요 기술 설명
Chain of Thought (CoT) LLM에게 "한 번에 답을 내지 말고, 단계별로 생각하라"고 지시합니다. 예: 수학 문제를 풀 때, 문제를 쪼개어 계산 과정을 차근차근 진행.
Tree of Thoughts 여러 가지 가능한 사고 과정을 나열한 뒤, 가장 적합한 답을 선택합니다.

2단계: 기억 (Memory)

예시 구분 설명
단기 기억 AI 비서가 사용자의 질문 "지난 주에 추천해준 영화 제목이 뭐였죠?"에 답하기 위해 최근 대화 기록을 기억.
장기 기억 AI가 고객 관리에서 과거 구매 데이터를 참고하여 맞춤형 추천 제공.

LangChain을 사용한 기억 기능 구현

from langchain_community.chat_message_histories import ChatMessageHistory

message_history = ChatMessageHistory()
agent_with_memory = RunnableWithMessageHistory(
    agent_executor,
    lambda session_id: message_history,
    input_messages_key="input",
    history_messages_key="chat_history",
)

3단계: 도구 활용 (Tools)

예시

"Google에서 최신 기사를 검색해 요약하고 CSV 파일로 저장하세요."

4단계: 통합 (All Together)

예시

"유럽에서 인기 있는 5개 도시를 검색하고, 각각의 평균 호텔 가격을 계산하세요."