告诉老板,AI大模型应该这样部署!

news2025/3/15 7:36:49

导语

随着大语言模型创新的快速步伐,企业正在积极探索用例并将其第一个生成式人工智能应用程序部署到生产中。

随着今年LLM或LLMOps的部署正式开始,企业根据自己的人才、工具和资本投资结合了四种类型的LLM部署方法。请记住,随着新的 LLM 优化和工具的定期推出,这些部署方法将不断发展。

这篇文章的目标是介绍这些方法并讨论这些设计选择背后的决策。

01.
结合实际情况进行快速工程

许多企业将通过这种方法开始他们的大语言模型之旅,因为它最具成本效益和时间效率。这涉及到直接调用 OpenAI、Cohere 或 Anthropic 等第三方 AI 提供商并进行提示。

然而,鉴于这些是广义的大语言模型,他们可能不会回答问题,除非它以特定的方式提出,或者除非得到更多方向的指导,否则不会引起正确的回答。构建这些提示,也称为“提示工程”,涉及创造性的写作技巧和多次迭代以获得最佳响应。

图片

图1-1 提示工程输入示例

提示还可以包括帮助指导大语言模型的示例。这些示例包含在提示本身之前,称为“上下文”。“One shot”和“Few shot”提示是用户在上下文中介绍示例时的提示。

这是一个例子:

图片

图1-2 提示工程输入示例

由于它就像调用 API 一样简单,因此这是企业快速启动 LLM 旅程的最常见方法,对于许多缺乏人工智能专业知识和资源的人来说可能就足够了。

这种方法适用于广义自然语言用例,但如果第三方专有人工智能提供商的流量很大,则可能会变得昂贵。

02.
检索增强生成(RAG)

基础模型是使用通用领域语料库进行训练的,这使得它们在生成特定领域响应方面效果较差

因此,企业将希望在自己的数据上部署 LLM,以解锁其领域中的用例(例如,文档和支持方面的客户聊天机器人、IT 指令方面的内部聊天机器人等),或者生成最新的响应或使用非公开信息。

然而,很多时候可能没有足够的指令(数百或数千)来证明微调模型的合理性,更不用说训练新模型了。

图片

图2-1 LLM通常不会提供及时或针对特定领域的回应

在这种情况下,企业可以使用 RAG 来增强提示,方法是使用一个或多个文档或文档块形式的外部数据,然后将其作为提示中的上下文传递,以便 LLM 可以正确地响应该信息。

在数据作为上下文传递之前,需要从内部存储中检索数据。为了确定为提示检索哪些数据,提示和文档(通常被分块以满足标记要求并使其更易于搜索)都被转换为嵌入,并确定相似性分数。最后,组装提示查询并发送给大语言模型。

Pinecone 等矢量数据库和 LlamaIndex 等 LLM 元数据工具是支持 RAG 方法的新兴工具。

图片

图2-2 针对内部 IT 聊天机器人向大语言模型发出的 RAG 提示

除了节省微调时间之外,这种知识检索技术还减少了产生幻觉的机会,因为数据是在提示本身中传递的,而不是依赖于大语言模型的内部知识

然而,企业需要注意,知识检索并不是万无一失的,因为大语言模型生成的正确性将在很大程度上依赖于所传递信息的质量和所使用的检索技术。

另一个需要注意的考虑因素是,在调用中发送数据(尤其是专有数据)会增加数据隐私风险,因为据报道基础模型可以记住通过的数据,并增加令牌窗口,从而增加每次调用的成本和延迟。

图片

图2-3 RAG 架构示例

03.

微调模型

虽然即时工程和 RAG 对于某些企业用例来说可能是一个不错的选择,但我们也回顾了它们的缺点。随着企业数据量和用例重要性的增加,微调大语言模型可提供更好的投资回报率。

图片

图3-1 典型的微调工作流程

当您进行微调时,LLM 会将您的微调数据集知识吸收到模型本身中,从而更新其权重。因此,一旦 LLM 得到微调,您就不再需要在提示上下文中发送示例或其他信息。这种方法降低了成本,降低了隐私风险,避免了代币大小限制,并提供了更好的延迟。由于模型吸收了微调数据的整个上下文,因此响应的质量也更高,泛化程度更高。

