주요 컨텐츠로 이동

Databricks에서 멀티모달 AI 시스템을 구축하고 확장하는 방법

Multimodal AI Functions Blog OG image

Published: October 13, 2025

제품5분 소요

Summary

  • 멀티모달이 중요한 이유 – 텍스트, 이미지, 오디오 등을 결합하여 엔터프라이즈 AI를 위한 더 깊은 인사이트를 얻고 더 나은 의사 결정을 내리는 방법을 확인해 보세요.
  • Databricks에서 단계별로 따라하기 – PySpark, ai_query(), Mosaic AI Vector Search, Mosaic AI Model Serving을 사용하여 엔드투엔드 멀티모달 파이프라인을 구축하는 방법을 배워보세요.
  • 실제 사용 사례 – 사진으로 손상을 분류하고 즉시 비용을 예측하는 자동차 보험금 청구 견적 사례 연구를 따라가 보세요.

엔터프라이즈 AI에 멀티모달이 중요한 이유

현실 세계는 멀티모달입니다. 여러분의 AI도 그래야 합니다. 기업은 더 이상 텍스트, 이미지 또는 오디오를 개별적으로 처리하는 시스템에만 의존할 수 없습니다. 이 블로그 게시물에서는 Databricks 플랫폼에서 멀티모달 AI를 효과적으로 구현하고 활용하는 과정을 안내합니다.

이러한 시스템을 구축하려면 강력한 모델뿐만 아니라, 다양한 데이터 유형을 처리하고 원활하게 확장하며 처음부터 거버넌스를 내장할 수 있는 통합 플랫폼이 필요합니다. 이것이 바로 Databricks가 실제 멀티모달 애플리케이션을 위해 데이터, AI, 오케스트레이션을 통합하는 데 강점을 보이는 부분입니다.

Databricks를 사용하면 Mosaic AI Model Serving, Vector Search, Unity Catalog와 같은 통합 기능 덕분에 기업은 멀티모달 실험에서 프로덕션으로 더 빠르게 전환할 수 있습니다.

멀티모달 AI의 사용 사례

다양한 산업 분야에서 멀티모달 AI의 애플리케이션은 방대하고 혁신적입니다. 다양한 데이터 양식을 결합하여 상당한 가치를 창출하는 몇 가지 사용 사례는 다음과 같습니다.

  • 고객 서비스 및 지원: 멀티모달 고객 서비스 AI 시스템은 고객의 텍스트 쿼리를 이해할 뿐만 아니라 고객의 목소리 톤(오디오)을 분석하고 문제에 대한 스크린샷이나 동영상(이미지)을 해석할 수 있습니다.
  • 의료 및 진단: 멀티모달 AI는 환자 기록(텍스트), 의료 영상(X-ray, MRI), 센서 데이터(심박수, 혈당 수치)를 통합하여 더 정확한 진단을 제공하고, 질병 진행을 예측하며, 치료 계획을 개인화할 수 있습니다.
  • 리테일 및 이커머스: 멀티모달 AI는 고객 리뷰(텍스트), 제품 이미지, 그리고 제품 사용 영상까지 처리할 수 있습니다. 이를 통해 기업은 고객 선호도를 더 잘 이해하고, 제품 추천을 최적화하며, 사기 행위를 탐지할 수 있습니다.

이러한 예시들은 멀티모달 AI가 어떻게 산업을 혁신할 수 있는지를 보여주지만, 성공을 위해서는 강력한 모델 이상의 것이 필요합니다. 확장 가능한 데이터 처리, 추론, 거버넌스 및 스토리지가 필요합니다. Databricks는 원시 데이터를 실행 가능한 인텔리전스로 변환하는 데 필요한 확장 가능한 인프라와 고급 기능을 제공하여 혁신과 경쟁 우위를 주도합니다. 이 블로그 게시물에서는 Databricks 플랫폼에서 멀티모달 AI를 효과적으로 구현하고 활용하는 과정을 안내합니다.

멀티모달 AI 복합 시스템의 기능을 강조하기 위해 가상의 자동차 보험 회사인 AutomatedAutoInsurance Corp.를 위한 멀티모달 AI 파이프라인을 구축할 것입니다. 과거 보험 청구 데이터에 대해 배치 추론을 사용하여 손상을 분류하고 Vector Search를 위한 임베딩을 생성합니다. 그런 다음 실시간 추론 애플리케이션에서 이를 사용하여 배치 파이프라인으로 분류된 유사 사례와 매칭함으로써 고객이 제출한 이미지의 견적을 추정하고, 이를 통해 보험 적용 범위를 추정할 수 있습니다.

멀티모달 AI 실제 활용: 즉석 자동차 보험 견적

