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: 使用模型的 Token 概率来估计不确定性;这些方法更快且成本更低,但需要访问模型的内部状态。
  • LLM-as-a-Judge: 利用一个或多个独立的 LLM 来评估原始响应的可靠性。
  • Ensemble Scorers: 使用加权平均结合多个单个评分器,可以开箱即用,也可以使用 ground-truth 数据进行微调。
  • Long-Text Scorers: 将长响应分解为单个主张或句子并对每一个进行评分,从而能够通过移除低置信度主张来优化响应。
  • CodeGenUQ: 一个专门的接口,用于在不执行代码的情况下预测生成代码的功能正确性。

适用对象

该工具适用于需要监控和减轻 LLM 应用中幻觉的开发人员和 AI 研究人员,特别是那些需要高事实精度或使用 LangChain 聊天模型的应用。

亮点

  • 广泛的兼容性: 适用于任何 LangChain Chat Model。
  • 多样化的方法论: 支持广泛的最先进技术,包括 Semantic Entropy 和 Semantic Density。
  • 细粒度控制: 为长文本提供主张级评分,实现自动化的响应优化。
  • 灵活的权衡: 提供从零成本的白盒评分器到高精度的集成和黑盒方法的多种选项。

相关

  • Dispatch
  • 项目
  • 项目
  • 项目
  • 项目