LoRA-JP — 日本語ドメイン適応ファインチューニング
LoRA-JP — Japanese Domain LoRA Fine-tuning Pipeline
日本語業務ドキュメントに対するQLoRA/LoRAファインチューニングを再現性高く回すパイプライン。Unsloth+TRLで学習を高速化し、vLLMの動的LoRAアダプタ機能でホットスワップ可能なサービング基盤を内部検証する社内R&Dプロジェクト。
ライブデモ
実際のアプリケーション画面のプレビュー
Training curve
VRAM usage
base weights
16.4 GB (4bit)
adapters + kv
31.6 GB
Checkpoint registry
internal benchmark · 社内検証| ckpt | base model | dataset | adapter | F1 | status |
|---|---|---|---|---|---|
| ckpt-4212 | Qwen2.5-32B | jp-legal-42k | 148 MB | 0.884 | deployed |
| ckpt-4198 | Llama-3.1-70B | jp-medical-18k | 312 MB | 0.871 | eval |
| ckpt-4180 | Qwen2.5-32B | jp-finance-26k | 148 MB | 0.852 | deployed |
| ckpt-4155 | Phi-3-14B | jp-customer-94k | 82 MB | 0.818 | archive |
| ckpt-4142 | Qwen2.5-32B | jp-legal-42k (v1) | 148 MB | 0.806 | archive |
Domain benchmark
base vs tunedHot-swap adapter
live課題
業務固有の略語・社内用語・書式に対する汎用LLMの応答品質は低く、プロンプトエンジニアリングだけでは補いきれない。一方でフルファインチューニングはVRAMとコストが過大で、小規模な社内実験には不向きだった。
ソリューション
UnslothによるQLoRA(4bit量子化+LoRA)で単一A100 40GB上でも実験可能なパイプラインを構築。TRLのSFTTrainerとDPOTrainerで教師あり+選好学習を統合、WandBで損失とサンプル出力を追跡。生成物はvLLMのdynamic LoRA loadingで複数アダプタを同時サービングする。
成果
- 同一ハードウェアで学習スループットを1.9倍に改善(Unsloth vs 素のHF)
- 社内評価セットでタスク精度+14%を記録(内部ベンチマーク)
- vLLMホットスワップで再起動なしにアダプタを3種同時公開
- 学習ジョブの設定をYAMLに集約しPRレビュー可能に
Measured Impact
学習スループット
1.9x
vs HF標準
社内タスク精度
+14%
内部評価
同時アダプタ数
3
vLLM dynamic
学習コスト
A100 40GB x1
単一GPU
What it does
学習
QLoRA 4bit
bitsandbytes+PEFTでVRAM消費を最小化。
選好学習
TRL DPOTrainerで好ましい応答を学習。
サービング
動的LoRA切替
vLLMホットスワップで再起動なし切替。
複数アダプタ多重化
同一ベースモデルで3系統のアダプタ同時公開。
System Layers
Layered architecture showing components, responsibilities, and data flow.
Layer
データ層
学習用ペアをParquetで版管理。
Layer
学習層
QLoRAでVRAM節約しつつ選好学習まで統合。
Layer
サービング層
複数アダプタを同一ベースモデルで多重化。
How we built it
データ設計
SFT/DPO用のプロンプト・応答ペアを設計。
Deliverables
- スキーマ
- サンプル500件
学習パイプライン
Unsloth+TRLでジョブをYAML化。
Deliverables
- 学習ジョブYAML
- 再現スクリプト
評価接続
Kotobaハーネスと自動連携。
Deliverables
- CIジョブ
- 差分レポート
サービング検証
vLLMでアダプタ同時提供の負荷試験。
Deliverables
- 負荷試験レポート
- 運用手順書
Delivery Timeline
- Phase 1In Progress2026-05
データ前処理
社内文書をSFT/DPO形式に変換するETLを整備。
- Phase 2Planned2026-06
Unsloth学習基盤
QLoRA学習ジョブをKubernetesで再現可能化。
- Phase 3Planned2026-07
vLLMホットスワップ
dynamic LoRA loadingを本番類似環境で検証。
- Phase 4Planned2026-09
評価ループ統合
Kotoba評価ハーネスと接続し回帰テスト化。
Who built it
Roles
- MLエンジニア (リード)
- データエンジニア
Tools & Platforms
Backend
Infrastructure
Other