欢迎光临散文网 会员登陆 & 注册

LangSmith 功能上新 — 分享评估数据集和结果

2023-11-27 23:24 作者:沧海九粟  | 我要投稿

官方博客:https://blog.langchain.dev/public-langsmith-benchmarks/

今天给大家分享的是 LangChain 最近在其工程平台 LangSmith 上新增的一个重要功能 —— 公开分享评估数据集和结果。

LangSmith 作为 LangChain 的模型评估工具,它可以让用户轻松地在一个页面上比较不同模型架构在同一任务上的表现。但是到现在为止,评估数据集和结果都是私有的,用户之间无法共享。这次 LangChain 新增了“共享测试”的功能,允许任何 LangSmith 的用户发布数据和评测指标,使得所有人都可以在相同的测试集上评估不同的模型架构。这样可以更好地提取出各架构之间的优劣势。

已公开分享的 LangChain 文档问答测试集

此外,由于 LangChain 通过 LangSmith 不仅记录了最终的指标,还包括了完整的执行跟踪。这意味着我们可以超越系统级的输出,一步步地分析不同系统对同一数据的处理流程。这对我们诊断和改进系统的行为非常有帮助。

LangChain 同时也发布了 langchain-benchmarks 代码库。通过这个库,我们可以轻松地在同一数据集上测试不同的模型,重现公开的结果,或是测试我们自己的模型。

下面我们一起来展开一些细节。

首个发布的 QA 测试集

LangChain 首先发布的是一个针对 LangChain Python 文档的问答测试集。这个测试集包含一系列人工编写的问答对。问题需要系统综合多个文档的信息进行逻辑推理才能回答正确。

这个测试集已经包含了几种常见模型架构的评测结果:

  • 使用的语言模型(OpenAI、Anthropic、一些开源模型)

  • 使用的认知架构(会话式检索链、Agent)

我们主要关注两个指标:预测答案与标准答案的余弦相似度、以及 LangChain 开发的基于 LLM 的评分器(Scoring Evaluator)给出的准确率分数。

几种常见模型架构的评测结果

在这个测试结果中,我们可以看到一个基于 Mistral 7B 的 RAG 系统和基于 GPT-3.5 的 RAG 系统的对比。从整体指标来看,GPT-3.5 的表现明显优于 Mistral 7B。

但是从样本级别来看,Mistral 的某些回答则更加准确。它不像 GPT-3.5 有时会产生幻觉并生成一些错误信息。通过链路追逐,我们可以进一步分析这些系统的行为。

例如有一个例子,Mistral 受一篇不太相关的文档的影响,提到了错误的类名。而如果我们改变文档的输入顺序,它可以给出正确的回答。这启发我们可以通过改进文档排序来提高性能。

我们也看到基于 Agent 的方法与基于会话的方法进行了比较。前者可以自主决定使用检索工具的次数和查询语句。而 OpenAI 最新发布的 Assistant API 则取得了最高的指标分数,它利用 OpenAI 的执行逻辑来决定查询和响应。

LangChain Benchmarks 库的使用

为了让大家可以在该测试集上测试自己的模型,LangChain 同时发布了 langchain-benchmarks 库。这个库可以方便地针对关键功能进行基准测试,如问答、抽取等。

它提供了运行不同语言模型、提示工程、索引技术等的接口,让我们可以快速评估不同决策的权衡取舍,选择最适合自己应用的方案。

langchain-benchmarks 库目前已经被开源,LangChain 团队也解释了开源的主要目的,包括:

  1. 展示如何收集每个任务的基准测试数据集

  2. 公开每个任务使用的基准测试数据集

  3. 展示如何评估每个任务

  4. 鼓励其他人在这些任务上测试他们的解决方案

综合而言,LangChain 发布的这个基准测试集为我们提供了一个开放的平台,可以评估语言模型在真实场景下的性能。我们不仅可以比较指标,还可以查看详细的执行链路来分析系统的行为。这对选择合适的模型架构非常有帮助。LangChain 团队也计划继续增加更多基准任务,覆盖各种常见使用场景,让我们一起期待!


LangSmith 功能上新 — 分享评估数据集和结果的评论 (共 条)

分享到微博请遵守国家法律