目录

torchtune.modules

组件和构建块建模

CausalSelfAttention

https://arxiv.org/abs/2305.13245v1 中引入的多头分组查询自注意力 (GQA) 层。

FeedForward

此类实现从 Llama2 派生的前馈网络。

KVCache

Standalone 包含 kv-cache,用于在推理期间缓存过去的 key 和值。nn.Module

get_cosine_schedule_with_warmup

创建一个学习率计划,在 num_warmup_steps 年内将学习率从 0.0 线性增加到 lr,然后在剩余的 num_training_steps-num_warmup_steps 中按余弦计划降低到 0.0(假设 num_cycles = 0.5)。

RotaryPositionalEmbeddings

此类实现了 https://arxiv.org/abs/2104.09864 中提出的旋转位置嵌入 (RoPE)。

RMSNorm

实施 https://arxiv.org/abs/1910.07467 中引入的均方根归一化。

TransformerDecoderLayer

从 Llama2 模型派生的变压器层。

TransformerDecoder

源自 Llama2 架构的 Transformer Decoder。

基础分词器

Base 分词器是执行文本直接编码的分词器模型 转换为令牌 ID 并将令牌 ID 解码为文本。这些通常是字节对 编码,这些编码是 特定于模型的分词器。

tokenizers.SentencePieceBaseTokenizer

一个围绕 SentencePieceProcessor 的轻量级包装器,还处理前导空格的修剪。

tokenizers.TikTokenBaseTokenizer

tiktoken Encoding 的轻量级包装器。

Tokenizer 实用程序

这些是任何分词器都可以使用的帮助程序方法。

tokenizers.tokenize_messages_no_special_tokens

一次对消息列表进行标记化,然后将它们连接起来,返回标记列表和掩码列表。

tokenizers.parse_hf_tokenizer_json

解析 Hugging Face 模型中的文件,以提取特殊标记 str 到 id 的映射。tokenizer.json

PEFT 组件

peft.LoRALinear

LoRA 线性层,如 LoRA:大型语言模型的低秩适应

peft.AdapterModule

nn.包含适配器权重的模块。

peft.get_adapter_params

从模型中返回与适配器对应的参数子集。

peft.set_trainable_params

为 nn.基于适配器参数的状态字典的模块。

peft.validate_missing_and_unexpected_for_lora

一种更节省内存的方法,用于验证 LoRA state dict 加载是否已正确完成。

peft.validate_state_dict_for_lora

验证 LoRA 模型的状态 dict 键是否符合预期。

peft.disable_adapter

暂时禁用神经网络模型中的适配器。

模块实用程序

这些是所有模块通用的实用程序,可供所有模块使用。

common_utils.reparametrize_as_dtype_state_dict_post_hook

一个 state_dict 钩子,用于将 NF4 张量替换为其恢复的更高精度权重,并可选择将恢复的权重卸载到 CPU。

损失

loss.DPOLoss

直接偏好优化 (DPO) 损失模块:https://arxiv.org/abs/2305.18290

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并解答您的问题

查看资源