Prompt、RAG、微调还是重新训练?如何选择正确的生成式AI的使用方法

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 生成式人工智能正在快速发展,许多人正在尝试使用这项技术来解决他们的业务问题。一般情况下有4种常见的使用方法:
  • Prompt Engineering
  • Retrieval Augmented Generation (RAG 检索增强生成)
  • 微调
  • 从头开始训练基础模型(FM)

本文将试图根据一些常见的可量化指标,为选择正确的生成式人工智能方法提供建议。

本文不包括“使用原模型”的选项,因为几乎没有任何业务用例可以有效地使用基础模型。按原样使用基础模型可以很好地用于一般搜索,但对于任何特定的用力,则需要使用上面提到的选项之一。

如何执行比较?

基于以下指标:

  • 准确性(回答有多准确?)
  • 实现复杂性(实现可以有多复杂?)
  • 投入工作量(需要多少工作的投入来实现?)
  • 总成本(拥有解决方案的总成本是多少?)
  • 灵活性(架构的耦合有多松?更换/升级组件有多容易?)

我们将对这些度量标准上的每个解决方案方法进行评级,进行一个简单的对比。

准确性

让我们首先得到讨论最总要的一点:哪种方法提供最准确的响应?

Prompt Engineering就是通过提供少量示例提供尽可能多的上下文,以使基础模型更好地了解用例。虽然单独来看,结果可能令人印象深刻,但与其他方法相比,它产生的结果最不准确。

RAG产生了高质量的结果,因为它增加了直接来自向量化信息存储的特定于用例的上下文。与Prompt Engineering相比,它产生的结果大大改善,而且产生幻觉的可能性非常低。

微调也提供了相当精确的结果,输出的质量与RAG相当。因为我们是在特定领域的数据上更新模型权重,模型产生更多的上下文响应。与RAG相比,质量可能稍微好一些,但这取决于具体实例。所以评估是否值得花时间在两者之间进行权衡分析是很重要的。一般来说,选择微调可能有不同的原因,而不仅仅是精度。还包括数据更改的频率、在自己的环境中控制模型实现法规、遵从性和可再现性等目的等等。

从头开始的训练产生了最高质量的结果(这是肯定的)。由于模型是在用例特定数据上从零开始训练的,所以产生幻觉的几率几乎为零,输出的准确率也是比较中最高的。

实现的复杂性

除了准确性以外,另外一个需要关注的就是实现这些方法的难易程度。

Prompt Engineering具有相当低的实现复杂性,因为它几乎不需要编程。需要具备良好的英语(或其他)语言技能和领域专业知识,可以使用上下文学习方法和少样本学习方法来创建一个好的提示。

RAG比Prompt Engineering具有更高的复杂性,因为需要编码和架构技能来实现此解决方案。根据在RAG体系结构中选择的工具,复杂性可能更高。

微调比上面提到的两个更复杂,因为模型的权重/参数是通过调优脚本更改的,这需要数据科学和ML专业知识。

从头开始训练肯定具有最高的实现复杂性,因为它需要大量的数据管理和处理,并且训练一个相当大的模型,这需要深入的数据科学和ML专业知识。

工作量投入

实现的复杂性和工作量并不总是成正比的。

Prompt Engineering需要大量的迭代努力才能做到正确。基础模型对提示的措辞非常敏感,改变一个词甚至一个动词有时会产生完全不同的反应。所以需要相当多的迭代才能使其适用于相应的需求。

由于涉及到创建嵌入和设置矢量存储的任务,RAG也需要很多的工作量,比Prompt Engineering要高一些。

微调则比前两个要更加费力。虽然微调可以用很少的数据完成(在某些情况下甚至大约或少于30个示例),但是设置微调并获得正确的可调参数值需要时间。

从头开始训练是所有方法中最费力的方法。它需要大量的迭代开发来获得具有正确技术和业务结果的最佳模型。这个过程从收集和管理数据开始,设计模型体系结构,并使用不同的建模方法进行实验,以获得特定用例的最佳模型。这个过程可能会很长(几周到几个月)。

总成本

我们讨论的不仅仅是服务/组件花费,而是完全实现解决方案的成本,其中包括熟练工程师(人员),用于构建和维护解决方案的时间,其他任务的成本,如自己维护基础设施,执行升级和更新的停机时间,建立支持渠道,招聘,提高技能和其他杂项成本。

