cvs-health/uqlm

[JMLR 2026] "UQLM: A Python Package for Uncertainty Quantification in Large Language Models"

해결하는 문제

UQLM은 생성된 응답의 불확실성을 정량화하여 대규모 언어 모델(LLM) 출력의 환각을 탐지하도록 설계되었습니다. LLM 출력에 신뢰도 점수(0~1)를 할당하는 표준화된 방법을 제공하여 사용자가 잠재적으로 잘못되었거나 신뢰할 수 없는 정보를 식별할 수 있도록 합니다.

작동 방식

이 라이브러리는 여러 범주의 불확실성 정량화(UQ) 기술을 구현합니다:

  • Black-Box Scorers: 모델 내부 액세스 없이 동일한 프롬프트에 대해 생성된 여러 응답 간의 일관성을 측정합니다.
  • White-Box Scorers: 모델의 토큰 확률을 사용하여 불확실성을 추정합니다. 이 방식은 빠르고 저렴하지만 모델의 내부 상태에 대한 액세스가 필요합니다.
  • LLM-as-a-Judge: 하나 이상의 별도 LLM을 사용하여 원래 응답의 신뢰성을 평가합니다.
  • Ensemble Scorers: 가중 평균을 사용하여 여러 개별 스코어러를 결합하며, 즉시 사용하거나 ground-truth 데이터를 사용하여 조정할 수 있습니다.
  • Long-Text Scorers: 긴 응답을 개별 주장 또는 문장으로 분해하고 각 문장에 점수를 매겨, 신뢰도가 낮은 주장을 제거함으로써 응답을 정교화할 수 있습니다.
  • CodeGenUQ: 생성된 코드를 실행하지 않고 기능적 정확성을 예측하기 위한 전문 인터페이스입니다.

대상 사용자

이 도구는 LLM 애플리케이션의 환각을 모니터링하고 완화해야 하는 개발자 및 AI 연구자, 특히 높은 사실적 정밀도가 필요하거나 LangChain 채팅 모델을 사용하는 사용자에게 적합합니다.

주요 특징

  • 폭넓은 호환성: 모든 LangChain Chat Model과 함께 작동합니다.
  • 다양한 방법론: Semantic Entropy 및 Semantic Density를 포함한 광범위한 최첨단 기술을 지원합니다.
  • 세밀한 제어: 긴 형식의 텍스트에 대해 주장 수준의 점수 매기기를 제공하여 자동 응답 정교화를 가능하게 합니다.
  • 유연한 트레이드오프: 비용이 들지 않는 화이트박스 스코어러부터 고정밀 앙상블 및 블랙박스 방식에 이르기까지 다양한 옵션을 제공합니다.

관련

  • Dispatch
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트