如何使用-LLM-进行强大的自动评估
如何使用 LLM 进行强大的自动评估
原文:
towardsdatascience.com/how-to-use-llms-for-powerful-automatic-evaluations/

这张信息图表突出了我文章的内容。图片由 ChatGPT 提供。
您还可以阅读我的关于基准测试 LLM 的文章 使用 ARC AGI 3,并查看我的网站,其中包含所有我的信息和文章。
目录
-
动机
-
定义
-
LLM 评判者评估方法
-
比较两个输出
-
评分输出
-
通过/不通过
-
-
重要注意事项
-
与人工评判者比较
-
成本
-
-
结论
动机
我写这篇文章的动机是我在日常工作中处理不同的 LLM 应用。我阅读了越来越多的关于使用 LLM 作为评判者的内容,我开始深入研究这个主题。我相信利用 LLM 对机器学习系统进行自动评估是 LLM 的一个非常强大但常被低估的方面。
使用大型语言模型(LLM)作为评判者可以为您节省大量时间,因为它可以自动化评估过程的一部分或全部。评估对于机器学习系统至关重要,以确保它们按预期运行。然而,评估也是耗时的工作,因此您希望尽可能多地自动化它们。
LLM 作为评判者的一个强大用例是在问答系统中。您可以收集两个不同版本提示的输入输出示例。然后您可以要求 LLM 评判者回应输出是否相等(或后者提示版本的输出更好),从而确保您应用程序中的更改不会对性能产生负面影响。例如,这可以在新提示部署前使用。
定义
我将 LLM 作为评判者定义,任何你提示 LLM 评估系统输出的情况。该系统主要是基于机器学习的,尽管这不是一个必要条件。你只需向 LLM 提供一套如何评估系统的说明,包括评估时哪些信息是重要的以及应使用哪些评估指标。然后,可以根据输出质量的高低来决定继续部署或停止部署。这消除了在更改应用程序之前手动审查 LLM 输出的耗时且不一致的步骤。
LLM 作为评判者的评估方法
LLM 作为评判者可用于各种应用,例如:
-
问答系统
-
分类系统
-
信息提取系统
-
…
不同的应用将需要不同的评估方法,所以我将下面描述三种不同的方法
比较两个输出
比较两个输出是使用 LLM 作为评判者的一个很好的用途。使用这个评估指标,你比较两个不同模型的输出。
模型的差异,例如,可以是:
-
不同的输入提示
-
不同的 LLM(例如,OpenAI GPT4o 与 Claude Sonnet 4.0)
-
RAG 的不同嵌入模型
你随后向 LLM 评判者提供四项内容:
-
输入提示(s)
-
模型 1 的输出
-
模型 2 的输出
-
如何执行评估的说明
你可以要求 LLM 评判者提供以下三个输出之一:
-
相等(输出的本质是相同的)
-
输出 1(第一个模型更好)
-
输出 2(第二个模型更好)。
例如,如果你想在前面描述的场景中更新输入提示,你可以确保更新的提示与之前的提示相等或更好。如果 LLM 评判者告诉你所有测试样本要么相等,要么新的提示更好,你很可能可以自动部署更新。
评分输出
你还可以使用另一个评估指标来作为 LLM 的评判标准,即为输出提供分数,例如,在 1 到 10 之间。在这种情况下,你需要向 LLM 评判者提供以下内容:
-
执行评估的说明
-
输入提示
-
输出
在这种方法中,向 LLM 评判者提供清晰的说明至关重要,因为提供分数是一个主观任务。我强烈建议提供类似于 1 分、5 分和 10 分的输出示例。这为模型提供了不同的锚点,可以用来提供更准确的分数。你也可以尝试使用更少的可能分数,例如,只有 1 分、2 分和 3 分。更少的选项会增加模型准确性,但代价是使更小的差异更难区分,因为粒度更少。
评分评估指标对于运行更大规模的实验、比较不同的提示版本、模型等很有用。然后,你可以利用更大测试集上的平均分数来准确判断哪种方法效果最好。
通过/失败
通过或失败是 LLM 作为裁判员常用的另一个评估指标。在这种情况下,你要求 LLM 裁判员根据构成通过和构成失败的标准来批准或拒绝输出。与评分评估类似,这个描述对于 LLM 裁判员的表现至关重要。再次,我建议使用示例,本质上利用少样本学习来提高 LLM 裁判员的准确性。你可以在我的关于上下文工程的文章中了解更多关于少样本学习的信息。
通过/失败评估指标对于 RAG 系统判断模型是否正确回答问题很有用。例如,你可以提供检索到的片段和模型的输出,以确定 RAG 系统是否正确回答。
重要注意事项
与人类评估者比较
我也有一些关于将 LLM 作为裁判员的重要注意事项,这些是从我自己的工作中得出的。最重要的学习经验是,虽然 LLM 作为裁判系统可以为你节省大量时间,但它也可能不可靠。因此,在实施 LLM 裁判系统时,你需要手动测试系统,确保 LLM 作为裁判系统对人类评估者的反应与人类评估者相似。这最好以盲测的方式进行。例如,你可以设置一系列通过/失败示例,并查看 LLM 裁判系统与人类评估者达成一致的情况有多频繁。
成本
另一个需要记住的重要注意事项是成本。LLM 请求的成本正在下降,但当你开发 LLM 作为裁判系统时,你也在执行大量请求。因此,我建议你记住这一点,并对系统的成本进行估算。例如,如果每个 LLM 作为裁判员的运行成本为 10 美元,而你平均每天执行五次这样的运行,那么你每天的成本为 50 美元。你可能需要评估这是否是更有效开发的可接受价格,或者你是否应该降低 LLM 作为裁判系统的成本。例如,你可以通过使用更便宜的模型(GPT-4o-mini 而不是 GPT-4o)或减少测试示例的数量来降低成本。
结论
在这篇文章中,我讨论了 LLM 作为裁判员的工作原理以及如何利用它使开发更有效。LLM 作为裁判员是 LLM 经常被忽视的方面,它可以非常强大,例如,在部署前确保你的问答系统仍然可以在历史查询上工作。
我讨论了不同的评估方法,包括何时以及如何使用它们。将 LLM 作为评委是一个灵活的系统,你需要根据你实施的场景来调整它。最后,我还讨论了一些重要注意事项,例如将 LLM 评委与人类评委进行比较。
👉 在社交平台上找到我:
🧑💻 联系我
✍️ Medium

浙公网安备 33010602011771号