SSSSLM-JP-v1-0.6B

日本語特化の小型言語モデル(Small Language Model)です。スクラッチから学習しました。 小さいし、初めてモデルなのでかなり精度は悪いです。 というかいろいろな制約によりtrain/loss 3.05くらいで止めてるので。大規模な進展があれば次のver出すかもね。 動作確認はvLLMにてRTX 4070 SUPER 12GBでしました。

モデル概要

項目
アーキテクチャ Decoder-only Transformer (LLaMA系)
パラメータ数 ~615M (0.6B)
隠れ層次元 1536
レイヤー数 20
アテンションヘッド数 24
FFN次元 4096
語彙サイズ 32,000 (SentencePiece Unigram)
コンテキスト長 1024 tokens
位置エンコーディング RoPE
活性化関数 SwiGLU
正規化 RMSNorm

学習データ

  • 日本語 Wikipedia
  • CC-100 (Japanese)
  • 青空文庫

学習設定

  • フレームワーク: PyTorch + bitsandbytes 8-bit AdamW
  • Mixed precision: fp16
  • Gradient checkpointing: 有効
  • Batch size: 4 × gradient accumulation 16 = effective 64
  • Learning rate: 3e-4 (cosine decay + warmup 2000 steps)
  • 本バージョン: 25,000 steps(学習途中)

使用方法

注意: 本モデルはテキスト補完モデルです。チャット・指示応答には対応していません。

transformers

from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

model = AutoModelForCausalLM.from_pretrained(
    "soichi1208/SSSSLM-JP-v1-0.6B",
    device_map="auto",
    torch_dtype=torch.float16,
)
tokenizer = AutoTokenizer.from_pretrained("soichi1208/SSSSLM-JP-v1-0.6B")

inputs = tokenizer("日本の歴史について", return_tensors="pt").to(model.device)
output = model.generate(
    **inputs,
    max_new_tokens=256,
    temperature=0.8,
    top_p=0.9,
    do_sample=True,
)
print(tokenizer.decode(output[0], skip_special_tokens=True))

vLLM

vllm serve soichi1208/SSSSLM-JP-v1-0.6B --enforce-eager --max-num-seqs 8

curl http://localhost:8000/v1/completions \
  -H "Content-Type: application/json" \
  -d '{"model":"soichi1208/SSSSLM-JP-v1-0.6B","prompt":"日本の歴史について","max_tokens":256}'

制限事項

  • チャット・指示応答には対応していません
  • 有害・不正確な出力が含まれる可能性があります
Downloads last month
754
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support