본문으로 건너뛰기
Weaviate Blog조회 2

멀티모달 임베딩과 RAG: 실전 가이드

텍스트, 이미지, 오디오, 비디오를 동일한 벡터 공간에 매핑하여 데이터 손실 없이 검색하고 추론하는 멀티모달 RAG 시스템 구축 가이드이다.

섹션별 상세

01
기존 검색 시스템은 오디오나 이미지를 텍스트로 변환하는 과정에서 톤, 질감, 공간적 레이아웃과 같은 핵심 정보를 잃는 문제가 발생했다. 멀티모달 임베딩은 데이터를 원래 형태 그대로 벡터화하여 서로 다른 모달리티 간의 의미적 유사도를 직접 비교할 수 있게 한다. 이를 통해 텍스트 전사본이 아닌 원본 데이터의 맥락을 온전히 보존한 검색이 가능해졌다.
임베딩 공간의 3D 시각화 다이어그램
Diagram의미적으로 유사한 'Dog'와 'Puppy'는 벡터 공간에서 가깝게 위치하고, 관련 없는 'Jira Tickets'는 멀리 떨어져 있음을 보여주며 임베딩의 기본 원리를 설명한다.
02
대조 학습은 이미지-캡션 쌍과 같은 데이터를 사용하여 관련 있는 입력은 가깝게, 관련 없는 입력은 멀게 배치하도록 인코더를 학습시킨다. CLIP과 ImageBind 같은 모델이 이 방식을 증명했으나, 최근에는 여러 모달리티를 처음부터 단일 아키텍처로 학습시켜 모달리티 간의 간극을 줄이는 네이티브 멀티모달 모델이 주류가 되고 있다. 이러한 통합 아키텍처는 하위 작업에서 발생하던 예측 불가능한 정확도 저하와 편향을 줄여준다.
멀티모달 임베딩 모델의 입력 및 출력 구조
Diagram쿼리, 오디오, 비디오, 이미지, 텍스트 등 다양한 입력이 하나의 멀티모달 임베딩 모델을 거쳐 공통된 벡터 공간으로 매핑되는 과정을 시각화했다.
대조적 사전 학습(Contrastive Pre-training) 메커니즘
Diagram텍스트 인코더와 이미지 인코더가 쌍을 이루어 행렬 형태의 유사도를 계산하며, 올바른 쌍은 가깝게 학습되는 CLIP 스타일의 학습 구조를 보여준다.
03
멀티모달 RAG 시스템 설계 시에는 네이티브 임베딩 사용 여부, 비텍스트 데이터의 청킹 전략, 벡터 차원 크기 결정이 중요하다. 특히 Matryoshka Representation Learning(MRL)을 지원하는 모델을 사용하면 검색 품질을 크게 저하시키지 않으면서도 벡터 차원을 축소하여 저장 비용을 절감할 수 있다. 3,072차원 벡터를 768차원으로 줄여도 사용 가능한 수준의 표현력이 유지됨이 확인됐다.
python
client.collections.create(
 name=COLLECTION_NAME,
 properties=[
  Property(name="text", data_type=DataType.TEXT),
  Property(name="image", data_type=DataType.BLOB),
  Property(name="audio_clip", data_type=DataType.BLOB),
  Property(name="video_clip", data_type=DataType.BLOB),
 ],
 vector_config=[
  Configure.Vectors.multi2vec_google_gemini(
   name="my_vector",
   image_fields=["image"],
   audio_fields=["audio_clip"],
   video_fields=["video_clip"],
   text_fields=["text"],
   model="gemini-embedding-2-preview",
   vector_index_config=Configure.VectorIndex.flat(),
  )
 ],
)

Weaviate에서 Gemini Embedding 2를 사용하여 멀티모달 컬렉션을 생성하는 예시

