Qwen2-1.5B Instruct – JAQUAD SFT (Merged, Single-File Model)

このリポジトリは マージ済み単体モデル です。
Qwen/Qwen2-1.5B-Instruct をベースに、日本語の 指示追従 / QA / 要約 を目的として softjapan/jaquad-sft で SFT(LoRA)学習し、merge_and_unload() により LoRA を統合した重みを公開しています。PEFT は不要で、そのまま AutoModelForCausalLM で読み込めます。

用途(想定): 日本語の要約、抽出型QA、フォーマット遵守(JSON/箇条書きなど)、敬体・常体のスタイル制御 など
非推奨: 医療/法務など厳密な事実性が必要な用途、最新ニュースの断定回答、攻撃的/差別的な出力の誘発


✅ クイックスタート(推論)

from transformers import AutoTokenizer, AutoModelForCausalLM

model_id = "softjapan/qwen2-jaquad-lora-merged"  # ← あなたの公開IDに置換
tok = AutoTokenizer.from_pretrained(model_id, use_fast=True)
if tok.pad_token is None:
    tok.pad_token = tok.eos_token

model = AutoModelForCausalLM.from_pretrained(model_id, device_map="auto", dtype="auto").eval()

prompt = """### 指示
次の文章を40字以内で要約してください。固有名詞は保持。

### 入力
日本の首都は東京で、経済・文化・政治の中心として発展してきた。

### 応答
"""
inputs = tok(prompt, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=160, do_sample=True, temperature=0.7, top_p=0.95)
print(tok.decode(out[0], skip_special_tokens=True))

学習時のフォーマットは「### 指示 / ### 入力 / ### 応答」。 Chat Template(chat_template.jinja)も同梱していますが、上記の 指示テンプレでそのまま利用できます。


🔎 推奨プロンプト例

抽出型QA(最短回答のみ)

### 指示
次の文章から質問に対する最短の答えのみを返してください。

### 入力
段落:「江戸幕府を開いたのは徳川家康である。1603年、家康は征夷大将軍に任ぜられた。」
質問:「江戸幕府を開いたのは誰?」

### 応答

構造化(JSON)

### 指示
以下テキストから日時・場所・イベント名を抽出し、JSONで返してください。
キーは "date","place","title"。

### 入力
2025年10月12日、渋谷の○○ホールでAIカンファレンス「GenAI EXPO 2025」が開催されます。

### 応答

🧰 モデル詳細 / Model Details

  • Base: Qwen/Qwen2-1.5B-Instruct
  • Type: Causal LM(Merged weights / 単体読み込み)
  • Language: Japanese (ja)
  • License (このリポジトリ): Apache-2.0 ※ ベースモデル/データセットのライセンスは各配布元に従ってください。

ファイル構成(主要)

  • model.safetensors … 統合済みのモデル重み
  • config.json / generation_config.json … モデル設定/生成デフォルト
  • tokenizer.json / tokenizer_config.json / special_tokens_map.json / vocab.json / merges.txt
  • chat_template.jinja … 将来の Chat 形式に利用可能

🏋️ 学習と統合の概要 / Training & Merge

  • データ: softjapan/jaquad-sft(日本語 QA/指示追従 SFT 用)

  • 前処理:

    • Tokenizer: use_fast=True, pad_token = eos_token

    • max_length=1024, padding="max_length"

    • 入力整形:

      ### 指示
      {instruction}
      
      ### 入力
      {input}
      
      ### 応答
      {output}
      
  • LoRA(学習時):

    • r=8, alpha=16, dropout=0.05
    • target_modules=["q_proj","k_proj","v_proj","o_proj"]
    • bias="none"
  • 最適化:

    • Optimizer/Scheduler: AdamW(Transformers 既定), cosine
    • lr=2e-4, warmup_ratio=0.03, weight_decay=0.0
    • per_device_train_batch_size=2, gradient_accumulation_steps=8
    • bf16=True(対応GPU), gradient_checkpointing=True, use_cache=False
  • 統合: 学習後に merge_and_unload() でベースに LoRA を統合(単体モデル化)

実装は Hugging Face Trainer + DataCollatorForLanguageModeling(mlm=False) を使用。 Pad トークンは損失から除外(-100 マスク)。


📊 評価 / Evaluation

  • 学習時は eval_loss を監視(必要に応じて perplexity = exp(eval_loss))。
  • 指示遵守・抽出精度・出力の一貫性は開発用プロンプトで定性確認
  • 固定ベンチマーク値は環境差が大きいことから本カードでは掲載しません。再評価を推奨します。

⚠️ 制限・リスク / Limitations & Risks

  • 事実性: 最新情報や専門領域では誤答の可能性。
  • 安全性: 不適切・攻撃的・偏見を含む出力の可能性。
  • 分布外入力: 学習分布から外れた入力では品質が低下。

推奨事項:

  • 高リスク用途では 人手レビュー / 外部検証 / RAG(検索拡張) / プロンプト制約 を併用。
  • 運用時は ログ監査レート制御 を導入。

🌱 環境影響(参考) / Environmental Impact

  • 単一〜少数GPU(T4/A10/A100 等)で数時間〜十数時間の学習を想定。
  • 省電力のため gradient checkpointing / bf16 を活用。
  • 具体的な排出量は GPU/時間/地域に依存(MLCO2 などでの試算を推奨)。

📚 引用 / Citation

@software{qwen2_1_5b_instruct_jaquad_sft_merged_2025,
  title  = {Qwen2-1.5B Instruct – JAQUAD SFT (Merged)},
  author = {softjapan},
  year   = {2025},
  url    = {https://huggingface.co/softjapan/qwen2-jaquad-lora-merged}
}

🧑‍💻 作者・連絡先 / Authors & Contact

  • Maintainer: softjapan
  • Issues / PR: このリポジトリの「Issues」「Pull Requests」をご利用ください。

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

Model tree for softjapan/qwen2-jaquad-lora-merged

Finetuned
(106)
this model