langchain.evaluation.parsing.base
.JsonEqualityEvaluator¶
- class langchain.evaluation.parsing.base.JsonEqualityEvaluator(operator: Optional[Callable], **kwargs: Any)[源代码]¶
- 评估预测是否等于参考值,在将两者都解析为JSON后。
解析为JSON后,此评估器检查预测是否等于参考值,
- 参考值也作为JSON解析,无需输入字符串。
参数:
operator (可选[可调用对象]) –
- kwargs (任何类型) –
requires_input¶
此评估器是否需要输入字符串。始终为False。
- 类型
bool
- requires_reference¶
此评估器是否需要参考字符串。始终为True。
示例
>>> evaluator = JsonEqualityEvaluator() >>> evaluator.evaluate_strings('{"a": 1}', reference='{"a": 1}') {'score': True} >>> evaluator.evaluate_strings('{"a": 1}', reference='{"a": 2}') {'score': False}
>>> evaluator = JsonEqualityEvaluator(operator=lambda x, y: x['a'] == y['a']) >>> evaluator.evaluate_strings('{"a": 1}', reference='{"a": 1}') {'score': True} >>> evaluator.evaluate_strings('{"a": 1}', reference='{"a": 2}') {'score': False}
属性
评估名称。
此评估器是否需要输入字符串。
此评估器是否需要参考标签。
方法
__init__
([operator])aevaluate_strings
(*, prediction[, ...])基于可选的输入和标签异步评估链或LLM输出。
evaluate_strings
(*, prediction[, reference, ...])基于可选的输入和标签评估链或LLM输出。
- __init__(operator: Optional[Callable] = None, **kwargs: Any) None [source]¶
- kwargs (任何类型) –
requires_input¶
此评估器是否需要输入字符串。始终为False。
- 返回类型
None
- asyncaevaluate_strings(*, prediction: str, reference: Optional[str] = None, input: Optional[str] = None, **kwargs: Any) dict ¶
基于可选的输入和标签异步评估链或LLM输出。
- kwargs (任何类型) –
prediction (str) – 要评估的LLM或链预测。
reference (可选[str], 可选) – 要评估的参考标签。
input (可选[str], 可选) – 在评估期间要考虑的输入。
kwargs (Any) – 额外的关键字参数,包括回调、标记等。
- 返回
包含分数或值的评估结果。
- 返回类型
字典
- evaluate_strings(*, prediction: str, reference: Optional[str] = None, input: Optional[str] = None, **kwargs: Any) dict ¶
基于可选的输入和标签评估链或LLM输出。
- kwargs (任何类型) –
prediction (str) – 要评估的LLM或链预测。
reference (可选[str], 可选) – 要评估的参考标签。
input (可选[str], 可选) – 在评估期间要考虑的输入。
kwargs (Any) – 额外的关键字参数,包括回调、标记等。
- 返回
包含分数或值的评估结果。
- 返回类型
字典