Prompt Engineering的成本是相当低的,因为需要维护的只是提示模板,并在基础模型版本更新或新模型发布时时保持它们的最新状态即可。除此之外,托管模型或通过API直接使用还会有一些而额外的成本。

由于架构中涉及多个组件,RAG 的成本要比Prompt Engineering略高。这取决于所使用的嵌入模型、向量存储和模型。因为在这里需要为3个不同的组件付费。

微调的成本肯定要高于前两个,因为调整的是一个需要强大计算能力的模型,并且需要深入的ML技能和对模型体系结构的理解。并且维护这种解决方案的成本也会更高,因为每次有基本模型版本更新或新数据批次进入时都需要调优。

从头开始训练无疑是成本最高的,因为团队必须拥有端到端数据处理和ML训练、调优和部署能力。这需要一群高技能的机器学习从业者来完成。维护这种解决方案的成本非常高,因为需要频繁的重新训练周期来保持模型与用例周围的新信息保持同步。

灵活性

我们来看看在简化更新和更改方面的是什么情况

Prompt Engineering具有非常高的灵活性,因为只需要根据基础模型和用例的变化更改提示模板。

当涉及到架构中的更改时,RAG也具很最高程度的灵活性。可以独立地更改嵌入模型、向量存储和LLM,而对其他组件的影响最小。它还可以在不影响其他组件的情况下在复杂授权等流程中添加更多组件。

微调对更改的灵活性非常低,因为数据和输入的任何更改都需要另一个微调周期,这可能非常复杂且耗时。同样,将相同的微调模型调整到不同的用例也需要很多的工作,因为相同的模型权重/参数在其他领域的表现可能比它所调整的领域差。

从头开始训练的灵活性最低的。因为模型是从头构建的,对模型执行更新会触发另一个完整的重新训练周期。我们也可以微调模型,而不是从头开始重新训练,但准确性会有所不同。

总结

从以上所有的比较中可以明显看出,没有明显的输赢。因为最终的选择取决于设计解决方案时最重要的指标是什么,我们的建议如下:

当希望在更改模型和提示模板方面具有更高的灵活性,并且用例不包含大量域上下文时,可以使用Prompt Engineering。

当想要在更改不同组件(数据源,嵌入,FM,矢量引擎)方面具有最高程度的灵活性时,使用RAG,这样简单并且可以保持输出的高质量(前提是你要有数据)。

当希望更好地控制模型工件及其版本管理时,可以使用微调。尤其是领域特定术语与数据非常特定时(如法律、生物学等),它也很有用。

当以上都不适合的时候,可以从头开始训练。既然觉得上面的方案准确性都不够高,所以就需要有足够的预算和时间来做的更好。

总而言之,选择正确的生成AI方法需要深入思考并评估可接受和不可接受的指标。甚至是根据不同的时期选择不同的方案。

https://avoid.overfit.cn/post/94751a166b9f49509f7e0b449542733f

作者:Vikesh Pandey

