llama2¶
- torchtune.models.llama2.llama2(vocab_size: int, num_layers: int, num_heads: int, num_kv_heads: int, embed_dim: int, max_seq_len: int, attn_dropout: float = 0.0, intermediate_dim: Optional[int] = None, norm_eps: float = 1e-05, rope_base: float = 10000.0) TransformerDecoder [源代码]¶
构建与 Llama2 模型关联的解码器。 这包括:- 令牌嵌入- num_layers 个 TransformerSelfAttentionLayer 块- 应用于变换器输出的 RMS 规范化层- 最终投影到令牌空间
- 参数:
vocab_size (int) – 词汇表中的令牌数。
num_layers (int) – 变换器解码器中的层数。
num_heads (int) – 查询头的数量。 对于 MHA,这也是键和值的头的数量
num_kv_heads (int) – 键和值的头的数量。 用户应确保 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) – 自注意力的嵌入维数
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 (float) – 旋转嵌入的基础。 默认值:10000.0
- 返回值:
Llama2 模型的实例化。
- 返回类型: