跳到主要内容

Cleanlab

Cleanlab 为AI和RAG解决方案中的每个输入数据点和每个输出预测添加自动化和信任度。

使用Cleanlab组件将Cleanlab评估与Langflow集成,并通过Cleanlab的评估和修复套件解锁可信的智能体、RAG和LLM管道。

您可以使用这些组件为任何LLM响应的可信度打分(分数在01之间),并解释为什么某个响应可能好或坏。对于有上下文的RAG或智能体管道,您可以使用定量分数评估上下文充分性、响应基础性、有用性和查询清晰度。此外,您可以使用警告或备用答案来修复低可信度响应。

需要使用Cleanlab API密钥进行身份验证。

Cleanlab评估器

Cleanlab评估器组件使用Cleanlab评估和解释提示与响应对的可信度。有关评分工作原理的更多信息,请参阅Cleanlab文档

Cleanlab评估器参数

在可视化编辑器中,部分参数默认情况下是隐藏的。 您可以通过组件的头部菜单中的 控件 来修改所有参数。

名称类型描述
system_promptMessage输入参数。添加到提示前的系统消息。可选。
promptMessage输入参数。面向用户的LLM输入。
responseMessage输入参数。要评估的模型响应。
cleanlab_api_keySecret输入参数。您的Cleanlab API密钥。
cleanlab_evaluation_modelDropdown输入参数。Cleanlab使用的评估模型,如GPT-4或Claude。这不需要与生成响应的模型相同。
quality_presetDropdown输入参数。评估速度与准确性之间的权衡。

Cleanlab评估器输出

Cleanlab评估器组件有三种可能的输出。

名称类型描述
scorenumber, float显示0到1之间的可信度分数。
explanationMessage提供可信度分数的解释。
responseMessage返回原始响应,以便轻松链接到Cleanlab修复器组件。

Cleanlab修复器

Cleanlab修复器组件使用来自Cleanlab评估器组件的可信度分数,决定是否显示、警告或替换LLM响应。

此组件包含分数阈值、警告文本和备用消息的参数,您可以根据需要进行自定义。

输出是修复后的响应remediated_response),这是一个Message,包含应用修复逻辑后向用户显示的最终消息。

Cleanlab修复器参数

名称类型描述
responseMessage输入参数。可能需要修复的响应。
scoreNumber输入参数。来自CleanlabEvaluator的可信度分数。
explanationMessage输入参数。如果显示警告,要附加的解释。可选。
thresholdFloat输入参数。通过响应不变的最小可信度分数。
show_untrustworthy_responseBoolean输入参数。如果响应被判定为不可信,是否显示或隐藏带有警告的原始响应。
untrustworthy_warning_textPrompt输入参数。不可信响应的警告文本。
fallback_textPrompt输入参数。如果响应被隐藏时的备用消息。

Cleanlab RAG评估器

Cleanlab RAG评估器组件使用Cleanlab的评估指标评估RAG和LLM管道输出的可信度、上下文充分性、响应基础性、有用性和查询易用性。

您可以将此组件与Cleanlab修复器组件配对,以修复来自RAG管道的低可信度响应。

Cleanlab RAG Evaluator 参数

在可视化编辑器中,部分参数默认情况下是隐藏的。 您可以通过组件的头部菜单中的 控件 来修改所有参数。

名称类型描述
cleanlab_api_keySecret输入参数。您的 Cleanlab API 密钥。
cleanlab_evaluation_modelDropdown输入参数。Cleanlab 使用的评估模型,如 GPT-4 或 Claude。这不需要与生成响应的模型相同。
quality_presetDropdown输入参数。评估速度与准确性之间的权衡。
contextMessage输入参数。从您的 RAG 系统检索到的上下文。
queryMessage输入参数。原始的用户查询。
responseMessage输入参数。模型基于上下文和查询生成的响应。
run_context_sufficiencyBoolean输入参数。评估上下文是否足以回答查询。
run_response_groundednessBoolean输入参数。评估响应是否基于上下文。
run_response_helpfulnessBoolean输入参数。评估响应的有用程度。
run_query_easeBoolean输入参数。评估查询是否模糊、复杂或有对抗性。

Cleanlab RAG Evaluator 输出

Cleanlab RAG Evaluator 组件具有以下输出选项:

名称类型描述
trust_scoreNumber整体信任分数。
trust_explanationMessage信任分数的解释。
other_scoresDictionary可选启用的 RAG 评估指标的字典。
evaluation_summaryMessage查询、上下文、响应和评估结果的 Markdown 摘要。
responseMessage返回原始响应,便于链接到 Cleanlab Remediator 组件。

Cleanlab 流程示例

以下示例流程展示了如何使用 Cleanlab EvaluatorCleanlab Remediator 组件来评估和修复来自任何 LLM 的响应,以及如何使用 Cleanlab RAG Evaluator 组件来评估 RAG 管道输出。

评估和修复来自 LLM 的响应

此流程使用 Cleanlab EvaluatorCleanlab Remediator 组件来评估和修复来自任何 LLM 的响应的可信度。

您可以下载评估和修复流程,然后将流程导入到您的 Langflow 实例。 或者,您可以通过连接以下组件从头开始构建流程:

  • 将任何语言模型代理组件的 Message 输出连接到 Cleanlab Evaluator 组件的 Response 输入。
  • 将一个提示模板组件连接到 Cleanlab Evaluator 组件的 Prompt 输入。

评估响应可信度

运行流程时,Cleanlab Evaluator 组件会从流程中返回信任分数和解释。

Cleanlab Remediator 组件使用此信任分数来确定是输出原始响应、发出警告,还是用备用答案替换它。

此示例显示了一个被判定为不可信(分数为 .09)并由 Cleanlab Remediator 组件标记为警告的响应。

Cleanlab Remediator 示例

要隐藏不可信的响应,请配置 Cleanlab Remediator 组件以用备用消息替换响应。

Cleanlab Remediator 示例

评估 RAG 管道

例如,基于向量存储 RAG模板创建一个流程,然后添加 Cleanlab RAG Evaluator 组件来评估流程的上下文、查询和响应。 将 RAG 流程中其他组件的 contextqueryresponse 输出连接到 Cleanlab RAG Evaluator 组件。

评估 RAG 管道

以下是 Cleanlab RAG Evaluator 组件的 Evaluation Summary 输出示例:

评估 RAG 管道

Evaluation Summary 包括查询、上下文、响应和所有评估结果。在此示例中,Context SufficiencyResponse Groundedness 分数较低(分数为 0.002),因为上下文不包含查询的信息,并且响应没有基于上下文。

Search