데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      멀티모달 기반 AI 챗봇 기술 연구&개발 (4회차, VLM(ColPali) & MUVERA 기술 소개)

      sysmoon 25.09.17
      99 2 0
      DEVOTEE 요약
      Morphik은 복잡한 문서의 텍스트와 시각 정보를 동시에 처리하며 빠르고 정확한 검색이 가능하도록 설계된 멀티모달 프레임워크입니다. ColPali는 텍스트와 이미지의 시각적 맥락까지 이해하는 멀티모달 검색 기술을, MUVERA는 고정 차원 인코딩 방식을 통해 멀티 벡터 검색의 속도와 비용 문제를 혁신적으로 개선했습니다. 이를 통해 검색 정확도, 속도, 효율성을 크게 향상시키며 전통적인 RAG 시스템의 한계를 극복합니다.
      DEVOTEE 추천 블로그

      오늘은 Morphik(Multimodal Agent Framework) 에 대해 소개하고,

      이 기술의 핵심인 VLM 을 이용하여 문서 청킹/파싱 과정 없이 시각적으로 맥락을 이해하기 위한 ColPali 와 멀티벡터를 빠르게 인덱싱&검색하기 위한 MUVERA 기술에 대해 소개합니다.


      Morphik의 핵심 기술 심층 분석 (ColPali & MUVERA)

      Morphik은 복잡한 문서(PDF, 이미지)를 정확하고 빠르게 검색하기 위해 설계된 멀티모달 프레임워크이며,

      특히 전통적인 RAG 시스템의 한계였던 시각 정보 처리 및 멀티 벡터 검색 속도 문제를 해결하는 데 중점을 둡니다.

      1. ColPali: 시각적 맥락을 이해하는 멀티모달 검색 엔진

      image

      ColPali는 ColBERT와 PaliGemma를 결합하여 만든 멀티모달 검색 기술입니다.

      이 기술은 문서의 텍스트뿐만 아니라 이미지, 표, 차트 같은 시각적 요소의 의미를 파악하고 검색하는 것을 목표로 합니다.


      1.1. 해결하고자 하는 문제: 기존 RAG의 시각 정보 손실

      기존의 PDF 검색 방식(Standard Retrieval)은 문서를 처리할 때 OCR, 레이아웃 감지, 청킹(문서 쪼개기) 등의 단계를 거칩니다.

      이 과정에서 그림, 레이아웃, 표, 글꼴 등 시각적 정보를 무시하고 텍스트 정보 위주로만 처리하게 됩니다.

      이는 원본 문서의 중요한 시각적 정보(이미지, 표, 차트)가 손실되는 근본적인 문제를 야기합니다.


      1.2. 핵심 작동 원리: 멀티모달 Late Interaction

      image

      ColPali는 기존의 ColBERT (Late Interaction) 모델을 멀티모달 환경으로 확장합니다.


      A. Late Interaction (지연 상호작용) 개념:

      전통적인 벡터 검색(Single Vector)은 질의(Query) 전체를 하나의 압축된 벡터로 만들고, 문서 전체를 하나의 벡터로 만들어 유사도를 측정합니다.

      이는 언어 이해나 순수한 벡터 공간의 용량(capacity)을 시험할 때 취약할 수 있습니다.

      반면, ColBERT가 사용하는 Late Interaction 방식은 질의를 구성하는 각 단어(토큰)의 벡터와 문서(페이지)를 구성하는 각 단어/패치(토큰)의 벡터를 분리합니다.

      검색 시에는 이 **개별 토큰들 간의 최대 유사도(MaxSim)**를 계산하고, 이 유사도 점수들을 합산하여 최종 점수를 산출합니다. 이는 검색 정확도를 높여줍니다.


      B. ColPali의 확장 (Multimodal Late interaction):

      ColPali는 이 Late Interaction을 이미지 영역으로 가져옵니다.

      1. 문서 처리 (오프라인 색인): ColPali는 PDF 문서를 텍스트가 아닌 이미지로 처리합니다.

        Vision LLM (예: PaliGemma)은 이 이미지에서 텍스트 정보뿐만 아니라 이미지 패치(Image Patches)의 임베딩(Embedding)을 추출합니다.

      2. 검색 및 유사도 계산: 사용자가 텍스트 쿼리를 입력하면, ColPali는 쿼리 토큰 벡터와 문서 이미지에서 추출된 패치/토큰 임베딩 벡터 간의 유사도를 계산하여 검색 점수를 매깁니다.

        이로써 텍스트와 이미지를 동시에 고려한 검색이 가능해집니다.

      C. 시각적 질의/응답 (VQA) 능력:

      ColPali는 PaliGemma 기반의 강력한 VQA 능력을 보여줍니다.

      예를 들어, 차트 이미지가 있을 때, "hour"라는 질의를 입력하면 단순 텍스트 인식(OCR)을 넘어 차트 내의 "hourly"나 "hours"를 정확히 인식하고,

      시간(hour)을 나타내는 x축 부분 등 시각적 맥락까지 이해하고 판단합니다.


      1.3. ColPali의 성능적 이점

      구분

      Standard Retrieval (기존 방식)

      ColPali (Morphik 방식)

      개선점

      NDCG@5 (정확도)

      0.66

      0.81

      검색 정확도 향상

      오프라인 색인 속도

      페이지당 7.22초 (PDF Parser)

      페이지당 0.39초

      약 18배 이상 속도 향상

      ColPali는 Late Interaction 구조 덕분에 대규모 문서 검색 환경에서도 안정적인 성능을 보장합니다.


      2. MUVERA: 멀티 벡터 검색의 속도 혁신 (고정 차원 인코딩)

      image.png

      MUVERA는 Multi-Vector Retrieval via Fixed Dimensional Encodings의 약자로, 멀티 벡터 검색 시 발생하는 높은 계산 비용과 복잡성 문제를 해결하기 위해 고안되었습니다.


      2.1. 해결하고자 하는 문제: 멀티 벡터 검색의 비용

      ColBERT와 같은 기술은 검색 정확도를 높이기 위해 하나의 문서를 여러 개의 토큰 벡터(멀티 벡터)로 표현합니다.

      하지만 이 멀티 벡터들을 모두 사용해 검색을 수행하면 계산 비용이 비싸지고 응답 속도가 느려집니다. 특히, 기존의 멀티 벡터 검색 시스템(예: PLAID)은 복잡하고 단계가 많은 파이프라인을 사용해야만 했습니다.


      2.2. 핵심 작동 원리: FDE (Fixed Dimensional Encodings)

      MUVERA는 이 문제를 해결하기 위해 **FDE (고정 차원 인코딩)**라는 개념을 사용합니다.

      이는 복잡하고 비용이 많이 드는 멀티 벡터 검색 문제를 간단한 단일 벡터 검색 문제로 변환하는 방식입니다.

      A. 오프라인 색인 (FDE 변환):

      문서에 포함된 여러 개의 멀티 벡터(예: 문서 1은 $2D$ 차원의 벡터 3개)를 계산 효율성을 높이기 위해 고정된 차원의 단일 FDE 벡터 (예: $4D$ 차원의 벡터 1개)로 변환합니다.

      이 과정을 통해 인덱싱과 저장이 단일 벡터 방식으로 효율화됩니다.

      B. 온라인 검색 (3단계 과정):

      사용자 쿼리가 들어왔을 때 MUVERA는 아래 세 단계를 거칩니다.

      1. 1단계: 쿼리 FDE 생성: 사용자 쿼리로부터 멀티 벡터를 생성한 후, 이를 쿼리 FDE 벡터로 변환합니다.

      2. 2단계: MIPS 검색 (빠른 근사 검색): MIPS (Maximum Inner Product Search, 최대 내적 검색) 인덱스를 사용하여 쿼리 FDE와 문서 FDE 간의 유사도를 빠르게 계산하고, 가장 유사도가 높은 후보 문서 $K_1$개를 신속하게 찾습니다.

        이는 빠른 근사 검색을 가능하게 합니다.

      3. 3단계: Chamfer 기반 Re-ranking (정밀 재정렬): 2단계에서 찾은 후보 문서들을 대상으로 원본 멀티 벡터를 사용한 정밀한 Chamfer 기반 Re-ranking 연산을 수행하여 최종 검색 결과의 정확도를 높입니다.


      2.3. MUVERA의 성능적 이점

      MUVERA는 복잡한 멀티 벡터 연산을 FDE로 치환함으로써 검색 속도를 획기적으로 개선합니다.

      • 응답 속도 (Latency) 개선: 기존 대비 응답 속도가 90% 감소했습니다.

      • 정확도 (Recall) 향상: 평균 Recall@N 성능이 약 10% 향상되었습니다.

      • 효율성: 기존과 동일한 Recall을 유지하면서도 처리해야 하는 후보 문서의 수를 5~20배 절감시킵니다.

      MUVERA는 특히 복잡한 다단계 파이프라인(PLAID)이 필요한 기존의 멀티 벡터 검색 방식에 비해 NQ-100, MS MARCO-1000 등

      다양한 데이터셋에서 지연 시간(Latency) 우위를 보이며 더 빠르고 효율적인 검색을 가능하게 합니다.


      Reference

      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      sysmoon 님의 최신 블로그

      더보기

      DEVOTEE 추천 블로그

      동영상 기고하기