이전 파트에서는 에이전트를 도구로 사용하는 단일 도구 호출 에이전트(agent-as-a-tool) 패턴을 배포하는 데 필요한 사항과 Genie 룸(에이전트)을 도구로 연결하는 방법을 살펴보았습니다. 또한 이러한 방식이 조직에 제공하는 이점, 즉 인센티브를 적절하게 조정할 수 있는 방법을 살펴보았습니다. 쉽게 말해, 재무 담당자는 공급망 분석 지니룸에 신경 쓰지 않고 재무 지니룸의 품질을 유지할 수 있습니다. 결과적으로, 담당자는 자신이 가장 중요하게 생각하는 지니룸의 상태를 유지하기 위해 지표를 정의하고, 지침을 적용하고, 평가/벤치마크를 실행하는 등의 작업을 수행할 수 있습니다.
이것도 좋지만, 여기서 한 단계 더 나아가고 싶습니다. 지금까지 우리는 "데이터 인텔리전스"의 강점을 보여드렸습니다. 하지만 현실은 그것만으로는 충분하지 않다는 것입니다. 대부분의 경우, 조직은 일반 지능에 더해 해당 분야의 데이터 인텔리전스를 활용해야 합니다. 예를 들어, 이전 블로그에서 소개한 에이전트는 "X 매장의 지난달 총 매출액은 얼마이며, 같은 매장에서 Y 제품의 현재 주문량은 얼마인가요?"와 같은 질문에 답변할 수 있었습니다. 에이전트는 질문을 두 개의 도구 호출로 분해하여 해당 지니룸에서 정보를 조회하고 결과를 종합하여 응답했습니다. 하지만, 만약 에이전트가 "A 매장과 B 매장의 위치 및 인구 통계 정보를 바탕으로, 이 시기에 골프 용품 특별 할인을 어디에서 진행하는 것이 좋을까요?"와 같은 질문을 받았다면 어떻게 될까요? 이 경우에는 훨씬 더 심층적인 계획이 필요합니다.
상담원은 매장 위치를 파악한 다음 인구 통계 정보(미국 인구 조사국 ACS 데이터)를 수집해야 합니다. Experian이나 LexisNexis와 같은 유료 데이터가 있다면 두 데이터를 비교하여 골프 용품에 관심 있는 사람들이 더 많이 방문할 가능성이 높은 위치를 파악하고, 현재의 계절적 패턴(연중무휴, 지역 행사 등)을 분석한 후 사용자에게 추천 사항과 자신의 견해를 제시해야 합니다.
이러한 요구를 충족하기 위해 이번에는 데이터 인텔리전스와 시장 인텔리전스를 모두 활용하여 조직의 전략적 의사 결정 주기를 단축하는 데 도움이 되는 다중 에이전트 시스템을 구축하는 방법을 보여드리겠습니다.
미래의 기업: 서로 실제로 소통하는 다중 에이전트 시스템
AI 시스템을 고성능 팀처럼 운영하기 시작하면, 팀의 각 구성 요소를 최적화하여 누적적인 성과를 얻을 수 있습니다. Databricks는 바로 이러한 복리 효과를 가능하게 해줍니다. 하지만 단일 에이전트 패러다임을 비롯하여 넘어야 할 몇 가지 기술적 장벽이 있습니다.
단일 에이전트 사고방식의 문제점
가장 뛰어난 전문가들은 각자의 전문 분야를 가지고 있습니다. 재무 분석가는 인구 통계 데이터를 해석하는 데 가장 적합한 사람이 아니며, 시장 조사원은 공급망 분석의 미묘한 차이를 이해하지 못할 수도 있습니다. 물론, 이러한 방식으로 담당자를 구성할 수는 있지만, 시간이 지남에 따라 품질 면에서 효율성이 떨어질 것입니다.
위에서 언급한 문제에 대한 해결책은 다른 접근 방식을 요구합니다. 과부하에 시달리는 단일 에이전트 대신, 인계, 위임 및 협력이 가능한 다중 에이전트 시스템을 구축해야 합니다. 전체적인 설계는 다음과 같습니다.
- 분류 에이전트(The Triage Agent): 이 에이전트는 사용자 문의를 분석하고 엔터프라이즈 인텔리전스 에이전트 또는 시장 인텔리전스 에이전트와 같은 다른 에이전트 중 어떤 에이전트가 해당 요청을 처리하는 데 가장 적합한지 판단하는 역할을 합니다. 이 에이전트는 초기 접점 역할을 하며, 다중 에이전트 시스템에서 적절한 전문 에이전트에게 문의를 전달합니다. 또한 사용자 문의를 자체적으로 처리하는 것이 가장 적절하거나 두 전문 에이전트의 개입이 필요하지 않은 경우에는 두 에이전트 중 어느 쪽에도 문의를 전달하지 않을 수도 있습니다. 예를 들어 사용자가 대화 내용을 요약하는 경우가 이에 해당합니다.
- 엔터프라이즈 인텔리전스 에이전트(The Enterprise Intelligence Agent)— 이 담당자는 귀사의 내부 운영 전문가입니다. 회사 데이터에 대한 깊은 이해를 바탕으로 Databricks Genie 공간을 활용한 매장 성과 분석 및 재고 추적부터 툴 호출을 통한 비즈니스 정책 조회까지 모든 것을 처리합니다. 마치 잠도 자지 않고 모든 내부 데이터에 즉시 접근할 수 있는, 귀사에서 가장 박식한 수석 분석가와 같다고 생각하시면 됩니다.
- 시장정보 에이전트(The Market Intelligence Agent)— 이것은 외부 세계 전문가입니다. 인구 조사 API에서 실시간 인구 통계 데이터를 가져와 인구 추세, 가구 소득 패턴, 교육 수준 및 주택 소유율을 분석합니다. 하지만 여기서 흥미로운 점은 Perplexity API를 활용하여 복잡한 시장 조사 질문에 대한 추론을 수행한다는 것입니다. 즉, 인터넷 전체에서 정보를 종합할 수 있는 연구팀을 제공하는 것과 같습니다. 아래는 이러한 구성의 아키텍처 다이어그램입니다.

