Show HN: 速度80%向上、メモリ使用量50%削減、精度低下0%のLlamaファインチューニング
(github.com/unslothai)- Unslothは、ローカルでモデルを実行・学習する Unsloth Studio と、コードベースの Unsloth Core を提供しており、Windows・Linux・WSL・macOSでテキスト・音声・埋め込み・ビジョンモデルを扱える
- 学習機能は 500以上のモデル のファインチューニング・RL・事前学習をサポートし、最大2倍高速な学習、最大70%少ないVRAM、精度低下なしが中核となる性能目標
- 推論機能には、GGUF・LoRAアダプタ・safetensorsモデルの検索・ダウンロード・実行、モデルのエクスポート、ツール呼び出し、Web検索、コード実行、ローカルAPI推論エンドポイントが含まれる
- Unsloth Studioはデフォルトでlocalhostにバインドされ、
--secureはCloudflare HTTPSトンネルを使用し、-H 0.0.0.0は生ポートを外部公開できるため、APIキー保護 と--disable-toolsの使用が重要 - ライセンスは Apache 2.0 と AGPL-3.0 のデュアル構成で、CoreパッケージはApache 2.0、Studio UIのような一部のオプションコンポーネントはAGPL-3.0
Unslothが提供するもの
- Unsloth Studio (Beta) は、ローカルでモデルを実行・学習するためのWeb UI
- Unsloth Core はコードベース版で、Studioとは要件が異なる
- 開始用インストールコマンドはOSごとに提供される
- macOS、Linux、WSL:
curl -fsSL https://unsloth.ai/install.sh | sh - Windows:
irm https://unsloth.ai/install.ps1 | iex
- macOS、Linux、WSL:
推論機能
- モデルの検索・ダウンロード・実行をサポートし、対象形式には GGUF、LoRAアダプタ、safetensorsが含まれる
- モデルはGGUF、16-bit safetensors、その他の形式で保存またはエクスポートできる
- ツール呼び出し は、自己修復型ツール呼び出し とWeb検索をサポート
- コード実行では、LLMがClaude artifactsとサンドボックス環境でコードをテストできる
- API推論エンドポイント を通じて、ローカルLLMをClaude CodeやCodex toolsとともにデプロイ・実行できる
- OpenAI、Anthropicのような APIプロバイダ や、vLLM、Ollamaのようなサーバーに接続できる
- 画像、音声、PDF、コード、DOCXなどとチャットできる
- gpt-oss、Qwen3、Llama 4、Mistral、Gemma 1-3、Phi-4関連チームと直接協業し、モデル精度を改善するバグを修正したとしている
学習機能と性能
- Unslothは 500以上のモデル の学習とRLをサポート
- 最大2倍高速な学習
- 最大70%少ないVRAM
- 精度低下なし
- カスタムTritonと数学 カーネル を使用
- PyTorchとのFP8強化学習の協業事例がリンクされている
- Hugging Faceとのより高速なMoE関連の協業事例がリンクされている
- Data Recipes は、PDF、CSV、DOCXなどからデータセットを自動生成し、視覚的なノードワークフローでデータを編集できる
- 強化学習 では、GRPO、FP8などを対象に最大 80%少ないVRAM を使用すると示されている
- サポートする学習方式には、full fine-tuning、RL、pretraining、4-bit、16-bit、FP8 trainingが含まれる
- 可観測性 機能により、学習状態をリアルタイムで監視し、loss、GPU使用量、グラフのカスタマイズをサポート
- Multi-GPU 学習をサポートし、大きな改善がまもなく提供予定
インストールと実行条件
- Unsloth Studio はWindows、Linux、WSL、macOSで動作
- CPU: 現在はChatとData Recipesをサポート
- NVIDIA: RTX 30/40/50、Blackwell、DGX Spark、Stationなどで学習をサポート
- macOS: 学習、MLX、GGUF推論をすべてサポート
- AMD: ChatとDataをサポート、学習はUnsloth Coreを使用、Studio対応は近日提供予定
- Multi-GPU: 現在利用可能で、大型アップグレードを予定
- Studioの実行コマンドは
unsloth studio -p 8888 - Dockerイメージは unsloth/unsloth コンテナとして提供
- Unsloth Core のインストールは
uvとPython 3.13ベースの例が示されている- Linux、WSL:
uv venv unsloth_env --python 3.13の後にuv pip install unsloth --torch-backend=auto - Windows: Python 3.13と
astral-sh.uvをインストール後、同様の方法でインストール - Windowsで
pip install unslothは、PyTorchがインストール済みの場合のみ動作
- Linux、WSL:
- AMDおよびIntel GPUのインストールは、それぞれ AMD Guide、Intel Guide に従う
リモートアクセスとセキュリティ条件
- デフォルトでは
unsloth studioは 127.0.0.1 にバインドされ、現在のマシンからのみアクセス可能 --secureは無料のCloudflare HTTPSリンク経由でのみ提供される- Studioはlocalhostのまま維持される
- トンネルが開始できない場合はフェイルクローズで動作し、生ポートを公開しない
-H 0.0.0.0はすべてのネットワークインターフェースに生ポートをバインドする- ネットワーク上のどこからでもアクセス可能になるため、信頼できるネットワークでのみ使うべき
- Web検索、Python、ターミナルでのコード実行といったサーバー側ツールはユーザー権限で実行され、デフォルトで有効
- サーバーにアクセスでき、APIキーを持つ人はそのマシン上でコードを実行できるため、APIキーは非公開に保ち、Studioを公開する際は
--disable-toolsの使用が必要
無料ノートブックと対応モデル例
- 無料の Unsloth Studio notebook で、Web UIからモデルを実行・学習できる
- 提供されているノートブック例では、モデルごとの性能・メモリ削減値も示されている
- Gemma 4 (E2B): 1.5倍高速、メモリ50%削減
- Qwen3.5 (4B): 1.5倍高速、メモリ60%削減
- gpt-oss (20B): 2倍高速、メモリ70%削減
- gpt-oss (20B): GRPO: 2倍高速、メモリ80%削減
- Llama 3.1 (8B) Alpaca: 2倍高速、メモリ70%削減
- Orpheus-TTS (3B): 1.5倍高速、メモリ50%削減
- Kaggle、GRPO、TTS、埋め込み、Vision向けノートブック一覧も別途提供
- 全モデルは Unsloth Catalog、全ノートブックは Unsloth notebooks で確認できる
最近の機能項目
- Connections: OpenAI、AnthropicのようなAPIプロバイダや、vLLM、Ollamaのようなサーバーへの接続をサポート
- MTP: Qwen3.6 MTPの実行をサポートし、ハードウェアごとのMTP設定を自動指定
- Qwen3.6: Qwen3.6-35B-A3BをUnsloth Studioで学習・実行可能
- Gemma 4: Googleの新モデルをUnslothで直接実行・学習可能
- MoE LLM: DeepSeek、GLM、Qwen、gpt-oss向けに12倍高速な学習と35%少ないVRAMを提示
- Embedding models: 埋め込みファインチューニングを約1.8〜3.3倍高速化してサポート
- 7x longer context RL: 新しいバッチングアルゴリズムにより、他設定比で7倍長いコンテキストRLを提供
- 500K Context: 80GB GPUで20Bモデルを50万超のコンテキストで学習可能
- FP8 & Vision RL: コンシューマー向けGPUでFP8とVLM GRPOを実行可能
ライセンスと基盤プロジェクト
- Unslothは Apache 2.0 と AGPL-3.0 のデュアルライセンスモデルを採用
- 中核のUnslothパッケージは Apache 2.0 を維持
- Unsloth Studio UIのような一部のオプションコンポーネントには AGPL-3.0 を適用
- プロジェクトでは llama.cpp、Hugging Faceの transformers、TRL、PyTorch、Torch AO、NVIDIA NeMo DataDesigner などに言及している
1件のコメント
Hacker News のコメント
コードを自分で動かしたわけではないが、これがどう可能なのかよく分からない
PyTorchで QLoRA Llama-2-70B のファインチューニングをプロファイルしてみると、実行時間の大半はMLP層の大きな行列乗算が占め、そこにアテンションが少し加わる構造だった
内部的にはこのリポジトリもMLPには
torch.matmul()、アテンションにはflash_attn_func()を呼んでいて、HuggingFaceと同じ経路を使っているように見えるのだが、どうしてこれほど大幅に速くできるのか疑問Tritonカーネルはいくつかあるものの、ボトルネックの大半であるMLPやアテンションにはTritonがなさそうに見える
関数のインライン化やメモリ最適化のような単純な改善にも触れていて、こうした部分は十分に最適化の余地がある
ただ、そのメリットがクローズドソースの「pro」版に残り続けるのかはよく分からない
取りやすい成果なら、オープンソース実装が近いうちに取り込む可能性は高い
ここでの価格への批判はいったん無視して、初期段階のデータベース企業で働いたことのある営業担当者かソリューションエンジニアをすぐ探し、数千GPUを持つハイエンド顧客にコールドコールを始めるとよいと思う
これを売るなら、20万〜30万ドル以上の B2B取引 が最も可能性の高い道に見える
興味のある人向けに、すべての最適化内容を扱った新しいブログ記事をたった今公開した
完全に再現可能なベンチマークも59件ある: https://unsloth.ai/blog/mistral-benchmark
結果が有望に見えるので、自分でも使ってみたい
性能ベンチマークに関する質問だが、なぜ 2 GPUとDDP を使ったすべての結果が単一GPUより長くかかっているのか気になる
どちらのベンチマークも1回の学習エポックで同じ量の作業をしているので、こうした逆スケーリングは意外
まず、DDP自体にオーバーヘッドがある。各学習ステップごとにGPU0とGPU1が勾配をGPU0へ渡しながら同期しなければならないため
次に、HuggingFaceは非効率なデータ移動のためDDPにあまり最適化されていないようで、この部分を修正した。興味深いことに、単一GPUでも速くなった
こうしたさまざまな試みを整理した年表があるとよい。派生が多くなりすぎて、かなり前に流れを見失った
自己申告の指標をそのまま正解のように受け入れない限り、かなり大きな作業になりそう
それでさえ、常にハードウェアと利用範囲による条件が付く
十分に有用なものにするには、複数のマシン構成とベンチマークを備えたCI/CDパイプライン、そしてその結果を合理的に伝える方法が必要
誰かが実現できれば、本当に欠かせない存在になるはず
https://colab.research.google.com/drive/1AOuhMVILE06mD-Go7-R... でブログ記事を書いているところで、自分が行ったすべての変更を段階的に示し、時間計測とメモリ削減も一緒に入れている
興味があれば、完成次第投稿する
これは PyTorch Labs のSamやllama2最適化と比べてどうなのか気になる
https://github.com/pytorch-labs/segment-anything-fast
https://github.com/pytorch-labs/gpt-fast
今後、より高速な推論も計画している
ChilleeのGPT Fastを見たが、本当にものすごく速い
少し関連して、P100やP40 を使う価値がまだあるのか気になる
1つ買おうと思っていたが、Pascalはますます多くのプロジェクトでサポート対象外になっているように見える
技術的にはコードを実行できるかもしれないが、Triton関連の変更を取り除くよう修正する必要がある
とても興味深そうだが、なぜ最大の高速化版をエンタープライズ専用にしているのか分からない
FreeとPaidプランだけに性能差を設け、Enterpriseはサポートのような要素で差別化するほうが筋が通っている気がする
こういうことはすべて初めてなので、実際にやりながら作っているところ
2018年以降のGPUに言及していたが、なぜ例えば 1080 Ti では動作しないのか気になる
ハードウェア仕様をざっと見るとCUDA 8以上をサポートしているようで、ここでは7.5とされている
誰かもう少し説明してくれないだろうか?
主な理由は、Turing以降で Tensor Cores が提供され、行列乗算がTensor Coresベースに変わったため