> ## Documentation Index
> Fetch the complete documentation index at: https://cndoc-langchain.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 使用人类反馈改进LLM作为评判者的评估器

<Check>
  在开始阅读本页之前，以下内容可能有所帮助：

  * [评估概念](/langsmith/evaluation-concepts#evaluators)
  * [创建LLM作为评判者的评估器](/langsmith/llm-as-judge)
</Check>

可靠的[*LLM作为评判者的评估器*](/langsmith/evaluation-concepts#llm-as-judge)对于就您的AI应用（例如，提示词、模型、架构变更）做出明智决策至关重要。正确地定义评估器提示词可能很困难，但它直接影响您评估结果的可信度。

本指南描述了如何使用人类反馈来对齐您的LLM作为评判者的评估器，以提高评估器的质量并帮助您构建可靠的AI应用。

## 工作原理

LangSmith的**对齐评估器**功能包含一系列步骤，帮助您将LLM作为评判者的评估器与人类专家反馈对齐。您可以使用此功能来对齐在数据集上运行的评估器，用于[离线评估](/langsmith/evaluation-concepts#offline-evaluations)或[在线评估](/langsmith/evaluation-concepts#online-evaluations)。无论哪种情况，步骤都相似：

1. **选择实验或运行**，其中包含来自您应用的输出。
2. 将选定的实验或运行添加到**标注队列**，人类专家可以在其中对数据进行标注。
3. **针对标注的示例测试您的LLM作为评判者的评估器提示词**。检查评估器结果与标注数据不一致的情况。这表明您的评估器提示词需要改进的领域。
4. **精炼并重复**以提高评估器对齐度。更新您的LLM作为评判者的评估器提示词并再次测试。

## 先决条件

在开始本指南的[离线评估](#offline-evaluations)或[在线评估](#online-evaluations)之前，您需要以下内容：

### 离线评估

* 一个包含至少一个[实验](/langsmith/evaluation-concepts#experiment)的[数据集](/langsmith/evaluation-concepts#datasets)。
* 您需要通过[SDK](/langsmith/manage-datasets-programmatically#create-a-dataset)或[UI](/langsmith/manage-datasets-in-application#create-a-dataset-and-add-examples)上传或创建数据集，并通过[SDK](/langsmith/evaluate-llm-application#run-the-evaluation)或[Playground](/langsmith/run-evaluation-from-playground)运行实验。

### 在线评估

* 一个已经向LangSmith发送跟踪信息的应用程序。
* 使用其中一种[跟踪集成](/langsmith/observability-concepts)进行配置以开始。

## 入门指南

您可以在数据集和跟踪项目中为新的和现有的评估器进入对齐流程。

|                | 数据集评估器                                                                                                           | 跟踪项目评估器                                                                                                              |
| -------------- | ---------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| **从头创建对齐的评估器** | 1. **数据集与实验**并选择您的数据集<br />2. 点击 **+ 评估器** > **从标注数据创建**<br />3. 输入一个描述性的反馈键名称（例如 `correctness`、`hallucination`） | 1. **项目**并选择您的项目<br />2. 点击 **+ 新建** > **评估器** > **从标注数据创建**<br />3. 输入一个描述性的反馈键名称（例如 `correctness`、`hallucination`） |
| **对齐现有评估器**    | 1. **数据集与实验** > 选择您的数据集 > **评估器**选项卡<br />2. 在 **使用实验数据对齐评估器** 框中，点击 **选择实验**                                    | 1. **项目** > 选择您的项目 > **评估器**选项卡<br />2. 在 **使用实验数据对齐评估器** 框中，点击 **选择实验**                                             |

## 1. 选择实验或运行

选择一个或多个实验（或运行）发送进行人工标注。这将把运行添加到[标注队列](/langsmith/annotation-queues)。

<img src="https://mintcdn.com/other-405835d4/6Toz5fHjgEZXpscE/langsmith/images/add-to-evaluator-queue.gif?s=3f06d58b5509b63b21eba817b08e658c" alt="添加到评估器队列" width="1976" height="1080" data-path="langsmith/images/add-to-evaluator-queue.gif" />

要将任何新的实验/运行添加到现有的标注队列，请转到**评估器**选项卡，选择您正在对齐的评估器，然后点击**添加到队列**。

<Check>
  数据集应能代表您在生产环境中预期看到的输入和输出。

  虽然您不需要涵盖每一种可能的场景，但重要的是要包含预期用例范围内的示例。例如，如果您正在构建一个回答关于棒球、篮球和足球问题的体育机器人，您的数据集应至少包含来自每项运动的一个标注示例。
</Check>

## 2. 标注示例

通过添加反馈分数来标注标注队列中的示例。标注完一个示例后，点击**添加到参考数据集**。

<Check>
  如果您的实验中有大量示例，您不需要标注每个示例就可以开始。我们建议从至少20个示例开始，您随时可以稍后添加更多。我们建议您标注的示例具有多样性（在0和1标签之间保持平衡），以确保您正在构建一个全面的评估器提示词。
</Check>

## 3. 针对标注的示例测试您的评估器提示词

一旦您有了标注的示例，下一步就是迭代您的评估器提示词，使其尽可能好地模仿标注数据。此迭代在**评估器Playground**中完成。

要进入评估器Playground：点击评估器队列右上角的**查看评估器**按钮。这将带您进入您正在对齐的评估器的详细信息页面。点击**评估器Playground**按钮以访问Playground。

<img src="https://mintcdn.com/other-405835d4/2a1kkFnfjfW0Zb-b/langsmith/images/evaluator-pg.gif?s=73a8609938c3fbb34372eb171d75a4df" alt="评估器Playground" width="1916" height="1080" data-path="langsmith/images/evaluator-pg.gif" />

在评估器Playground中，您可以创建或编辑您的评估器提示词，然后点击**开始对齐**，在您在步骤2中创建的标注示例集上运行它。运行评估器后，您将看到其生成的分数与您的人工标签相比如何。对齐分数是评估器判断与人类专家判断一致的示例百分比。

## 4. 重复以提高评估器对齐度

通过更新提示词并再次测试来迭代，以提高评估器对齐度。

<Check>
  对评估器提示词的更新**默认不会保存**。我们建议您定期保存评估器提示词，尤其是在看到对齐分数提高之后。

  当您迭代提示词时，评估器Playground将显示您评估器提示词最近保存版本的对齐分数以供比较。
</Check>

提高评估器的对齐分数并非一门精确的科学，但有一些策略有助于提高对齐分数。

### 提高评估器对齐度的技巧

**1. 调查不一致的示例**

深入研究不一致的示例，并尝试将它们归类为常见的失败模式，这是提高评估器对齐度的一个很好的第一步。

一旦您识别出常见的失败模式，请在评估器提示词中添加说明，以便LLM了解它们。例如，如果您注意到它不理解特定的缩写，您可以解释“MFA代表‘多因素认证’”。或者，如果它对评估器上下文中什么是好/坏感到困惑，您可以告诉它“一个好的回复总是包含至少3个潜在的预订酒店”。

**2. 检查LLM分数背后的推理**

要理解LLM为何对某个示例给出那样的评分，您可以为LLM作为评判者的评估器启用推理功能。推理有助于理解LLM的思维过程，并可以帮助您识别常见的失败模式，以便将其纳入评估器提示词。

为了在评估器Playground中查看推理，请将鼠标悬停在LLM分数上。

<img src="https://mintcdn.com/other-405835d4/2a1kkFnfjfW0Zb-b/langsmith/images/enable-reasoning.gif?s=7ddb70c8ce10c450519767dad49a2f14" alt="启用推理" width="1520" height="1080" data-path="langsmith/images/enable-reasoning.gif" />

这将在评估器Playground中显示LLM分数背后的推理。

**3. 添加更多标注示例并验证性能**

为避免过拟合标注的示例，重要的是添加更多标注示例并测试性能，特别是如果您一开始只有少量示例。

## 视频指南

<iframe className="w-full aspect-video rounded-xl" src="https://www.youtube.com/embed/-9o94oj4x0A?si=wfv9cN3L4DalMD2e" title="YouTube video player" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />

***

<div className="source-links">
  <Callout icon="terminal-2">
    [通过MCP将这些文档](/use-these-docs)连接到Claude、VSCode等，以获取实时答案。
  </Callout>

  <Callout icon="edit">
    [在GitHub上编辑此页面](https://github.com/langchain-ai/docs/edit/main/src/langsmith/improve-judge-evaluator-feedback.mdx)或[提交问题](https://github.com/langchain-ai/docs/issues/new/choose)。
  </Callout>
</div>
