【AI大模型】Transformers大模型库(三):特殊标记(special tokens)

Transformers库总体介绍 通过实际代码例子介绍Transformers库的常用功能 阅读详情

一、引言

这里的Transformers指的是huggingface开发的大模型库,为huggingface上数以万计的预训练大模型提供预测、训练等服务。

🤗 Transformers 提供了数以千计的预训练模型,支持 100 多种语言的文本分类、信息抽取、问答、摘要、翻译、文本生成。它的宗旨是让最先进的 NLP 技术人人易用。

🤗 Transformers 提供了便于快速下载和使用的API,让你可以把预训练模型用在给定文本、在你的数据集上微调然后通过 model hub 与社区共享。同时,每个定义的 Python 模块均完全独立,方便修改和快速研究实验。

🤗 Transformers 支持三个最热门的深度学习库: Jax, PyTorch 以及 TensorFlow — 并与之无缝整合。你可以直接使用一个框架训练你的模型然后用另一个加载和推理。

本文重点介绍特殊标记(special tokens)。

二、特殊标记(special tokens)

2.1 概述

在Hugging Face的transformers库中,不同的模型预训练时可能会使用特定的特殊标记(special tokens),这些标记用于帮助模型理解输入序列的结构,尤其是在处理序列分类、问答、文本生成等任务时。以下是一些常见的特殊标记及其用途:

2.2 主要功能

  • [CLS] (Classification Token),编码101:通常用于序列分类任务的开始。模型会基于这个标记的输出来进行分类决策。
  • [SEP] (Separator Token),编码102:用于分隔序列中的不同部分,比如在问答任务中分隔问题和文本,在多句子输入中分隔句子。对应编码102
  • [PAD] (Padding Token),编码0:用于填充,确保所有批次的输入序列长度一致。它在模型计算时通常会被忽略。对应编码
  • [MASK],编码103:主要用于BERT的掩码语言模型任务,模型会预测这个标记所遮掩的单词是什么。
  • [UNK] (Unknown Token),编码100:代表词汇表中未包含的单词。
  • [BOS] (Beginning of Sentence) 和 [EOS] (End of Sentence):在某些模型中使用,分别表示句子的开始和结束 。

2.3 代码示例

使用这些特殊标记的例子,比如在BERT模型中准备输入:

from transformers import BertTokenizer
 
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
text = "Hello, I'm a text."
text_pair = "And this is another text."
inputs1 = tokenizer.encode_plus(text, text_pair, add_special_tokens=True)
print(inputs1) 
"""
{'input_ids': [101, 7592, 1010, 1045, 1005, 1049, 1037, 3793, 1012, 102, 1998, 2023, 2003, 2178, 3793, 1012, 102], 'token_type_ids': [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1], 'attention_mask': [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]}
"""
print(tokenizer.decode(inputs1['input_ids']))
"""
[CLS] hello, i'm a text. [SEP] and this is another text. [SEP]
"""
inputs2 = tokenizer.encode(text,add_special_tokens=True)
print(inputs2)  
"""
[101, 7592, 1010, 1045, 1005, 1049, 1037, 3793, 1012, 102]
"""
 
print(tokenizer.encode(['[UNK]','[SEP]','[PAD]', '[CLS]', '[MASK]','BOS','EOS']))
 
#[101, 100, 102, 0, 101, 103, 100, 100, 102],去掉头部101和尾部102即为特殊标记的编码ID

将句子Hello, I’m a text进行encode时,会自动在开头和结尾加上[CLS]和[SEP],如果采用encode_plus对两个句子进行拼接,会加入[SEP]进行句子语义切割。告诉计算机这是两句话。

add_special_tokens=True为默认值,默认在encode编码的时候加入特殊标识,如果为False则可以不加入,但可能会丢失断句的信息。

三、总结

本文对使用transformers的特殊标记(special tokens)进行说明,特殊标记主要用于分割句子,在模型训练中引入“断句”、“开头”、“结尾”相关的信息。

程序员为什么要学大模型?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

继科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉优快云大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

​

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)

在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

LLM大模型学习路线 ↓

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容:

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容:

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容:

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容:

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉优快云大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

​

