简介
生成类似人类的文本和语音曾经只有在科幻小说中才成为可能。但是,GPT-3和PaLM等大型语言模型(LLM)的快速发展使这一愿景更接近现实,并且相应地出现一系列基于它们的从聊天机器人到内容创建等领域颇有前景的商业应用程序。
然而,通用的基础模型往往无法满足特定行业场景的具体需求。企业对其生成型人工智能应用程序有不同的要求,涉及到从性能、成本、延迟性乃至到可解释性等诸多方面。此外,可用于模型训练的数据的性质和数量也可能存在显著差异。因此,产品团队必须为其生成式人工智能应用程序构建关键业务标准,并选择合适的优化技术工具包来满足这些需求。
在这篇文章中,我们将向您展示一种框架,用于为您的生成型人工智能应用程序确定和优先考虑战略重点领域。我们还将探索一些流行的优化方法,并讨论它们各自的独特优势、理想的应用程序以及在满足应用程序需求方面的权衡。通过以明确的商业目标为指导的正确优化战略,公司便可以开发定制的人工智能解决方案,平衡对其成功至关重要的优先事项。接下来,就让我们一起开始这一探索吧!
评估业务需求和限制的框架
为了有效地调整优化LLM的策略,产品团队应该从深入了解业务目标和运营限制开始。为您的业务场景评估并确定以下关键维度的优先级:
1.绩效目标
(Performance Goal):定义人工智能需要实现的绩效指标和水平。这可以是事实准确性、与人类价值观的一致性或其他特定任务指标的组合。
需要考虑的问题:衡量绩效的最佳维度是什么?可接受的最低性能标准是多少?您所在行业的性能如何与用户期望保持一致?
2.延迟目标
(Latency Targets):确定应用程序能够承受的最长响应时间,而不会对用户体验产生负面影响。当LLM部署在时间敏感或资源受限的场景(例如,语音助手、边缘设备)中时,这一点可能尤为重要。
需要考虑的问题:延迟如何影响用户满意度和保留率?响应时间的行业标准是什么?
3.成本效率
(Cost Efficiency):根据预期ROI(投资回报率)评估人工智能的运营成本。当更高的初始成本带来可观的节约、收入增长或超过投资的战略效益时,这些成本可能是合理的。
需要考虑的问题:LLM的运营成本如何影响您的预算?投资回报率与人工智能部署成本相比如何?
4.可解释性和信任
(Explainability & Trust):确定是否需要确保人工智能决策易于被用户理解,这对于建立信任至关重要,尤其是在监管要求严格的领域。
需要考虑的问题:您所在的行业是否受到监管,要求人工智能决策的透明度?可解释性如何影响用户的信任和采用?
5.外部知识
(External Knowledge):评估您的人工智能是否需要访问外部数据源以保持相关性并提供准确的响应。
需要考虑的问题:您的人工智能是否需要实时数据来做出决策?
6.数据可用性
(Data Availability):可用于训练人工智能的数据的性质和数量可能会广泛影响优化策略。
需要考虑的问题:您是否可以访问大型数据集进行训练,或者是否需要使用合成或增强的数据?您需要多久更新一次训练数据以保持人工智能的相关性?
下表概述了生成式人工智能应用程序的三个不同用例,并对框架内每个维度的优先级进行了相应评估:
正如您从上表中所看到的,优先级和约束在不同的用例中可能有很大的差异。
例如,考虑一家旨在开发客户支持聊天机器人以减轻员工工作量的公司。在这种情况下,准确性性能和外部数据集成是优先需要考虑的事项,以便提供既正确又最及时的响应。虽然延迟具有一定的意义,但用户可能愿意容忍短暂的延迟。通常,这样的公司可以访问可用于训练模型的非常广泛的档案——这些数据都是与老客户交互过程产生的。
相比之下,人工智能在评估软件代码质量和风险方面的关键应用需要更加关注人工智能见解的事实准确性和可解释性,这通常是由于潜在的错误后果所致。在这种情况下,成本和延迟就成为次要考虑因素。在某些情况下,此用例可能受益于外部数据集成,并且这通常面临丰富的训练数据集的可用性方面的限制。
如果对与用例相关的战略优先级和限制有深入的了解,就可以帮助团队制定量身定制的战略来优化LLM,以满足用户的独特需求。
深入研究LLM优化技术
本节将深入研究各种优化技术,强调它们的目标、理想的使用场景和固有的权衡,特别是在平衡上述业务目标的情况下。
技术表格细分如下所示:
1.提示工程(Prompt Engineering)
执行复杂度:低
何时使用:适用于在不改变模型的情况下提高响应时间与迅速改进。在尝试更复杂的优化方法之前,可以先从这项技术开始,从而最大限度地提高预训练模型的有效性。
需要付出的代价:提示工程包括以一种能够获得所需输出的方式,精心制作对模型的输入查询。它需要了解模型如何响应不同类型的指令,但不需要重新训练模型或更改其体系结构。这种方法只是优化了现有模型访问和应用其预先训练的知识的方式,并没有增强模型的内在能力。
“这就像调整你向知识渊博的朋友提问的方式,以获得尽可能好的答案。”
示例:
- 要求语言模型“以莎士比亚的风格写诗(Write a poem in the style of Shakespeare)”与“写诗(Write a poem)”,以特定的文学风格引发反应。
- 提供一个详细的场景,提示对话式人工智能,以确保模型了解其作为客户服务代理的角色。
利弊 权衡:
试错:设计最有效的提示需要多次迭代,因为提示和人工智能输出之间的关系并不总是直观的。
输出质量:输出的质量在很大程度上取决于提示的设计,并且通过这种方法可以实现的改进程度也是有限的。
2.微调(Fine-Tuning)
执行复杂性:中等
何时使用:当您需要模型适应基础预训练模型可能无法很好地涵盖特定的领域或任务时,应考虑进行微调。这是朝着提高特定领域的准确性和创建一个可以处理特定领域数据和术语的更专业的模型迈出的一步。
需要付出的代价:微调是在代表目标任务或领域的新数据集上继续训练预训练模型的过程。这个新的数据集由输入输出对组成,它们提供了所需行为的示例。在微调过程中,更新模型的权重以最大限度地减少新数据集上的损失,从而有效地使模型适应新的领域。
“可以把它想象成给你的朋友上一堂关于你希望他们成为专家的主题的速成课程;向他们展示测试中可能出现的多个问题示例以及他们应该回答的样本答案。”
示例:
通用语言模型可以对法律文档进行微调,以提高其审查此类文档的性能。
图像识别模型可以与医学成像数据集进行微调,以更好地识别X射线或MRI中的特定疾病。
利弊 权衡:
数据要求:微调需要一个与任务相关的标记数据集,创建该数据集可能需要耗费大量资源。
过度拟合风险:存在模型对微调数据过于专业化的潜在风险,这可能会降低其推广到其他上下文或数据集的能力。
3.检索增强生成(RAG)
执行复杂性:高
何时使用:当人工智能模型需要访问和整合外部信息以生成响应时,应考虑使用RAG。当期望模型提供未包含在其预先训练的知识库中的最新或高度特定的信息时,这一点尤其重要。
需要付出的代价:RAG将LLM的生成能力与检索系统相结合。检索系统查询数据库、知识库或互联网以查找与输入提示相关的信息。然后,将检索到的信息提供给语言模型,语言模型结合了该上下文以生成更丰富、更准确的响应。通过引用RAG系统用于生成响应的来源,生成型人工智能应用程序可以增强对用户的解释能力。
在未来几年,随着越来越多的产品寻求利用其最新的商业数据为客户量身定制体验,这种优化技术预计将广受欢迎。
“这就像你的朋友可以在网上查找信息,回答他们直接专业知识之外的问题。这是一种开卷考试。”
示例:
在基于RAG的在线聊天机器人中,检索器可以从数据库或互联网中提取相关信息,以提供最新答案。
家庭作业助理AI可以使用RAG获取最新的科学数据,以回答学生关于气候变化的问题。
利弊 权衡:
复杂的实现:RAG系统需要一个集成良好的检索系统,这在设置和维护方面可能具有挑战性。
信息质量:生成的回复的有用性在很大程度上取决于检索到的信息的相关性和准确性。如果检索系统的来源过时或不正确,则回复将反映这一点。
响应时间慢:从外部源检索信息以生成响应可能会增加延迟。
4.从人的反馈中强化学习(RLHF)
执行复杂性:非常高
何时使用:当模型的输出需要与复杂的人类判断和偏好紧密一致时,应使用RLHF。
需要付出的代价:RLHF是一种复杂的强化学习技术,通过将人类评估直接纳入训练过程来细化模型的行为。该过程通常包括从人工操作员那里收集数据,操作员根据各种质量指标(如相关性、有用性、语气等)对人工智能的输出进行排名。然后,这些数据信号被用于训练奖励模型,该模型指导强化学习过程,以产生更符合人类偏好的输出。
“这类似于你的朋友从过去的对话中学习是什么让讨论变得愉快,并利用这些知识来改善未来的互动。”
示例:
社交媒体平台可以使用RLHF来训练一个审核机器人,该机器人不仅可以识别不合适的内容,还可以以建设性和对上下文敏感的方式对用户做出回应。
可以使用RLHF对虚拟助理进行微调,以提供对用户请求的更个性化和上下文感知的响应。
利弊 权衡:
高复杂性:RLHF涉及复杂的资源密集型过程,包括人类反馈收集、奖励建模和强化学习。
质量风险:反馈数据存在偏差的风险,这可能会影响模型质量。确保人类反馈的质量一致并使奖励模型与期望的结果保持一致可能很困难。
5.知识蒸馏(Knowledge Distillation)
执行复杂性:中等到高
何时使用:当您需要在计算能力有限的设备上或在响应时间至关重要的应用程序中部署复杂的模型时,会使用知识蒸馏。
需要付出的代价:这是一种压缩技术,训练一个更小、更高效的模型(称为学生)来复制一个更大、更复杂的模型(教师)的性能。训练不仅仅是学习正确的答案(硬目标),还包括学生试图产生与老师预测相似的概率(软目标)。这种方法使学生模型能够捕捉到教师模型所学到的细微的模式和见解。
“这类似于将经验丰富的专家的智慧提炼成一本简明的指南,新手无需多年的经验就可以用它来做出专家级的决策。”
示例:
一个大规模的语言模型可以被蒸馏成一个较小的模型,该模型可以在智能手机上高效运行,用于实时语言翻译。
自动驾驶汽车中使用的图像识别系统可以蒸馏成一个可以在汽车车载计算机上运行的轻型模型。
利弊 权衡:
性能与规模:提取的模型可能并不总是与教师模型的性能相匹配,这可能会导致准确性或质量下降。
训练复杂性:蒸馏过程非常耗时,需要仔细的实验来确保学生模型有效地学习。它需要对模型的体系结构有深入的理解,并有能力将知识从一个模型转换到另一个模型。
现在,让我们来看一个实际应用中的示例。
示例:客户支持型聊天机器人
让我们重新审视构建客户支持型聊天机器人的用例,以减少人力支持人员的工作量。
要求/限制包括:
- 性能:高优先级(强调事实准确性)
- 外部知识:高度优先
- 延迟目标:中等优先级
- 成本效率:低优先级
- 可解释性和可信度:中等优先级
数据可用性:充足(过去的对话数据)
有了对业务背景和优先级的清晰理解,产品开发者就可以制定出最有效的优化策略。
LLM优化决策步骤:
提示工程应作为提高聊天机器人初始理解和响应能力的第一步。然而,仅凭这一点不太可能满足专业领域的准确性。
利用历史客户对话数据对模型进行微调,对于提高聊天机器人的准确性性能,并使模型擅长处理细微的行业特定查询至关重要。
合并检索增强生成(RAG)对于向用户提供最新的产品信息和相关的网络链接至关重要。
虽然一定程度的延迟是可以容忍的,但监控并潜在地优化响应时间仍然是可取的。这里的优化策略可以包括缓存常见查询以加快响应,以及战略性地使用即时工程来减少不必要的外部数据检索。
正如您所看到的,为了满足用例的特定需求,策略的组合通常是必要的。优化策略的灵活性至关重要,因为需求可能会随着时间的推移而变化,系统需要同时平衡多个需求。
结论
为业务用例优化LLM既是一门艺术,也是一门科学,需要深入了解底层技术和当前的目标。随着人工智能的不断发展,优化技术的选择将变得越来越具有战略意义,不仅会影响单个应用程序的性能,还会影响人工智能在社会中作用的整体轨迹。
无论您是在速度、准确性、成本还是透明度方面进行优化,上述技术都提供了一个增强LLM的工具包,以满足未来生成型人工智能商业应用程序的需求。通过深思熟虑地应用这些方法,我们可以创造出不仅有效而且负责任的人工智能,还能适应用户的细微需求。
译者介绍
朱先忠,51CTO社区编辑,51CTO专家博客、讲师,潍坊一所高校计算机教师,自由编程界老兵一枚。
原文Framework for Optimizing Generative AI to Meet Business Needs,作者:Sarthak Handa