DiffLlama-1B

DiffLlama-1Bは、フルスクラッチで約100Bトークン事前学習を行った約1Bパラメータの大規模言語モデルです。このモデルは、従来のTransformerアーキテクチャに対する改良として提案された「Differential Transformer」の概念を取り入れています。特に、Differential AttentionメカニズムをLlamaモデルに適用することで、注意力の焦点を関連性の高いコンテキストに向け、ノイズを低減する設計となっています。

モデルの特徴

  • アーキテクチャ: LlamaモデルにDifferential Attentionメカニズムを統合。
  • パラメータ数: 10億(1B)パラメータ。
  • Patch-level Training: 学習コスト削減技術Patch-level Trainingを使用。
  • Muon Optimizer: AdamWより収束が早いOptimizerを使うことで学習効率を2倍に\(つまり実質200Bトークン学習している\)。実装はこちら

学習データ

DiffLlama-1Bは以下のデータセットを用いて、合計約1000億(100B)トークンで1エポックの学習を行いました。

  • hotchpotch/fineweb-2-edu-japanese: 約900億(90B)トークン。
  • HuggingFaceFW/fineweb-edu: 約100億(10B)トークン。

使用方法

以下のコードスニペットは、DiffLlama-1Bモデルを使用してテキスト生成を行う方法を示しています。

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline, set_seed

model = AutoModelForCausalLM.from_pretrained("kajuma/DiffLlama-1B", torch_dtype=torch.bfloat16, device_map="auto")
tokenizer = AutoTokenizer.from_pretrained("kajuma/DiffLlama-1B")
generator = pipeline("text-generation", model=model, tokenizer=tokenizer)
set_seed(123)

text = generator(
    "おはようございます、今日の天気は",
    max_length=30,
    do_sample=True,
    pad_token_id=tokenizer.pad_token_id,
    num_return_sequences=3,
)
for t in text:
    print(t)

ライセンス

このモデルはApache License 2.0の下で提供されています。

謝辞

本モデルの開発にあたり、株式会社ZEALSが提供する『生成AIエンジニア向けGPU無償提供プログラム』の支援を受けました。

Downloads last month
139
Safetensors
Model size
1.39B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support