Transformers documentation
Transformers与Tiktonken的互操作性
开始使用
教程
使用pipelines进行推理使用AutoClass编写可移植的代码预处理数据微调预训练模型通过脚本训练模型使用🤗Accelerate进行分布式训练使用🤗 PEFT加载和训练adapters分享您的模型使用LLMs进行生成生成策略
开发者指南
使用 🤗 Tokenizers 中的分词器使用多语言模型进行推理使用特定于模型的 API共享自定义模型聊天模型的模板导出为 ONNX与 GGUF 格式的互操作性与 Tiktoken 文件的互操作性社区资源
性能和可扩展性
贡献
概念指南
应用程序接口 (API)
You are viewing main version, which requires installation from source. If you'd like
regular pip install, checkout the latest stable version (v5.8.1).
Transformers与Tiktonken的互操作性
在🤗 transformers中,当使用from_pretrained方法从Hub加载模型时,如果模型包含tiktoken格式的tokenizer.model文件,框架可以无缝支持tiktoken模型文件,并自动将其转换为我们的快速词符化器。
已知包含 tiktoken.model 文件发布的模型:
- gpt2
- llama3
使用示例
为了在transformers中正确加载tiktoken文件,请确保tiktoken.model文件是tiktoken格式的,并且会在加载from_pretrained时自动加载。以下展示如何从同一个文件中加载词符化器(tokenizer)和模型:
from transformers import AutoTokenizer
model_id = "meta-llama/Meta-Llama-3-8B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id, subfolder="original") 创建tiktoken词符化器(tokenizer)
tokenizer.model文件中不包含任何额外的词符(token)或模式字符串(pattern strings)的信息。如果这些信息很重要,需要将词符化器(tokenizer)转换为适用于PreTrainedTokenizerFast类的tokenizer.json格式。
使用tiktoken.get_encoding生成tokenizer.model文件,再使用convert_tiktoken_to_fast函数将其转换为tokenizer.json文件。
from transformers.integrations.tiktoken import convert_tiktoken_to_fast
from tiktoken import get_encoding
# You can load your custom encoding or the one provided by OpenAI
encoding = get_encoding("gpt2")
convert_tiktoken_to_fast(encoding, "config/save/dir")生成的tokenizer.json文件将被保存到指定的目录,并且可以通过PreTrainedTokenizerFast类来加载。
tokenizer = PreTrainedTokenizerFast.from_pretrained("config/save/dir")