중요합니다
이 기능은 베타 버전으로 제공됩니다. 작업 영역 관리자는 미리 보기 페이지에서 이 기능에 대한 액세스를 제어할 수 있습니다. Azure Databricks 미리 보기 관리 참조하세요.
Mosaic AI Vector Search는 데이터에 대한 다양한 검색 전략의 관련성을 측정하고 비교하는 기본 제공 검색 품질 평가를 제공합니다. 문서에서 평가 쿼리를 자동으로 생성하고, 여러 검색 전략을 실행하고, 자세한 보고서를 생성할 수 있습니다.
요구 사항
관리되는 델타 동기화 벡터 검색 인덱스입니다. 벡터 검색 엔드포인트 및 인덱스 만들기를 참조하세요.
Permissions
평가 작업 및 결과 대시보드는 벡터 검색 인덱스에서 Unity 카탈로그 권한을 상속합니다. 인덱스 쿼리 액세스 권한이 있는 사용자는 평가 실행을 시작하고 결과 대시보드를 볼 수 있습니다. 평가 실행을 시작하는 사용자는 인덱스의 소유자가 아니라 작업의 소유자입니다.
벡터 검색 검색 품질 평가 작동 방식
평가는 데이터에 대해 4단계 파이프라인을 실행합니다.
- 쿼리 생성: 시스템은 원본 테이블에서 문서를 샘플링하고 LLM을 사용하여 실제 검색 쿼리를 생성합니다. 자연어 쿼리와 키워드 쿼리가 혼합되어 생성됩니다.
- 전략 간 검색: 생성된 각 쿼리는 ANN, 하이브리드 및 전체 텍스트를 비롯한 여러 검색 전략을 사용하여 인덱스를 상대로 실행됩니다. 또한 각 전략은 재랜커를 사용 및 사용하지 않고 평가됩니다. 이 방법은 동일한 쿼리 집합에서 전략을 나란히 비교합니다. 각 검색 전략에 대한 자세한 내용은 검색 알고리즘을 참조하세요.
- 점수 관련성: LLM 판사는 모든 쿼리 및 검색된 문서 쌍을 4포인트 관련성 규모로 평가합니다.
- 메트릭 계산 및 분석: 시스템은 신뢰 구간을 사용하여 검색 품질 메트릭을 계산합니다. 결과는 나중에 보거나 평가 실행 간에 비교할 수 있도록 유지됩니다.
검색 품질 평가 실행 시작
프로세스를 시작하려면 벡터 검색 인덱스 페이지에서 검색 품질 평가(Evaluate Search Quality )를 클릭합니다. 기본값은 인덱스 메타데이터에 따라 미리 채워지기 때문에 구성이 필요하지 않습니다.
실행이 완료되면 결과 보기를 클릭하여 결과 대시보드를 표시합니다. 대시보드에 대한 개요는 결과 대시보드를 참조하세요.
언제든지 새 평가를 시작하려면 새 평가 시작을 클릭합니다.
결과 대시보드
대시보드는 평가 실행의 결과를 표시합니다. 실행 선택 드롭다운 메뉴를 사용하여 표시할 실행을 선택합니다.
대시보드 맨 위에는 3개의 요약 표시기가 있습니다. 모든 쿼리 유형에서 가장 DCG@10 점수, 이를 달성한 권장 쿼리 유형 및 평가된 쿼리 수입니다.
Databricks가 DCG@10 권장하는 이유를 참조하세요.
요약 표시기 아래에 대시보드에는 재랜커를 사용하거나 사용하지 않고 각 쿼리 유형에 대한 DCG@10 점수를 비교하는 가로 막대형 차트가 표시됩니다. 가로 막대형 차트 옆에는 재랜커를 사용하거나 사용하지 않고 각 쿼리 유형에 대한 DCG@10 및 평균 관련성을 보여 주는 두 개의 테이블이 있습니다.
다음은 각 쿼리 형식의 결과 위치에서 평균 관련성이 어떻게 변하는지 보여주는 꺾은선형 차트입니다.
또한 대시보드는 평균 관련성 점수별로 가장 높고 가장 낮은 성능의 쿼리와 각 쿼리 유형에 대한 기본 및 재랭커 성능을 비교하는 테이블, 실패한 쿼리 테이블(상위 1개 결과가 0으로 채점된 쿼리(관련이 없음)) 및 쿼리 메트릭에 따라 평가에서 선택한 메트릭을 보여 주는 꺾은선형 차트를 제공합니다.
관련성 점수 매기기
검색 품질 평가는 LLM-as-judge를 사용하여 각 쿼리의 점수를 매기고 검색된 문서 쌍을 4포인트 등급의 관련성 척도로 채점합니다.
| 점수 | 라벨 | 설명 | 예시 |
|---|---|---|---|
| 3 | 관련성이 높음 | 문서가 쿼리에 직접 응답하거나 검색된 정보를 정확하게 제공합니다. | 쿼리: "사각형 영역을 계산하려면 어떻게 하나요?" 문서에서 길이 × 너비 공식을 설명합니다. |
| 2 | 관련 | 문서가 관련되어 있고 유용한 정보를 제공하지만 쿼리에 완전히 응답하지 않을 수 있습니다. | 쿼리: "수표의 라우팅 번호는 어디에 있나요?" 문서에 "수표 맨 아래에 인쇄됨"(부분적으로 완료됨)이 표시됩니다. |
| 1 | 부분적으로 관련 | 문서에서 항목을 언급하지만 쿼리에 유용한 정보를 제공하지 않습니다. | 쿼리: "사각형의 영역을 계산하는 방법?" 문서에서는 일반적인 용어로만 직사각형 영역을 설명합니다. |
| 0 | 관련이 없음 | 문서가 쿼리와 관련이 없거나 문서 언어가 쿼리 언어와 일치하지 않습니다. | 영어로 쿼리 문서가 올바르게 답변하지만 프랑스어로 작성되었습니다. |
이진 관련/관련이 없는 배율에 비해 등급이 매겨진 눈금은 중요한 차이점을 캡처합니다. 예를 들어 질문에 직접 대답하는 문서(점수 3)는 단순히 주제(점수 1)에만 영향을 주는 문서와 의미 있는 차이가 있습니다. 이러한 세분성은 메트릭, 특히 DCG로 전달되며, 이는 더 높은 품질의 결과에 더 많은 가중치를 줍니다.
모든 메트릭에는 쿼리별 값에서 계산되는 95개의% 신뢰 구간이 포함되므로 전략 간의 차이점이 통계적으로 의미 있는지 여부를 평가할 수 있습니다.
검색 메트릭
대시보드 아래쪽에서 시간이 지남에 따라 선택한 메트릭을 볼 수 있습니다. 메트릭 선택 드롭다운 메뉴에서 표시할 메트릭을 선택합니다 .
이 섹션에서는 사용 가능한 메트릭에 대해 설명합니다.
DCG@k — 할인된 누적 이득
DCG@10은 0에서 3까지의 전체 관련성 척도를 사용하여 결과의 관련성과 순위 내 위치를 모두 캡처합니다. Databricks는 전체 검색 품질을 평가하기 위한 기본 메트릭으로 DCG@10 사용하는 것이 좋습니다.
- 측정값: 상위 10개 결과의 총 유틸리티이며 위치별로 가중치가 지정됩니다. 상위 순위 결과는 낮은 순위보다 더 많은 기여를 합니다.
- 작동 방식: 각 결과의 관련성 점수는 해당 위치에 따라 로그 할인에 의해 가중값이 매겨집니다. 첫 번째 결과는 전체 관련성을 기여하는 반면 순위가 낮은 결과는 점진적으로 더 적게 기여합니다.
- 범위: 다음 표에 표시된 이론적 최대값까지 0입니다. 더 높은 것이 좋습니다.
모든 결과가 3인 경우 이론적 최대 DCG 값:
| k | 이론적 최대 DCG |
|---|---|
| 1 | 3.00 |
| 3 | 6.39 |
| 5 | 8.85 |
| 10 | 13.63 |
| 20 | 21.12 |
이러한 숫자를 관점으로 표시하려면 10개 결과 모두 관련성이 2인 경우(0-3의 배율) DCG@10 13.6입니다. 이 시나리오에서 1포인트 DCG@10의 이득은 매우 중요한 개선 사항이며, 이는 상대적으로 7% 증가에 해당합니다. 페이지에서 위쪽으로 가중치가 적용되어 눈에 띄게 개선되는 대략 하나의 결과로 생각할 수 있습니다.
NDCG@k — 정규화된 할인 누적 이득
- 측정값: 최상의 순서를 기준으로 결과가 정렬되는 정도입니다. NDCG는 DCG를 이상적인 DCG(결과가 내림차순으로 정렬된 경우 DCG)로 나누어 정규화합니다.
- 범위: 0에서 1까지입니다. 점수가 1.0이면 결과가 완벽한 순서로 표시됩니다.
- 사용 시기: 사용 가능한 총 관련 문서 수와 관계없이 시스템이 결과의 순위를 올바르게 지정하고 있는지 확인하려는 경우입니다. 자세한 비교 를 위해 DCG@10 권장되는 기본 메트릭인 이유를 참조하세요.
Recall@k
- 측정값: 상위 K 결과에 표시되는 알려진 관련 문서의 비율입니다.
- 범위: 0에서 1까지입니다. 점수가 1.0이면 알려진 모든 관련 문서가 검색되었음을 의미합니다.
- 사용 시기: 관련 문서가 누락된 RAG 애플리케이션과 같이 완전성이 중요한 경우 LLM은 불완전한 답변을 생성합니다.
Precision@k
- 측정값: 관련성이 있는 상위 k 결과의 소수입니다(관련성 점수 >= 2).
- 범위: 0에서 1까지입니다. 점수가 1.0이면 상위 k의 모든 결과가 관련이 있습니다.
- 사용 시기: 관련성이 없는 결과가 사용자 신뢰에 부정적인 영향을 줄 수 있는 검색 인터페이스와 같이 결과 품질이 완전성보다 더 중요한 경우
평균 관련성 점수
- 측정값: 모든 쿼리 및 결과 쌍에서 LLM이 판단한 평균 관련성 점수입니다.
- 범위: 0에서 3까지입니다. 더 높은 것이 좋습니다.
- 사용 시기: 빠른 품질 스냅샷으로 사용합니다.
관련성 분포
-
측정값: 각 관련성 범주의 결과 백분율:
- 관련성이 높은 %: 결과 점수가 3(직접 답변)입니다.
- 관련+ %: 결과 점수가 2 이상입니다(유용).
- 관련 없음 %: 결과가 0 또는 1을 채점합니다(유용하지 않음).
- 사용 시기: 품질 분포의 모양을 이해합니다. 두 가지 전략은 평균 점수가 동일하지만 분포는 매우 다를 수 있습니다. 예를 들어, 이중 모드 분포 (3이 많고 0이 많은 경우)는 쿼리 패턴이 잘 검색되지 않으며 주의가 필요함을 암시할 수 있습니다.
MRR - 상호 순위 평균
- 측정값: 사용자가 첫 번째 관련 결과를 얼마나 빨리 찾을 수 있는지. MRR은 쿼리에서 평균 1/순위이며, 여기서 순위는 첫 번째 관련 결과의 위치입니다(점수 >= 2).
- 범위: 0에서 1까지입니다. 점수가 1.0이면 첫 번째 결과가 항상 관련이 있습니다.
- 사용 시기: 가장 중요한 결과가 필요할 때(예: 질문 답변 시스템에서).
MAP@k - 평균 정밀도
- 측정 사항: 첫 번째 결과뿐만 아니라 모든 관련 결과에서 순위의 품질입니다. MAP는 각 관련 결과의 위치에서 정밀도를 계산한 다음 평균을 계산합니다.
- 범위: 0에서 1까지입니다. 값이 높을수록 관련 문서가 지속적으로 위쪽에 순위가 매겨집니다.
- 사용 시기: 모든 관련 문서에서 전체 순위 품질을 캡처하는 단일 숫자가 필요한 경우
DCG@10 권장되는 기본 메트릭인 이유
DCG@10 대부분의 애플리케이션에 대한 검색 품질에 대한 가장 완전한 그림을 제공합니다.
- 등급이 지정된 관련성은 뉘앙스를 캡처합니다. 정밀도와 같은 이진 메트릭은 모든 관련 문서를 동일하게 처리합니다. 쿼리에 완벽하게 응답하는 문서(점수 3)는 토픽을 모호하게 언급하는 문서(점수 1)와 동일합니다. DCG는 전체 0-3 관련성 스케일을 사용하므로, 점수가 3인 결과는 점수가 1인 결과보다 훨씬 더 큰 기여를 합니다.
- 위치 문제: 사용자는 먼저 상위 결과를 살펴봅합니다. DCG는 로그형 할인을 적용하여, 위치 1의 결과는 위치 10의 결과보다 훨씬 더 중요하게 계산됩니다. 첫 번째 결과는 전체 관련성 점수에 기여하는 반면, 10번째 결과의 기여도는 log₂(11) ≈ 3.46으로 나누어집니다.
- 절대 유틸리티는 정규화된 메트릭이 누락된 것을 보여 줍니다. 다음 표에 표시된 예제를 고려하세요. 두 결과 집합은 각각 이상적인 내림차순 결과를 가지므로 1.00의 완벽한 NDCG를 달성합니다. 그러나 결과 집합 B는 모든 결과가 유용하기 때문에 총 값(DCG 8.02 및 4.26)의 거의 두 배에 달하는 값을 제공합니다. NDCG는 "3개 관련 없는 결과 중 2개 좋은 결과의 완벽한 순위"와 "5개 좋은 결과의 완벽한 순위"를 구분할 수 없습니다. DCG는 "사용자가 실제로 얼마나 유용한 정보를 얻었는가?"라는 질문에 대답합니다.
DCG 및 NDCG에 대한 자세한 내용은 할인 누적 이득을 참조하세요.
| 결과 | 위치 1 | 위치 2 | 위치 3 | 위치 4 | 위치 5 | NDCG@5 | DCG@5 |
|---|---|---|---|---|---|---|---|
| 결과 집합 A | 3 | 2 | 0 | 0 | 0 | 1.00 | 4.26 |
| 결과 집합 B | 3 | 3 | 3 | 2 | 2 | 1.00 | 8.02 |
전체 스토리를 알려주는 단일 메트릭은 없습니다. 전체 메트릭 제품군을 사용하여 전체 그림을 확인하고 애플리케이션의 품질 요구 사항과 가장 일치하는 메트릭을 선택합니다.
일반적인 시나리오
다음 표에서는 일반적인 평가 결과 패턴, 해당 패턴의 의미 및 해결 방법을 설명합니다.
| 패턴 | 의미 | 제안된 작업 |
|---|---|---|
| ANN보다 하이브리드가 훨씬 낫습니다. | 쿼리는 키워드 일치의 이점을 활용합니다. | 프로덕션 환경에서 하이브리드 검색을 사용합니다. |
| ANN은 하이브리드와 거의 같습니다. | 키워드는 데이터에 대한 값을 추가하지 않습니다. | 두 전략 중 하나가 작동합니다. ANN은 더 간단합니다. |
| ANN보다 전체 텍스트가 훨씬 낫습니다. | 임베딩은 귀하의 도메인을 잘 표현하지 못할 수 있습니다. | 포함 모델을 미세 조정하거나 전체 텍스트 검색을 사용하는 것이 좋습니다. |
| 리랜커가 메트릭을 크게 향상시킵니다. | 크로스 인코더는 의미 있는 품질 향상을 제공합니다. | 대기 시간 예산이 허용되면 재정렬기를 사용하도록 설정합니다. |
| 넓은 신뢰 구간 | 신뢰할 수 있는 비교를 위한 쿼리가 충분하지 않습니다. | 평가 쿼리 수를 늘입니다. |
| 모든 전략 점수가 낮음 | 데이터 품질 또는 관련성 문제 | 벡터 검색 검색 품질 가이드를 참조하여 검색 품질을 개선하기 위한 단계별 지침을 확인하세요. |