다중 에이전트 시스템의 고수준 아키텍처
협업을 통해 마법이 일어납니다
여기서부터 정말 흥미로워집니다. 이 에이전트들은 단순히 할당된 작업만 수행하는 것이 아니라, 서로를 도구로 호출할 수도 있습니다. 이는 복잡한 문제를 세분화하거나 도메인 인텔리전스를 활용하여 매크로 검색 쿼리를 맥락화하는 데 종종 필요합니다.
"왜 110번 매장은 다른 주에 있는 비슷한 매장에 비해 실적이 저조한 걸까요?"와 같은 질문을 던지면, 그 이면에는 다음과 같은 이유가 있을 수 있습니다.
- 분류 에이전트는 사용자의 쿼리를 분석하여 해당 쿼리가 엔터프라이즈 인텔리전스 에이전트를 통해 상당 부분 해결될 수 있다고 판단합니다.
- 엔터프라이즈 인텔리전스 에이전트는 매장 성과 데이터, 판매 추세 및 운영 지표를 심층 분석합니다.
- 하지만 바로 그때, 놀라운 일이 벌어집니다. 인구 통계학적 맥락이 필요하다는 것을 깨닫고 시장 정보 분석 도구를 호출합니다.
- 시장 정보 분석 도구는 매장 위치의 인구 조사 데이터를 수집하고 (선택적으로) 지역 경제 상황을 분석하여 관련 맥락 정보를 제공합니다.
- 그들은 함께 협력하여 어느 한 개인이 제공할 수 없었던 해답을 만들어냅니다.
Unity 카탈로그: 엔터프라이즈급 멀티 에이전트 시스템의 핵심
이러한 마법을 가능하게 하고 다중 에이전트 시스템에 생명력을 불어넣 모델 등 모든 구성 요소를 연결하는 접착제와 는 또 다른 핵심 요소가 있습니다. 바로 Unity Catalog입니다. Unity Catalog는 기업 데이터, 기능(예: 도구 호출), 모델, 벡터 인덱스, 시맨틱같은 역할을 합니다.
Unity Catalog는 기업 데이터에 대한 접근 권한만 관리하는 것이 아니라, 에이전트가 추론하고 행동하는 데 필요한 모든 것을 저장하는 중앙 저장소 역할을 합니다. 평균 주문 금액 계산과 같은 함수 및 도구, PDF나 이미지와 같은 비정형 콘텐츠를 쿼리하는 데 사용되는 벡터 인덱스, 그리고 판매 예측과 같은 기존 머신러닝 모델 등이 모두 핵심 기능으로 등록되어 있습니다.
이것은 강력합니다. 왜냐하면 기업 전반에 걸쳐 검색 및 발견을 가능하게 하고, 무엇보다도 즉시 사용 가능하기 때문입니다. 개발자는 엔드포인트를 직접 코딩하거나 워크플로를 새로 만들 필요가 없습니다. 대신, 기업의 거버넌스 프레임워크를 준수하면서 필요한 자산을 즉시 찾고 신뢰할 수 있습니다.
예를 들어 RetailOps Intelligence Agent를 살펴보세요. 다음과 같은 도구들이 있습니다. get_state_census_data(외부 API를 호출하는), get_business_conduct_policy_info(벡터 인덱스 검색을 수행하는) 이러한 함수들은 간단한 Unity 카탈로그 함수로 구현하는 것이 가장 좋습니다. YAML 파일을 다시 작성하거나 사용자 정의 코드를 작성할 필요 없이, 모든 복잡성이 추상화되어 깔끔하고 관리되며 감사 가능한 호출만 있으면 됩니다.
활용하는 두 가지 방법
우리는 서로 다른 사용 사례와 대상을 위해 최적화된 두 가지 인터페이스를 통해 이 시스템에 접근할 수 있도록 구축했습니다.
CLI 도구 - 터미널 환경에서 작업하는 분석가와 데이터 과학자에게 최적의 도구입니다. 진행률 표시기, 에이전트 실행 추적, 상세 로깅 기능을 갖춘 풍부한 형식의 출력 결과를 제공합니다. 빠른 인사이트 도출을 위해 단일 쿼리를 실행하거나, 심층적인 탐색을 위해 대화형 세션을 시작할 수 있습니다. 마치 조직의 모든 데이터에 접근할 수 있는 전문가와 대화하는 것과 같은 경험을 제공합니다.
터미널 사용을 선호하는 사용자를 위한 CLI
Databricks의 Streamlit 앱(이전 데모 참조)은 엔터프라이즈 환경 구축의 진수를 보여줍니다. 웹 인터페이스는 에이전트 실행 현황을 실시간으로 시각화하여 에이전트들의 협업 과정을 직접 확인할 수 있도록 합니다. 하지만 엔터프라이즈 환경에 최적화된 기능은 바로 여기에 있습니다. Databricks 앱은 앱 수준 권한 부여와 사용자 기반 대리 인증을 모두 지원합니다.
즉, 최고 경영진은 데이터 거버넌스를 준수하면서도 유용한 정보를 얻을 수 있습니다. 사용자는 권한이 있는 정보만 볼 수 있으며, 시스템은 모든 감사 기록을 완벽하게 유지합니다. 바로 이 부분에서 Databricks에 앱을 배포할 때 매우 중요한 기능인 '인증 대행(On-Behalf-of-Auth)'이 빛을 발합니다. 하지만 그 전에 데모를 통해 앱의 기능을 간단히 살펴보겠습니다.
Multi-Agent AI System with Databricks and OpenAI Agents SDK
Databricks 앱에 다중 에이전트 AI 시스템 배포
대리 권한(On-Behalf-Of Auth): 어떻게 동작하며 왜 중요한가?
맞춤형 소프트웨어 개발 및 유지 관리는 항상 비용과 관리 부담이 따랐습니다. Databricks Apps는 Unity Catalog와 함께 데이터뿐 아니라 모델링, 서비스 제공 및 벡터 검색 엔드포인트까지 손쉽게 관리할 수 있도록 지원합니다.
- 사용자 대행 권한 부여: 앱의 서비스 주체에게 광범위한 권한을 부여하는 대신, 앱은 사용자의 자격 증명을 사용하여 리소스에 액세스합니다. 이렇게 하면 코드에 로직을 하드코딩하지 않고도 행 수준 필터 및 열 마스크와 같은 기존의 세분화된 액세스 제어를 활용할 수 있습니다.
- 일관된 거버넌스: 모든 데이터 쿼리, 모델 추론 및 벡터 인덱스 호출은 Unity Catalog에 정의된 정책을 준수하여 규정 준수 및 감사 가능성을 보장합니다.
- 테이블과 모든 자산: 사용자 권한 부여는 모델 서빙, 함수, 벡터 검색 엔드포인트, 심지어 사용자가 실행할 수 있는 Databricks 작업과 같은 보안 가능한 항목으로 확장되어 모든 자산 유형에 걸쳐 거버넌스를 통합합니다.
- 하이브리드 권한 부여 모드: 서비스 주체 모드와 대리 모드를 결합할 수 있습니다. 예를 들어, 앱은 서비스 주체를 사용하여 감사 로그를 작성하는 동시에 사용자 자격 증명으로 사용자별 데이터를 쿼리할 수 있습니다.
- API를 사용한 앱 체이닝: 앱과 서비스 간의 OAuth 토큰 전달을 통해 사용자 지정 인증 코드 없이 복잡한 다중 서비스 워크플로를 구현할 수 있습니다.’

