UQLM

活跃
GitHub Python Apache-2.0

简介

CVS Health 开源的 LLM 不确定性量化库,用于基于 UQ 的幻觉检测,提供置信度评分和幻觉缓解工具,帮助识别和降低 LLM 输出的不可靠内容。

核心特性

  • 提供五类不确定性量化评分器:Black-Box(一致性)、White-Box(Token 概率)、LLM-as-a-Judge、Ensemble 和 Long-Text
  • Black-Box 评分器通过多次生成和比较测量响应一致性,兼容任何 LLM,开箱即用
  • White-Box 评分器利用 Token 概率估算不确定性,单次生成即可评分,速度快成本低
  • Ensemble 评分器灵活组合多种方法,兼顾初学者友好和高级用户调优需求
  • 支持幻觉缓解——use_best=True 自动选择不确定性最低的响应
  • 发表于 JMLR 和 TMLR,提供完善的文档和示例 notebook

适用场景

💡 在医疗问答系统中检测 LLM 输出的幻觉,确保提供给医生的信息可靠
💡 为客服机器人的回答添加置信度评分,低置信度回答自动转人工
💡 在金融报告生成中识别不确定性高的内容,标记需要人工审核的部分
💡 评估不同 LLM 在特定任务上的可靠性,辅助模型选择决策
💡 构建安全护栏,在 Agent 工作流中自动过滤低置信度输出

快速开始

安装:pip install uqlm。Black-Box 示例:from uqlm import BlackBoxUQ,创建 ChatOpenAI LLM 实例,初始化 BlackBoxUQ(llm=llm, scorers=["semantic_negentropy"], use_best=True),调用 await bbuq.generate_and_score(prompts=prompts, num_responses=5) 获取带置信度评分的结果。

相关项目