利用大型语言模型提升数字产品创新:提示,微调,检索增强生成和代理的应用

ops/2024/10/22 7:32:14/

  每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领域的领跑者。点击订阅,与未来同行! 订阅:https://rengongzhineng.io/

随着像Gemini、GPT或Claude这样的大型语言模型(LLMs)的新版本不断推出,相关头条新闻铺天盖地而来。与此同时,许多其他公司也在探索如何利用这些模型来创新、增加价值并降低成本。对于这些快速的进展,很容易感到不知所措,我自己也经常有这种感觉!在这篇博客文章中,我将整理一些最重要的概念及其对产品和公司的潜在价值,帮助你跟上这些发展。

关于如何将LLMs和其他生成性AI模型整合到产品或流程中,有一些常见的趋势性概念,包括:提示(prompting)、微调(fine-tuning)、检索增强生成(retrieval augmented generation,简称RAG)以及代理(agents)。我相信你可能已经听说过这些概念中的几个或全部,但有时它们之间的差异可能不太清楚,最重要的是,我们仍然不知道它们能为我们的公司或产品带来哪些潜力。

使用大型语言模型(LLM)通过提示


提示是为大型语言模型(LLM)构建指令的过程,以从中获取期望的生成结果。

目前,许多人已经熟悉了提示的使用:在 OpenAI 网站上使用 ChatGPT 就是一个很好的例子。作为用户,我们向 ChatGPT 输入一个具体的问题,比如“为我写一首关于大型语言模型如何改变数字产品的说唱歌曲”。OpenAI 将这个输入构造成一个提示,并将其输入到 GPT-x 模型中以生成响应。这种构造使 OpenAI 能够管理响应:如何设定语调,拒绝回答需要最新信息的问题,如果被问到如何制造核武器则警告其危险,或者将所有先前的对话串联起来,使响应考虑所有信息,而不仅仅是用户的最后一个输入。

那么,提示如何增强我们的“发布新商品”用例呢?通过将大型语言模型的 API 调用集成到我们的功能中,我们可以根据特定的用户输入构造提示。例如,我们可以要求用户仅输入新商品的标题,并构造一个提示来生成填充描述和发布类别的适当内容。如果所提示的模型是多模态的(接受多种类型的输入数据,如文本、图片、声音等),构造的提示可以包括产品的图片,从而允许更准确的描述和分类。我们需要对提示进行调整(提示工程),以获得准确且有用的结果。关于提示工程的更多信息,可以在这里找到一个不错的资源。

通过微调使用大型语言模型


虽然改进提示可以带来更好的结果,但可能会有一个点需要进一步细化。这时,微调可能是一个不错的选择,因为它允许我们根据我们市场的环境调整模型,通过向其提供数据(例如,我们平台上发布的所有产品信息的历史)。这样,我们可以使其生成的文本更符合平台内的语言风格和沟通规范。

微调是采用预训练模型并通过特定数据集或任务进一步精细化的过程,以便更好地适应专业的环境或领域。

微调一个大型语言模型并不像提示那样直截了当,它需要数据科学团队的专业知识来实施微调并在生产中部署微调后的模型,以及从环境中提供精心策划的数据。由于模型需要在内部部署,成本也可能有所不同(并可能增加),与查询 API 相关的成本相比。

微调可以通过应用更新初始模型所有权重的方法来完成。然而,也有更具成

本效益的方法,例如参数有效的微调(如 LoRA 或 QLoRA)。要进一步了解微调,deeplearning.ai 的课程“Generative AI with Large Language Models”是一个很好的实践资源。一旦部署了微调后的模型,工作流程与之前看到的提示模式相似。唯一的区别:我们现在运行的是微调后的模型,而不是基础模型。


通过微调,我们为用户带来了附加价值,因为生成的描述和类别可能会更准确和有价值,需要较少的手动编辑。由于微调后的模型已经看过市场数据,甚至可能会建议一个合理的商品价格。在这种情况下,平衡微调的好处与增加的成本和解决方案复杂性是很重要的。

检索增强生成


无论是提示还是微调,都会遇到模型截止知识的局限性,因为它的知识仅限于其训练或微调时点的可用数据。这被视为大型语言模型的一个巨大限制,让用户对其实用性感到疑惑,如果它们无法实时访问信息,或者无法获取市场上当前可用的产品详情。检索增强生成(RAG)解决了这一限制。检索增强生成(RAG)是一种检索相关信息以丰富提示的技术。

在实际操作中,想象在我们的示例中,用户输入“哈利波特第一册,几乎全新”。根据这个输入,我们的系统将采取以下步骤:
获取最相关的结果。这一步可以通过语义搜索完成,或者通过市场实施的任何排序逻辑。假设这些结果是哈利波特第一册的其他例子和该系列的其他书籍的一些例子。
通过使用从检索到的相关结果中获得的所有信息来丰富预定义的模板,构建提示。


通过这种丰富的提示,大型语言模型现在能够生成更有价值的描述,这可能包括从类似产品中获得的哈利波特书的特定特征。由于它还可以访问类似物品的定价数据,模型甚至可能能够建议新商品的适当价格。已经证明 RAG 可以减轻大型语言模型的幻觉风险(参考资料)。要深入了解如何实施 RAG,推荐的短期课程是 deeplearning.ai 的“Building and Evaluating Advanced RAG Applications”。