三万字长文超详细解读LLama2! 自从Transformer架构问世以来,大型语言模型(Large Language Models, LLMs)以及AIGC技术的发展速度惊人,它们不仅在技术层面取得了重大突破,还在商业应用、社会影响等多个层面展现出巨大潜力。 随着ChatGPT的推出,这一技术日益走进大众视野,这也预示着一个由生成式AI塑造的未来正在加速到来。 与此同时,Meta AI Meta AI在2023年推出了LLama(Large Language Model Meta AI)系列大语言模型,这一模型初期是以较为封闭的形式面向特定 阅读详情

相关推荐

Hugging Face Transformers v5 Tokenizer 升级指南:统一Rust引擎与可调试Pipeline

Tokenizer 是大语言模型输入处理的核心组件,其本质并非简单的文本转ID,而是一套包含归一化、预分词、子词建模、后处理与解码的标准化流水线。随着 Hugging Face Transformers v5 发布,tokenizer 实现全面统一为 Rust 加速引擎,废弃 Python 慢版,同时将 Normalizer、Pre-tokenizer、Model、Post-processor 和 Decoder 五大阶段完全暴露并标准化。这一重构显著提升了 tokenization 的确定性、可调试性与跨

weixin_30596735的博客 372

LLM:Transformers 库

Transformers 库是一个开源库,其提供的所有预训练模型都是基于 transformer 模型结构的。Transformers 库支持三个最流行的深度学习库(PyTorch、TensorFlow 和 JAX)。我们可以使用 Transformers 库提供的 API 轻松下载和训练最先进的预训练模型。使用预训练模型可以降低计算成本,以及节省从头开始训练模型的时间。这些模型可用于不同模态的任务,例如:文本:文本分类、信息抽取、问答系统、文本摘要、机器翻译和文本生成。图像:图像分类、目标检测和图像分割。

皮皮blog 8165

Tokens per Second:大模型推理速度的测量与优化全解析

大语言模型在生成文本时按 token 进行,token 是模型理解文本的基本单元。衡量模型生成速度的关键指标是 tokens per second(tokens/s),它直接决定用户体验与系统吞吐。理解这一指标需要区分单请求速度与并发吞吐,并关注 prefill、decode 阶段以及显存带宽、量化策略等影响因素。在工程实践中,开发者可通过 vLLM 等推理框架、连续批处理、投机解码等手段显著提升 token 生成速度。合理建立评测基准、关注延迟分布,才能在生产环境中复现理想性能。本文围绕 tokens/s

weixin_34411563的博客 393

Transformers 库的基本使用

本内容主要介绍 Transformers 库 的基本使用。

步入人工智能 5万+

从零开始:使用微调和嵌入训练自己的AI个性化大模型.docx

从零开始:使用微调和嵌入训练自己的AI个性化大模型.docx

实战指南:CentOS 7下VOS3000 8.0从零部署到授权激活全流程

本文提供了一份详尽的CentOS 7系统下部署VOS3000 8.0的实战指南。从环境准备、使用FileZilla上传安装包、执行自动化安装脚本,到获取软件码、利用注册机生成授权文件并激活,手把手带领用户完成从零部署到投入商用的全流程,确保系统稳定运行。

zero1的博客 895

从聊天记录到单一 Prompt:搞懂 Messages、Chat Templates、Special Tokens

文章摘要 本文解析了大模型对话中的消息处理机制,重点介绍了Messages、Chat Templates和Special Tokens的概念。实际对话在模型眼中会被拼接成单一Prompt字符串,而非多轮对话。消息分为System(系统规则)、User(用户输入)和Assistant(模型回复)三类,其中System消息影响全局行为。不同模型需要特定的Chat Template来规范消息格式,避免直接拼接字符串导致的兼容性问题。transformers库提供了apply_chat_template()方法,可

小一的专栏 1641

华为设备OSPF配置全流程:从邻居关系到区域划分实战指南

本文详细介绍了华为设备上OSPF协议的完整配置流程,从基础概念到实战操作,包括邻居关系建立、多区域划分及高级特性配置。特别针对华为设备的特有语法和验证命令进行了重点讲解,帮助网络工程师快速掌握OSPF在华为环境中的部署与优化技巧,提升网络配置效率。

weixin_29299807的博客 251

Zotero PDF2zh 使用指南:4 步完成 PDF 中文双语对照翻译

Zotero PDF2zh 是一款免费开源的 Zotero PDF 中文翻译插件,让英文 PDF 在 Zotero 内直接变成保留公式与排版的双语对照文档,适合需要大量阅读英文文献的研究生与科研人员。它由两部分组成:本地翻译服务器(Server)+ Zotero 插件,一次配置长期使用。 ## 能力速览:它能做什么 | 能力 | 适用场景 | 一句话说明 | |---|---|---| | P

