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

  每周跟踪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.mfbz.cn/a/587116.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

code-server容器webpack的ws无法连接解决方法

TLDR 通过指定client的wsrul去连接ws devServer.client.webSocketURL ‘wss://<Forwarded uri>/ws’ 拓扑 1、code-server: 用于编写代码、启动webpack dev-server 服务&#xff1b;[https://<domain>:8001] 2、webpack: 用于浏览dev-server服务&#xff1b;[ht…

spring-boot示例

spring-boot版本&#xff1a;2.0.3.RELEASE 数据库: H2数据库 &#xff08;嵌入式内存性数据库&#xff0c;安装简单&#xff0c;方便用于开发、测试&#xff0c;不适合用于生产&#xff09; mybatis-plus框架&#xff0c;非常迅速开发CRUD

如何去掉引用网址的小尾巴

引用文章的链接时会出现很长冗余信息&#xff0c;删&#xff0c;删&#xff0c;删……&#xff0c;直到从平流层删到地平线 使用 Neat URL&#xff08;支持 google 系、Firefox&#xff09;扩展中的【拦截参数】可以去除的这类百无聊赖的小尾巴。 安装后&#xff0c;点击【Pr…

C语言——单链表实现数据增删查改

一.前言 嗨嗨嗨&#xff0c;我们又见面了。前面我们已经学习了关于数据结构中的顺序表&#xff0c;今天我们来学习数据结构中的单链表。废话不多说让我们直接开始吧。 二.正文 1.1链表的概念 链表是一种物理存储结构上非连续、非顺序的存储结构&#xff0c;数据元素的逻辑顺…

【C#】基础知识

0.参考 C#语言入门详解 1.几种打印hello_world的方式 1.1 console控制台 新建一个console&#xff0c;直接打印&#xff1a; Console.WriteLine("Hello_world");启动一闪而过&#xff0c;在vs调试中选择开始执行不调试&#xff08;without debug&#xff09;。 …

算法效率的判断及一些典型例题的讲解

一.算法效率 1.用处&#xff1a;判断算法的好坏&#xff0c;好的算法应该是高效的 2算法效率取决于时间复杂度和空间复杂度 <1>时间复杂度 1.1概念&#xff1a;算法中基本操作的执行次数就是算法的时间复杂度 1.2表示&#xff1a;大O的渐进表示法&#xff0c;例如O(N)…

java技术栈快速复习02_前端基础知识总结

前端基础 经典三件套&#xff1a; html&#xff08;盒子&#xff09;css&#xff08;样式&#xff09;JavaScript&#xff08;js&#xff1a;让盒子动起来&#xff09; html & css HTML全称&#xff1a;Hyper Text Markup Language(超文本标记语言)&#xff0c;不是编程语…

记一次生产事故的排查和解决

一. 事故概述 春节期间, 生产系统多次出现假死不可用现象, 导致绝大部分业务无法进行. 主要表现现象为接口无法访问. 背景为900W客户表和近实时ES, 以及春节期间疫情导致的普通卖菜场景近似秒杀等. 二. 排查过程 优先排查了info, error, catalina日志, 发现以下异常: 主要的…

边循环边删除List中的数据

List边循环&#xff0c;边删除&#xff1b;这种一听感觉就像是会出问题一样&#xff0c;其实只要是删除特定数据&#xff0c;就不会出问题&#xff0c;你如果直接循环删除所有数据&#xff0c;那可能就会出问题了&#xff0c;比如&#xff1a; public static void main(String[…

公考学习平台|基于SprinBoot+vue的公考学习平台(源码+数据库+文档)

公考学习平台目录 目录 基于SprinBootvue的公考学习平台 一、前言 二、系统设计 三、系统功能设计 5.1用户信息管理 5.2 视频信息管理 5.3公告信息管理 5.1论坛信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&…

React的useEffect

概念&#xff1a;useEffect是一个React Hook函数&#xff0c;组件渲染之后执行的函数 参数1是一个函数&#xff0c;可以把它叫做副作用函数&#xff0c;在函数内部可以放置要执行的操作参数2是一个数组&#xff08;可选参&#xff09;&#xff0c;在数组里放置依赖项&#x…

Liunx发布tomcat项目

Liunx在Tomcat发布JavaWeb项目 1.问题2.下载JDK3.下载Tomcat4.Tomcat本地JavaWeb项目打war包、解压、发布5.重启Tomcat,查看项目 1.问题 1.JDK 与 Tomcat 版本需匹配&#xff0c;否则页面不能正确显示 报错相关&#xff1a;Caused by: java.lang.ClassNotFoundException: java…

十一、大模型-Semantic Kernel与 LangChain 的对比

Semantic Kernel 与 LangChain 的对比 Semantic Kernel 和 LangChain 都是用于开发基于大型语言模型&#xff08;LLM&#xff09;的应用程序的框架&#xff0c;但它们各有特点和优势。 基本概念和目标 Semantic Kernel 是一个由微软开发的轻量级 SDK&#xff0c;旨在帮助开发…

每日OJ题_DFS爆搜深搜回溯剪枝⑤_力扣37. 解数独

目录 力扣37. 解数独 解析代码 力扣37. 解数独 37. 解数独 难度 困难 编写一个程序&#xff0c;通过填充空格来解决数独问题。 数独的解法需 遵循如下规则&#xff1a; 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的…

C++--const成员及const取地址操作符重载

前言 今天我们来了解一下const成员的基本使用,以及const取地址重载的运用 来开始今天的学习 const成员 1.基本定义, 将const修饰的“成员函数”称之为const成员函数&#xff0c;const修饰类成员函数&#xff0c;实际修饰该成员函数 隐含的*this指针&#xff0c;表明在该成员函…

Android4.4真机移植过程笔记(二)

5、盘符挂载 先定义overlay机制路径&#xff0c;后面storage_list.xml要用到&#xff1a; 在路径&#xff1a; rk3188_android4.4.1/device/rockchip/OK1000/overlay/frameworks/base/core/res/res/xml/定义好&#xff0c;注意名字要和emmc的代码片段&#xff08;往下面看&am…

python学习笔记----安装pycharm(1)

一、安装pycharm 1. 下载并安装pycharm https://www.jetbrains.com/pycharm/download2.汉化pycharm 安装插件并重启IDE完成汉化 二、 第一个python程序

Flask教程1:flask框架基础入门,路由、模板、装饰器

文章目录 一、 简介二、 概要 一、 简介 Flask是一个非常小的Python Web框架&#xff0c;被称为微型框架&#xff1b;只提供了一个稳健的核心&#xff0c;其他功能全部是通过扩展实现的&#xff1b;意思就是我们可以根据项目的需要量身定制&#xff0c;也意味着我们需要学习各…

分享天某云对象存储开发的体验

最近体验了天某云对象存储的功能&#xff0c;作为一名资深开发者&#xff0c;开发体验差强人意&#xff0c;与阿里云存在一定的差距。 首先在开发文档上居然没有基于nodejs的代码示例&#xff0c;只有java,c#,go等的代码示例&#xff0c;虽然有javascript的&#xff0c;但那也只…

Outlook大附件插件 有效解决附件大小限制问题

很多企业都是使用Outlook来进行邮件的收发&#xff0c;可是由于附件大小有限&#xff0c;导致很多大文件发不出去&#xff0c;就会产生Outlook大附件插件这种业务需求。 邮件系统在发送大文件时面临的限制问题主要如下&#xff1a; 1、附件大小限制&#xff1a;大多数邮件服务…