infoIntel GPU での Unsloth を使った LLM ファインチューニング

Intel GPU 上で大規模言語モデルをトレーニングおよびファインチューニングする方法を学びます。

Unslothを使えば、ローカルのIntelデバイス上でLLMのファインチューニングが可能になりました!独自のカスタムモデルをトレーニングするための開始手順については、ガイドをお読みください。

開始する前に、以下を確認してください:

  • Intel GPU: Data Center GPU Maxシリーズ、Arcシリーズ、またはIntel Ultra AIPC

  • OS: Linux(Ubuntu 22.04以上を推奨)またはWindows 11(推奨)

  • Windowsのみ: Intel oneAPI Base Toolkit 2025.2.1 をインストール(バージョン2025.2.1を選択)

  • Intel Graphicsドライバー: Windows/Linux向けの最新の推奨ドライバー

  • Python: 3.10+

Intelサポート付きでUnslothをビルドする

1

新しいconda環境を作成(任意)

conda create -n unsloth-xpu python==3.10
conda activate unsloth-xpu
2

Unslothをインストールする

git clone https://github.com/unslothai/unsloth.git
cd unsloth
pip install .[intel-gpu-torch290]
circle-info

Linuxのみ:インストール vLLM (任意) 推論のためにvLLMをインストールすることもできます 推論 および 強化学習。次に従ってください vLLMのガイドarrow-up-right.

3

環境を検証する

import torch
print(f"PyTorch version: {torch.__version__}")
print(f"XPU available: {torch.xpu.is_available()}")
print(f"XPU device count: {torch.xpu.device_count()}")
print(f"XPU device name: {torch.xpu.get_device_name(0)}")
4

ファインチューニングを開始する。

Unslothの ノートブック を直接使用するか、専用の ファインチューニング または 強化学習 ガイドを参照してください。

Windowsのみ - ランタイム構成

管理者権限でコマンドプロンプトを開き、Windowsレジストリで長いパスのサポートを有効にします:

powershell -Command "Set-ItemProperty -Path "HKLM:\\SYSTEM\\CurrentControlSet\\Control\\FileSystem" -Name "LongPathsEnabled" -Value 1

このコマンドは単一のマシンで一度だけ設定すればよく、毎回実行前に設定する必要はありません。次に:

  1. level-zero-win-sdk-1.20.2.zip をからダウンロードします GitHubarrow-up-right

  2. level-zero-win-sdk-1.20.2.zip を解凍する

  3. コマンドプロンプトで、conda環境 unsloth-xpu の下で:

例1: SFTを用いたQLoRAファインチューニング

この例では、Intel GPU上で4ビットQLoRAを使ってQwen3-32Bモデルをファインチューニングする方法を示します。QLoRAはメモリ要件を大幅に削減し、消費者向けハードウェアで大規模モデルのファインチューニングを可能にします。

例2: 強化学習 GRPO

GRPOは 強化学習 言語モデルを人間の好みに合わせるための手法です。この例では、複数の報酬関数を使って特定のXML出力形式に従うようにモデルを訓練する方法を示します。

GRPOとは何ですか?

GRPOは従来のRLHFを改善し、以下を行います:

  • より安定したトレーニングのためのグループベース正規化を使用すること

  • 複数の報酬関数をサポートして多目的最適化を可能にすること

  • PPOよりメモリ効率が良いこと

トラブルシューティング

メモリ不足(OOM)エラー

メモリ不足が発生した場合は、次の対策を試してください:

  1. バッチサイズを減らす: より低い per_device_train_batch_size.

  2. より小さいモデルを使用する: メモリ要件を減らすために、より小さいモデルから始めてください。

  3. シーケンス長を減らす: より低い max_seq_length.

  4. LoRAランクを下げる: 使用する r=8 の代わりに r=16 または r=32.

  5. GRPOの場合、生成数を減らす: より低い num_generations.

(Windowsのみ) Intel Ultra AIPC iGPU 共有メモリ

Windows上で最近のGPUドライバーを使用するIntel Ultra AIPCでは、統合GPUの共有GPUメモリは通常システムメモリの 57% になります。より大きなモデル(例: Qwen3-32B)や、より長い最大シーケンス長、大きなバッチサイズ、より大きなLoRAランクのLoRAアダプタなどをファインチューニング中に使用する場合、iGPUに割り当てられるシステムメモリの割合を増やすことで利用可能なVRAMを増やすことができます。

これを調整するにはレジストリを変更できます:

  • パス: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\MemoryManager

  • 変更するキー: SystemPartitionCommitLimitPercentage (より大きなパーセンテージに設定)

最終更新

役に立ちましたか?