Generative AI

LLM 에이전트 소개

Reading Time: 6 minutes

재무 분석가가 회사의 실적에 대한 질문에 답할 수 있도록 설계된 거대 언어 모델(LLM) 애플리케이션은 잘 설계된 검색 증강 생성(RAG) 파이프라인을 통해 분석가는 “X사의 2022 회계연도 총 수익은 얼마였나요?”와 같은 질문에 답할 수 있습니다. 이 정보는 노련한 분석가가 재무제표에서 쉽게 추출할 수 있습니다.

이제 “23 회계연도 2분기 실적 발표에서 주목할 만한 세 가지 사항은 무엇인가요?”와 같은 질문을 생각해 보세요. 회사가 구축 중인 기술 기반에 집중하세요.”와 같은 질문입니다. 이 질문은 재무 분석가가 보고서에 포함하기 위해 답변을 원하지만 답변에 시간을 투자해야 하는 유형의 질문입니다.

위와 같은 질문에 답할 수 있는 솔루션을 개발하려면 어떻게 해야 할까요? 이 질문에는 실적 발표에서 단순히 조회하는 것 이상의 정보가 필요하다는 것을 즉시 알 수 있습니다. 이 질문에는 계획, 맞춤형 집중, 기억력, 다양한 도구 사용, 복잡한 질문을 더 간단한 하위 부분으로 세분화하는 작업이 필요합니다. 이러한 개념이 한데 모인 것을 우리는 본질적으로 LLM 에이전트라고 부르게 되었습니다.

이 글에서는 LLM 기반 에이전트를 소개하고 에이전트의 정의와 엔터프라이즈 애플리케이션에 대한 몇 가지 사용 사례에 대해 설명합니다. 자세한 내용은 첫 에이전트 애플리케이션 구축하기를 참조하세요. 이 게시물에서는 AI 에이전트를 구축하는 데 사용할 수 있는 프레임워크와 Q&A 에이전트를 실험하는 모든 사람을 위한 시작 가이드를 제공할 예정입니다.

AI 에이전트란 무엇인가요?

LLM 기반 에이전트에 대해 널리 통용되는 정의는 없지만, LLM을 사용하여 문제를 추론하고, 문제를 해결하기 위한 계획을 세우고, 일련의 도구를 통해 계획을 실행할 수 있는 시스템으로 설명할 수 있습니다.

요컨대 에이전트는 복잡한 추론 능력과 메모리, 작업을 실행할 수 있는 수단을 갖춘 시스템입니다.

이러한 기능은 복잡한 문제를 많은 개입 없이 해결한 AutoGPTBabyAGI와 같은 프로젝트에서 처음 활용되었습니다. LLM 기반 에이전트 애플리케이션의 일반적인 아키텍처는 다음과 같습니다(그림 1).

그림 1. 에이전트의 일반적인 구성 요소

에이전트는 다음과 같은 주요 구성 요소로 이루어져 있습니다(자세한 내용은 곧 설명할 예정):

  • 에이전트 코어
  • 메모리 모듈
  • 도구
  • 계획 모듈

에이전트 코어

에이전트 코어는 에이전트의 핵심 로직과 행동 특성을 관리하는 중앙 조정 모듈입니다. 에이전트의 “핵심 의사 결정 모듈”이라고 생각하시면 됩니다. 또한 정의하는 곳이기도 합니다:

  • 에이전트의 일반 목표: 에이전트의 전반적인 목표와 목적을 포함합니다.
  • 실행을 위한 도구: 기본적으로 에이전트가 액세스할 수 있는 모든 도구에 대한 간단한 목록 또는 “사용자 설명서”
  • 다양한 계획 모듈을 사용하는 방법에 대한 설명: 다양한 계획 모듈의 유용성과 어떤 상황에서 어떤 모듈을 사용해야 하는지에 대한 자세한 설명.
  • 관련 메모리: 추론 시점에 사용자와의 과거 대화에서 가장 관련성이 높은 메모리 항목을 채우는 동적 섹션입니다. ‘관련성’은 사용자가 묻는 질문을 사용하여 결정됩니다.
  • 에이전트의 페르소나(선택 사항): 이 페르소나 설명은 일반적으로 특정 유형의 툴을 선호하도록 모델을 편향시키거나 에이전트의 최종 응답에 일반적인 특성을 불어넣는 데 사용됩니다.