수년 동안 자동차 보험 사업을 해온 자동차 보험 회사를 상상해 보세요. 이 회사의 과거 보험금 청구 데이터베이스에는 파손된 자동차 사진과 청구와 관련된 총비용이 포함되어 있습니다. 고객이 자동차 사고를 당하면 이미 스트레스가 많은 하루를 보내고 있을 것이므로, 우리는 가능한 한 원활한 보험금 청구 경험을 만드는 데 도움을 주고자 합니다. 우리는 고객이 사고 현장에서 제출한 사진 한 장만으로 고객에게 실시간 보험금 청구 비용 견적을 제공하는 복합 AI 시스템 을 만들고 싶습니다. 이를 위해 배치 추론을 사용하여 과거 청구에 대한 충분한 이해를 구축하고, 고객이 필요한 정보를 신속하게 얻을 수 있도록 실시간 멀티모달 파이프라인을 만들어야 합니다.

멀티모달 배치 추론

Model Serving의 배치 추론을 사용하여 과거 보험금 청구 데이터 세트와 이러한 청구와 관련된 이미지 데이터를 살펴보고 자동차의 손상 유형에 대한 분류를 구축할 수 있습니다. 이를 통해 실제 청구 데이터와 함께 일관된 자동차 손상 분류를 구축하여 나중에 Vector Search 인덱스에 사용할 적절한 임베딩을 구축할 수 있습니다.

Databricks ai_query를 사용하면 원하는 JSON 스키마를 지정하여 구조화된 출력을 추출할 수 있습니다. 이는 원하는 스키마를 강제하므로 LLM 출력에 대한 사용자 지정 구문 분석 코드를 작성할 필요가 없다는 점에서 매우 강력합니다! 이 경우, 모델이 자동차 사진에서 사전 정의된 일부 손상 유형을 식별하도록 하려고 합니다. JSON 스키마에서 탐지하려는 손상 유형을 지정합니다.

Python에서 클래스를 정의하는 쉽고 잘 알려진 객체 지향 방법은 Pydantic을 사용하는 것입니다. Pydantic으로 출력 스키마를 정의하려는 경우, 이 블로그의 코드 리포지토리를 확인하세요. 여기에는 Pydantic 클래스를 ai_query용 JSON 형식으로 변환하는 도우미 함수가 포함되어 있습니다.

모든 모델과 마찬가지로 저희 멀티모달 모델에도 몇 가지 권장사항 또는 데이터 가정이 있습니다. 이 배치 사용 사례에는 Claude 3.7 Sonnet을 사용할 것이며, 이미지가 최대 1568픽셀 크기일 때 가장 잘 작동합니다. 이미지를 적절하게 리사이징하고 있는지 확인해야 합니다.

이제 이 모든 것을 결합하여 ai_query() 호출의 형식을 지정할 수 있습니다.

그러면 다음과 같이 형식이 지정된 ai_query()가 생성됩니다.

이미지를 읽고, 크기를 조정하고, 배치 추론 함수를 적용하는 전체 배치 추론 프로세스는 UC 볼륨에서 이미지를 읽는 여기에 캡슐화되어 있습니다.

결과적으로 다음과 같은 손상 분류가 생성됩니다.

이제 고객이 새 사진을 제출할 때 과거 데이터에서 유사한 손상 청구를 검색할 방법을 고안해야 합니다. 한 가지 가능성은 새 고객의 청구와 동일한 손상을 입은 다른 청구에 대해 간단한 데이터베이스 조회를 수행하는 것입니다. 이 아이디어의 한 가지 문제점은 과거 데이터가 없는 새로운 손상 조합의 인스턴스를 볼 때 이를 처리하는 방법을 알아내는 것입니다. 이전에 보지 못했던 새로운 손상 조합에 대해 정확한 견적을 내려면 어떻게 올바른 과거 청구 기록을 검색해야 할까요?

이 블로그에서 사용할 검색 솔루션은 임베딩을 활용하는 것입니다. 대부분의 임베딩 검색 기반 시스템은 코사인 유사도 메트릭을 활용하여 조회할 가장 가까운 다른 데이터를 찾습니다. 이는 많은 사용 사례에서 잘 작동하지만, 이번 사용 사례에서는 이름이 같은 여러 부품에 손상이 있을 수 있습니다. 예를 들어, 도어 패널 두 개가 손상된 보험 청구를 상상해 보세요. 만약 '도어 패널'에 대한 임베딩을 두 번 가져와서 단순히 평균을 낸다면, 단일 도어 패널과 동일한 임베딩을 갖게 될 것입니다. 그러면 검색 시스템은 두 개의 도어 패널에 대한 새로운 고객의 청구를 추정하기 위해 단일 도어 패널 청구를 사용할 가능성이 높으며, 이는 매우 부정확할 것입니다! 대신 각 손상된 구성 요소에 대한 임베딩을 합산하고 유클리드 거리 메트릭을 활용하여 유사한 청구를 검색할 수 있습니다. 이렇게 하면 동일한 유형의 여러 손상된 구성 요소가 있는 청구가 여전히 잘 표현되면서도 논리적으로 해당 손상된 구성 요소의 단일 인스턴스와 가깝게 유지되도록 할 수 있습니다.