如果您有大量指令(通常为数万条),微调可以提供很好的价值,但它可能会占用大量资源且耗时。除了微调之外,您还需要花时间以正确的格式编译微调数据集以进行调整。AWS Bedrock 等服务使 LLM 的微调变得容易。

04.

训练模型

如果您有特定领域的用例和大量以领域为中心的数据,那么从头开始训练大语言模型可以提供最高质量的大语言模型

这种方法是迄今为止采用起来最困难和最昂贵的。下图来自 Microsoft Build 的 Andrej Karpathy,很好地解释了从头开始构建 LLM 的复杂性。

例如,BloombergGPT是第一个金融模型 LLM。它接受了 40 年金融语言数据的训练,总数据集包含 7000 亿个Token。

图片

图4-1 LLM 培训工作流程示例

企业需要了解与从头开始训练大语言模型相关的成本,因为它们需要大量计算,这会很快增加成本。根据所需的训练量,计算成本可能从几十万到几百万美元不等。

例如,Meta 的第一个65B LLaMa 模型训练在 2048 个 NVidia A100-80GB 上花费了 1,022,362 小时(在云平台上约为 4 美元/小时),成本约为 400 万美元。不过,训练成本正在迅速下降,像Replit 的代码 LLM和 MosaicML 的基础模型只需要几十万。

随着 LLMOps 基础设施随着更先进的工具(如 Fiddler 的AI Observability平台和方法)的发展,我们将看到更多的企业采用 LLM 部署选项,以更经济的成本和更快的上市时间产生更高质量的 LLM。

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1695230.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

第199题|关于函数的周期性问题|函数强化训练(六)|武忠祥老师每日一题 5月24日

解题思路:解这道题我们要用到下面这个结论 f(x)连续,以T为周期时,原函数以T为周期的充分必要条件是: (A) sin x显然是以π为周期的,我们可以看到并不等于0,根据结论,A的原函数显然不是周期函数。 (B) 的…

Linux|如何在 awk 中使用流控制语句

引言 当您从 Awk 系列一开始回顾我们迄今为止介绍的所有 Awk 示例时,您会注意到各个示例中的所有命令都是按顺序执行的,即一个接一个。但在某些情况下,我们可能希望根据某些条件运行一些文本过滤操作,这就是流程控制语句的方法。 …

Windows VS2022 C语言使用 sqlite3.dll 访问 SQLite数据库

今天接到一个学生C语言访问SQLite数据库的的需求: 第一步,SQLite Download Page下载 sqlite3.dll 库 下载解压,发现只有两个文件: 于是使用x64 Native Tools Command Prompt 终端 生成 sqlite3.lib 和 sqlite3.exp文件 LIB -def:sqlite3.def -out:sqlite3.lib -machin…

Cloneable接口和深拷贝

在java中如何对对象进行拷贝呢?我们可以使用Object类中的clone方法。 一、浅拷贝 在使用clone方法对对象进行拷贝的时候,需要注意: 1.需要重写clone方法; 2.clone方法的返回值是Object类,需要强制类型转化&#xf…

微信小程序-常用的视图容器类组件

一.组件分类 小程序中的组件也是由宿主环境提供的,开发者可以基于组件快速搭建出漂亮的页面结构。 官方把小程序的组件分为了9大类: (1) 视图容器 (2) 基础内容 (3) 表单组件 (4)导航组件 (5) 媒体组件 (6) map 地图组件 (7) canvas 画布组件 (8) 开放能力 (9) 无…

spark学习

standalone环境部署 1.standalone架构 standalone是完整的spark运行环境,其中:Master角色以Master进程存在,Worker角色以Woker进程存在,Driver角色在运行时存在Master进程内,Executeor运行在Worker进程内 standalon…

前缀和,差分算法理解

前缀和是什么: 前缀和指一个数组的某下标之前的所有数组元素的和(包含其自身)。前缀和分为一维前缀和,以及二维前缀和。前缀和是一种重要的预处理,能够降低算法的时间复杂度 说个人话就是比如有一个数组: …

【408真题】2009-13

