Read OSS

huggingface/transformers

7 articles

前置知识

01

`import transformers` 的工作原理:懒加载架构解析

深入剖析以 frozenset 为键的导入结构、_LazyModule 机制,以及自动模型发现机制——正是这套设计让 Transformers 在管理 450+ 种架构的同时,无需在启动时全部导入。

02

Auto 类:Transformers 如何将模型名称映射到代码

追踪从 Hub 模型名称经由 CONFIG_MAPPING_NAMES、_LazyAutoMapping 和 PreTrainedConfig 到最终模型类的完整解析链路。

03

深入模型内部:从 LlamaConfig 到 LlamaForCausalLM

全面剖析 LLaMA 模型层级结构:PreTrainedModel mixin、AttentionInterface 分发系统、Hub 内核热替换,以及单行 head 类的设计模式。

04

从 Hub 到 GPU:权重加载流水线

深入追踪 from_pretrained() 的完整流程,涵盖 meta device 初始化、safetensors 分片、量化器选择与设备映射调度。

05

生成引擎:model.generate() 如何生成文本

深入解析完整的文本生成流程:GenerationConfig 模式选择、KV-cache 层级体系、logits 处理管线、推测解码与流式输出。

06

Trainer:从数据到大规模梯度计算

深入解析 Trainer 的 train() → training_step() → compute_loss() 调用链、回调系统、分布式后端集成以及损失函数注册表。

07

Pipeline、Tokenizer 与 Transformers 的扩展机制

深入解析 pipeline() API、三后端 tokenizer 体系、多模态模型的 ProcessorMixin,以及向库中贡献新模型的扩展接口。