快捷方式

lora_llama3_1

torchtune.models.llama3_1.lora_llama3_1(lora_attn_modules: List[Literal['q_proj', 'k_proj', 'v_proj','output_proj']], apply_lora_to_mlp: bool = False, apply_lora_to_output: bool = False, *, vocab_size: int, num_layers: int, num_heads: int, num_kv_heads: int, embed_dim: int, max_seq_len: int, intermediate_dim: Optional[int] = None, attn_dropout: float = 0.0, norm_eps: float = 1e-05, rope_base: int = 500000, scale_factor: int = 8, lora_rank: int, lora_alpha: float, lora_dropout: float = 0.0, use_dora: bool = False, quantize_base: bool = False) TransformerDecoder[source]

根据传入的配置,返回应用了 LoRA 的 Llama3.1 版本(一个 TransformerDecoder() 实例)。

参数:
  • lora_attn_modules (List[LORA_ATTN_MODULES]) – 列表,指定在每个自注意力块中应将 LoRA 应用于哪些线性层。选项包括 {"q_proj", "k_proj", "v_proj", "output_proj"}

  • apply_lora_to_mlp (bool) – 是否将 LoRA 应用于每个 transformer 层中的 MLP。默认值:False

  • apply_lora_to_output (bool) – 是否将 LoRA 应用于模型的最终输出投影。默认值:False

  • vocab_size (int) – 词汇表中的 token 数量。

  • num_layers (int) – transformer 解码器中的层数。

  • num_heads (int) – query 头的数量。对于 MHA,这也是 key 和 value 头的数量

  • num_kv_heads (int) – key 和 value 头的数量。用户应确保 num_heads % num_kv_heads == 0。对于标准 MHA,设置 num_kv_heads == num_heads;对于 GQA,num_kv_heads < num_heads;对于 MQA,设置 num_kv_heads == 1。

  • embed_dim (int) – 自注意力的嵌入维度

  • max_seq_len (int) – 模型将运行的最大序列长度,由 KVCache() 使用

  • attn_dropout (float) – 传递给 scaled_dot_product_attention 的 dropout 值。默认值:0.0

  • intermediate_dim (Optional[int]) – MLP 的中间维度。如果未指定,则使用 scale_hidden_dim_for_mlp() 计算

  • norm_eps (float) – RMS 范数中的 epsilon。

  • rope_base (int) – 旋转位置嵌入的基。默认值:500_000

  • scale_factor (int) – RoPE 的缩放因子。默认值:8

  • lora_rank (int) – 每个低秩近似的秩

  • lora_alpha (float) – 低秩近似的缩放因子

  • lora_dropout (float) – LoRA dropout 概率。默认值:0.0

  • use_dora (bool) – 是否使用 DoRA 层而不是 LoRA 层。默认值为 False

  • quantize_base – (bool):是否对基础模型权重进行量化。仅应用于应用 LoRA 的线性层内的基础权重。目前不支持对最终输出线性投影进行量化。

返回值:

Llama3.1 模型的一个实例,其 LoRA 应用于每层注意力投影的子集。

返回值类型:

TransformerDecoder

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

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

查看教程

资源

查找开发资源并获得问题解答

查看资源