그림 2. 에이전트의 다양한 모듈이 코어에서 어떻게 조립되는지에 대한 기본 템플릿.

메모리 모듈

메모리 모듈은 AI 에이전트에서 중요한 역할을 합니다. 메모리 모듈은 기본적으로 에이전트의 내부 로그와 사용자와의 상호작용을 저장하는 저장소로 생각할 수 있습니다.

메모리 모듈에는 두 가지 유형이 있습니다:

  • 단기 메모리: 에이전트가 사용자의 질문에 답하기 위해 수행한 행동과 생각의 기록, 즉 에이전트의 “생각의 열차”입니다.
  • 장기 메모리: 사용자와 에이전트 사이에서 일어나는 이벤트에 대한 행동과 생각의 장부. 몇 주 또는 몇 달에 걸친 대화 기록이 담긴 로그북입니다.

기억에는 의미적 유사성 기반 검색 이상의 것이 필요합니다. 일반적으로 의미적 유사성, 중요도, 최근성 및 기타 애플리케이션별 메트릭으로 구성된 종합 점수로 구성됩니다. 이는 특정 정보를 검색하는 데 사용됩니다.

도구

도구는 에이전트가 작업을 실행하는 데 사용할 수 있는 잘 정의된 실행 가능한 워크플로우입니다. 종종 특수한 타사 API로 생각할 수 있습니다.

예를 들어 에이전트는 RAG 파이프라인을 사용하여 문맥 인식 답변을 생성하거나, 코드 인터프리터를 사용하여 복잡한 프로그래밍 작업을 해결하거나, 인터넷을 통해 정보를 검색하는 API 또는 날씨 API나 인스턴트 메시징 애플리케이션용 API와 같은 간단한 API 서비스도 사용할 수 있습니다.

계획 모듈

일련의 재무 보고서를 분석하여 다층적인 비즈니스 질문에 답하는 것과 같은 복잡한 문제에는 미묘한 접근 방식이 필요한 경우가 많습니다. LLM 기반 에이전트를 사용하면 두 가지 기술을 조합하여 이러한 복잡성을 처리할 수 있습니다:

  • 작업 및 질문 분해
  • 반성 또는 비판

과제 및 질문 분해

복합적인 질문이나 추론된 정보는 어떤 형태로든 분해가 필요합니다. 예를 들어 “NVIDIA의 지난 실적 발표에서 세 가지 시사점은 무엇인가요?”라는 질문을 생각해 보겠습니다.

이 질문에 답하는 데 필요한 정보는 한 시간 분량의 회의 기록에서 직접 추출할 수 없습니다. 하지만 이 문제는 여러 질문 주제로 세분화할 수 있습니다:

  • “어떤 기술 변화가 가장 많이 논의되었나요?”
  • “비즈니스의 어려움은 없었나요?”
  • “재무 결과는 어땠나요?”

이러한 각 질문은 다시 세분화할 수 있습니다. 즉, 전문 AI 에이전트가 이러한 세분화를 안내해야 합니다.

반영 또는 비판

리액트, 리플렉션, 생각의 연쇄, 생각의 그래프와 같은 기법은 비평 또는 증거 기반 프롬프트 프레임워크의 역할을 해왔습니다. 이러한 기법들은 학습자의 추론 능력과 반응을 개선하는 데 널리 사용되어 왔습니다. 이러한 기법은 에이전트가 생성한 실행 계획을 구체화하는 데에도 사용할 수 있습니다.