Databricks Vector Search는 기본적으로 유클리드('L2') 거리를 구현하므로 원하는 결과를 얻기 위해 임베딩 계산 로직만 수정하면 됩니다.

그런 다음 Vector Search 인덱스를 생성할 수 있습니다.

이제 과거 데이터에서는 볼 수 없었던 손상 청구 조합으로 간단한 테스트를 수행할 수 있습니다.

그러면 가장 가까운 상위 5개의 과거 손상 청구가 출력됩니다.

그 결과, 정확히 일치하는 항목은 없었지만 몇 가지 흥미롭게 유사한 과거 클레임을 찾았습니다! 반환된 각 클레임은 새로운 클레임에 포함된 부품 중 하나 이상을 포함하고 있으며, 모두 여러 부품에 손상이 있는 클레임입니다.

멀티모달 실시간 추론

이제 Vector Search 인덱스를 생성했으므로 이를 이미지 처리, 임베딩 계산, Pydantic 모델을 통해 출력 스키마 설정 등의 헬퍼 함수와 결합하여 다음을 수행할 수 있는 에이전트의 pyfunc 정의로 만들 수 있습니다.

  1. 자동차 손상 이미지를 입력으로 받습니다
  2. 이미지 처리
  3. 처리된 이미지의 임베딩 계산
  4. 이를 사용하여 Vector Search 인덱스로 유사성 검색 수행
  5. 유사한 청구를 사용하여 평균 청구 비용을 구합니다.
  6. 사용자에게 견적 및 평가 반환

에이전트에 대한 predict() 정의의 pyfunc 부분은 다음과 같습니다(일부 함수는 위에 언급되어 있으므로 간결성을 위해 일부 코드를 제거했지만 전체 예제는 여기 GitHub에서 볼 수 있습니다).

기본적으로 배치 예제와 동일한 프로세스를 실행하지만, 이미지-텍스트 생성에서 얻은 손상 분석을 사용하여 과거 사고에 대한 유사성 검색을 수행하여 견적 계산에 필요한 비용 데이터를 얻는 마지막 단계를 수행합니다.

우리의 pyfunc 에이전트를 테스트할 때 위에서 언급한 각 단계를 수행할 수 있습니다. MLflow 3.0을 사용하면 시각적 추적에서 전체 프로세스를 엔드투엔드로 볼 수 있습니다.

모델을 로깅, 등록한 다음 Mosaic AI Model Serving에 배포하면 이제 견적 추정기 애플리케이션에서 사용할 수 있으며, 사용자는 자동차 손상 사진을 업로드하여 차량 손상 비용에 대한 견적을 받을 수 있습니다.

시작하기

강력한 멀티모달 복합 AI 시스템을 구축하는 것이 복잡할 필요는 없습니다. Databricks에는 PySpark, ai_query(), Mosaic AI Vector Search, Mosaic AI Model Serving과 같은 강력한 기능이 있어 엔드투엔드 AI 시스템 워크플로를 간소화합니다.

배치 추론 GenAI 작업의 경우, Pyspark와 ai_query()를 사용하여 멀티모달 추론을 자동으로 확장하세요. Databricks Mosaic AI Vector Search를 사용하면 임베딩을 강력하게 인덱싱하고 쿼리하여 프로덕션 등급의 검색 시스템을 신속하게 구축할 수 있습니다. Databricks Mosaic AI Model Serving을 사용하면 모든 애플리케이션 로직을 통합할 수 있는 프로덕션 등급 엔드포인트를 배포할 수 있습니다. Claude 및 Llama4와 같은 내장된 멀티모달 파운데이션 모델을 사용하면 멀티모달 시스템의 프로토타입을 제작하고 즉시 출시할 수 있습니다.

언제나 그렇듯이, 어떤 모델을 사용하든 해당 모델의 모범 사례를 따르도록 하세요. 이 블로그의 예시와 같이 이미지 분석을 수행하는 경우, 아래 표에서 다양한 인기 멀티모달 모델에 사용할 최적의 최대 이미지 크기를 확인하세요.

모델 제품군최적 최대 이미지 크기(픽셀)
Llama 4336
Claude1568
Gemma896

Databricks의 고급 GenAI 기능을 활용하여 지금 바로 멀티모달 AI 구축을 시작할 수 있습니다.

아래 리소스로 시작해 보세요.

 

(이 글은 AI의 도움을 받아 번역되었습니다. 원문이 궁금하시다면 여기를 클릭해 주세요)

게시물을 놓치지 마세요

관심 있는 카테고리를 구독하고 최신 게시물을 받은편지함으로 받아보세요