代理


到目前为止,我们已经看到了提示、微调和 RAG 如何促进并提高广告发布过程的质量。然而,仍然存在两个小的局限性:

缺乏价格可解释性:模型自动生成价格,对结果提供的见解或控制很少
手动过程:用户仍需输入、确认并手动通过各个步骤。
代理是基于大型语言模型的过程,可以主动做出决策、访问工具和执行操作。

有了代理,我们可以为系统引入额外的自主性层,使其能够计划、访问工具并执行操作。这意味着为系统配备计算价格的能力。与仅依赖模型生成的过程不同,代理可以访问可运

行的环境或计算器,根据合理的逻辑计算建议的价格(例如,类似物品的所有价格的平均值)。此外,我们可以进一步自动化发布过程,通过让代理直接访问发布 API。有关代理策略的更多信息,我建议查看 The Batch 的这些帖子。

总结
在这篇博客文章中,我们已经了解了当今创新的时尚 AI 概念:提示、微调、RAG 和代理。我们探讨了每个概念的含义,探索了它们之间的关系和差异,优点和缺点,同时专注于它们的变革潜力。

提示是通过 AI 生成的建议为用户带来价值的最直接方式。微调更进一步,定制模型以更好地适应公司或产品的环境,并提供更准确的结果。RAG 打破了知识截止的障碍,使系统能够实时访问信息以丰富生成的建议。最后,代理引入了新的自动化和任务执行水平。

了解这些功能是否提高了用户满意度、减少了用户痛点(如摩擦、混乱)并影响了产品指标,是通过创新真正带来价值的关键。UX 调查可以提供有关用户如何感知新功能的定性反馈。用户是否发现广告创建过程更直观?他们是否觉得建议相关?此外,通过 a/b 测试和检查特定的产品指标可以帮助量化这种影响。用户发布新商品需要多少时间?有多少用户开始发布过程并完成它?有多少用户编辑了系统放置的建议?AI 生成的内容的质量或转化率是否优于其他内容?

通过分析和监控这种影响,我们可以验证我们的 AI 产品的有效性,并确定进一步优化和创新的领域。请记住,我们只涵盖了这些解决方案的机会,而未涉及相关风险:幻觉、安全问题、偏见、不一致……在实施 GenAI 解决方案时,了解这些风险是重要的

这只是公司和数字产品可以利用 GenAI 的开始。希望这篇文章对于了解当前这项技术的使用及其相关用例的想法有所帮助。


http://www.ppmy.cn/ops/27102.html

相关文章

前端到全栈进阶之“前端框架”

从前端入门到全栈-系列介绍 你会学到什么? 可能学不到什么东西,该系列是作者本人工作和学习积累,用于复习 系列介绍 现在的 Web 前端已经离不开 Node.js,我们广泛使用的 Babel、Webpack、工程化都是基于 Node 的,各…

GPT3 终极指南(二)

原文:zh.annas-archive.org/md5/6de8906c86a2711a5a84c839bec7e073 译者:飞龙 协议:CC BY-NC-SA 4.0 第五章:GPT-3 作为企业创新的下一步 当一个新的创新或技术转变发生时,大公司通常是最后一个采纳的。它们的等级结构…

C++相关概念和易错语法(10)(定位new、模板)

1.定位new 我们使用类来实例化对象,开辟空间的时候会自动去调用它的构造函数。但在那篇博客我就特意强调过,使用a.A()的方式是错误的,A()根本不会被识别为一个构造函数,而会被识别为A类型。因此我们要注意最好在实例化对象&#…

Python 与 TensorFlow2 生成式 AI(五)

原文:zh.annas-archive.org/md5/d06d282ea0d9c23c57f0ce31225acf76 译者:飞龙 协议:CC BY-NC-SA 4.0 第十二章:用生成式人工智能玩视频游戏:GAIL 在之前的章节中,我们已经看到如何使用生成式人工智能来生成…

Vue 2 中组件详解

什么是组件? 在Vue中,组件是可复用的Vue实例,每个组件都可以拥有自己的模板、脚本和样式。通过组件化,我们可以将页面拆分为多个独立的、可复用的部分,使得代码更易于维护和扩展。 创建组件 在Vue 2中,我们…

用于复杂任务的 AI 编码引擎:多文件多步骤拆解实现 | 开源日报 No.239

plandex-ai/plandex Stars: 3.1k License: AGPL-3.0 plandex 是一个用于复杂任务的 AI 编码引擎。 使用长时间运行的代理完成跨多个文件且需要多个步骤的任务将大型任务分解为较小子任务,逐一实现,直至完成整个工作帮助处理积压工作、使用陌生技术、摆…

GPT3 探索指南(二)

原文:zh.annas-archive.org/md5/e19ec4b9c1d08c12abd2983dace7ff20 译者:飞龙 协议:CC BY-NC-SA 4.0 第三部分:使用 OpenAI API 本节提供了使用 OpenAI API 与 Node.js/JavaScript 和 Python 的实际示例。然后,它通过…

c#数据库: 4.修改学生成绩

将4年级的学生成绩全部修改为100分,。修改前的学生信息表如图所示: using System; using System.Collections.Generic; using System.Data.SqlClient; using System.Linq; using System.Text; using System.Threading.Tasks;namespace StudentUpdate {internal class Program{s…