사용자가 앱을 실행하면 앱이 사용자를 대신하여 작업을 수행할 수 있도록 승인하라는 메시지가 표시됩니다. 이를 통해 모든 쿼리와 작업은 사용자의 Unity Catalog 권한을 상속받게 됩니다.

이러한 설계 선택이 갖는 의미는 매우 심오합니다. 단순히 더 나은 분석 기능을 이야기하는 것이 아니라, 거버넌스를 훼손하지 않으면서 기업의 의사 결정 속도를 근본적으로 변화시키는 것을 의미합니다.
RetailOps 인텔리전스 앱이 매장 관리자에게까지 확장된 시나리오를 상상해 보세요. 관리자가 로그인하여 "지난주 우리 매장에서 실적이 가장 저조했던 SKU 3개는 무엇이며, 다음 달 재고를 최적화하려면 각 SKU별로 몇 개씩 주문해야 할까요?"라고 질문합니다. 앱은 내부적으로 관리자 인증 방식을 사용하여 판매 데이터를 조회하고, 행 수준 필터를 적용하여 각 관리자가 자신의 매장 결과만 볼 수 있도록 합니다. 그런 다음 Unity 카탈로그 정책에 따라 관리되는 예측 모델을 실행하여 해당 SKU에 대한 최적 주문량을 예측합니다. 모든 상호 작용 및 지표는 앱의 서비스 주체에 의해 중앙 집중식 감사 테이블에 기록되어 완벽한 추적성과 관리 기능을 보장합니다.
인증 흐름, 권한 로직, 감사 기능 등을 직접 구현하는 맞춤형 프런트엔드 애플리케이션을 구축하시겠습니까? 아니면 Databricks Apps와 Unity Catalog를 활용하여 모든 기능을 즉시 이용하고 출시 기간을 단축하시겠습니까?
미래는 협업 지능(Collaborative Intelligence)에 달려 있습니다.
이 시스템에서 우리를 가장 흥분시키는 것은 기술 자체가 아니라, 그것이 열어주는 가능성입니다. 우리는 인간이 서로 다른 데이터 소스를 연결하는 역할을 해야 했던 세상에서, AI 에이전트들이 각자의 전문성을 활용하여 복잡한 문제를 해결하며 자연스럽게 협력하는 세상으로 나아가고 있습니다.
앞서 언급했던 소매업계 임원은 이 시스템을 사용하면 매장 실적에 대한 답변뿐만 아니라 내부 운영, 시장 상황, 경쟁 구도, 인구 통계학적 추세까지 아우르는 통찰력을 얻을 수 있습니다. 이 모든 정보를 몇 주가 아닌 몇 분 만에 받아볼 수 있죠.
미래의 기업 인텔리전스는 바로 이런 모습입니다. 전문화되고, 협업적이며, 무한히 확장 가능한 형태죠. 이제 관건은 여러분의 조직이 멀티 에이전트 시스템을 도입할지 여부가 아니라, 그 강력한 기능을 가장 먼저 활용할 것인지, 아니면 뒤늦게 따라잡을 것인지입니다.
여기에서 코드를 다운로드하여 여러분의 사용 사례에 맞게 복제하거나 수정할 수 있습니다. 이제 남은 질문은 하나뿐입니다. 여러분의 에이전트들이 함께 무엇을 발견할까요?!
본 게시글의 원문은 이곳에서 확인하실수 있습니다.
'Databricks Blog' 카테고리의 다른 글
| AI 에이전트 개발하기 1부: Databricks 및 OpenAI Agents SDK를 사용하여 에이전트 기반 앱 구축 및 배포 (0) | 2025.12.17 |
|---|