基于 ICML 2024 TrustLLM 基准的开源工具包,通过 CLI 和 Python 从六个维度评估大模型的可信度。
cvs-health/uqlm
基于不确定性量化检测大语言模型幻觉的 Python 库,提供多类置信度评分器。
- Star
- 1,217
- Fork
- 140
- 未关闭 Issue
- 26
- 最近提交
- 25天前
这是什么?
UQLM 是一个用于检测大语言模型输出幻觉的 Python 库。每个评分器返回 0 到 1 之间的置信度,数值越高表示回答出错的可能性越低,开发者可以借此标记不可靠的回答。
评分器按信号来源分为几类。黑盒评分器对同一提示生成多个回答并比较一致性,适用于任何 LLM。白盒评分器基于单次生成的 token 概率计算,成本更低,但需要能获取这些概率。LLM 作为裁判的评分器让一个或多个模型评估回答,集成评分器则通过加权平均组合多个评分器。
此外,长文本评分器可以对长回答中的单条断言逐一打分,并移除置信度低的断言来优化输出;CodeGenUQ 则可在不执行代码的情况下预测生成代码的功能正确性。模型通过 LangChain Chat Model 接口接入。
核心功能
- 01黑盒评分器通过比较多次采样回答的一致性来衡量不确定性。
- 02白盒评分器基于单次生成的 token 概率计算置信度。
- 03LLM 裁判评分器支持单个或多个裁判模型,包括裁判小组模式。
- 04集成评分器可组合多个评分器,支持开箱即用或调优权重。
- 05长文本评分器对回答中的单条断言打分,并可移除低置信度断言来优化回答。
- 06兼容任何 LangChain Chat Model。
适用场景
- 在生产环境的问答系统中标记可能不可靠的 LLM 回答。
- 通过移除低置信度断言来筛选或优化长篇生成文本。
- 在运行前预测 LLM 生成代码的功能正确性。
- 基于自有提示和标注答案比较不同的幻觉检测方法。
快速上手
- 1
从 PyPI 安装 uqlm
pip install uqlm - 2
创建 LangChain 聊天模型(例如 ChatOpenAI),并用 BlackBoxUQ 包装以对回复评分
使用前须知
- 黑盒和评审类评分器需要多次调用 LLM,会带来明显的成本和延迟。
- 白盒评分器需要获取 token 概率,许多托管 API 并不提供该数据。
收录于专题
标签
#hallucination-detection#uncertainty-quantification#llm-evaluation#confidence-estimation#llm-safety#python#ai-evaluation#ai-safety#confidence-score#hallucination
常见问题
- uqlm 是什么?
- 基于不确定性量化检测大语言模型幻觉的 Python 库,提供多类置信度评分器。 UQLM 是一个用于检测大语言模型输出幻觉的 Python 库。每个评分器返回 0 到 1 之间的置信度,数值越高表示回答出错的可能性越低,开发者可以借此标记不可靠的回答。
- uqlm 可以免费使用吗?用的什么许可证?
- uqlm 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- uqlm 还在维护吗?
- 活跃维护中。uqlm 最近一次提交是在 2026年10月13日。
- uqlm 适合用来做什么?
- 在生产环境的问答系统中标记可能不可靠的 LLM 回答。 通过移除低置信度断言来筛选或优化长篇生成文本。 在运行前预测 LLM 生成代码的功能正确性。 基于自有提示和标注答案比较不同的幻觉检测方法。
- uqlm 怎么安装和运行?
- 从 PyPI 安装 uqlm: pip install uqlm 创建 LangChain 聊天模型(例如 ChatOpenAI),并用 BlackBoxUQ 包装以对回复评分
- 在哪里获取 uqlm?
- 源代码和安装说明在 GitHub 上:https://github.com/cvs-health/uqlm
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
635+1 本周69PythonMIT更新于 上个月
一款 Python 命令行工具,通过 61 项检测审计 AI 智能体是否按职责行事、能否抵御操纵、是否编造信息。
4.4万+4602 本周1785PythonApache-2.0更新于 昨天
开源 Python 框架,用于对 LLM 系统和 AI 智能体进行红队测试,模拟攻击发现漏洞并提供生产环境防护。
3086+11 本周505PythonApache-2.0更新于 15天前
纯 numpy 的 Python 守卫库,在 LLM 流式输出过程中实时检测重复循环、语言漂移等解码损坏并及时中止。
10415PythonApache-2.0维护活跃更新于 2个月前
Python 库,用 Jev 类决策模型替代 LLM 裁判,为 Agent 执行轨迹做评测与护栏,一次请求完成所有检查。
111+1 本周12PythonMIT维护活跃更新于 5天前