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 转换回原始的文本形式

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

相关推荐
考虑考虑13 分钟前
Springboot3.5.x结构化日志新属性
spring boot·后端·spring
涡能增压发动积15 分钟前
一起来学 Langgraph [第三节]
后端
YuTaoShao15 分钟前
【论文阅读】YOLOv8在单目下视多车目标检测中的应用
人工智能·yolo·目标检测
sky_ph28 分钟前
JAVA-GC浅析(二)G1(Garbage First)回收器
java·后端
涡能增压发动积33 分钟前
一起来学 Langgraph [第二节]
后端
算家计算41 分钟前
字节开源代码模型——Seed-Coder 本地部署教程,模型自驱动数据筛选,让每行代码都精准落位!
人工智能·开源
伪_装1 小时前
大语言模型(LLM)面试问题集
人工智能·语言模型·自然语言处理
hello早上好1 小时前
Spring不同类型的ApplicationContext的创建方式
java·后端·架构
roman_日积跬步-终至千里1 小时前
【Go语言基础【20】】Go的包与工程
开发语言·后端·golang
gs801401 小时前
Tavily 技术详解:为大模型提供实时搜索增强的利器
人工智能·rag