멀티모달 RAG 시스템 아키텍처
DiagramGemini Embedding 2를 통한 인덱싱, Weaviate DB 저장, 그리고 Gemini 3 Flash LLM을 사용한 최종 답변 생성까지의 전체 워크플로우를 나타낸다.
04
오디오 RAG 시스템은 음성 전사 없이 오디오를 일정 간격으로 청킹하여 직접 임베딩하며, 검색된 오디오 바이트를 멀티모달 LLM에 전달한다. 이를 통해 텍스트 전사본에서는 파악하기 힘든 화자의 숨소리, 강조점, 침묵과 같은 비언어적 맥락까지 생성 과정에 반영할 수 있다. 실제 시연에서 시의 텍스트 내용뿐만 아니라 낭독자의 감정적 톤까지 반영한 답변 생성이 가능했다.
python
# Text -> Audio search
results = collection.query.near_text(
 query="bending under the weight of ice and snow",
 limit=3,
 target_vector="audio",
 return_properties=["chunk_index", "start_time", "end_time"],
)

# Audio -> Audio search
results = collection.query.near_media(
 media="chunk.mp3",
 limit=3,
 media_type=NearMediaType.AUDIO,
 target_vector="audio",
)

텍스트 쿼리 또는 오디오 파일을 사용하여 오디오 데이터를 검색하는 예시

05
PDF 문서를 텍스트로 추출하는 대신 각 페이지를 이미지로 변환하여 인덱싱하면 복잡한 도표, 주석, 다단 레이아웃 정보를 온전히 보존할 수 있다. 사용자의 텍스트 쿼리는 시각적 유사성을 기반으로 관련 페이지 이미지를 찾아내며, LLM은 이 이미지를 인간처럼 직접 읽고 답변을 생성한다. 이는 OCR 과정에서 발생할 수 있는 데이터 왜곡을 원천적으로 차단하는 효과가 있다.
멀티모달 PDF RAG 시스템 상세 구조
DiagramPDF를 페이지 단위 이미지로 변환하여 벡터화하는 모듈과 검색된 이미지를 LLM에 전달하여 답변을 얻는 생성 모듈의 구체적인 흐름을 설명한다.
06
비디오 검색에서는 대화 내용보다 시각적 동작이 더 중요할 때가 많으므로, 비디오를 짧은 세그먼트로 나누어 시각적 특징을 기반으로 검색하는 것이 효과적이다. 튜토리얼 영상에서 특정 설정을 변경하는 손동작을 찾는 등 시각적 단서를 기반으로 한 검색이 가능하며, 비디오 클립 자체를 쿼리로 사용하는 비디오-투-비디오 검색도 지원된다. 검색된 원본 비디오 청크는 생성 모델이 직접 추론하여 정확한 답변을 도출하는 데 사용된다.

용어 해설

멀티모달 임베딩(Multimodal Embeddings)
텍스트, 이미지, 오디오, 비디오 등 서로 다른 형태의 데이터를 동일한 고차원 벡터 공간에 수치로 표현하는 기술이다. 서로 다른 매체 간의 의미적 유사도를 계산할 수 있게 하여 통합 검색을 가능하게 한다.
대조 학습(Contrastive Learning)
유사한 데이터 쌍은 가깝게 배치하고 관련 없는 데이터 쌍은 멀게 배치하도록 모델을 학습시키는 기법이다. 멀티모달 모델이 서로 다른 형식의 데이터 사이에서 공통된 의미 구조를 학습하는 핵심 원리이다.
마트료시카 표현 학습(Matryoshka Representation Learning)
하나의 벡터 안에 여러 해상도의 정보를 중첩하여 학습시키는 방식이다. 벡터의 앞부분만 잘라서 사용해도 성능 저하를 최소화하면서 저장 용량과 계산 비용을 줄일 수 있다.
검색 증강 생성(RAG)
외부 지식 베이스에서 관련 정보를 검색하여 LLM의 프롬프트에 주입함으로써 답변의 정확도를 높이는 기술이다. 멀티모달 환경에서는 텍스트 외의 미디어 데이터를 검색 결과로 활용한다.

기술

  • Weaviate
  • Gemini Embedding 2
  • Gemini 3 Flash
  • CLIP
  • ImageBind
  • Python

활용 사례

  • 오디오 전사 없는 팟캐스트/인터뷰 검색
  • 복잡한 레이아웃과 도표가 포함된 PDF 문서 RAG
  • 시각적 동작 기반의 비디오 세그먼트 검색
AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

원문 발행 2026. 04. 01.수집 2026. 04. 03.출처 타입 RSS

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.