gitblog_00994的博客 503

VH6501实战:手把手教你用CANoe脚本精准触发CAN总线干扰(附避坑点)

本文详细介绍了使用VH6501和CANoe脚本精准触发CAN总线干扰的实战技巧,包括触发位置控制、ValidityMask配置和干扰序列设置等关键步骤。通过具体代码示例和常见问题排查指南,帮助工程师避开实际应用中的常见陷阱,提升CAN总线干扰测试的准确性和效率。

weixin_33709219的博客 370

硬件描述语言Verilog学习(一)

主要学习综合和仿真、模块结构和信号类型Verilog 是用代码的形式描述硬件的功能,最终在硬件电路上实现该功能。在 Verilog 描述出硬件功能后需要使用综合器对 Verilog 代码进行解释并将代码转化成实际的电路来表示,最终产生实际的电路,也被称为网表。这种将 Verilog 代码转成网表的工具就是综合器。 上图左上角是一段 Verilog 代码,该代码实现了一个加法器的功能。在经过综合器解释后该代码被转化成一个加法器电路。QUARTUS、ISE 和 VIVADO 等 FPGA 开发工具都是综合器,

安静到无声 1499

FFmpegFreeUI 完整教程:可视化 FFmpeg 视频转码外壳,参数全开放与批量编码一次讲清

