주요 컨텐츠로 이동
AI 연구

구조화된 차트 추출을 통한 에이전트 검색 기능 향상

ai_parse_document의 구조화된 차트 추출 기능은 가벼운 텍스트 검색과 결합되어 대형 멀티모달 임베딩 모델보다 뛰어난 성능을 발휘하는 동시에, 차트 검색 및 에이전트 답변 정확도를 향상시킵니다.

작성자: Databricks AI 연구팀

도입 배경

최근 점점 더 많은 기업들이 에이전트에게 자체 문서를 분석하고 그 내용에 대한 질문에 답변하도록 요구하고 있습니다. 하지만 중요한 정보의 상당 부분은 그림과 차트 안에 들어 있습니다. 많은 고객들이 에이전트가 차트의 값을 읽고 세어야 하는 질문에 답변하는 데 어려움을 겪고 있다는 사실을 발견했습니다. 에이전트가 다양한 기업 환경에서 안정적으로 작동하려면 차트를 더 쉽게 해석할 수 있도록 만들어야 합니다.

어떻게 하면 에이전트가 차트를 더 쉽게 이해하도록 만들 수 있을까요? 저희는 간단하고 빠른 테스트를 진행해 보았습니다. 여러 에이전트에게 “이 차트에 국소 최댓값(local maxima)이 몇 개 있나요?”라고 질문했습니다.

아래는 이 질문에 대한 프론티어 에이전트와 Databricks Genie의 답변을 비교한 것입니다. 프론티어 에이전트에는 이미지만 전달되었으며, 50초 동안 추론을 거쳤지만 여전히 오답인 17을 출력했습니다. 반면 Databricks Genie는 ai_parse_document를 통해 차트의 구조화된 추출 데이터를 사용했고, 정답인 18을 맞췄습니다.

image12.png

이미지만 제공된 프론티어 에이전트의 답변 (오답):차트의 구조화된 추출 데이터를 사용한 Genie 에이전트의 답변 (정답):
image4.pngimage10.png

저희는 모델이 차트 이해가 필요 없는 질문에 비해 차트 기반 및 멀티모달(multimodal) 질문에서 더 낮은 성능을 보인 OfficeQA Pro 벤치마크를 통해 이러한 한계를 확인했습니다. 특히 금융 서비스 분야 등 고객의 정보 검색 시스템에서도 동일한 격차가 나타나고 있습니다. 텍스트 기반 검색 시스템은 텍스트 공간만 검색할 수 있습니다. 일반적인 해결책은 차트의 내용을 설명하는 캡션을 생성하는 것이지만, 이 방식은 차트 내부의 숫자에 대한 세부적인 질문에 필요한 데이터를 놓칠 수 있습니다. 그 결과 시스템이 잘못된 페이지를 검색하거나, 올바른 페이지를 검색하더라도 질문에 답변하기에 충분한 정보가 없을 수 있습니다.

본 블로그 글에서는 차트에서의 구조화된 추출이 차트 기반 질문에 대한 검색 및 답변 품질을 모두 향상시킨다는 점을 보여줍니다. 저희는 시각적으로 풍부한 문서에 대한 검색 및 질의응답 벤치마크인 ViDoRe V3의 차트 비중이 높은 서브셋과, Chart-RAG라고 부르는 합성 차트 중심 데이터셋 등 두 가지 데이터셋에서 이 접근 방식을 평가합니다. 저희의 접근 방식은 대규모 단일 벡터 및 다중 벡터 멀티모달 임베딩 모델과 대등한 성능을 보여줍니다.

image9.png
그림 1: 상위 5개의 검색된 페이지를 답변에 사용할 때, 설명 전용 파싱, 상위 3개의 검색된 이미지를 포함하여 강화된 ai_parse_document, 그리고 가장 강력한 멀티모달 임베딩 기준 모델(baseline)의 답변 정확도 비교. 결과는 3회 실행의 평균값입니다.

저희는 최신 연구 기술로 최적화된 조합 가능한 함수 세트인 Databricks의 AI 함수를 사용하여 차트를 인식하는 엔드투엔드 검색 파이프라인을 구축했습니다(그림 2 참조). ai_parse_document를 사용하여 구조화된 JSON으로 표현된 차트를 포함한 문서 콘텐츠를 추출하고, ai_prep_search를 사용하여 이 콘텐츠를 검색 가능한 청크(chunk)로 변환한 다음, 경량 300M 매개변수 텍스트 임베딩 모델로 인덱싱했습니다. 그리고 ai_search를 사용하여 청크로부터 인덱스를 생성하고, 검색 및 답변을 위해 이 인덱스를 Genie에 연결했습니다.

image5.png
그림 2: Databricks AI 함수를 사용하여 구현된 차트 추출 및 검색 파이프라인.

평가 방법론

저희는 동일한 원본 PDF로 구축되었으며 차트 그림 표현 방식만 다른, 3억(300M) 매개변수 BGE 텍스트 임베딩 모델을 사용하여 생성된 두 개의 인덱스를 비교했습니다.

  • 설명 전용(기준 모델): 그림이 캡션으로만 표현됨
  • JSON 강화형: 차트 그림이 캡션과 구조화된 차트 JSON으로 표현되며, 그림 청크 내에 인라인으로 임베딩됨

