10分钟读懂:全面解析AI大模型
10分钟读懂:全面解析AI大模型
AI大模型是当前科技领域的热门话题,但其复杂的技术原理往往让非专业人士望而却步。本文将用通俗易懂的语言,带你快速了解AI大模型的核心概念和工作原理,帮助你更好地应用这一前沿技术。
一、名词解释
在使用AI大模型时,会遇到一些专业术语,理解这些名词有助于更好地运用大模型。
1.1 参数
参数是指模型的大小,一般来说参数越大,模型的能力越强。大模型的参数单位一般用“B”来表示,1B代表10亿参数。
以阿里百炼平台和欧拉玛的模型广场为例,模型通常会按照“名称”+“版本”+“参数”的形式分类。参数的单位包括:K(千)、M(百万)、B(十亿)、T(万亿)。
参数越大,模型可能会占用越多的存储空间,但不同模型对权重、精度和压缩技术的处理方式不同,因此参数与存储空间并非线性关系。
1.2 token
token是大模型处理数据的最小单位,比如一个字、一个词、一个像素、一段音轨等。
例如,“你好!”可以拆分为“你”、“好”、“!”,而“我想吃虾丸。”可以拆分为“我”、“想”、“吃”、“虾丸”、“。”。中文分词工具包括THULAC、HanLP、LTP等,但大模型通常已内置分词功能。
1.3 上下文
一段话的周围信息就是上下文,例如连续问大模型两个问题,这两个问题及回答互为上下文。
在沟通过程中,相同的问题会因场景不同而得出不同结论。大模型也会基于上下文理解用户的意图。
1.4 多模态
是指可以处理多种类型的数据,比如纯文字、图片、文档等,而单一模态的模型是指只能处理文字或图片或声音的模型。
例如,通义模型可以处理图片、文字、文档等多种数据类型,而GPT-3只能处理文字。
1.5 温度
是一个调整模型回复的随机性的值,值越大随机性越高,回复越有创造性;值越小随机性越小,回复越重复老套。
温度值设置会影响模型的回复风格。智谱清言提供了温度值的调节功能。
1.6 向量值(词向量)
向量是用来描述token在高维世界的特征,数学领域中的向量是一个的数字列表,在一维空间中,位置可以用(x)表示;在二维空间中,则用(x, y,)表示。以此类推,三维空间(x, y, z),四维空间(x1,x2,x3,x4)……
通过向量可以表示事物的特征,例如区分海豚、马、兔子、骆驼等动物的特征。计算机通过学习大量资料,可以为每个token生成特征向量。
二、大语言模型(LLM)
2.1 为什么叫大语言模型?
能听懂人话并且和人沟通的模型,叫做大语言模型。
大语言模型主要是处理语言的,除了语言模型还有处理视觉、音频、生成数据等其他作用的模型。多模态模型则是综合了多种模型能力的大模型。
2.2 为什么大模型能够听懂人话?
我们并不确定计算机理解人类的语言还是概率运算的结果。
大模型通过大量的文本训练,学会了语言中的各种沟通方式、文字与文字之间的排列规则、语法的结构。通过这一系列的规则运算,给人一种可以听懂人话的感觉。
要了解大模型是怎么变得这么厉害的,那就需要从头开始说了。
最早有关人工智能的概念来源于图灵,他在《计算机器与智能》的论文里提出了“图灵测试”。为了使机器能够通过图灵测试,研究人员开始研究人类语言。
① 入门级模型:n-gram模型
n-gram模型前面的N是指用几个词来预测下一个词;如果我们用前面的两个词来预测下一个词,这就叫做2-gram;如果用前面的三个词来预测下一个词,这就叫做3-gram。
例如,有一个数据集,里面只有两句话。我们需要先将这两句话拆分token,也就是“我”“喜欢”“吃”“苹果”“香蕉”。根据概率推算,“我”后面必然会跟着“喜欢”两个字,概率是100%;那么当我们输入“我”这个汉字的时候,系统就会根据概率,输出“喜欢”这个词。
但是n-gram模型也有很多缺陷,因为n-gram模型是先假设每一个词都是互相独立存在,彼此没有关系的。但词语和文字却是有实际意义的,所以就导致模型没法理解上下文,没办法解决句子中的逻辑关系。如果出现了新词语,也没法理解其用法,纯粹是概率计算。
直到后来,出现了神经网络技术。
② 大模型核心角色-神经网络
神经网络是通过模仿大脑处理信息的方式而产生的计算模型,是为了解决图像识别和逻辑运算的。神经网络的设计灵感来源于人脑的结构,每个神经元代表一个基本的计算单元,单个神经元实际上是一串代码,用来处理简单的数学运算。尽管单个神经元的功能相对简单,但当大量这样的神经元连接起来形成网络后,整个网络就能够去处理复杂的任务。
经典的神经网络可以分为三层结构,输入层、隐藏层、输出层,每一层都是由一堆神经元组成。
- 输入层:接收原始数据,将原始数据经过预处理后传递给隐藏层。
- 隐藏层:通过线性加权求和、激活函数、权重等一系列运算,将结果传递给输出层。
- 输出层:处理接收到的数据并输出结果,将结果反馈给用户。
总结一下就是,每个神经元作为一个计算单元,通过对输入数据进行加权求和并应用激活函数来提取有用的特征,然后将处理后的信息传递到网络的下一层。在网络的输出层,对于分类任务,神经元可以输出表示不同类别的概率值。
具体到图像识别任务,图像是由像素构成的,每个像素都有其特定的色值。以数字“6”为例,我们可以给计算机大量数字6的图片,计算机会将图像分解为像素,然后将颜色转换成色值,并分析这些色值的分布规律。
最终,当模型遇到新的、未见过的数字6图片时,它能够基于已学到的规则将其识别出来。如果给神经网络提供大量高质量且标注准确的数据,那么神经网络就可以拥有解释图像信息的能力。
虽然神经网络这么厉害,但因为早期的硬件限制,导致发展并不顺利。前面我们可以得知,神经网络是通过大量神经元构成的,而每个神经元只负责简单的运算,这种方式要求硬件能提供强大的并行处理能力,以同时执行这些大量的简单运算任务。但当时训练神经网络只能依靠CPU且性能还有限。
随着计算机硬件技术的发展,特别是GPU的引入,这才让神经网络的硬件环境得到改善。硬件技术的发展让研究人员能够去设计和训练更复杂的神经网络结构,比如卷积神经网络、循环神经网络、注意力机制、预训练等。而现在的大模型都是基于神经网络架构的,可以说没有硬件的发展、没有神经网络的发展,就没有目前的大模型。
而Transformer架构是神经网络中最主流的,当前的大语言模型几乎都是基于Transformer架构搭建的。
③ 主流架构-Transformer架构
Transformer架构是特别适用于自然语言处理的神经网络模型。
Transformer架构能够如此厉害,在于Transformer架构能够通过向量数据、自注意力机制、神经网络等能力,高效地处理和理解自然语言。
向量数据:每个token被转换为了高维向量,通过token的向量值,可以知道词汇本身的语义信息、特征,还能分析出token与token之间的复杂关系。
自注意力机制:输入到神经网络的每一个token都可以与其他token发生联系,并且通过“权重”来区分链接过程中的重要程度,这样可以让大模型解决上下文关联问题,避免提问第二个问题的时候忘记第一个问题。
神经网络的能力:通过全新的神经网络结构,不仅能捕捉局部特征,还能理解全局信息,从而支持更深层次的语言理解和生成任务。
国外的openai、谷歌、微软,到国内的阿里、腾讯、清华的团队等,都是基于或借鉴Transformer架构开发的大模型。
三、大模型实践方法
3.1 提示词工程
提示词功能的作用在于通过设定提示,让大模型的回答更加精准。
大模型训练时并不会针对特定领域,是为广泛问题进行设计的。而提示词工程(Prompt Engineering)也叫上下文提示,目的是希望大模型在回答问题时,可以得知前因后果,聚焦用户的特定需求。
例如,你可以让大模型扮演某个角色,比如告诉大模型:“你要扮演鲁迅,回答的风格要与鲁迅的作品类似”。那么大模型就会扮演鲁迅且通过鲁迅的说话风格回答你的问题。
在创建智能体时,也会让用户填写智能体的设定,这个设定就起到了提示词的功能。
针对复杂问题,为了从大型语言模型中获得高质量的回答,我们需要提供更加详尽的问题描述。在2023年11月,新加坡举办了首届提示词功能大赛,冠军Sheila Tao撰写了一篇文章,探讨了她对提示词的理解,并介绍了CO-STAR框架的应用方法。
工作原理如下:
- 背景(C):提供任务的背景信息,这有助于 LLM 了解正在讨论的具体场景,确保其回应是相关的。
- 目标(O):明确你希望 LLM 执行的任务是什么,明确你的目标有助于 LLM 集中精力实现该特定目标。
- 风格(S):指定您希望 LLM 使用的写作风格,这可能是某个名人的写作风格,也可能是某个行业的某个专家,比如商业分析师或 CEO。这将指导 LLM 以符合您需求的方式和措辞进行回复。
- 语气(T):设定回应的态度,这确保 LLM 的回应与预期的情绪或情感背景产生共鸣。例如正式、幽默、富有同理心等。
- 受众(A):确定回复针对的对象,根据受众(例如某个领域的专家、初学者、儿童等)定制 LLM 的回应,确保它在您需要的背景下是适当且易于理解的。
- 回复(R):提供回复格式,这可确保 LLM 输出的格式与您执行下游任务所需的格式完全一致。示例包括列表、JSON、专业报告等。对于大多数以编程方式处理 LLM 响应以进行下游操作的 LLM 应用程序而言,JSON 输出格式是理想的选择。
例如,如果你想让大模型帮你写一份年终总结,就可以按照CO-STAR框架编写提示词:
- 背景:我是“XXXXX”公司的产品经理,负责XXXXXX应用。在过去的一年中,我们实现了多项功能升级,并且用户基数有了显著增长。
- 目标:编写一份全面的年终总结报告,概述本年度的关键成就、遇到的主要挑战及解决策略,并简要介绍下一年的战略规划。
- 风格:采用清晰、专业的商务写作风格,类似于业界公认的产品经理或公司领导人的表达方式。
- 语气:正式而积极,体现对团队努力的认可以及对未来发展的乐观态度。
- 受众:这份报告将提交给公司的高级管理层以及我的直接上司,并会在内部分享给整个产品团队。
- 回复:请按照标准的年终总结格式提供文档,包括封面页、目录、引言、年度回顾、主要成就、面临的挑战与解决方案、未来展望等部分。文档需保持专业性,重点突出。
3.2 知识库
知识库就是资料库,目的就是为大模型处理问题提供必要背景知识。
虽然大模型擅长处理广泛领域的常见问题,但在面对特定领域内深入且专业的问题时存在局限性,而知识库提供了特定领域的信息,帮助其解决特定问题。
例如,如果希望大模型帮助企业优化供应链管理,那么大模型就需要知道供应商信息、库存水平、物流数据、采购数据等信息。如果希望大模型能够帮助系统应用,那么大模型就需要知道项目管理流程、技术文档、操作说明书等信息。而这些信息就需要存放到知识库,作为大模型的知识储备。
chatgpt的存储功能
阿里百炼的数据管理功能
这里需要注意,大模型和知识库是两种不同的技术,只是针对于特殊问题需要知识库提供特定信息。
所有的数据都需要存储在服务器上,常见的数据库类型包括关系型数据库、非关系型数据库,这些数据库可以有效地存储和管理结构化与非结构化数据。然而对于大模型来说,这些传统的存储方式并无本质区别,它们更像是文件夹,用于存储和检索信息。
并不是知识库的数据就需要向量存储,只是需要处理相似性任务的时候,需要用到向量数据库。前面提到大模型时也有提到,大模型的本质是概率计算,通过token与token之间向量值的对比来生成数据,这种基于向量的计算方式使得大模型能够理解和处理复杂的模式和关系。只要任务需要用到数据与数据的相似性对比,那么就需要用到向量数据库。
对于产品经理来说,我们必须知道如何运用知识库,如果想要进一步的了解向量数据库,可以询问大模型、B站搜索向量数据、阿里云或腾讯云的开发文档及介绍。
3.3 微调
微调就是让通用的大模型,更加适用于某个特定项目。
如果大模型是一个大学生,知识库相当于公司资料,而微调工作就相当于入职培训,培训其如何与客户继续沟通。
听起来微调似乎很高深,但其实大模型厂商都会提供对应的微调功能,我们可以通过平台提供的微调模板,了解微调是什么。
微调的目的是通过使用实际案例来优化大模型的表现能力,使其更符合特定应用场景的需求。无论是像ChatGPT还是通义这样的大模型,都是采用一问一答的形式进行。通过提供企业自身的实际案例,微调过程可以让大模型学习到更加精准和符合企业需求的回复方式,从而使通用的大模型能够高度适配企业的具体业务场景。这样不仅提升了模型的实用性,还增强了其在特定领域中的表现力和准确性。
四、最后
对于AI产品经理来说,我们的核心工作是应用大模型,而不是作为大模型的研究者。无论各研究团队推出了什么新的架构,对于产品来说都不重要,重要的是如何将其集成到现有的系统中。至于如何集成到系统,不同公司有不同的解决方案,这些就需要在工作中探索了。