comments: true title: 初识仓库结构 transformers 前言 已然成为自然语言处理领域不可或缺的一部分,因为它是一个简洁、标准、高效且强大的工具。 俗话说“工欲善其事,必先利其器”,为了手拿把掐 ,理解其仓库结构及相关代码至关重要。 本文将介绍 仓库的重要部分。 总体 structuremindmap 在根目录可以看到 重点就在于 目录下的 下的代码,开发者在使用 的时候就是在这里调用函数。 在transformers目录下,重要的部分就是 、 、 、 、 这些目录。 :存储用于文本生成的各种算法,例如 、 等算法。 :包含与其他库和框架的集成代码,例如内置一部分 算法、 加速组件。 :存储自定义实现的 算子。 :存储着各种预训练模型的实现,是这个仓库的灵魂所在。
comments: true title: 初识仓库结构

transformers 已然成为自然语言处理领域不可或缺的一部分,因为它是一个简洁、标准、高效且强大的工具。
俗话说“工欲善其事,必先利其器”,为了手拿把掐 transformers,理解其仓库结构及相关代码至关重要。
本文将介绍transformers仓库的重要部分。

在根目录可以看到
.circleci/ .github/ benchmark/ docker/ ... scripts src templates ...
src 目录下的 transformers 下的代码,开发者在使用 transformers 的时候就是在这里调用函数。generation、intergration、kernels、models、pipelines这些目录。
generation:存储用于文本生成的各种算法,例如beam search、greedy search等算法。intergration:包含与其他库和框架的集成代码,例如内置一部分 PEFT 算法、 deepspeed 加速组件。kernels:存储自定义实现的CUDA算子。models:存储着各种预训练模型的实现,是这个仓库的灵魂所在。pipelines:存储着高阶接口,这些接口允许开发者方便地使用预训练模型完成各种任务。models 文件夹下。tf、flax等不同框架缩写的,表示该文件是在对应深度学习框架下实现的。configuration_xxx.py 通常代表预训练模型的配置参数。model_xxx.py 通常代表预训练模型的实现。tokenization_xxx.py 通常代表与模型配套的分词器。