차트 추출 예시:

image3.png
2026년 및 2027년의 GDP 성장률과 헤드라인 인플레이션에 대한 5가지 경제 예측 시나리오를 비교하는 그룹화된 막대형 차트.

저희는 ViDoRe V3 벤치마크에서 차트와 인포그래픽 비중이 높은 310개의 질문을 평가했습니다. 이 벤치마크는 고용, 에너지, 제약, 물리학, 금융, 컴퓨터 과학, 산업 문서 등 7개 도메인에 걸쳐 검색 및 답변 성능을 평가합니다. 각 실험을 위해 전체 1만 6천 페이지 분량의 영어 코퍼스를 파싱 및 청킹하고, 전체 인덱스를 검색하여 모든 쿼리에 대한 답변을 생성했습니다.

차트 중심의 질문들이 선택되었지만, 상당수는 주변 텍스트를 사용해서도 답변할 수 있었습니다. 차트 콘텐츠만의 영향을 격리하기 위해, 저희는 복잡하고 차트 비중이 높은 3개의 보고서(BIS Quarterly Review, IMF World Economic Outlook, J.P. Morgan Long-Term Capital Market Assumptions)에서 생성된 차트 기반 질문에만 초점을 맞춘 두 번째 벤치마크를 만들었습니다. 총 378페이지에 달하는 이 3개 문서에서 시각적 근거가 필요한 114개의 질문을 작성하여 합성 Chart-RAG 데이터셋을 구축했습니다.

채점: LLM 평가자(gemini-3-flash)를 사용하여 정답(gold answer) 대비 각 답변을 정답(Correct) / 부분 정답(Partially Correct) / 오답(Incorrect)으로 점수를 매겼습니다.

검색: Hit Rate@10 및 nDCG@10을 보고합니다. Hit Rate@10은 검색된 상위 10개 결과에 정답 페이지가 하나 이상 포함되어 있는지 확인합니다. ViDoRe 벤치마크의 질문에는 여러 정답 페이지가 있을 수 있으며, 각 페이지의 관련성 점수는 1점 또는 2점입니다. Hit Rate@10의 경우, 두 점수 중 하나를 가진 페이지를 히트(hit)로 인정하여 등급별 관련성을 이진 관련성으로 변환합니다. nDCG@10의 경우 원래의 등급별 관련성을 유지합니다. Chart-RAG 데이터셋에서 각 쿼리는 하나의 정답 페이지를 가집니다.

안정적인 측정을 위해 각 구성을 세 번 실행하고 신뢰 구간과 함께 결과를 보고합니다.

구조화된 차트 데이터로 검색 및 답변 성능 향상

image6.png
그림 3: ViDoRe V3 서브셋 및 합성 Chart-RAG 데이터셋 전반에서 설명 전용 및 차트 JSON 강화형 검색의 답변 정확도, Hit@10 및 nDCG@10 비교. 결과는 3회 실행의 평균값입니다.

구조화된 차트 JSON은 두 데이터셋 모두에서 답변 품질과 검색 성능을 모두 향상시킵니다. 아래의 질문 수준 분석은 수정된 답변이 더 나은 검색 결과와 일치하는 경우를 보여줍니다.

image7.png
그림 4: 차트 JSON을 추가하여 이전에 오답이었던 답변을 수정한 결과. 수정된 답변 중에서 JSON이 검색(Hit@10) 또는 순위 지정(nDCG@10)을 향상시킨 빈도를 보여줍니다. 결과는 3회 실행의 평균값입니다.

Chart-RAG 데이터셋의 다음 예시는 JSON 표현이 검색 및 답변 품질을 어떻게 향상시키는지 보여줍니다.

질문이전 답변차트 JSON이 강화된 ai_parse_document 적용 후 답변

Oil VIX는 2026년 1분기 무렵에 대략 어느 정도의 최고 수준(% pts)에 도달했습니까?

다음 차트를 참조하십시오:

image2.png

"제공된 검색 결과에서 2026년 1분기 Oil VIX의 정확한 최고치 수준에 대한 구체적인 정보를 찾을 수 없습니다...""제시된 데이터에 따르면, Oil VIX는 2026년 1분기에 약 80%포인트에 도달했습니다."

이러한 검색 성능 향상은 차트에 관한 질문에만 국한되지 않을 수 있습니다. 추출된 차트 값과 레이블은 답변이 차트에 직접 나타나지 않는 경우에도 페이지 자체를 더 쉽게 검색할 수 있도록 도와줍니다.

이미지를 통한 답변 품질의 추가 향상

일부 질문은 단순히 값뿐만 아니라 그림이 어떻게 보이는지에 따라 달라집니다. 시각적 문맥 복원의 이점을 측정하기 위해, 답변 시점에 JSON과 함께 상위 3개의 검색된 텍스트 청크에 해당하는 이미지를 에이전트에게 제공했습니다.

