Agent Squad: AWS가 오픈소스로 공개한, Multi-Agents 간 복잡한 대화 관리를 위한 경량 프레임워크

Agent Squad 소개

인공지능 기술이 고도화됨에 따라 하나의 거대한 모델에 의존하기보다는, 목적에 맞게 특화된 여러 AI 에이전트를 조합해 사용하는 방식이 점차 주류가 되어가고 있습니다. 특히 고객 지원, 의료 상담, 여행 추천, 전자상거래 상담처럼 복잡하고 다양한 대화가 요구되는 분야에서는, 단일 AI 모델로는 사용자 요구를 효과적으로 처리하기 어려운 경우가 많습니다. 이 문제를 해결하기 위해 AWS는 다양한 AI 에이전트를 하나의 팀처럼 조율할 수 있는 오픈소스 프레임워크 Agent Squad를 공개하였습니다.

Agent Squad는 Python과 TypeScript 양쪽에서 사용할 수 있으며, 다양한 에이전트를 유연하게 연결하고, 각 에이전트의 역할에 따라 사용자의 요청을 분배하는 기능을 제공합니다. 특히 Amazon Bedrock, Amazon Lex, Lambda 같은 AWS 서비스와 깊이 통합되어 있어, 기업 환경에서 실질적으로 사용 가능한 멀티 에이전트 아키텍처를 빠르게 구축할 수 있는 것이 큰 강점입니다.

Agent Squad의 아키텍처 및 구성 요소

Agent Squad의 가장 큰 특징은 멀티 에이전트 구조를 기반으로 한다는 점입니다. 사용자의 입력이 시스템에 들어오면, 먼저 해당 입력이 어떤 의도(intent)를 갖는지 분류하는 과정을 거칩니다. 이를 통해 어떤 에이전트가 해당 요청에 가장 적합한지를 결정하게 됩니다. 분류기(Classifier)는 과거 대화 이력과 에이전트의 특성을 고려하여 에이전트를 자동으로 선택합니다.

선택된 에이전트는 요청을 처리하며, 그 결과는 다시 오케스트레이터에 의해 사용자에게 전달되고, 동시에 대화 이력으로 저장됩니다. 이 모든 과정을 통해 사용자는 마치 하나의 통합된 AI 시스템과 대화하는 것처럼 느낄 수 있습니다.

이러한 구조는 다음과 같은 구성 요소로 이루어져 있습니다:

  • AgentSquad 오케스트레이터: 모든 흐름을 제어하고, 각 에이전트의 실행을 조율하는 중앙 컴포넌트입니다.
  • Classifier: 입력을 분석하여 적절한 에이전트를 선택합니다.
  • Agent: 실제로 요청을 처리하는 AI 에이전트로, Bedrock, Lex, Lambda 등 다양한 형태로 존재할 수 있습니다.
  • Context Manager: 대화의 흐름을 유지하기 위해 이전의 대화 내용을 저장하고 활용합니다.

SupervisorAgent: 다중 에이전트 팀의 조율자

Agent Squad에서 가장 강력한 기능 중 하나는 SupervisorAgent입니다. 이 에이전트는 단순히 요청을 처리하는 데 그치지 않고, 여러 전문 에이전트를 동시에 제어하고, 각각의 결과를 종합하여 최종 응답을 만들어내는 역할을 수행합니다.

SupervisorAgent는 다음과 같은 방식으로 작동합니다:

  1. 입력 분석: 복잡한 요청을 받아 이를 여러 하위 작업으로 나눕니다.
  2. 에이전트 할당: 각 하위 작업에 대해 가장 적합한 에이전트를 선택합니다.
  3. 병렬 실행: 여러 에이전트가 동시에 요청을 처리하도록 합니다.
  4. 응답 통합: 각 에이전트의 결과를 종합하여 하나의 응답을 생성합니다.
  5. 컨텍스트 유지: 전체 팀이 공유하는 대화 이력을 관리하여 일관성 있는 대화를 유지합니다.

SupervisorAgent는 특히 다음과 같은 시나리오에 적합합니다:

  • 여행 플래너, 건강 상담, 수학 계산 등 다양한 분야의 요청을 한 번에 처리하는 챗봇
  • 고객센터에서 상품 정보, 반품, 배송 추적 등 여러 유형의 요청을 병렬로 처리
  • 프로젝트 매니지먼트에서 기획, 기술 분석, 일정 조율 등을 병렬로 수행

Agent Squad 적용 사례 및 데모

Agent Squad는 다양한 데모와 실제 사례를 통해 이미 입증된 구조입니다. 예를 들어:

  • 여행 플래너 데모: Amazon Lex 기반 여행 예약 시스템
  • 전자상거래 고객 지원 데모: 이메일 분석 및 자동 답변
  • 헬스케어 상담 데모: 건강 관련 질문에 대한 자동 응답 시스템

자세한 예제는 다음에서 확인 가능합니다:

라이선스

Agent Squad 프로젝트는 Apache 2.0 라이선스로 공개 및 배포되고 있습니다.

:github: Agent Squad 프로젝트 GitHub 저장소

:books: Agent Squad 프로젝트 공식 문서

더 읽어보기


이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다! (기본은 Weekly지만 Daily로 변경도 가능합니다.)

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: