最大化大语言模型性能 [译]

作者:

ANKIT SANGHVI

简述如何以可扩展的方式把大语言模型(LLMs)从原型提升至高性能

本博客内容源自于在 OpenAI DevDay 会议上由 Colin JarvisJohn Allard 所做的精彩演讲。这是相关 YouTube 视频链接 (https://www.youtube.com/watch?v=ahnGLM-RC1Y)

在自然语言处理的领域里,优化大语言模型(LLMs)的过程充满挑战。在高效与性能之间寻求平衡,就像是在计算的海洋中找到一根针。大语言模型的性能往往难以具体衡量,需要采用精细化的优化策略。在这篇博客中,我们将探索大语言模型优化的不同方案,帮助您了解何时使用适当的策略。

您将获得两个关键优化维度——上下文和大语言模型行为的基础理解,并能够深入了解模型细化的复杂世界。

优化的双重维度

1. 上下文优化

上下文优化的核心在于细化模型应掌握的信息。您可以通过以下方式进行:

  • 提示工程(Prompt Engineering): 在我们的优化矩阵中,提示工程位于左下方象限,是您迅速建立基准的关键。首先微调输入至大语言模型的提示,然后观察性能的变化。
  • 检索增强生成(RAG): 位于左上方象限的 RAG 增加了更多上下文。可以从简单的检索机制开始,逐步进行微调以实现更细致的优化。

2. 大语言模型行为优化

深入探讨大语言模型应如何响应的行为优化。主要有两种策略:

  • 微调(Fine-tuning): 右下象限代表微调,专门针对特定任务调整大语言模型的行为。
  • 综合方法: 有时候,结合所有方法才能达到理想的性能水平。例如,将 HyDE 检索与事实核查步骤相结合。

关键在于从某处开始,进行评估,并根据结果选择另一种策略迭代。

探索的策略

提示工程:从哪里开始

明确且简洁的指令,以及将复杂任务分解成更简单的子任务,对于成功至关重要。让模型有足够的“思考时间”,并系统地测试不同方案,可以带来意想不到的提升。此外,提供参考文本和利用外部工具,也能显著增强最终的成果。

它擅长于:

  • 快速测试与学习
  • 为进一步的优化建立基线

它的限制:

  • 引入新信息
  • 模仿复杂的风格或方法

检索增强生成:拓展知识边界

通过让大语言模型 (LLMs) 接触特定领域的内容,检索增强生成(RAG)有助于更新模型的知识库,并控制生成内容的准确性。

它擅长于:

  • 引入新的、特定的信息
  • 控制内容以降低错误率

它的限制:

  • 对广泛领域的理解
  • 学习新的语言、格式或风格

增强 RAG 的方法:

  • 运用余弦相似度和 HyDE 进行检索
  • 尝试 FT 嵌入和数据块处理
  • 执行重排序和分类步骤

评估 RAG 的标准:

  • 在大语言模型方面,关注答案的准确性和相关性。
  • 在内容方面,评估检索到的上下文的精准度和召回率。更多的数据并不总意味着更高的准确度。

微调:专属定制

当单纯的提示设计不足以满足需求时,微调 (fine-tuning) 就显得尤为重要。继续使用特定领域的数据进行训练,可以提升模型的性能和效率。例如,Canva 就通过对 GPT-3.5 进行微调,成功生成了结构化的输出,这充分展示了高质量训练数据的强大作用。

微调的优势:

  • 加强模型现有的知识基础
  • 定制化回应的结构和语调

微调的局限:

  • 为模型增加全新的知识
  • 针对新场景的快速迭代能力

微调的步骤:

  1. 准备数据
  2. 在训练期间选择合适的超参数和理解损失函数
  3. 结合相关测试集和专家评价进行效果评估

微调的最佳实践:

  • 首先尝试提示设计
  • 明确设立基准
  • 在训练数据上注重质量而非数量

结合使用微调和 RAG 的方法

有时,结合使用微调和 RAG (检索式增强生成,一种 AI 技术) 可以取得最佳效果。这种结合方法让模型以更少的 Token 理解复杂的指令,为引入更多的上下文信息创造空间,从而使性能更加强大和稳定。

实际应用在生活中的应用

这些策略在现实生活中的应用可以非常具有创意,比如通过创造假设性的答案来增强相似性搜索的效果。举个例子,一开始的基准测试可能只有 69% 的准确率,但通过添加一个设计精良的答案的 RAG (检索增强型生成器),这个数字可以提高到 84%,相当于经过微调处理的效果。像 Scale AI 和 OpenAI 这样的合作案例,展示了如何通过结合不同方法来提升模型的效率和效果,达到新的高度。

在微调时要小心

总的来说,要想最大化大语言模型 (LLM) 的性能,并不是一个放之四海而皆准的方案。这需要一系列策略的组合,从提示工程 (prompt engineering) 到微调 (fine-tuning) 等,每一种都有其独特的优势和最适应的应用场景。