반응형
언어 모델(LLM)은 기본적으로 "똑똑한 텍스트 생성기"입니다. 주어진 질문이나 문장을 기반으로 가장 적절한 텍스트를 출력할 뿐, 실제 행동을 취하는 것은 아닙니다. 예를 들어, "날씨가 어때?"라고 물어보면, "오늘 서울의 날씨는 맑습니다."라고 답할 수 있지만, 실제로 날씨를 검색하는 기능은 없습니다.
💡 LangChain에서 '에이전트'가 필요한 이유
LangChain에서는 이런 언어 모델이 단순한 답변 생성기가 아니라, 스스로 행동할 수 있도록 도와주는 기능을 추가할 수 있습니다. 이 역할을 하는 것이 바로 에이전트(Agent)입니다.
에이전트는 언어 모델을 추론 엔진으로 사용하여 다음과 같은 과정을 수행합니다.
- 어떤 행동을 해야 하는지 결정
- 예를 들어, "서울의 날씨 알려줘"라고 하면, 단순히 문장을 생성하는 게 아니라, "날씨 정보를 검색하는 행동을 해야겠어!"라고 판단합니다.
- 필요한 입력을 정리
- "날씨를 찾으려면 검색 엔진에 '서울 날씨'라고 입력해야겠군!"
- 즉, 어떤 정보를 얻기 위해 무엇을 입력해야 하는지를 결정합니다.
- 도구를 사용해서 행동 수행
- LangChain에서는 언어 모델이 단독으로 행동하지 못하므로, 외부 도구(검색 엔진, 데이터베이스 등)를 사용해서 정보를 가져오도록 도와줍니다.
- 예를 들어, 검색 엔진을 사용해 '서울 날씨'를 실제로 검색합니다.
- 결과를 다시 확인하고 다음 행동 결정
- 검색 결과를 받아서 "이 정보로 충분한가? 아니면 추가로 다른 행동이 필요한가?" 판단합니다.
- 만약 정보가 부족하면 다시 검색하거나 다른 방법을 시도할 수도 있습니다.
- 최종적으로 사용자에게 답변 제공
- 모든 과정이 끝나면 사용자에게 최종적인 답을 제공합니다.
예제로 쉽게 이해하기 ✨
LangChain의 에이전트는 여러 도구를 사용할 수 있도록 설정할 수 있습니다. 예를 들어,
- 도구 1: 로컬 데이터베이스 → 내 컴퓨터에 저장된 정보를 찾아볼 수 있음
- 도구 2: 검색 엔진 → 구글에서 최신 정보를 검색할 수 있음
즉, 에이전트는 언어 모델이 직접 할 수 없는 일(검색, 데이터 조회 등)을 도와주는 역할을 합니다.
🚀 실제 동작 예시:
❓ 질문: "일론 머스크의 최신 트윗이 뭐야?"
🧐 에이전트의 판단: "이건 검색이 필요하군! 트위터 검색 도구를 사용해야겠어."
🔍 행동: 트위터 검색 엔진을 실행하고 최신 트윗을 가져옴
✅ 결과 확인: 가져온 트윗을 사용자에게 전달
이처럼 LangChain의 에이전트는 언어 모델이 단순히 텍스트만 출력하는 것이 아니라, 실제로 행동을 수행할 수 있도록 만드는 역할을 합니다! 🚀
반응형
'AI' 카테고리의 다른 글
[AI] LangChain 에이전트 구현하기: ReAct 프레임워크 기반 자동화 시스템 (1) | 2025.03.06 |
---|---|
[AI] Google Generative AI 모델 사용하기: 모델 리스트 조회 및 프롬프트 테스트 (0) | 2025.03.06 |