AIGC:LLM大型语言模型是怎么交流的? ———分词

前言

今天我们来聊聊什么是LLM,LLM又是怎么交流的呢?

准备工作

通过 Google Colab,用户可以创建和共享Jupyter笔记本,运行Python代码,访问云端计算资源,以及使用大量开源机器学习框架和库,而无需担心硬件或软件配置问题。

LLM

"LLM" 是 "Large Language Model" 的缩写,翻译过来就是"大型语言模型"。这一术语通常用来描述在自然语言处理(NLP)领域中的一类强大的神经网络模型,这些模型在大规模文本数据上进行预训练,然后可以用于各种自然语言理解和生成任务。

这类大型语言模型具有很高的参数数量,通常拥有数亿甚至数十亿的参数。由于这些模型规模庞大,能够学习到丰富的语言表示,包括词汇、语法、语义等方面的知识。它们在理解和生成自然语言方面的表现十分强大,可以执行诸如文本生成、机器翻译、问答系统等任务。

一些知名的大型语言模型包括:

  1. GPT-3(Generative Pre-trained Transformer 3): 由 OpenAI 开发的模型,拥有 1750 亿个参数。它是目前公开可用的最大的语言模型之一。
  2. BERT(Bidirectional Encoder Representations from Transformers): 由Google开发,采用双向 Transformer 编码器,用于预训练自然语言理解任务。
  3. T5(Text-To-Text Transfer Transformer): 由Google开发,使用统一的文本输入输出框架,适用于各种自然语言处理任务。

这些大型语言模型在推动自然语言处理领域的研究和应用方面发挥了关键作用,它们能够从海量的文本数据中学到通用的语言表示,使得它们在各种自然语言任务中都能够表现出色。

分词

计算机怎么样理解我们句子中的结构和含义呢?通过分词

在自然语言处理中,分词是将文本分割成有意义的最小单元(词)的过程。对于大型语言模型(LLM),分词是模型在理解和处理文本时的一个重要步骤。不同的语言和模型可能使用不同的分词方法。

但我们在使用大型语言模型(LLM)时,通常无需手动执行分词步骤,因为这些模型在训练阶段已经学习了丰富的语言知识,包括词汇和语法。你可以直接将原始文本传递给模型,而模型会自动处理分词。例如,使用 OpenAI 的 GPT-3 模型,你可以直接提供自然语言的文本,而无需显式进行分词。

接下来我们来看看如何进行分词

我们进入Google Colab网站,将代码放进此网站运行。这个网站十分的方便,当我们使用Google Colab 运行python时,可以不用担心配置环境。

点击文件-> 新建笔记本 点击左上角 +代码

输入pip install transformers, 安装transformer包

当左下角出现Successfully说明安装成功

输入:

python 复制代码
from transformers import AutoTokenizer
sens="来颗奇趣蛋,我要找一个好工作"  # 人类语言 -> LLM
tokenizer = AutoTokenizer.from_pretrained('uer/roberta-base-finetuned-dianping-chinese')
tokenizer

使用 Hugging Face 的 transformers 库中的 AutoTokenizer 类来加载一个预训练的中文 RoBERTa 模型(uer/roberta-base-finetuned-dianping-chinese),并使用它对输入文本进行分词(tokenization)。

输入:

python 复制代码
tokens = tokenizer.tokenize(sens)
tokens

tokenizer.tokenize(sens):调用分词器的 tokenize 方法,将输入的文本进行分词处理

输入:tokenizer.vocab

  • vocab:这是分词器的一个属性,表示词汇表。词汇表是模型训练时学到的所有单词、子词或标记的集合。对于预训练的语言模型,词汇表是在大规模文本数据上学到的,并包含了模型在训练过程中遇到的所有单词和标记。

使用 tokenizer.vocab 可以获取分词器使用的词汇表,你可以查看其中包含的单词、标记以及它们在词汇表中的索引等信息。

使用了分词器(tokenizer)将文本转换成模型可以理解的表示形式,其中涉及了将 tokens 转换成对应的 token IDs

输入:

python 复制代码
str_len = tokenizer.decode(ids, skip_special_tokens=False)
str_len

使用了分词器(tokenizer)将通过编码得到的 token IDs 转换回原始的文本形式

今天的内容就到这啦,如果你觉得小编写的还不错的话,或者对你有所启发,请给小编一个辛苦的赞吧

相关推荐
SimonKing几秒前
跨越数据孤岛!SpringBoot使用JDBC调用Calcite联邦查询实战
java·后端·程序员
Java编程爱好者8 分钟前
金融级数据库架构实战:MySQL Router + MGR 深度指南
后端
好家伙VCC9 分钟前
# 发散创新:基于Python的TTS语音合成实战与优化策略 在人工智能加速落地的今天,**文本转
java·开发语言·人工智能·python
沃达德软件10 分钟前
模糊图像复原技术解析
图像处理·人工智能·深度学习·目标检测·机器学习·计算机视觉·目标跟踪
来两个炸鸡腿11 分钟前
【Datawhale组队学习202602】Easy-Vibe task05 完整项目实战
人工智能·学习·大模型·vibe coding
Java编程爱好者12 分钟前
Java后端开发面试题总结(全网最全、最细、附答案)
后端
烤鸭的世界我们不懂21 分钟前
开箱即用:OpenCLaw集成飞书实用部署与使用心得
人工智能·ai编程·openclaw
沪漂阿龙23 分钟前
第二章:RAG系统技术架构设计
人工智能·系统架构
货拉拉技术25 分钟前
文本大模型评测实践
人工智能·深度学习·算法