FFmpegFreeUI(简称 3FUI)是 Windows 上的 FFmpeg 视频转码专业交互外壳。它面向想自己掌控转码参数、又不想手敲长命令行的用户:所有参数在界面中直接标注名称,右侧实时生成 FFmpeg 命令行,并内置批量编码队列、预设管理、性能监控与远程调用。所有生产力功能免费,MIT 许可。 [![FFmpegFreeUI 编码队列界面:显示任务进度、效率、输出大小预估与比特率](

gitblog_00458的博客 413

为Skill开发的python脚本一些经验

其中SKILL.md的职责是调度,不是实现,这里面要写清楚如下三点: 脚本会自动生成: 如果缺少依赖: 这样就实现了分工,脚本用来完成格式转换、统计计算、文件生成;Claude做理解用户意图、选择参数、解释结果、处理特殊需求等。Claude 调用脚本时,所有参数都通过命令行传递,本质上都是字符串。但在脚本内部,应该明确转换成正确类型,而不是全程当字符串用。因此,强烈建议使用argparse里声明正确的type,如下: 的 参数会自动做转换和报错,比在代码里手动 更安全,报错信息也更清晰。特别注意如下

Criss@陈磊 846

Meltemi-7B-Instruct-v1 tokenizer配置详解:特殊标记与聊天模板

Meltemi-7B-Instruct-v1是一款高效的AI对话模型,其tokenizer配置是实现优质交互的核心基础。本文将深入解析该模型的特殊标记系统与聊天模板设计,帮助开发者快速掌握模型的文本处理机制。 ## 核心配置文件概览 Meltemi-7B-Instruct-v1的tokenizer配置主要通过三个关键文件实现: - **tokenizer_config.json**:核心配置

gitblog_00646的博客 407

Transformer 跨界物理建模:探索模拟动态物理系统方法与实践(PINN、流体力学、有限元)

是一个由 Nicholas Zabaras 团队开发的开源项目,托管于 GitHub,旨在将 Transformer 模型(最初在自然语言处理领域大获成功)应用于物理系统的建模与预测。该项目基于论文 ​*“Transformers for Modeling Physical Systems”*​(Neural Networks, 2022),探索了深度学习中的 Transformer 架构如何通过自注意力机制和 Koopman 嵌入来模拟动态物理系统。

源代码杀手的博客 1191

块存储:AIO的直接写流程注释

提交io流程中aio_write之前函数的注释,可参考“块存储:AIO的直接读流程注释”。

yiyeguzhou100的专栏 1334

DeepSeek-R1-Distill-Qwen-1.5B的Tokenizer配置详解:151K词汇表与特殊标记解析

想要充分利用DeepSeek-R1-Distill-Qwen-1.5B模型?了解其Tokenizer配置是关键!这款专为AMD Ryzen AI NPU优化的模型拥有151,936个词汇的庞大词汇表,支持高达131,072的上下文长度。本文将为您详细解析这个强大的Tokenizer配置,帮助您更好地理解和应用这款先进的AI模型。🎯 ## 📊 Tokenizer核心参数概览 DeepSeek

gitblog_00283的博客 918

【批处理脚本】-0.1-如何运行批处理bat文件

如何运行批处理bat文件

「汽车电子助手」的博客 1585

开发者必看:Inkling-Small-NVFP4的Tokenizer配置与特殊 tokens 使用指南

Inkling-Small-NVFP4作为一款高效的AI模型,其Tokenizer配置与特殊tokens的合理使用是提升模型性能的关键。本文将详细介绍如何正确配置Tokenizer以及特殊tokens的应用场景,帮助开发者快速掌握这一核心技能。 ## 一、Tokenizer基础配置解析 ### 1.1 核心配置文件概览 Inkling-Small-NVFP4的Tokenizer配置主要通过以

gitblog_00606的博客 339

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

FinBERT分词器完全指南:30522词表与5个特殊标记的工作原理

FinBERT 是专为金融文本训练的情感分析模型,可输出 positive / negative / neutral 三类判断。它的"第一站"是 BERT 分词器:本指南带你从零看懂 FinBERT 分词器的 30522 词表结构、WordPiece 子词机制,以及 [CLS]、[SEP]、[UNK]、[PAD]、[MASK] 这 5 个特殊标记各自的工作原理。 ## 📦 FinBERT 分词

gitblog_00510的博客 946

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Qwen2-1.5B_rai_1.7.1_hybrid tokenizer配置详解:151936词汇量与特殊标记处理

Qwen2-1.5B_rai_1.7.1_hybrid是一个基于AMD Ryzen AI优化的混合模型,其tokenizer配置是模型性能的关键组成部分。本文将深入解析这个tokenizer的151936词汇量设计、特殊标记处理机制以及实际应用技巧。😊 ## 🔍 Tokenizer核心配置概览 Qwen2-1.5B_rai_1.7.1_hybrid的tokenizer采用了精心设计的词汇表

gitblog_00107的博客 403

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Fox-1-1.6B 分词器深度解析:256K 词表与特殊 tokens 使用指南

Fox-1-1.6B 是一款高效的 AI 模型,其分词器作为模型与文本交互的关键桥梁,采用 256K 超大词表设计,能精准处理多语言文本与复杂格式。本文将系统解析其分词器架构、核心功能及特殊 tokens 的实战应用,帮助开发者快速掌握优化文本处理的关键技巧。 ## 分词器核心架构与优势 Fox-1-1.6B 分词器基于 `GemmaTokenizer` 实现,通过 `tokenizer_co

gitblog_00510的博客 515

GLM-5.2部署指南:SGLang、vLLM、Transformers三大框架详细教程

GLM-5.2作为智谱AI推出的长文本处理旗舰模型,支持100万token稳定上下文,是目前开源领域长文本任务的理想选择。本教程将详细介绍如何通过SGLang、vLLM和Transformers三大主流框架部署GLM-5.2,帮助开发者快速启动模型服务。 ## 📋 部署前准备 ### 环境要求 - **硬件**:建议使用NVIDIA A100/A800或同等算力GPU,显存≥40GB - *

gitblog_00957的博客 1012

vllm启动qwen3出错AttributeError: Qwen2Tokenizer has no attribute all_special_tokens_extended. Did you me

AttributeError: Qwen2Tokenizer has no attribute all_special_tokens_extended. Did you mean: 'num_special_tokens_to_add'?

weixin_64651338的博客 1577

Qwen2.5-Coder-1.5B-Instruct_rai_1.7.1_hybrid tokenizer完全指南:特殊标记与使用场景

如果你正在使用AMD优化的Qwen2.5-Coder-1.5B-Instruct模型进行代码生成和对话任务,那么理解其tokenizer的特殊标记系统是提升使用效果的关键。🤔 这个由AMD Ryzen AI优化的混合模型采用了独特的特殊标记设计,支持多模态输入、工具调用和代码填充等多种高级功能。本文将为你详细解析这些特殊标记的作用和使用场景,帮助你充分利用这个强大的代码生成模型。 ## 📋

gitblog_01111的博客 458
上一篇: 【AI大模型】Transformers大模型库(二):AutoModelForCausalLM
下一篇: 大模型书籍丨2024最新LLM大模型畅销的三本书!千言万语,尽在书中 (附pdf)
Llama-Turbo
博客等级 码龄4年 9901粉丝 2022原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值