大型语言模型LLM

23天前 24.8k 0

最近在学习OCI的生成式AI相关方面的内容,对相关内容做一下整理,内容涉及LLM基础、LLM架构、提示(Promot)、微调(fine-tuning)、各种模型、OCI的生成式AI、RAG,及向量数据库等等。争取写出一个系列的内容。

什么是LLM?

LLM(Large Language Model)是大型语言模型的缩写,语言模型(LM)是一个文本的概率模型。为了能够简单说明该模型,在这里举一个简单的例子。

例如,“我写信给农场,希望他们送我一个宠物,他们送给我一只()”

括号中的词汇概率如下:

    牛 0.1 羊 0.2 狗 0.3 猫 0.2 马 0.1 猪 0.05 兔子 0.2

    LM给出每一个候选词汇的概率。注意,LLM中第一个L是指模型参数的数量。

    按照此时的候选词汇概率高低,LM大概率会选择“狗”填入括号中,如果句子变为“我写信给农场,希望他们送我一个宠物,他们送给我一只小()”。此时,“狗”的概率会大幅增加,而“牛”的概率会降低。我们所需要学习的就是LLM如何利用这些词汇的分布生成文本,以及我们如何去影响词汇的分布。

    LLM架构

    LLM的多个架构聚焦在编码和解码,例如嵌入和生成文本。所有的这些模型构建在Transformer架构之上,关于“Transformer架构”感兴趣的读者可以阅读论文“Attention is all you need”,该论文提出了Transformer架构,并改变了以往自然语言处理中常用的循环神经网络(RNN)或卷积神经网络(CNN)的主导地位,使得 Transformer 架构成为许多先进语言模型的基础。LLM中的各种模型具备不同的能力,例如嵌入(emmbedding)/生成(generation),模型的类型不同导致了它们的参数数量不同。

    编码 Encoder

    模型用于将连续的词汇转换为向量进行嵌入。例如,MiniLM,Embed-light,BERT, RoBERT,DistillBERT,SBERT,...。

    大型语言模型LLM-1

    编码主要用于嵌入令牌(tokens),句子及文档。

    解码 Decoder

    模型用于接收连续的词汇并输出下一个词汇。例如,GPT-4,Llama,BLOOM,Falcon,...。

    大型语言模型LLM-2

    解码主要用于生成文本,聊天模型等等。

    编码-解码 Encoders -Decoders

    对连续的词汇进行编码,之后使用这些编码输出下一个词汇。例如,T5,UL2,BART,...。

    大型语言模型LLM-3

    编码-解码通常用于翻译文本。

    下面是一个模型分布图,注意纵轴,参数的数量是成10倍增长的。

    大型语言模型LLM-4

    以上内容是关于LLM基础及架构的一个简单介绍,后续会介绍提示及微调等方面的内容。感谢关注MySQL解决方案工程师。

    相关文章

    最新发布!MySQL 9.0 的向量 (VECTOR) 类型文档更新
    国产数据库中级认证HCIP-openGauss经验分享
    保障数据完整性与稳定性:数据库一致性
    OceanBase 里的 DDL 超时时间
    OceanBase v3.1.x 将不再更新版本 | 社区月报2024.6
    openGauss Developer Day 2024 | SIG组工作会议亮点回看!

    发布评论