目录
相关文章
|
9天前
|
机器学习/深度学习 人工智能 物联网
MiniMind:2小时训练出你的专属AI!开源轻量级语言模型,个人GPU轻松搞定
MiniMind 是一个开源的超小型语言模型项目,帮助开发者以极低成本从零开始训练自己的语言模型,最小版本仅需25.8M参数,适合在普通个人GPU上快速训练。
170 10
MiniMind:2小时训练出你的专属AI!开源轻量级语言模型,个人GPU轻松搞定
|
19天前
|
人工智能 JSON PyTorch
TPO:告别微调!这个AI框架让大模型实时进化:无需训练直接优化,输入问题越用越聪明,输出质量暴涨50%
TPO(Test-Time Prompt Optimization)框架,通过奖励模型和迭代反馈优化大语言模型输出,无需训练即可显著提升性能,支持动态对齐人类偏好,降低优化成本。
176 8
TPO:告别微调!这个AI框架让大模型实时进化:无需训练直接优化,输入问题越用越聪明,输出质量暴涨50%
|
24天前
|
人工智能 Python
Light-A-Video:好莱坞级打光自由!上海AI Lab开源视频打光AI,无需训练秒改画面氛围,3步让阴天变夕阳
Light-A-Video 是由上海AI Lab联合交大等高校推出的无需训练的视频重照明方法,支持高质量、时间一致的光照控制,零样本生成和前景背景分离处理。
44 9
|
2天前
|
存储 人工智能 Cloud Native
小鹏汽车选用阿里云PolarDB,开启AI大模型训练新时代
PolarDB-PG云原生分布式数据库不仅提供了无限的扩展能力,还借助丰富的PostgreSQL生态系统,统一了后台技术栈,极大地简化了运维工作。这种强大的组合不仅提高了系统的稳定性和性能,还为小鹏汽车大模型训练的数据管理带来了前所未有的灵活性和效率。
|
1天前
|
人工智能 开发工具 git
LanPaint:零训练消除AI图像违和感!与ComfyUI完美兼容的无损修复神器
LanPaint 是一款基于 Stable Diffusion 的零训练 AI 图像修复工具,支持无缝修复和内容替换,适用于从简单修复到复杂损坏恢复的多种场景。
19 0
LanPaint:零训练消除AI图像违和感!与ComfyUI完美兼容的无损修复神器
|
16天前
|
机器学习/深度学习 人工智能 Kubernetes
容器化AI模型部署实战:从训练到推理
在上一篇中,我们探讨了AI技术如何赋能容器化生态。本篇聚焦于AI模型的容器化部署,通过图像分类任务实例,详细介绍了从模型训练到推理服务的完整流程。使用PyTorch训练CNN模型,Docker打包镜像,并借助Kubernetes进行编排和部署,最终通过FastAPI提供推理服务。容器化技术极大提升了AI模型部署的便利性和管理效率,未来将成为主流趋势。
|
16天前
|
人工智能 数据可视化 数据处理
PySpur:零代码构建AI工作流!开源可视化拖拽平台,支持多模态与RAG技术
PySpur 是一款开源的轻量级可视化 AI 智能体工作流构建器,支持拖拽式界面,帮助用户快速构建、测试和迭代 AI 工作流,无需编写复杂代码。它支持多模态数据处理、RAG 技术、文件上传、结构化输出等功能,适合非技术背景的用户和开发者快速上手。
147 5
|
16天前
|
机器学习/深度学习 人工智能 PyTorch
从零开始:如何训练自己的AI模型
### 从零开始:如何训练自己的AI模型 训练AI模型如同培养新生儿,需耐心与技巧。首先明确目标(如图像识别、自然语言处理),选择框架(TensorFlow、PyTorch)。接着收集并预处理数据,确保多样性和准确性。然后设计模型结构,如卷积神经网络(CNN),并通过代码实现训练。训练后评估模型性能,调优以避免过拟合。最后部署模型至实际应用。通过猫狗分类器案例,掌握关键步骤和常见问题。训练AI模型是不断迭代优化的过程,实践才能真正掌握精髓。
|
23天前
|
人工智能
SPO来袭:Prompt工程师90%不存在了?AI自动优化时代开启!
当你点进这个标题时内心是怎样复杂的心情,质疑,鄙夷,或者是惊讶?这也正是我们最初点开这篇论文时的心情。然而, 在完成项目测试后, 我们瘫坐在椅子上, 默默打下了 'Prompt工程师,不存在' 这几个
112 0
|
12天前
|
人工智能 弹性计算 Ubuntu
从零开始即刻拥有 DeepSeek-R1 满血版并使用 Dify 部署 AI 应用
本文介绍了如何使用阿里云提供的DeepSeek-R1大模型解决方案,通过Chatbox和Dify平台调用百炼API,实现稳定且高效的模型应用。首先,文章详细描述了如何通过Chatbox配置API并开始对话,适合普通用户快速上手。接着,深入探讨了使用Dify部署AI应用的过程,包括选购云服务器、安装Dify、配置对接DeepSeek-R1模型及创建工作流,展示了更复杂场景下的应用潜力。最后,对比了Chatbox与Dify的输出效果,证明Dify能提供更详尽、精准的回复。总结指出,阿里云的解决方案不仅操作简便,还为专业用户提供了强大的功能支持,极大提升了用户体验和应用效率。
737 19
从零开始即刻拥有 DeepSeek-R1 满血版并使用 Dify 部署 AI 应用