TruLens
本页面介绍如何使用 TruLens 来评估和跟踪基于 langchain 构建的 LLM 应用。
安装和设置
安装 trulens-eval python 包。
pip install trulens-eval
快速入门
请参阅 TruLens 文档中的集成详情。
跟踪
创建 LLM 链后,您可以使用 TruLens 进行评估和跟踪。 TruLens 提供了许多开箱即用的反馈函数, 同时也是一个可扩展的 LLM 评估框架。
创建反馈函数:
from trulens_eval.feedback import Feedback, Huggingface, OpenAI
# 初始化基于 HuggingFace 的反馈函数集合类:
hugs = Huggingface()
openai = OpenAI()
# 使用 HuggingFace 定义语言匹配反馈函数。
lang_match = Feedback(hugs.language_match).on_input_output()
# 默认情况下,这将检查主要应用程序输入和主要应用程序的语言匹配
# 输出。
# 问题与答案之间的问答相关性。
qa_relevance = Feedback(openai.relevance).on_input_output()
# 默认情况下,这将评估主要应用程序输入和主要应用程序输出的反馈。
# 输入的毒性
toxicity = Feedback(openai.toxicity).on_input()
链 (Chains)
在为 LLM 设置好反馈函数后,您可以使用 TruChain 包装您的应用程序, 以获得 LLM 应用的详细跟踪、日志记录和评估。
注意:有关 chain 创建的代码,请参见
TruLens 文档。
from trulens_eval import TruChain
# 使用 TruChain 包装您的链
truchain = TruChain(
chain,
app_id='Chain1_ChatApplication',
feedbacks=[lang_match, qa_relevance, toxicity]
)
# 注意:此处指定的任何 `feedbacks` 都将在链使用时进行评估和记录。
truchain("que hora es?")
评估
现在您可以探索您的 LLM 应用了!
这样做将帮助您一目了然地了解您的 LLM 应用的性能。在迭代 LLM 应用的新版本时,您可以比较它们在所有不同的质量指标上的性能表现。您还能够查看每个记录级别的评估,并探索每个记录的链元数据。
from trulens_eval import Tru
tru = Tru()
tru.run_dashboard() # 打开一个 Streamlit 应用以供探索
有关 TruLens 的更多信息,请访问 trulens.org