CoolFace
Modelpublic

Sekihugging/qwen3-4b-japanese-structured-output

sourceHugging Faceapache-2.0updated 7mo agoView on Hugging Face
0likes7downloads
Model Card

<【課題】ここは自分で記入して下さい>

概要

  • —本リポジトリは Qwen/Qwen3-4B-Instruct-2507 をベースに QLoRA (4-bit, Unsloth) で微調整した LoRA アダプタ(差分重み)を収めます。ベースモデル本体は含みません。

重要パラメータ(コード由来)

  • —Base model: Qwen/Qwen3-4B-Instruct-2507
  • —Training data: u-10bei/structureddatawithcotdataset512v2
  • —Max sequence length: 512
  • —Epochs: 1
  • —Learning rate: 2e-05
  • —LoRA: r=64, alpha=128
  • —Method: QLoRA (4-bit) via bitsandbytes + unsloth pipeline
  • —目標実行時間(ノートブック変更済み): TARGET_HOURS = 1.5(時間)
  • —実行前の step 時間推定試行回数: n = 7(estimatestep_time)
  • —trainer に反映される推定最大ステップ数は実測 avg_step から自動設定されます

入出力(生成されるファイル)

  • —OUTLORADIR(例): /content/lorastructevaltqwen34b ← 実行時の変数に合わせて変更
  • —保存される最低限のファイル:
  • —adapter_config.json
  • —adaptermodel.safetensors(または adaptermodel.bin)
  • —tokenizer 関連ファイル(必要に応じてコピーされます)

必須依存パッケージ(ノートブック内インストール指定)

  • —numpy==2.0.2
  • —pandas==2.2.2
  • —datasets==4.3.0
  • —trl==0.24.0
  • —transformers==4.56.2
  • —accelerate==1.1.0
  • —peft==0.13.2
  • —bitsandbytes==0.45.0
  • —unsloth-zoo==2025.12.7
  • —unsloth==2025.12.7
  • —(xformers は optional)

実行手順(Colab 推奨)

  1. 1.Colab のランタイムを GPU(T4 想定)に設定。必要なら Runtime > Factory reset。
  2. 2.ノートブック先頭の Step 1 セルを上から順に実行(依存関係のインストール)。
  3. 3.Step 2 で Hugging Face login() を実行(書き込みトークン推奨)。
  4. 4.Trainer を作成しているセルまで実行し、実行前に avgstep と estmax_steps の出力を確認する:
  5. 5.avgstep が表示され、trainer.args.maxsteps が推定値に設定されます。
  6. 6.学習を開始。TimeLimitCallback(TARGET_HOURS=1.5)が追加されており、指定時間に達すると安全に training を停止します。
  7. 7.学習終了後、OUTLORADIR を確認して adapter を取得(必要なら HF に upload)。

注意点 / 推奨事項

  • —PERDEVICETRAINBATCHSIZE、GRADACCUM、seed、OUTLORADIR、HFアップロード先 repoid 等はノートブック内で変数になっている可能性があるため、実行前に値を確認・設定してください。
  • —早期確認用に TARGET_HOURS を小さめ(例 0.01)にして動作検証することを推奨します。
  • —evalsteps / savesteps が小さいと評価・チェックポイントでオーバーヘッドが増えるため、本番実行では間隔を広げてください。
  • —Colab 環境差異で import エラーが出る場合は Runtime をリセットしてから Step1 を再実行してください。

使用例(LoRA をロードして推論)

python
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
import torch

base = "Qwen/Qwen3-4B-Instruct-2507"
adapter = "Sekihugging/<YOUR_ADAPTER_REPO>"

tokenizer = AutoTokenizer.from_pretrained(base)
model = AutoModelForCausalLM.from_pretrained(
    base,
    torch_dtype=torch.float16,
    device_map="auto",
)
model = PeftModel.from_pretrained(model, adapter)

This repository provides a **LoRA adapter** fine-tuned from
**Qwen/Qwen3-4B-Instruct-2507** using **QLoRA (4-bit, Unsloth)**.

This repository contains **LoRA adapter weights only**.
The base model must be loaded separately.

## Training Objective

This adapter is trained to improve **structured output accuracy**
(JSON / YAML / XML / TOML / CSV).

Loss is applied only to the final assistant output,
while intermediate reasoning (Chain-of-Thought) is masked.

## Training Configuration

- Base model: Qwen/Qwen3-4B-Instruct-2507
- Method: QLoRA (4-bit)
- Max sequence length: 512
- Epochs: 1
- Learning rate: 2e-05
- LoRA: r=64, alpha=128

## Usage

from transformers import AutoModelForCausalLM, AutoTokenizer from peft import PeftModel import torch

base = "Qwen/Qwen3-4B-Instruct-2507" adapter = "your_id/your-repo"

tokenizer = AutoTokenizer.frompretrained(base) model = AutoModelForCausalLM.frompretrained( base, torchdtype=torch.float16, devicemap="auto", ) model = PeftModel.from_pretrained(model, adapter)


## Sources & Terms (IMPORTANT)

Training data: u-10bei/structured_data_with_cot_dataset_512_v2

Dataset License: MIT License. This dataset is used and distributed under the terms of the MIT License.
Compliance: Users must comply with the MIT license (including copyright notice) and the base model's original terms of use.