엔터프라이즈 애플리케이션용 에이전트

에이전트의 적용 분야는 사실상 무한하지만, 다음은 많은 비즈니스에 큰 영향을 미칠 수 있는 몇 가지 흥미로운 사례입니다:

  • “데이터와 대화” 에이전트
  • 에이전트 집단
  • 추천 및 경험 디자인 에이전트
  • 맞춤형 AI 작성자 에이전트
  • 멀티모달 에이전트

“데이터와 대화” 에이전트

“데이터와 대화”는 간단한 문제가 아닙니다. 단순한 RAG 파이프라인으로는 해결할 수 없는 많은 과제가 있습니다:

  • 소스 문서의 의미론적 유사성
  • 테이블과 같은 복잡한 데이터 구조
  • 명백한 컨텍스트 부족(모든 청크에 소스에 대한 마커가 포함되어 있지 않음)
  • 사용자가 묻는 질문의 복잡성
  • …그리고 이상

예를 들어 이전 수익의 통화 내역 예제(2023년 3분기 | 2024년 1분기)로 돌아가 보겠습니다. “2023년 3분기와 2024년 1분기 사이에 데이터 센터 수익이 얼마나 증가했나요?”라는 질문에 어떻게 대답할 수 있을까요? 이 질문에 답하려면 기본적으로 세 가지 질문에 개별적으로 답해야 합니다(즉, 계획 모듈이 필요함):

  • 2023년 3분기의 데이터센터 매출은 얼마였는가?
  • 2024년 1분기의 데이터센터 수익은 얼마였는가?
  • 이 둘의 차이는 무엇인가요?

이 경우 질문 분해(더 큰 문제가 해결될 때까지 하위 질문을 생성하고 답을 검색)를 수행하는 플래닝 모듈, 특정 정보를 검색하기 위한 RAG 파이프라인(도구로 사용), 하위 질문을 정확하게 처리하기 위한 메모리 모듈에 액세스할 수 있는 에이전트가 필요합니다. LLM 기반 에이전트: 첫 에이전트 애플리케이션 구축하기 게시물에서 이러한 유형의 사례를 자세히 살펴봅니다.

에이전트 스웜

에이전트 스웜은 단일 환경에서 공존하기 위해 서로 협력하여 문제를 해결할 수 있는 에이전트들의 집합으로 이해할 수 있습니다. 에이전트의 분산된 생태계는 문제를 해결하기 위해 함께 사용되는 여러 개의 “스마트” 마이크로서비스와 매우 유사합니다.

생성형 에이전트ChatDev와 같은 다중 에이전트 환경은 커뮤니티에서 매우 인기가 높습니다(그림 3). 그 이유는 무엇일까요? ChatDev와 같은 프레임워크를 사용하면 엔지니어, 디자이너, 제품 관리, CEO, 에이전트로 구성된 팀을 구성하여 저렴한 비용으로 기본 소프트웨어를 구축할 수 있습니다. Brick Breaker나 Flappy Bird와 같은 인기 게임은 50센트 정도의 저렴한 비용으로 프로토타입을 제작할 수 있습니다!

에이전트 스웜을 사용하면 경제 연구를 위한 행동 시뮬레이션, 기업 마케팅 캠페인, 물리적 인프라의 UX 요소 등과 같은 애플리케이션을 위해 디지털 회사, 이웃, 심지어 마을 전체를 채울 수 있습니다.

그림 3. ChatDev 환경의 여러 에이전트 예시

이러한 애플리케이션은 현재 LLM 없이는 시뮬레이션이 불가능하며 실제 환경에서 실행하는 데 비용이 매우 많이 듭니다.

추천 및 경험 설계를 위한 에이전트

인터넷은 추천을 통해 작동합니다. 에이전트로 구동되는 대화형 추천 시스템은 개인화된 경험을 제작하는 데 사용할 수 있습니다.