“接”是针对题目进行必要的分析,比较简略; “化”是对题目中所涉及到的知识点进行详细解释; “发”是对此题型的解题套路总结,并结合历年真题或者典型例题进行运用。 涉及到的知识全部来源于王道各科教材(2025版&…

【NumPy】NumPy与Pandas集成应用:数据处理的强强联合

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

从git上拉取项目进行操作

1.Git的概念 Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。它实现多人协作的机制是利用clone命令将项目从远程库拉取到本地库,做完相应的操作后再利用push命令从本地库将项目提交至远程库。 2.Git的工作流程…

mysql 删除特殊字符 表中存了特殊字符 换行符 回车符 word字符 查询不到

省流: UPDATE t1 SET f1 REPLACE(REPLACE( f1 , CHAR(10), ), CHAR(13), ); 用 replace() 函数将 换行符char(10) 和 回车符char(13) 替换为空字符串。 char(10):换行 char(13):回车 发现表里存进很多换行符,如下图&#xff1a…

【知识拓展】ngrok-高性价比的内网穿透工具

前言 使用google colab运行的web应用无法打开进行测试。 第一时间想到是否有相关工具能将内网映射到外网供访问。于是找到了ngrok。 ngrok 是什么,我们为什么要使用它? ngrok官网是一个全球分布的反向代理,无论您在哪里运行,它…

vue3 <script setup> 语法糖时间组件

<template><div><p>当前时间Current Time: {{ currentTime }}</p></div> </template><script setup> import { ref, onBeforeUnmount, onMounted } from vueconst currentTime ref()let interval // 声明 interval 变量const getTo…

二叉树OJ题目

一.二叉树第k层结点个数 有这样的一个思路&#xff1a;我既然要求第k层的结点个数&#xff0c;我肯定是要用到递归&#xff0c;那么当我在递归到第k层的时候我就开始判断&#xff0c;这一层是不是我所需要的那一层&#xff0c;如果是&#xff0c;就计数有几个节点&#xff0c;…

IDEA中好用的插件

IDEA中好用的插件 CodeGeeXMybatis Smart Code Help ProAlibaba Java Coding Guidelines​(XenoAmess TPM)​通义灵码常用操作 TranslationStatisticGrep Console CodeGeeX 官网地址&#xff1a;https://codegeex.cn/ 使用手册&#xff1a;https://zhipu-ai.feishu.cn/wiki/Cu…

cocosCreator动态生成二维码

cocosCreator 版本&#xff1a;3.7.2 开发语言&#xff1a;typeScript 我们在游戏开发中&#xff0c;经常会生成一个专属于玩家个人的二维码&#xff0c;比如说推广、充值等功能。 接到这个任务&#xff0c;在网上找了下&#xff0c;还是有很多教程的。但是这些教程大部分都是用…

虚拟化技术[3]之网络虚拟化

网络虚拟化 网络虚拟化简介核心层网络虚拟化接入层网络虚拟化虚拟机网络虚拟化案例: VMware网络虚拟化技术虚拟网络接口卡虚拟交换机vSwitch分布式交换机端口组VLAN 网络虚拟化简介 传统的数据中心&#xff1a;服务器之间操作系统和上层软件异构、接口与数据格式不统一&#x…

微信小程序连接阿里云快速入门【物联网】

一、前言 1.1 项目背景 随着5G的逐渐普及&#xff0c;万物互联的浪潮已经席卷而来。在万物互联的场景下&#xff0c;如何实现设备之间的互联互通&#xff0c;成为了一个亟待解决的问题。 微信小程序作为一款轻量级的小程序开发框架&#xff0c;以其简洁的语法和丰富的组件库…

【制作100个unity游戏之26】unity2d横版卷轴动作类游13(附带项目源码)

最终效果 系列导航 文章目录 最终效果系列导航前言存储点灯光后处理存储位置信息存储更多数据存储场景信息持久化存储数据引入Unity 的可序列化字典类调用 游戏结束源码完结 前言 欢迎来到【制作100个Unity游戏】系列&#xff01;本系列将引导您一步步学习如何使用Unity开发各…

C++原创人工智能QPBS01G大功告成!!!

俗话说得好&#xff0c;你周五周六不写作业&#xff0c;要上学了才着急了 我之前的版本bug太多&#xff0c;结果这两天晚上改的我两眼发白&#xff0c;太烦人了 这次这娃学聪明了&#xff0c;遇到不会的问题上网搜&#xff0c;我还更新了反骂人骂人功能&#xff0c;第一次测试…