YAML Metadata Warning: empty or missing yaml metadata in repo card (https://huggingface.co/docs/hub/model-cards#model-card-metadata)

Tanuki-8B (OLMO Format)

このモデルは、Tanuki-8BをOLMO形式に変換したものです。

モデル概要

Tanuki-8Bは、Llama3-8Bアーキテクチャをベースとした日本語特化の大規模言語モデルです。このモデルは、Hugging Face形式からOLMO形式に変換されています。

モデル仕様

  • アーキテクチャ: LlamaForCausalLM (Llama3-8Bベース)
  • パラメータ数: 8B
  • レイヤー数: 32
  • 隠れ層サイズ: 4096
  • アテンションヘッド数: 32
  • キー・バリューヘッド数: 8 (Grouped Query Attention)
  • 中間層サイズ: 14336
  • 語彙サイズ: 65024
  • 最大シーケンス長: 8192
  • データ型: bfloat16
  • RoPE theta: 500000.0

OLMO変換プロセス

このモデルは、以下の手順でHugging Face形式からOLMO形式に変換されました:

変換の詳細

  1. アーキテクチャマッピング: Tanuki-8BはLlamaアーキテクチャ(model_type="llama")を使用しているため、既存のLlama重みマッピングが自動的に適用されました。

  2. 重み変換:

    • Hugging Face形式の重みをOLMO形式に変換
    • post_attention_layernormfeed_forward_norm のマッピングを適用
    • データ型(bfloat16)を保持
  3. 検証:

    • 変換後のモデルと元のHugging Faceモデル間でロジット比較を実施
    • 許容誤差: rtol=1e-4, atol=1e-4
    • CPU検証を推奨(GPUメモリ制約を回避)
  4. トークナイザー:

    • 元のHugging Faceトークナイザーを保持
    • 推論時は元のHugging Faceトークナイザーを使用

変換の技術的詳細

  • 重みマッピング: Llamaアーキテクチャの既存マッピングを再利用
  • データ型処理: Hugging Faceモデルのネイティブデータ型(bfloat16)を検出し、OLMOモデルも同じデータ型で構築
  • 検証プロセス: 変換精度を確保するため、ロジット比較による検証を実施

使用方法

Hugging Face Transformersでの使用

from transformers import AutoModelForCausalLM, AutoTokenizer

# モデルとトークナイザーの読み込み
model = AutoModelForCausalLM.from_pretrained("kevineen/tanuki-8b-olmo")
tokenizer = AutoTokenizer.from_pretrained("kevineen/tanuki-8b-olmo")

# テキスト生成
text = "こんにちは、"
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=100, do_sample=True, temperature=0.7)
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
print(generated_text)

チャットテンプレートの使用

このモデルには日本語チャット用のテンプレートが含まれています:

from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("kevineen/tanuki-8b-olmo")

messages = [
    {"role": "user", "content": "こんにちは!"}
]

# チャットテンプレートを適用
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
print(prompt)

ファイル構成

tanuki-8b-hf/
├── config.json                    # モデル設定
├── generation_config.json          # 生成設定
├── tokenizer_config.json           # トークナイザー設定
├── tokenizer.json                  # トークナイザーファイル
├── special_tokens_map.json         # 特殊トークンマップ
├── chat_template.jinja             # チャットテンプレート
├── model.safetensors.index.json    # モデルインデックス
├── model-00001-of-00004.safetensors # モデル重み(パート1)
├── model-00002-of-00004.safetensors # モデル重み(パート2)
├── model-00003-of-00004.safetensors # モデル重み(パート3)
└── model-00004-of-00004.safetensors # モデル重み(パート4)

注意事項

  • このモデルはOLMO形式に変換されていますが、Hugging Face Transformersで直接使用可能です
  • 推論時は元のHugging Faceトークナイザーを使用してください
  • モデルのデータ型はbfloat16です
  • 8Bパラメータモデルのため、推論には十分なメモリ(推奨: 16GB以上)が必要です

ライセンス

元のTanuki-8Bモデルのライセンスに従います。

参考文献

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