随着chatgpt的横空出世,大家见识到了大模型的强大能力,因此催生了无数基于大模型能力的应用。但其中很多团队之前都没怎么接触过AI算法,就算是经验丰富的算法工程师,面对大模型生产链路中复杂的工程实现,很多时候也束手无策。因此,很多厂商(尤其平台型厂商)陆续推出了自己的大模型应用生产工具。
这类工具的核心思想只有一个:
为不同能力的用户提供快速、低成本的大模型应用开发标准化方案,让用户能将大模型能力快速应用到自己的业务中。通过出售算力、工具链、在线API等形式获得盈利。
我19年计算机算法(主要是多模态方向),毕业后做了一年算法工程师,然后转行做AI产品经理,到现在3年半的时间都是在做AI业务生产平台产品。因为最近要开始做大模型应用生产流程产品化,因此对相关工具做了一些调用,总结成文,既帮助自己,也帮助优秀的你。
大模型应用的生产链路
原图链接:大模型应用生产一般链路和典型工具
大模型应用的一般生产链路和典型工具如上图所示。如果对算法生产链路比较了解的同学,可能会觉得整个流程很眼熟,这确实是的。大模型本质上也是一种算法模型,其生产链路和所谓的普通小模型其实基本一致,一般都经过:
- 数据集准备(标注、处理、优化等);
- 模型训练(调优);
- 模型优化(压缩,格式转换等);
- 模型服务部署;(服务调用、管理等);
- 服务调用链构建(构建复杂业务时可能调用多种服务);
- 客户业务中调用模型服务(集成到业务应用中,即可应用大模型的能力)。
然而,大模型应用生产过程中,尤其自身的一些典型痛点:
- 工程复杂度:大模型从微调到服务部署过程中,因为对大型算力的依赖,因此涉及到更多复杂的工程实现。例如分布式训练、部署、超大型数据集处理、复杂的模型能力评估体系等等。而当前市场上一般算法研究员和研发工程师分工都很明确,算法研究员通常无力承担这些工程复杂度;
- Prompt工程:当前LLM的应用范式中,都涉及到prompt,因此prompt的配置、调优等,是大模型应用生产中重要一环;
- 领域知识库:使用领域知识库在大模型应用中非常常见,因此需要快速搭建基于领域知识库的大模型应用的范式;
- 调用管理:调用成本也是一个需要关注的问题,由于当前大模型的对算力的依赖,不仅仅训练需要消耗大量资源,每次调用也需要较高的成本,因此如何对调用和调用成本的管理也非常重要。
三种典型用户
针对不同的研发团队或者用户,他们的使用场景和需求往往不一样。当前,主要可以分为三类:
- 资深算法工程师团队:对大模型垂直领域的能力要求很高,且拥有经验丰富的算法工程师的团队。
- 业务开发团队:希望快速将现成大模型的能力应用到自己的业务中,团队中无算法工程师,但有经验丰富的软件开发工程师的团队。
- 个人及微型团队小白:面向个人或微型团队,靠创意无代码能力快速构建一个AI Agent助手。
这三类用户有着不同的目标,因此其生产场景中面临着不同的痛点。
资深算法工程师团队
第一类用户已经是经验丰富的各个领域的算法团队,例如chatbot团队、机器翻译团队等。这类团队的特点是自身在算法能力上已经非常专业,随着大模型的崛起,希望将大模型的能力快速应用到自己的算法业务上,看看效果。并且,为了追求更好的效果,可能会使用领域数据对通用大模型进行微调,以提升其在垂直领域业务上的能力。
面临的典型痛点
这类用户面临的典型痛点是:
- 大模型工程能力往往不足,要自己从零搭建一个大模型数据、模型训练、模型评估、模型优化、模型服务部署的链路实属不易,需要关注很多复杂的工程问题,而这些问题往往是重复的,算法工程师不擅长的。
- 面向落地时,会有很多对大模型的效率限制,比如训练加速,推理速度,模型体量要求等。这些问题都不是算法工程师擅长的领域。
此外,目前工业界中,如果以业务为目的(例如做一个优秀的机器翻译软件),那么算法工程师对基础模型结构的修改非常少,更多地是尝试不同数据和调参策略。面对结构更复杂的大模型尤其如此,其生产过程一般是:
- 选择开源基础大模型(参数及代码);
- 按照规范准备数据集;
- 准备计算资源,并启动微调训练,获取评估结果;依据结果不断对模型调优;
- 部署模型为服务;
- 协调应用开发同学,调用模型服务,集成到具体应用中。
因此,算法工程师在流程中其实只希望关心:
- 数据集准备和质量评估;
- 模型微调的策略及结果评估;
- 模型服务部署后,其能力表现。
其他的东西都希望专业的工程同学,或者平台工具来承担。
典型工具
百度智能云千帆大模型平台(以下简称千帆或千帆大模型平台)是面向企业开发者的一站式大模型开发及服务运行平台。千帆不仅提供了包括文心一言底层模型(ERNIE-Bot)和第三方开源大模型,还提供了各种AI开发工具和整套开发环境,方便客户轻松使用和开发大模型应用。支持数据管理、自动化模型SFT以及推理服务云端部署的一站式大模型定制服务,助力各行业的生成式AI应用需求落地。
火山方舟是火山引擎推出的大模型服务平台,提供模型训练、推理、评测、精调等全方位功能与服务,并重点支撑大模型生态。 火山方舟通过稳定可靠的安全互信方案,保障模型提供方的模型安全与模型使用者的信息安全,加速大模型能力渗透到千行百业,助力模型提供方和使用者实现商业新增长。
阿里云百炼是一站式的企业专属大模型生产平台,基于通义基础大模型,提供企业专属大模型开发和应用的整套工具链。
Generative AI Studio 是一种 Google Cloud 控制台工具,用于对生成式 AI 模型快速进行原型设计和测试。您可以测试示例提示,设计自己的提示,并自定义基础模型来处理符合应用需求的任务。本页面介绍了您可以在 Generative AI Studio 中执行的不同任务。
业务开发团队
第二类用户是各种业务的研发工程师团队,这类团队在AI算法方面没什么经验,但是随着大模型能力的强势来袭,希望将大模型能力快速应用到自己的业务中。
面临的典型痛点
这类用户面临的典型痛点是:
- 需要通过最简单的API调用的方式获取大模型的能力,不希望对大模型本身的实现有过多关心;同时,他们也没有能力、成本来对基础大模型进行微调;
- 落地业务中服务的调用可能会很复杂。例如一个在线电商平台的客服机器人应用,除了直接调用大模型的Q&A能力之外,还需要结合对应知识库,来回答用户关于平台购物政策的问题。此时,提供相关典型场景的调用链路模板,可以节省用户很多实现成本;
- 由于非常依赖各个大型厂商的在线大模型API,因此对调用成本和管理等方面会非常敏感。用户通常希望有配套的管理工具;
- 实际落地中,面对不同的业务场景,通常使用Prompt+大模型API的形式。因此,如果帮助用户快速生产优秀的prompt,也十分重要。
针对这类用户,平台工具往往只需要暴露通用大模型的调用方式即可,并提供一整套调用管理能力。
典型工具
The OpenAI API can be applied to virtually any task. We offer a range of models with different capabilities and price points, as well as the ability tofine-tunecustom models.
Tracing is a powerful tool for understanding the behavior of your LLM application. LangSmith has best-in-class tracing capabilities, regardless of whether or not you are using LangChain.
Azure Machine Learning prompt flow is a development tool designed to streamline the entire development cycle of AI applications powered by Large Language Models (LLMs). As the momentum for LLM-based AI applications continues to grow across the globe, Azure Machine Learning prompt flow provides a comprehensive solution that simplifies the process of prototyping, experimenting, iterating, and deploying your AI applications.
个人及微型团队小白
第三类用户是个人或者微型团队,这类用户可能没有任何工程能力,但是希望快速应用大模型能力到自己的生活工作中,将其作为生产力工具。
面临的典型痛点
这类用户面临的典型痛点是:
- 对算法、大模型,甚至软件研发都没什么了解,但是知道大模型的能力很强,且希望利用自己的创意快速生产AI Agent,例如英语学习助手等等。这类用户希望通过自然语言、简单的页面交互的方式,就能快速构建一个特定领域的AI Agent;
- Prompt的好坏往往直接决定这类AI Agent的性能,因此如何帮助用户创建出优秀的Prompt是重中之重。
这类用户体量可以说最多,并且有大量C端的用户,他们希望通过这种方式进入AI领域,跟上风潮。
典型工具
Chatgpt商店:基于强大的chatgpt,通过自定义prompt,创建适合自己的AI Bot。
字节豆包:基于字节的大模型,以在线聊天APP的形式,提供各种不同角色的AI Bot,并且支持用户生产自己的Bot,从而助力用户生产和生活。
字节扣子:与Chatgpt非常类似,但更适合中国宝宝体制,可以将自己制作的AI Bot一键发布到微信等平台。
各种工具针对痛点的解决方案
资深算法工程师团队
我们回顾第一类用户的痛点:
- 大模型工程能力往往不足,要自己从零搭建一个大模型数据、模型训练、模型评估、模型优化、模型服务部署的链路实属不易,需要关注很多复杂的工程问题,而这些问题往往是重复的,算法工程师不擅长的。
- 面向落地时,会有很多对大模型的效率限制,比如训练加速,推理速度,模型体量要求等。这些问题都不是算法工程师擅长的领域。
针对这类用户的痛点,相关工具平台本质上只做了一件事情:
针对大模型生产的数据集、模型微调、模型优化、模型评估、模型服务部署的流程,提供标准化流程和规范。实现用户通过零代码/低代码/SDK的方式,一键模型微调、优化、评估和服务部署。
其核心工作是推动用户符合全链路生产规范,暴露适当灵活性(基础模型选择,超参数选择等),从而屏蔽复杂的工程实现,让用户能快速生产自己的大模型服务。
百度千帆大模型平台
以百度千帆大模型平台为例,提供数据集管理、模型精调、模型评估、服务部署等能力。
用户的一般业务生产流程为:
- 按照规范上传业务领域的数据集
- 通过零代码,纯任务配置的方式来配置模型微调任务。
- 构建模型评估任务:可以是自动评估、人工评估、更优秀的大模型评估等
- 构建模型压缩任务:对于某些对模型性能要求很高的场景,可以压缩模型。
- 一键将模型部署为服务,并支持服务调用。
以上所有过程中,算法工程师只需要准备好自己的数据集,甚至可以在线标注数据集,无需任何代码编写实现对模型微调和服务部署。模型部署为服务之后,算法工程师可以和下游应用研发工程师合作,将模型服务集成到具体的业务中。
字节火山方舟大模型平台
火山方舟大模型平台的产品形态和百度千帆基本一致,只是公布更晚,因此相关功能较少。但是大胆推测,其后续的基本功能会和百度千帆大模型平台当前的一致。
阿里百炼大模型平台
同样的,阿里百炼大模型平台基本功能模块也是如此,不过相比于以上两个平台,在推理服务构建的时候,支持用户构建更复杂的大模型调用链路,从而处理更加复杂的场景。
例如,可以构建自己的服务处理链路,加入自定义的处理逻辑。
Goole vertex AI
Google的Vertex AI中,与以上三个平台的区别是:Vertex AI本身是Google出品的通用AI业务生产平台,因此除了模型精调模块也是零代码任务配置的方式之外,其他模块依托与其现有的功能。
虽然其思路和以上三个平台的思路一致,但是其体验上会更加割裂。
业务开发团队
我们回顾第二类用户的痛点:
- 需要通过最简单的API调用的方式获取大模型的能力,不希望对大模型本身的实现有过多关心;同时,他们也没有能力、成本来对基础大模型进行微调;
- 落地业务中服务的调用可能会很复杂。例如一个在线电商平台的客服机器人应用,除了直接调用大模型的Q&A能力之外,还需要结合对应知识库,来回答用户关于购物的问题。此时,提供相关典型场景的调用链路模板,可以节省用户很多实现成本;
- 由于非常依赖各个大型厂商的在线大模型API,因此对调用成本和管理等方面会非常敏感。用户通常希望有配套的管理工具;
- 实际落地中,面对不同的业务场景,通常使用Prompt+大模型API的形式。因此,如果帮助用户快速生产优秀的prompt,也十分重要。
面对这类用户,相关工具本质上做的事情是:
为业务研发人员提供强大的基础大模型调用API(SDK),使得研发人员能够快速将大模型能力集成到自己的业务应用中。同时,提供各种典型大模型业务的调用链模板,prompt工程工具,使得研发人员可以快速实现复杂大模型业务逻辑。最后,提供完善的调用管理能力,保证调用成本和稳定性。
OpenAI API平台
OpenAI为开发者提供简单易用的大模型调用方式,如下demo所示,只需要简单的几行代码即可完成。
from openai import OpenAI
client = OpenAI()
completion = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[
{"role": "system", "content": "You are a poetic assistant, skilled in explaining complex programming concepts with creative flair."},
{"role": "user", "content": "Compose a poem that explains the concept of recursion in programming."}
]
)
print(completion.choices[0].message)
开发者可以快捷地切换不同的基础模型、配置不同prompt、控制不同输出格式等方式,来快速应用大模型能力。
由于是API调用的形式,让开发者拥有非常高的灵活性,可以实现各种复杂的应用。
除了基本的模型调用能力之外,OpenAI还提供各种配套的SDK,例如embedding SDK帮助用户快速将文本内容转换为embedding的形式。
由于采用大模型API调用次数和token数量(输入文本长度)的方式收费,因此OpenAI提供了详细的服务调用及费用统计功能。
LangSmith
LangSmith依托于LangChain,后者是现在非常流行的大模型应用开发框架。其核心思想是:为连接OpenAI等各种第三方或本地大模型API能力,提供完善的高级SDK,使得用户开发大模型应用方便、快捷。
例如,我们可以通过以下方式,快速构建一个Q&A的程序。
from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from langchain_core.output_parsers import StrOutputParser
prompt = ChatPromptTemplate.from_messages([
("system", "You are a helpful assistant. Please respond to the user's request only based on the given context."),
("user", "Question: {question}\nContext: {context}")
])
model = ChatOpenAI(model="gpt-3.5-turbo")
output_parser = StrOutputParser()
chain = prompt | model | output_parser
question = "Can you summarize this morning's meetings?"
context = "During this morning's meeting, we solved all world conflict."
chain.invoke({"question": question, "context": context})
LangSmith相较于OpenAI API,其更大的特点是侧重于大模型服务的复杂调用链路构建和追踪。
例如,对于部署后的调用链,平台会记录每次调用的各种信息,并且追踪整个调用过程,如果其中有任何问题、或者需要获取其中任何数据进行分析,都非常方便。
尤其针对复杂业务,其调用链往往非常复杂,在实际的生产过程中,可能会遇到各种奇奇怪怪的问题,详细的调用链跟踪可以帮助用户高效差错。
此外,一个大模型服务上线之后,用户反馈非常重要,由于LangSmith记录了所有调用信息,因此可以帮助开发者对其应用的用户使用的实际情况进行分析,帮助开发者不断优化自己的大模型服务。
微软 Azure AI的Prompt Flow
以上两种工具都是纯SDK的工具,而微软Azure AI虽然本质上和他们一样,都是以大模型API调用的形式提供相关能力,但是它更进一步提供了更加可视化、界面友好的交互功能。
如上图所示,用户可以通过创建节点(python,LLM等),快速构建一个大模型服务调用pipeline,从而处理复杂的大模型服务调用流程。
此外,平台还提供了各种典型业务的pipeline模板,供用户使用。
Prompt工程
对于Prompt创建、优化、管理的问题,百度千帆大模型平台,字节火山方舟大模型平台,都提供了Prompt工程模块,以百度千帆大模型平台的Prompt工程模块为例,支持Prompt的在线创建、调试、优化和评估,并且提供Prompt模板市场,用户可以根据自己的业务场景,套用现有模板,并不断进行调优。
Prompt工程的本质其实就是提供一个在线的输入输出范式,用户可以不断在线试验自己的prompt,通过观察prompt的结果,来确定最优的prompt。
个人及微型团队小白
我们回顾第三类用户的典型痛点:
- 对算法、大模型,甚至软件研发都没什么了解,但是知道大模型的能力很强,且希望利用自己的创意快速生产AI Agent,例如英语学习助手等等。这类用户希望通过自然语言、简单的页面交互的方式,就能快速构建一个特定领域的AI Agent;
- Prompt的好坏往往直接决定这类AI Agent的性能,因此如何帮助用户创建出优秀的Prompt是重中之重。
针对这类用户,相关工具本质上做得事情是:
依托强大的基础大模型能力,提供无任何学习成本的交互方式,支持用户通过自然语言、简单配置的方式,快速构建自己的AI Agent。
ChatGPT Store
在Chatgpt中,支持用户创建自己的GPT应用,用户只需要输入该GPT的自然语言描述,并且填写相关插件即可。
此外,还支持用户上传知识库文件,使得每次GPT的回答,都可以根据知识库中的补充信息作答。
同时,通过询问交互的方式,指导用户不断优化自己的指令,以得到更优秀的GPT。
字节扣子
字节扣子平台和GPTs非常相似,也是支持用户通过自然语言的形式快速生产自己的AI bot。
不过更进一步的,支持用户进行更复杂的AI bot制作,用户可以编排自己的数据流pipeline,甚至编写代码处理脚本,从而实现更复杂的业务。
总结
在大模型应用的研发链路上,针对不同类型的团队,不同的厂商为其提供了不同的工具,解决其核心痛点。本质上都是为了实现:提升大模型应用的生产效率。
从产品设计的角度来讲,不同的产品工具有其自己的侧重点,且因为本身商业模式的不同,其侧重点不同。例如百度、字节、微软都依赖于自己强大的云计算能力,以工具链的方式出售算力盈利。而OpenAI,依赖其强大的基础大模型能力,通过调用次数收费来盈利。从产品盈利方式的角度其实还有很多点可以讨论,但不是本文的目标,之后可以再后续文章中讨论。
文中提及的各种工具产品,他们都有丰富的细节,有兴趣可以自己上手看看,这样才比较容易理解其产品的设计理念到底是什么。
如何系统的去学习大模型LLM ?
作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。
但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的 AI大模型资料
包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
😝有需要的小伙伴,可以V扫描下方二维码免费领取🆓
一、全套AGI大模型学习路线
AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!
二、640套AI大模型报告合集
这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
三、AI大模型经典PDF籍
随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。
四、AI大模型商业化落地方案
阶段1:AI大模型时代的基础理解
- 目标:了解AI大模型的基本概念、发展历程和核心原理。
- 内容:
- L1.1 人工智能简述与大模型起源
- L1.2 大模型与通用人工智能
- L1.3 GPT模型的发展历程
- L1.4 模型工程
- L1.4.1 知识大模型
- L1.4.2 生产大模型
- L1.4.3 模型工程方法论
- L1.4.4 模型工程实践 - L1.5 GPT应用案例
阶段2:AI大模型API应用开发工程
- 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。
- 内容:
- L2.1 API接口
- L2.1.1 OpenAI API接口
- L2.1.2 Python接口接入
- L2.1.3 BOT工具类框架
- L2.1.4 代码示例 - L2.2 Prompt框架
- L2.2.1 什么是Prompt
- L2.2.2 Prompt框架应用现状
- L2.2.3 基于GPTAS的Prompt框架
- L2.2.4 Prompt框架与Thought
- L2.2.5 Prompt框架与提示词 - L2.3 流水线工程
- L2.3.1 流水线工程的概念
- L2.3.2 流水线工程的优点
- L2.3.3 流水线工程的应用 - L2.4 总结与展望
- L2.1 API接口
阶段3:AI大模型应用架构实践
- 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。
- 内容:
- L3.1 Agent模型框架
- L3.1.1 Agent模型框架的设计理念
- L3.1.2 Agent模型框架的核心组件
- L3.1.3 Agent模型框架的实现细节 - L3.2 MetaGPT
- L3.2.1 MetaGPT的基本概念
- L3.2.2 MetaGPT的工作原理
- L3.2.3 MetaGPT的应用场景 - L3.3 ChatGLM
- L3.3.1 ChatGLM的特点
- L3.3.2 ChatGLM的开发环境
- L3.3.3 ChatGLM的使用示例 - L3.4 LLAMA
- L3.4.1 LLAMA的特点
- L3.4.2 LLAMA的开发环境
- L3.4.3 LLAMA的使用示例 - L3.5 其他大模型介绍
- L3.1 Agent模型框架
阶段4:AI大模型私有化部署
- 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。
- 内容:
- L4.1 模型私有化部署概述
- L4.2 模型私有化部署的关键技术
- L4.3 模型私有化部署的实施步骤
- L4.4 模型私有化部署的应用场景
学习计划:
- 阶段1:1-2个月,建立AI大模型的基础知识体系。
- 阶段2:2-3个月,专注于API应用开发能力的提升。
- 阶段3:3-4个月,深入实践AI大模型的应用架构和私有化部署。
- 阶段4:4-5个月,专注于高级模型的应用和部署。
这份完整版的大模型 LLM 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