目录
概述
发展历程
大语言模型的概念
LLM的应用和影响
大模型的能力、特点
大模型的能力
涌现能力(energent abilities)
作为基座模型支持多元应用的能力
支持对话作为统一入口的能力
大模型的特点
常见大模型
闭源LLM(未公开源代码)
GPT系列
ChatGPT
GPT-4
Claude系列
PaLM系统
文心一言
星火大模型
开源LLM
LLaMA 系列
GLM 系列
通义千问
Baichuan 系列
什么是 LangChain
Langchain 简介
Langchain 发展历史
Langchain 核心组件
语言建模的研究始于20世纪90年代,最初采用了统计学习方法,通过前面的词汇来预测下一个词汇。然而,这种方法在理解复杂语言规则方面存在一定局限性。
随后,研究人员不断尝试改进,其中在2003年,深度学习先驱Bengio在他的经典论文《A Neural Probabilistic Language Model》中,首次将深度学习的思想融入到语言模型中,使用了更强大的神经网络模型,这相当于为计算机提供了更强大的“大脑”来理解语言。这种方法让模型可以更好地捕捉语言中的复杂关系,虽然这一步很重要,但仍有改进的空间。
大约在2018年左右,研究人员引入了Transformer架构的神经网络模型,通过大量文本数据训练这些模型,使它们能够通过阅读大量文本来深入理解语言规则和模式,就像让计算机阅读整个互联网一样。所以它对语言有了更深刻的理解。这种方法在很多任务上表现得非常好。
与此同时,研究人员发现,随着语言模型规模的扩大(增加模型大小或使用更多数据),模型展现出了一些惊人的能力,通常在各种任务中表现显著提升。这时我们进入了大语言模型(LLM)时代。
大语言模型(英文:Large Language Model,缩写LLM),也称大型语言模型,是一种人工智能模型,旨在理解和生成人类语言。
通常,大语言模型(LLM)指包含数百亿(或更多)参数的语言模型,这些模型在大量的文本数据上进行训练,例如国外的有GPT-3、GPT-4、PaLM、Galactica和LLaMA等,国内的有ChatGLM、文心一言、通义千问、讯飞星火等。
在这个阶段,计算机的“大脑”变得非常巨大,拥有数十亿甚至数千亿的参数。这就像是将计算机的大脑升级到了一个巨型超级计算机。这让计算机可以在各种任务上表现非常出色,有时甚至比人类还要聪明。
为了探索性能的极限,许多研究人员开始训练越来越多庞大的语言模型,例如拥有1750亿参数的GPT-3和5400亿参数的PaLM。尽管这些大型语言模型与小型语言模型(例如BERT的3.3亿参数和GPT-2的15亿参数)使用相似的架构和预训练任务,但它们展现出截然不同的能力,尤其在解决复杂任务时表现出了惊人的潜力,这被称为“涌现能力”。以GPT-3和GPT-2为例,GPT-3可以通过学习上下文来解决少样本任务,而GPT-2在这方面表现较差。因此,研究界给这些庞大的语言模型起了个名字,称之为“大语言模型(LLM)”。而LLM的一个杰出应用就是ChatGPT,它是GPT系统LLM用于与人类对话式应用的大胆尝试,展现出了非常流畅和自然的表现。
LLM已经在许多领域产生了深渊的影响。在自然语言处理领域,它可以帮助计算机更好地理解和生成文本,包括写文章、回答问题、翻译语言。在信息检索领域,它可以改进搜索引擎,让我们更轻松地找到所需的信息。在计算机视觉领域,研究人员还在努力让计算机理解图像和文字,以改善多媒体交互。】
最重要的是,LLM的出现让人们重新思考了通用人工智能(AGI)的可能性。AGI是一种像人类一样思考和学习的人工智能。LLM被认为是AGI的一种早起形式,这引发了对未来人工智能发展的许多思考和计划。
总之,LLM是一种令人兴奋的技术,它让计算机更好地理解和使用语言,正在改变着我们与技术互动的方式,同时也引发了对未来人工智能的无限探索。
区分大语言模型(LLM)与以前的预训练语言模型(PLM)最显著的特征之一是它们的涌现能力。涌现能力指的是一种令人惊讶的能力,它在小型模型中不明显,但在大型模型中显著出现。可以类比到物理学中的相变现象,涌现能力的显现就像是模型性能随着规模增大而迅速提升,超过了随机水平,也就是我们常说的量变引起了质变。
具体类说,涌现能力可以定义为与某些复杂任务相关的能力,但我们更关注的是它们具备的通用能力,也就是能够应用于解决各种任务的能力。接下来,让我们简要介绍三个典型的LLM涌现能力:
在2021年,斯坦福大学等多所高校的研究人员提出了基座模型(foundation model)的概念,这更清晰地描述了之前学界所称的预训练模型的作用。这是一种全新的AI技术范式,借助于海量无标注数据的训练,获得可以适用于大量下游任务的大模型(单模态或者多模态)。这样,多个应用可以只依赖一个或少数几个大模型进行统一建设。
大语言模型是这个新模式的典型例子,使用统一的大模型可以极大地提高研发效率,相比于分散的模型开发方式,这是一项本质上的进步。大型模型不仅可以缩短每个具体应用的开发周期,减少所需人力投入,也可以基于大模型的推理、常识和写作能力,获得更好的应用效果。因此,大模型可以成为AI应用开发的大一统基座模型,这是一个一举多得、全新的范式,值得大力推广。
让大语言模型真正火爆的契机,是基于对话聊天的ChatGPT。事实上,业界很早就发现了用户对于对话交互的特殊偏好,陆奇在微软期间2016年就推进“对话即平台(conversation as a platform)”的战略。此外,苹果Siri、亚马逊Echo等基于语音对话的产品也非常受欢迎,反映出互联网用户对于聊天和对话这种交互模式的偏好。虽然之前的聊天机器人存在各种问题,但大型语言模型的出现再次让聊天机器人这种交互模型可以重新想象。用户愈发期待像钢铁侠中“贾维斯”一样的人工智能,无所不能、无所不知。这引发我们对于智能体(Agent)类型应用前景的思考,Auto-GPT、微软Jarvis等项目已经出现并受到关注,相信未来会涌现出很多类似的以对话形态让助手完成各种具体工作的项目。
LLM具有多种显著特点,这些特点使它们在自然语言处理和其他领域中引起了广泛的兴趣和研究。以下是LLM的一些主要特点:
总之,大语言模型是一种具有强大语言处理能力的技术,已经在多个领域展示了潜力。它们为自然语言理解和生成任务提供了强大的工具,同时也引发了对其伦理和风险问题的关注。这些特点使LLM成为了当今计算机科学和人工智能领域的重要研究和应用方向。
LLM的发展历程虽然只有短短不到五年的时间,但是发展速度相当惊人,截止2023年6月,国内外有超过百种大模型相继发布。按照时间线给出了2019年至2023年6月比较有影响力并且模型数量超过100亿的大语言模型,如下图所示:
接下来我们主要介绍几个国内外常见的大模型(包括开源和闭源的LLM)
OpenAI公司在2018年提出的GPT(Generative Pre-Training)模型是典型的生成式预训练语言模型之一。
GPT模型的基本原则是通过语言建模将世界知识压缩到仅解码器的Transformer模型中,这样它就可以恢复(或记忆)世界知识的语义,并充当通用任务求解器。它能够成功的两个关键点:
训练能够准确预测下一个单词的仅解码器的Transformer语言模型。
扩展语言模型的大小。
总体而言,OpenAI在LLM上的研究大致可以分为以下几个阶段
接下来,我们将从模型规模、特点等方面,介绍大家熟悉的ChatGPT与GPT4:
2022年11月,OpenAI发布了基于GPT模型(GPT3.5和GPT-4)的会话应用ChatGPT。由于与人类交流的出色能力,ChatGPT自发布以来就引发了人工智能社区的兴奋。ChatGPT是基于强大的GPT模型开发的,具有特别优化的会话能力。
ChatGPT从本质上来说是一个LLM应用,它是基于GPT-3.5和GPT-4开发出来的,与GPT-4有本质的区别,正如当前应用界面所显示的,支持GPT-3.5和GPT-4两个版本
现在的ChatGPT支持最长达32000个字符,知识截止日期是2021年9月,它可以执行各种任务,包括代码编写、数学问题求解、写作建议等。ChatGPT在与人类交流方面表现出了卓越的能力:拥有丰富的知识储备,对数学问题进行推理的技能,在多回合对话中准确追踪上下文,并且与人类安全使用的价值观非常一致。后来,ChatGPT支持插件机制,这进一步扩展了ChatGPT与现有工具或应用程序的能力。到目前为止,它似乎是人工智能历史上最强大的聊天机器人。ChatGPT的推出对未来的人工智能研究具有重大影响,它为探索人类人工智能系统提供了启示。
注意:2023 年 11 月 7 日, OpenAI 召开了首个开发者大会,会上推出了最新的大语言模型 GPT-4 Turbo,这个 Turbo 就相当于是进阶版的意思。它将上下文长度扩展到 128k个token,相当于 300 页文本,并且训练知识更新到 2023 年 4 月。
2023 年 3 月发布的GPT-4,它将文本输入扩展到多模态信号。总体而言,GPT3.5 拥有 1750亿 个参数,而 GPT4 的参数量官方并没有公布,但有相关人员猜测,GPT-4 在 120 层中总共包含了 1.8 万亿参数,也就是说,GPT-4 的规模是 GPT-3 的 10 倍以上。因此,GPT-4 比 GPT-3.5 解决复杂任务的能力更强,在许多评估任务上表现出较大的性能提升。
最近的一项研究通过对人为生成的问题进行定性测试来研究 GPT-4 的能力,这些问题包含了各种各样的困难任务,并表明 GPT-4 可以比之前的 GPT 模型(如 GPT3.5 )实现更优越的性能。此外,由于六个月的迭代校准(在 RLHF 训练中有额外的安全奖励信号),GPT-4 对恶意或挑衅性查询的响应更安全。在技术报告中,OpenAI 强调了如何安全地开发 GPT-4 ,并应用了一些干预策略来缓解 LLM 可能出现的问题,如幻觉、隐私和过度依赖。例如,他们引入了称为红队评估(red teaming)的机制,以减少危害或有毒物质的产生。作为另一个重要方面,GPT4 是在一个完善的深度学习基础设施上开发的,并使用改进的优化方法。他们引入了一种称为可预测扩展(predictable scaling)的新机制,可以在模型训练期间使用一小部分计算准确预测最终性能。
使用地址
Claude 系列模型是由 OpenAI 离职人员创建的 Anthropic 公司开发的闭源语言大模型,可以完成摘要总结、搜索、协助创作、问答、编码等任务。目前包含 Claude 和 Claude-Instant 两种模型可供选择,其中 Claude Instant 的延迟更低,性能略差,价格比完全体的 Claude-v1 要便宜,两个模型的上下文窗口都是 9000 个token(约 5000 个单词,或 15 页)它的目标是“更安全”、“危害更小”的人工智能。最早的 Claude 于 2023 年 3 月 15 日发布,并在 2023 年 7 月 11 日,更新至 Claude-2。Claude 2 的训练参数官方并未公开,但是相关的猜测大概是 860.1 亿个参数。
该系列模型通过无监督预训练、基于人类反馈的强化学习和 Constitutional AI 技术(包含监督训练和强化学习)进行训练,旨在改进模型的有用性、诚实性和无害性。值得一提的是,Claude 最高支持 100K 词元的上下文,而 Claude-2 更是拓展到了 200K 词元的上下文。相比于Claude 1.3, Claude 2 拥有更强的综合能力,同时能够生成更长的相应。
总的来说,Claude 2 注重提高以下能力:
使用地址
PaLM 系列语言大模型由 Google 开发。其初始版本于 2022 年 4 月发布,并在 2023 年 3 月公开了 API。PaLM 基于 Google 提出的 Pathways 机器学习系统搭建,训练数据总量达 780B 个字符,内容涵盖网页、书籍、新闻、开源代码等多种形式的语料。前 PaLM 共有 8B、62B、540B 三个不同参数量的模型版本。Google 还开发了多种 PaLM 的改进版本。Med-PaLM 是 PaLM 540B 在医疗数据上进行了微调后的版本,在 MedQA 等医疗问答数据集上取得了最好成绩。PaLM-E 是 PaLM 的多模态版本,能够在现实场景中控制机器人完成简单任务。
2023 年 5 月,Google 发布了 PaLM 2,但并未公开其技术细节。Google 内部文件显示其参数量为 340B,训练数据为 PaLM 的 5 倍左右。它是 PaLM(540B) 的升级版,能够处理“多语言任务”。它使用了一个覆盖 100 多种语言的语料库进行训练。而 PaLM2 实际上是一系列模型,可以根据规模分为:Gecko、Otter、Bison和Unicorn,可以根据不同的领域和需求进行微调,最小模型可以部署在移动端,最大的参数量也只有 14.7B。现已部署在 Google 的 25 个产品和功能中,包括 Bard 和 Google Worksapce 应用,针对不同的领域又可以变成专有模型,比如 Med-PaLM 2,是第一个在美国医疗执照考试类问题上表现出“专家”水平的大型语言模型。
PaLM 2 的几大突破:
以下窗口是 Google 基于 PaLM 2 开发的对话应用 Bard:
使用地址
文心一言是基于百度文心大模型的知识增强语言大模型,于 2023 年 3 月在国内率先开启邀测。文心一言的基础模型文心大模型于 2019 年发布 1.0 版,现已更新到 4.0 版本。更进一步划分,文心大模型包括 NLP 大模型、CV 大模型、跨模态大模型、生物计算大模型、行业大模型,其中 NLP 大模型主要为 ERNIE 系列模型,是打造文心一言的关键。文心大模型参数量非常大,达到了 2600 亿。
2023 年 8 月 31 日,文心一言率先向全社会全面开放,提供 APP、网页版、API 接口等多种形式的开放服务。文心一言一方面采用有监督精调、人类反馈的强化学习、提示等技术,还具备知识增强、检索增强和对话增强等关键技术。当前,以文心一言为代表的大模型已经逐步赶超国外最优水平。文心一言基于飞桨深度学习框架进行训练,算法与框架的协同优化后效果和效率都得到提升,模型训练速度达到优化前的 3 倍,推理速度达到优化前的 30 多倍。文心一言还建设了插件机制,通过外部工具、服务的调用,拓展大模型的能力的边界。
使用地址
讯飞星火认知大模型是科大讯飞于 2023 年 5 月 6 日发布的语言大模型,提供了基于自然语言处理的多元能力,支持多种自然语言处理任务,同时联合中科院人工智能产学研创新联盟和长三角人工智能产业链联盟在业内提出了覆盖 7 大类 481 项任务的《通用人工智能评测体系》;6 月 9 日星火大模型升级到 V1.5 版
,实现了开放式知识问答、多轮对话、逻辑和数学能力的提升;8 月 15 日星火大模型升级到 V2.0 版,对于代码和多模态能力进行了提升。
讯飞星火 V2.0
升级发布的多模态能力,已实现图像描述、图像理解、图像推理、识图创作、文图生成、虚拟人合成。星火大模型包含超过1700 亿个参数,来源于数十亿的语言数据集。尽管比 ChatGPT 3.5 模型 1.5 万亿个差着数量级,但 ChatGPT 覆盖了全球主要语言,汉语不到其中 10% 的数据量。所以在现有数据基础上,星火大模型比 ChatGPT 更懂中文。基于代码和多模态能力的发布,智能编程助手iFlyCode1.0 和 讯飞智作2.0 两款应用产品也在发布会上发布,进一步解放编程和内容生产力。同时,讯飞和华为还联合重磅发布了国内首款支持大模型训练私有化的全国产化产品“星火一体机”,可支持企业快速实现讯飞星火大模型的私有化部署、场景赋能和专属大模型训练优化。
2023 年 10 月 24 日,2023 科大讯飞全球 1024 开发者上,现场发布了 讯飞星火认知大模型 V3.0
,此次七大能力持续提升,并且全面对标ChatGPT。尤其像中文能力客观评测上超越ChatGPT,在医疗、法律、教育等专业表现也格外突出,还有在代码项目级理解能力、小样本学习、多模态指令跟随与细节表达等能力有所提升。
以下是讯飞星火的使用界面:
使用地址
LLaMA 系列模型是 Meta 开源的一组参数规模 从 7B 到 70B 的基础语言模型,它们都是在数万亿个字符上训练的,展示了如何仅使用公开可用的数据集来训练最先进的模型,而不需要依赖专有或不可访问的数据集。这些数据集包括 Common Crawl、Wikipedia、OpenWebText2、RealNews、Books 等。LLaMA 模型使用了大规模的数据过滤和清洗技术,以提高数据质量和多样性,减少噪声和偏见。LLaMA 模型还使用了高效的数据并行和流水线并行技术,以加速模型的训练和扩展。特别地,LLaMA 13B 在 CommonsenseQA 等 9 个基准测试中超过了 GPT-3 (175B),而 LLaMA 65B 与最优秀的模型 Chinchilla-70B 和 PaLM-540B 相媲美。LLaMA 通过使用更少的字符来达到最佳性能,从而在各种推理预算下具有优势。
与 GPT 系列相同,LLaMA 模型也采用了 decoder-only 架构,但同时结合了一些前人工作的改进,例如:
Pre-normalization
,为了提高训练稳定性,LLaMA 对每个 Transformer子层的输入进行了 RMSNorm 归一化,这种归一化方法可以避免梯度爆炸和消失的问题,提高模型的收敛速度和性能;SwiGLU 激活函数
,将 ReLU 非线性替换为 SwiGLU 激活函数,增加网络的表达能力和非线性,同时减少参数量和计算量;RoPE 位置编码
,模型的输入不再使用位置编码,而是在网络的每一层添加了位置编码,RoPE 位置编码可以有效地捕捉输入序列中的相对位置信息,并且具有更好的泛化能力。这些改进使得 LLaMA 模型在自然语言理解、生成、对话等任务上都取得了较好的结果。
LLaMA 开源地址
GLM 系列模型是清华大学和智谱 AI 等合作研发的开源语言大模型。ChatGLM
是基于 GLM 结构开发的具有 62 亿参数量的语言大模型,支持 2048 的上下文长度。其使用了包含 1 万亿字符的中英文语料进行训练,能够支持中文和英文两种语言的任务。通过监督微调、反馈自助、人类反馈强化学习等多种训练技术,ChatGLM 拥有强大的生成能力,能够生成更符合人类偏好的内容。与 GLM 相似,通过 INT4 量化 和 P-Tuning v2 等高效微调的算法,ChatGLM 能够在 7G 显存的条件下进行微调。
在 ChatGLM 的基础上,2023 年 6 月发布的 ChatGLM 2
使用了包含 1.4 万亿字符的中英预料进行预训练,并使用人类偏好的数据对模型进行对齐训练,拥有比前一版本更加强大的能力,在多个任务上取得提升。
在 2023 年 10 月 27 日的 2023 中国计算机大会(CNCC)上,智谱 AI 推出了 ChatGLM3
,ChatGLM3-6B
是 ChatGLM3 系列中的开源模型,在保留了前两代模型对话流畅、部署门槛低等众多优秀特性的基础上,ChatGLM3-6B 引入了如下特性:
ChatGLM3-6B-Base
采用了更多样的训练数据、更充分的训练步数和更合理的训练策略。在语义、数学、推理、代码、知识等不同角度的数据集上测评显示,ChatGLM3-6B-Base 具有在 10B 以下的基础模型中最强的性能。长文本对话模型 ChatGLM3-6B-32K
。以上所有权重对学术研究完全开放,在填写问卷进行登记后亦允许免费商业使用。此外,还开源了 多模态 CogVLM-17B
、以及 智能体 AgentLM
,具体来说:
以下是智谱清言的使用界面:
ChatGLM开源地址
使用地址
通义千问由阿里巴巴基于“通义”大模型研发,于 2023 年 4 月正式发布。2023 年 8 月,阿里云开源了Qwen(通义千问)系列工作,当前开源模型的参数规模为70亿(7B)和140亿(14B)。本次开源包括基础模型Qwen,即 Qwen-7B
和 Qwen-14B
,以及对话模型 Qwen-Chat
,即 Qwen-7B-Chat 和 Qwen-14B-Chat。
它能够以自然语言方式响应人类的各种指令,拥有强大的能力,如回答问题、创作文字、编写代码、提供各类语言的翻译服务、文本润色、文本摘要以及角色扮演对话等。借助于阿里云丰富的算力资源和平台服务,通义千问能够实现快速迭代和创新功能。此外,阿里巴巴完善的产品体系以及广泛的应用场景使得通义千问更具可落地性和市场可接受程度。
通义千问开源地址
使用地址
Baichuan 是由百川智能开发的开源可商用的语言大模型,在权威的中文和英文 benchmark 上均取得同尺寸最好的效果,其基于Transformer 解码器架构。
Baichuan-7B
是在大约 1.2 万亿字符上训练的 70 亿参数模型,支持中英双语,最大 4096 的上下文窗口长度。
Baichuan-13B
在 Baichuan-7B 的基础上进一步扩大参数量到 130 亿,并且在高质量的语料上训练了 1.4 万亿 字符,超过 LLaMA-13B 40%,是当前开源 13B 尺寸下训练数据量最多的模型。其支持中英双语,使用 ALiBi 位置编码,最大 4096 的上下文窗口长度,使用 rotary-embedding,是现阶段被大多数模型采用的位置编码方案,具有很好的外推性。百川同时开源了预训练
和对齐
模型,预训练模型是面向开发者的“基座”,而对齐模型则面向广大需要对话功能的普通用户。除了原始权重,为实现更高效的推理,百川开源了 INT8 和 INT4 的量化版本,相对非量化版本在几乎没有效果损失的情况下大大降低了部署的机器资源需求。
Baichuan 2 是百川智能推出的新一代开源大语言模型,Baichuan2-7B
和 Baichuan2-13B
,均基于 2.6 万亿 Tokens 的高质量语料训练,在保留了上一代开源模型良好的生成与创作能力,流畅的多轮对话能力以及部署门槛较低等众多特性的基础上,两个模型在数学、代码、安全、逻辑推理、语义理解等能力有显著提升。Baichuan 2 在多个权威的中文、英文和多语言的通用、领域 benchmark 上取得同尺寸最佳的效果。本次发布包含有 7B、13B 的 Base 和 Chat 版本,并提供了 Chat 版本的 4bits 量化。
2023 年 10 月 30 日,百川智能发布 Baichuan2-192K
大模型,上下文窗口长度高达 192 K ,发布时是全球最长的上下文窗口(但不久后就被零一万物的首款开源大模型 —— Yi 打破纪录达到 200 K,可直接处理 40 万汉字超长文本输入)。Baichuan2-192K 能够一次处理约 35 万个汉字,是目前支持长上下文窗口最优秀大模型 Claude2(支持 100 K上下文窗口,实测约 8 万字)的 4.4 倍。
百川开源地址
ChatGPT 的巨大成功激发了越来越多的开发者兴趣,他们希望利用 OpenAI 提供的 API 或者私有化模型,来开发基于大型语言模型的应用程序。尽管大型语言模型的调用相对简单,但要创建完整的应用程序,仍然需要大量的定制开发工作,包括API集成、互动逻辑、数据存储等等。
为了解决这个问题,从 2022 年开始,许多机构和个人相继推出了多个开源项目,旨在帮助开发者们快速构建基于大型语言模型的端到端应用程序或工作流程。其中一个备受关注的项目就是 LangChain 框架。LangChain 框架是一个开源工具,充分利用了大型语言模型的强大能力,以便开发各种下游应用。它的目标是为各种大型语言模型应用提供通用接口,从而简化应用程序的开发流程。具体来说,LangChain 框架可以实现数据感知和环境互动,也就是说,它能够让语言模型与其他数据来源连接,并且允许语言模型与其所处的环境进行互动。
LangChain 的作者是 Harrison Chase,该项目自从 2022 年 10 月在 github 上开源以后,迅速吸引了大量开发者的兴趣和投资者的青睐,也由此转变为一家初创公司。
前段时间,AI初创公司 LangChain 成功完成了 1000 万美元的种子轮融资,投资方为 Benchmark Capital。这笔融资进一步证实了 LangChain 作为 AI 初创企业的领军地位。并且,在本次种子轮融资后,LangChain 不久后再次获得了红杉领投的 2000 万至 2500 万美元融资,估值达到 2 亿美元。
LangChain 作为一个大语言模型开发框架,可以将 LLM 模型(对话模型、embedding模型等)、向量数据库、交互层 Prompt、外部知识、外部代理工具整合到一起,进而可以自由构建 LLM 应用。 LangChain 主要由以下 6 个核心模块组成:
以上内容参考:动手学大模型应用开发