예를 들어 이커머스 웹사이트의 AI 에이전트가 제품 비교를 돕고 일반적인 요청과 선택에 따라 추천을 제공한다고 생각해 보세요. 여러 에이전트가 최종 사용자의 디지털 스토어 탐색을 지원하여 완전한 컨시어지 같은 경험을 구축할 수도 있습니다. 어떤 영화를 볼지, 어떤 호텔 객실을 예약할지 선택하는 것과 같은 경험을 일련의 의사 결정 트리 스타일의 대화로 만들 수 있습니다!

맞춤형 AI 작성자 에이전트

또 다른 강력한 도구는 이메일 공동 작성이나 시간에 쫓기는 회의 및 프레젠테이션 준비와 같은 작업을 도와줄 수 있는 개인 AI 작성자를 보유하는 것입니다. 일반 작성 도구의 문제점은 다양한 대상에 따라 다양한 유형의 자료를 맞춤화해야 한다는 것입니다. 예를 들어, 투자자 프레젠테이션은 팀 프레젠테이션과 다르게 표현해야 합니다.

에이전트는 이전 작업을 활용할 수 있습니다. 그런 다음 에이전트가 작성한 프레젠테이션을 개인 스타일에 맞게 수정하고 특정 사용 사례와 필요에 따라 작업을 사용자 지정하도록 합니다. 이 프로세스는 일반적인 LLM 파인 튜닝에는 미묘한 차이가 있는 경우가 많습니다.

멀티모달 에이전트

텍스트만 입력으로 사용하면 실제로 “데이터와 대화”할 수 없습니다. 앞서 언급한 모든 사용 사례는 이미지와 오디오 파일 등 다양한 입력을 소화할 수 있는 멀티모달 에이전트를 구축하여 보강할 수 있습니다.

그림 4. 그래프를 기반으로 질문에 답하는 멀티모달 에이전트 예시

이는 기업의 당면 과제를 해결하기 위해 추구할 수 있는 방향의 몇 가지 예시일 뿐입니다. 데이터 큐레이션을 위한 에이전트, 소셜 그래프, 도메인 전문성은 모두 엔터프라이즈 애플리케이션 개발 커뮤니티에서 활발히 연구하고 있는 분야입니다.

다음 단계는 무엇인가요?

LLM 기반 에이전트는 복잡한 추론 능력을 갖추고 있다는 점에서 일반적인 챗봇 애플리케이션과 다릅니다. 에이전트 코어, 메모리 모듈, 도구 세트, 계획 모듈로 구성된 에이전트는 데이터 큐레이션부터 고급 이커머스 추천 시스템에 이르기까지 다양한 엔터프라이즈 환경에서 고도로 개인화된 답변과 콘텐츠를 생성할 수 있습니다.

구현 프레임워크, 필독 문서, 게시물 및 관련 주제 등 에이전트 관련 기술 생태계에 대한 개요는 첫 번째 에이전트 애플리케이션 구축하기를 참조하세요. 프레임워크 없이 Q&A 에이전트를 구현하는 방법에 대한 안내를 통해 데이터와 더 효과적으로 대화할 수 있습니다.

다른 유형의 LLM 에이전트에 대해 자세히 알아보려면 작업 실행을 위한 LLM 기반 API 에이전트 구축하기데이터 분석을 위한 LLM 기반 데이터 에이전트 구축을 참조하세요.

관련 리소스

GTC 세션: RAG 기본 사항 그 이상: 에이전트, 코파일럿, 어시스턴트 등 구축하기!
GTC 세션: LLM 기반 에이전트의 세계 탐색하기(Quantiphi, Inc. 제공)
GTC 세션: LLM 에이전트 미세 조정: 작업 자동화 향상(Weights & Biases 제공)
NGC 컨테이너: genai-llm-playground
웨비나: NVIDIA Jetson으로 생성형 AI 실현하기
웨비나: 거대 언어 모델 구현하기

Discuss (0)

Tags