LangSmith UI 中的代码评估器允许你直接在界面中使用 Python 或 TypeScript 代码编写自定义评估逻辑。与使用模型评估输出的 LLM-as-a-judge 评估器不同,代码评估器使用你定义的确定性逻辑。
要以编程方式创建一个显示在 LangSmith UI 中的代码评估器,请参阅 使用 SDK 管理评估器。要定义传递给 evaluate() 的代码评估器函数,请参阅 如何定义代码评估器(SDK)。要根据数据集示例中保存的断言对输出进行评分,请参阅 使用断言。

第 1 步:创建评估器

  1. 在 LangSmith UI 的以下任一页面中创建评估器:
    • 在 Playground 中或从数据集中创建:选择 + Evaluator 按钮。
    • 选择 Add rules,配置规则,然后选择 Apply evaluator。
  2. 为评估器指定一个清晰的名称,描述它所衡量的内容(例如“完全匹配”)。
  3. 在评估器类型选项中选择 Create code evaluator。

第 2 步:编写评估器代码

自定义代码评估器限制。允许使用的库:你可以导入所有标准库函数,以及以下公开软件包:
网络访问:自定义代码评估器无法访问互联网。
在 Add Custom Code Evaluator 页面中,使用 Python 或 TypeScript 定义评估逻辑。 你的评估器函数必须命名为 perform_eval,并且应该:
  1. 接受 run 和 example 参数。
  2. 通过 run['inputs']、run['outputs'] 和 example['outputs'] 访问数据。
  3. 返回一个字典,其中每个键都是指标名称,每个值都是该指标的得分。每个键代表你希望返回的一项反馈。例如,{"correctness": 1, "silliness": 0} 会在该运行上创建两项反馈。

函数签名

示例:完全匹配评估器

示例:基于输入的评估器

第 3 步:测试并保存

  1. 在示例数据上测试评估器,确保其按预期运行
  2. 点击 Save,使评估器可供使用

使用代码评估器

创建完成后,你可以在以下场景中使用代码评估器:

相关内容