image8.png
그림 5: 차트 JSON만 사용했을 때와 답변 시점에 검색된 상위 3개 이미지를 추가했을 때의 정답률. 결과는 3회 실행의 평균값입니다.

여기서 검색 결과는 변경되지 않습니다. 이미지를 추가하면 Chart-RAG 데이터 세트에서 4%포인트, ViDoRe V3 서브셋에서 2.6%포인트 향상됩니다.

JSON 표현식과 멀티모달 임베딩의 경쟁력 비교

한 가지 의문은 가벼운 3억 매개변수(parameter) 텍스트 임베딩 모델을 사용하는 당사의 접근 방식이 멀티모달 임베딩 모델과 비교했을 때 어떠한가입니다. 저희는 네 가지 대안 모델과 비교 벤치마크를 수행했습니다. 지연 상호작용(late-interaction) 채점 방식을 사용하는 대형 다중 벡터 멀티모달 임베딩 모델인 ColQwen2.5-3B, 대형 단일 벡터 멀티모달 임베딩 모델인 Qwen3-VL-Embedding-2B, 그리고 더 가벼운 단일 벡터 모델인 Jina CLIP v2(9억 매개변수) 및 CLIP ViT-L/14(4억 2,800만 매개변수)입니다. 각 멀티모달 모델은 모든 페이지를 임베딩했습니다. 쿼리 시점에는 ColQwen2.5-3B의 경우 MaxSim을 사용하고 단일 벡터 모델의 경우 코사인 유사도를 사용하여 페이지 순위를 매겼으며, 전체 코퍼스를 대상으로 검색한 후 점수가 가장 높은 5개 페이지를 답변 VLM에 전달했습니다. 저희가 5개의 검색된 페이지를 사용하여 답변 정확도를 보고하는 데는 두 가지 이유가 있습니다. 첫째, ViDoRe 서브셋과 Chart-RAG 데이터 세트에서 가장 우수한 성능을 보이는 깊이 사이의 균형 잡힌 중간 지점을 제공하기 때문입니다. 둘째, 5개 페이지는 당사 접근 방식에서 사용되는 평균 입력 컨텍스트와 유사하여 공정한 비교가 가능하기 때문입니다. 저희는 표준 검색 메트릭으로 여전히 nDCG@10을 보고합니다.

ViDoRe V3:

image11.png

Chart-RAG:

image13.png

가장 강력한 모델의 경우, 378페이지라는 작은 코퍼스 크기 때문에 Chart-RAG 데이터 세트에서의 검색 성능은 거의 포화 상태에 도달했습니다. 따라서 여기서 더 흥미로운 비교 대상은 답변의 품질입니다.

ViDoRe V3에서 상위 3개 이미지와 결합된 차트 JSON은 75.9%의 정확도에 도달합니다. Chart-RAG에서는 동일한 설정으로 75.1%에 도달합니다. 두 경우 모두 모델에 단 3개의 이미지만 전달하면서도 4개의 멀티모달 임베딩 베이스라인 성능을 능가합니다. 이러한 성능은 ColQwen2.5-3B의 다중 벡터, 지연 상호작용 아키텍처보다 약 10배 더 작고 단순한 대안을 통해 얻은 결과입니다. 따라서 구조화된 차트 전처리는 더 적은 이미지 리소스와 더 낮은 인덱싱 및 검색 오버헤드로도 경쟁력 있는 답변 품질을 제공할 수 있습니다.

결론

차트는 기업 문서에서 가장 지배적인 정보 형태 중 하나입니다. 차트 정보를 쉽게 찾고 명확하게 해석할 수 있도록 만드는 것은 검색 에이전트의 정확도에 매우 중요합니다. 구조화된 차트 JSON은 검색 인덱스에 정확한 값을 추가하고 에이전트가 이를 바탕으로 추론할 수 있도록 함으로써 기존 RAG 시스템의 간극을 메워줍니다. 저희는 구조화된 차트 JSON이 검색 품질과 에이전트 답변 정확도를 모두 향상시킨다는 것을 보여줍니다. 향후 연구에서는 다양한 구조화된 추출 표현 형식이 검색 및 답변 정확도에 미치는 영향을 추가로 탐구할 수 있을 것입니다.

ai_parse_document를 위한 차트 JSON 강화 기능이 곧 제공될 예정이므로, 파싱되는 모든 문서에는 함수의 인터페이스를 변경하지 않고도 차트 값이 구조화된 텍스트로 자동 포함됩니다. 검색을 위해서는 이를 ai_prep_search와 함께 사용하는 것을 권장합니다. 이 기능은 Databricks 고객을 위해 PDF 파일 내 차트 관련 질문에 대한 답변을 개선할 수 있도록 Genie One에도 적용될 예정입니다.

저자: Amrutha Srivatsav, Ivan Zhou, Jasmine Collins, Michael Bendersky, Adyasha Maharana, Erich Elsen, Xing Chen, Matei Zaharia

차트 인식 검색 및 답변 파이프라인을 구축하려면 곧 출시될 ai_parse_document와 ai_prep_search를 함께 사용해 보세요

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

최신 게시물을 이메일로 받아보세요

블로그를 구독하고 최신 게시물을 이메일로 받아보세요.