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

6-评估 LangChain: Models, Prompts and Outp

2023-06-04 16:17 作者:rowan琪  | 我要投稿

使用语言模型构建复杂应用程序时,其中一个重要但有时棘手的步骤是如何评估应用程序的质量,以及它是否符合准确性标准。如果决定更改实现,比如换一个不同的语言模型(LM)或改变使用向量数据库的策略等,如何知道这些变化是使应用程序变得更好还是更糟。在评估基于语言模型的应用程序时,可以使用一些框架和工具来帮助思考和评估。


这些应用程序实际上是由许多不同步骤和链条组成的,所以首先要做的事情是了解应用程序的内部结构,了解每个步骤的作用。有一些工具可以被视为可视化工具或调试器,它们对于获得更全面的视图和查看不同的数据点以及模型的表现如何非常有用。


一种评估方法是使用人眼观察。但还有一个很酷的想法,就是使用语言模型本身和链条本身来评估其他语言模型、其他链条以及其他应用程序。这种方法可以帮助比较和评估不同的模型和链条。


在基于激励的开发中,开发应用程序使用语言模型的整个工作流程评估过程正在重新思考。这个视频涵盖了许多令人兴奋的概念和话题。


在评估应用程序之前,首先需要有一个链条或要评估的应用程序。可以使用上一课中的问答链作为示例,导入所需的所有组件,并加载与使用的相同数据的索引。然后创建检索问答链,并指定语言模型和链式寻回。


在评估之前,需要弄清楚要根据哪些数据点来评估应用程序。可以使用几种不同的方法来做到这一点。一种最简单的方法是手动创建一些示例问题和答案,然后在链条中运行并检查输出。这种方法对于少量示例是可行的,但对于大量示例可能很繁琐。


另一种更自动化的方法是使用语言模型本身来创建示例。可以使用一个问答生成链,它会从每个文档中创建一对问题和答案,并使用语言模型来生成这些问题和答案。这样可以节省时间,并自动生成一堆示例。


接下来,需要评估这些示例。一种方法是手动运行链条,并检查输出是否正确。但随着示例数量的增加,这可能变得乏味。更好的方法是使用第二个例子。问题是这件夹克属于哪个系列,真正的答案是羽绒技术收藏,而预测的答案是羽绒技术系列。在这种情况下,预测的答案是正确的,但可能稍微有点不完全准确。


接下来,我们继续看第三个例子。问题是这件衬衫的尺寸是多少,真正的答案是Medium,而预测的答案是Medium。在这种情况下,预测的答案完全正确。


我们继续检查其他例子,发现预测的答案在大多数情况下都是正确的或非常接近真实答案。这表明我们的应用程序在对这些特定数据点进行评估时表现良好。


然而,仅仅检查少数几个例子并不足以对整个应用程序的性能进行全面评估。我们可能需要更多的例子来获得更准确的评估结果。另外,我们还可以考虑使用其他评估指标来衡量应用程序的性能,例如准确率、召回率、F1分数等。


除了手动评估外,还有一些自动化的工具和方法可用于评估基于语言模型的应用程序。这些工具可以帮助生成大量的测试样例,并自动运行链以获取预测结果。然后,可以使用预定义的评估指标对这些结果进行评估和比较。


总而言之,评估基于语言模型的应用程序是一个关键且有挑战性的步骤。通过创建示例数据点、手动评估和使用自动化工具,我们可以更好地了解应用程序的性能,并进行改进和优化。不断评估和优化应用程序是构建复杂应用程序的重要步骤之一,以确保其达到预期的准确性标准并提供良好的用户体验。

6-评估 LangChain: Models, Prompts and Outp的评论 (共 条)

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