LLM 的优势、劣势和风险

最近关于大型语言模型(LLMs)的奇迹有很多讨论。这些赞誉大多是应得的。让 ChatGPT 描述广义相对论,你将得到一个非常好的(而且准确的)答案。然而,归根结底,ChatGPT 仍然是一个计算机程序(和其他所有 LLM 一样),它只是盲目地执行其指令集。它对广义相对论的理解并不比你最喜欢的宠物好。不幸的是,我们使用“类人”的词语来描述工程师用来创建它们的技巧,例如“机器学习”和“训练”。这是误导,因为 LLM 没有像人类一样的思维。
这里存在着某种讽刺意味——一个不会思考的聊天机器人如何能正确地总结有史以来最聪明的人的发现?为了理解 LLM 的这种矛盾本质,让我们从优势、劣势和危险方面进一步探讨它们,看看我们如何利用数据和像 MinIO 这样的存储解决方案来利用前者并减轻后两者。这些是每个工程师在为其组织训练、测试和部署 LLM 时应该牢记的技巧。
优势
LLM 的优势在于它们经过训练可以理解用于创建它们的训练集中单词的概率分布。如果训练集足够大(例如维基百科文章的语料库或 GitHub 上的公共代码),那么模型将拥有词汇量和相应的概率分布,这将使它们的结果看起来像是真正理解了它们输出的文本。让我们更详细地检查另一个例子——这次来自哲学领域。问问 ChatGPT,“‘我思故我在’是什么意思,谁写的?”,你将得到类似于以下文本的东西。
“我思故我在”是一个拉丁语哲学命题,翻译成英语是“我思故我在”。这个说法与法国哲学家、数学家和科学家勒内·笛卡尔密切相关。笛卡尔在他的 1637 年出版的《方法论》中表达了这一观点。这句话反映了笛卡尔试图确立一个不可怀疑的基础真理——作为思维存在者的人类自身存在的确信。
LLM 利用概率分布生成这样的结果。它的工作原理类似于此,它们首先查看问题中的文本,并确定“Cogito”这个词最有可能成为答案的第一个词。从那里,他们查看问题和答案的第一个词,以确定最有可能成为下一个词的词。这种情况一直持续下去,直到确定一个特殊的“答案结束”字符的概率最高。
这种基于数十亿个概率生成自然语言响应的能力不是什么可怕的事情——相反,它应该被利用以创造商业价值。当你使用现代技术时,结果会更好。例如,使用检索增强生成 (RAG) 和微调等技术,你可以教会 LLM 关于你特定业务的知识。实现这些类人结果将需要数据,而你的基础设施将需要一个强大的数据存储解决方案。
这些下一个词预测功能不仅可以用来为你的聊天机器人或营销文案生成精彩的文本,还可以用来在你的应用程序中实现自动决策。如果给出一个精心构建的提示,其中包含一个问题陈述和有关可以调用的 API(“函数”)的信息,LLM 对语言的理解将使它能够生成一个解释应该调用哪个“函数”的答案。例如,在一个对话式天气应用程序中,用户可能会问,“如果我今天晚上要去芬威球场,我需要雨衣吗?” 通过一些巧妙的提示,LLM 可以从查询中提取位置数据(波士顿,马萨诸塞州)并确定如何制定对 Weather.com Precipitation API 的请求。
很长一段时间以来,构建软件最难的部分是自然语言和语法系统(如 API 调用)之间的接口。现在,具有讽刺意味的是,这可能是最简单的部分之一。与文本生成类似,LLM 函数调用行为的质量和可靠性可以通过微调和使用人类反馈强化学习 (RLHF) 来提高。
现在我们已经了解了 LLM 的长处以及原因,让我们来研究 LLM 不能做什么。
劣势
LLM 无法思考、理解或推理。这是 LLM 的根本局限性。语言模型缺乏推理用户问题的能力。它们是概率机器,对用户的问题做出非常好的猜测。无论猜测有多好,它仍然是猜测,而产生这些猜测的东西最终会产生一些不正确的东西。在生成式 AI 中,这被称为“幻觉”。
如果训练得当,幻觉可以降到最低。微调和 RAG 也极大地减少了幻觉。底线是,要正确训练模型、微调它并提供相关上下文 (RAG) 需要数据以及基础设施来以可扩展的方式存储数据并以高性能的方式提供服务。
让我们看看 LLM 的另一个方面,我将其归类为危险,因为它会影响我们测试它们的能力。
危险
LLM 最受欢迎的用途是生成式 AI。生成式 AI 不会产生可以与已知结果进行比较的特定答案。这与其他 AI 用例形成对比,后者会做出可以轻松测试的特定预测。测试用于图像检测、分类和回归的模型很简单。但是,你如何以公正、忠实于事实且可扩展的方式测试用于生成式 AI 的 LLM?如果你自己不是专家,你如何才能确定 LLM 生成的复杂答案是正确的?即使你是专家,人类审阅者也不能成为 CI/CD 管道中自动测试的一部分。
行业中有一些基准可以提供帮助。GLUE(通用语言理解评估)用于评估和衡量 LLM 的性能。它包含一组评估模型处理人类语言能力的任务。SuperGLUE 是 GLUE 基准的扩展,引入了更具挑战性的语言任务。这些任务包括共指消解、问答和更复杂的语言现象。
虽然上述基准很有帮助,但解决方案的很大一部分应该是你自己的数据收集。考虑记录所有问题和答案,并根据自定义发现创建你自己的测试。这也将需要一个构建为可扩展和高性能的数据基础设施。
结论
这就是 LLM 的优势、劣势和危险。如果你想利用前者并减轻后两者,那么你需要数据以及能够处理大量数据的存储解决方案。