Skip to main content
代码评估器是接收数据集示例和应用程序输出结果,并返回一个或多个指标的函数。这些函数可以直接传递给 evaluate()aevaluate() 函数。
要在 LangSmith UI 中定义代码评估器,请参阅如何定义代码评估器(UI)

基础示例

评估器参数

代码评估器函数必须具有特定的参数名称。它们可以接受以下任意子集的参数:
  • run: Run:应用程序在给定示例上生成的完整 Run 对象。
  • example: Example:完整的数据集 Example,包括示例输入、输出(如果可用)和元数据(如果可用)。
  • inputs: dict:数据集中单个示例对应的输入字典。
  • outputs: dict:应用程序在给定 inputs 上生成的输出字典。
  • reference_outputs/referenceOutputs: dict:示例关联的参考输出字典(如果可用)。
对于大多数用例,您只需要 inputsoutputsreference_outputsrunexample 仅在需要应用程序实际输入和输出之外的额外追踪或示例元数据时有用。 使用 JS/TS 时,这些参数应作为单个对象参数的一部分传递。

评估器输出

代码评估器应返回以下类型之一: Python 和 JS/TS
  • dict:形式为 {"score" | "value": ..., "key": ...} 的字典允许您自定义指标类型(“score” 表示数值型,“value” 表示分类型)和指标名称。例如,如果您想将整数记录为分类型指标,这会很有用。
仅限 Python
  • int | float | bool:这被解释为可平均、排序等的连续型指标。函数名称用作指标名称。
  • str:这被解释为分类型指标。函数名称用作指标名称。
  • list[dict]:使用单个函数返回多个指标。

更多示例

需要 langsmith>=0.2.0

相关