メインコンテンツへ移動
AIチュートリアル

Breweryで自分だけのAIモデルを作る:ファインチューニング手順ガイド

このチュートリアルでは、Breweryのインストール方法、AIガイドの選択、データの準備、計算リソースの選択、テキストまたは画像モデルのファインチューニング、結果の評価、Breweryのガイド付きワークフローを使ったHugging Faceへのモデル公開方法を説明します。

Breweryで自分だけのAIモデルを作る:ファインチューニング手順ガイド

Breweryとは?

Breweryは、言語モデルや画像モデルのファインチューニングを支援するガイド付きエージェントです。ブリューマスターと呼ばれる選択したAIガイドとの会話で、作りたいものを説明します。Breweryは、目標の定義、ベースモデルの選択、データの準備、安全なハイパーパラメータの選択、トレーニングの実行、結果のテスト、完成したモデルの公開を支援します。

ブリューマスターには、Claude、OpenAI互換モデル、OpenRouter、またはOllamaやLM Studioで動作するローカルモデルを使用できます。Breweryは、Beginner、Hobbyist、Builder、Expertという経験レベルに応じて、説明やツールを調整します。

トレーニングは、自分のNVIDIAまたはAMD GPU上で実行することも、SSH経由で接続するレンタルサーバー上で実行することもできます。別の場所でトレーニングを行う場合、Breweryを実行するノートパソコンは制御プレーンとして機能すれば十分です。

主な機能

  • LoRA、QLoRA、またはフルファインチューニングで、対応するテキストモデルをファインチューニング。
  • 継続事前学習、教師ありファインチューニング、選好チューニングでテキストモデルをトレーニング。
  • スタイル、キャラクター、オブジェクト向けのQwen-Image 2.1 LoRAアダプターをトレーニング。
  • Hugging Face、ローカルファイル、またはブリューマスターで作成した例からデータをインポート。
  • プロバイダーの規約を確認したうえで、合成データや選好ペアを任意で生成。
  • 会話、ツール呼び出し、推論、RAGドキュメント、選好、未加工テキスト、完了データ、画像に対応するEmpero Trace Format(ETF)を使用。
  • トレーニング開始前に、メモリ、時間、コストを見積もり。
  • ローカル、Runpod、Vast.ai、または別のSSHサーバーでトレーニングを実行。
  • 生成されたモデルカードとライセンスファイルを含めて、アダプターまたはマージ済みモデルをエクスポート。
  • 結果を、デフォルトでは非公開設定でHugging Faceにアップロード。

Breweryをインストールする

Breweryは、GitHubリポジトリからpipでインストールします。

pip install "brewery-ai @ git+https://github.com/empero-org/brewery-ai"

次のコマンドでアプリケーションを起動します。

brewery

初回起動時、Breweryはガイド役にするAIを尋ね、そのAPIキーを要求します。認証情報は、本人だけが読み取れるローカルファイルに保存されます。セットアップでは、プロジェクトフォルダーを作成する前に、経験レベルとプロジェクト名も尋ねられます。

ローカルGPU向けのトレーニングサポートをインストールする

NVIDIA GPUでトレーニングする場合は、トレーニング用の追加機能をインストールします。このコマンドでは、CUDA対応版のPyTorchもインストールされます。

pip install "brewery-ai[train] @ git+https://github.com/empero-org/brewery-ai"

AMD GPUの場合は、まず適切なPyTorchのROCmビルドをインストールし、その後、トレーニング用追加機能付きでBreweryをインストールします。Windowsでは、pipによってAMD版PyTorchが置き換えられないよう、PIP_CONSTRAINT=constraints-windows-rocm.txtを設定したままにしてください。

Apple SiliconやCPUのみのシステムは、小規模なテスト実行に適しています。大規模モデルについては、ブリューマスターがGPUのレンタルを案内できます。

初めてのガイド付きブリューを始める

breweryを起動したら、作りたいモデルを自然言語で説明します。例えば次のように入力します。

フレンドリーな海賊のように化学を説明するチャットボット

ブリューマスターは、このアイデアを具体的なトレーニング計画に変換します。望ましい動作、利用可能なハードウェア、モデルサイズ、トレーニング方法、データ要件、推定コスト、ライセンス上の制限を考慮できます。現在のコンピューターに適切なGPUがない場合は、24 GBのGPUをレンタルし、おおよその実行コストを見積もるよう提案することもあります。

金銭の支出、ソフトウェアのインストール、外部へのデータ送信、モデルの公開を伴うすべての操作には、Brewery内での確認が必要です。AIガイドがこれらの確認を回避することはできません。また、パスワード、APIキー、トークンがチャットを通じて渡されることもありません。

Breweryのワークフローに従う

1. 目標を定義する

モデルに何をさせたいか、どのようなスタイルを使わせたいか、どのトピックを学習させたいか、どのツールや形式に対応させたいかを説明します。目的がトレーニングと評価に十分なほど具体的になるまで、ブリューマスターの質問に答え続けてください。

2. コンピューティング環境を選ぶ

brewery hardwareで現在のシステムを確認します。

brewery hardware

ローカルトレーニングの前に、Breweryは実際のGPU処理を実行します。これにより、長時間のジョブを開始する前に、ドライバーやPyTorchの問題を発見できます。リモートトレーニングの場合、BreweryはSSHサーバーの準備、必要なデータのアップロード、端末を閉じても継続するよう切り離した状態でのジョブ実行を支援します。

3. ベースモデルを選ぶ

Breweryは、Qwen3、Qwen3.5、関連するQwenアーキテクチャ、Qwen3.5 MoE、Llama 3.1から3.3、Gemma 3、Gemma 4などのテキストファミリーに対応しています。画像トレーニングでは、Qwen-Image 2.1 LoRAアダプターに対応しています。

モデルブラウザーで利用可能なベースモデルを確認します。

brewery models --modality text
brewery models --modality image
brewery models --all

ブリューマスターは、目標、ハードウェア、ライセンス要件を考慮します。また、該当する場合はゲート付きモデルへのアクセス権も確認します。

4. トレーニングデータを準備する

Hugging Faceのデータセットをダウンロードせずに検索・プレビューしたり、ローカルファイルをインポートしたり、ブリューマスターと例を作成したり、既存の画像データセットを使用したりできます。合成データの利用は任意で、指定した要件に合わせて作成されます。Breweryは生成前にプロバイダーの規約を表示します。

例えば、既存のデータセットを特定の文体に書き換えること、要件から会話を作成すること、DPO用の選好ペアを生成することをブリューマスターに依頼できます。次のコマンドでインポートしたデータをクリーンアップします。

brewery etf validate path/to/data.jsonl

プロジェクト内では、トレーニングセットはdata/_sets/に保存されます。Breweryはバックアップを保持したまま、空のレコード、重複レコード、壊れたレコードを削除できます。

5. トレーニング方式を選ぶ

各ジョブには目的があり、以前のステージから開始できます。

  • SFT:モデルに、行動、スタイル、形式、またはツール使用のパターンを学習させます。
  • CPT then SFT:生のドメインテキストから基盤モデルを学習させ、その後、会話形式でやり取りできるよう訓練します。
  • SFT then DPO:まず望ましい行動を学習させ、その後、選択した応答ペアを使って好みを調整します。

LoRAの各ステージは、次のステージに進む前に開始時の重みに統合されるため、複数の学習方式を連結しても、きれいに積み重ねられます。Breweryのpropose_training_configツールは、対応するモデルのガイドラインに基づいてハイパーパラメータを補完し、利用可能なGPUに合わせてレシピの規模を調整します。

6. 学習を実行する

推定メモリ、時間、コストを確認したうえで、提案されたレシピを承認します。学習は選択したマシン上で切り離された状態で実行され、Breweryは進捗、損失、完了予定時間を報告します。ジョブが失敗した場合、brewmasterが平易な説明と推奨される対処法を提示します。

ジョブは次のコマンドで確認できます:

brewery status
brewery status JOB

ターミナルを閉じても、切り離された学習ジョブは停止しません。プロジェクトフォルダに戻り、breweryを実行するとセッションを再開できます。

7. 結果をテストする

学習後、新しいモデルにプロンプトを入力してテストし、基盤モデルの回答と比較します。選好調整では、Breweryが各プロンプトに対して2つの候補を生成できます。ターミナルでより良い回答を選ぶことも、ガイドAIに評価基準で判定させ、その判断を抜き取り確認することもできます。

便利なセッションコマンド:

  • /status:現在のプロジェクトとジョブの状態を表示します。
  • /jobs:学習ジョブを一覧表示します。
  • /watch:実行中の処理を追跡します。
  • /level:説明レベルを変更します。
  • /usage:使用状況を表示します。
  • /help:利用可能なコマンドを一覧表示します。

8. エクスポートして公開する

結果の準備が整ったら、Breweryでアダプターまたは統合済みモデルをエクスポートし、モデルカードを生成し、関連するライセンスファイルを含め、Hugging Faceにモデルをアップロードできます。モデルカードには、学習方式、データソース、ライセンス、クレジット、学習前後のサンプルを含められます。

アップロードはデフォルトで非公開です。リポジトリを公開する前に、モデルカードとライセンス要件を確認してください。レンタルしたインフラストラクチャを使う場合は、サーバーを停止または破棄することを忘れないでください。停止したPodやインスタンスでも、ストレージ料金が発生する場合があります。

プレビュー用チェックポイントで画像LoRAを学習する

Qwen-Image 2.1のLoRAジョブでは、Breweryが学習中にプレビュー画像を生成します。ステップ0でベースラインのセットを作成し、以降はチェックポイントごとに追加のセットを作成します。すべて同じシードを使うため、視覚的な比較が容易になります。

プレビューファイルは、runs/<job>/samples/step_NNNNNN/のようなパスにダウンロードされます。各プレビューセットには対応するチェックポイントがあります。以前のチェックポイントのほうが最終結果より良く見える場合は、そのチェックポイントをパッケージ化するようbrewmasterに依頼してください。

セッション中に/galleryを使うと、ローカルの比較ギャラリーを起動できます。ギャラリーはhttp://127.0.0.1:8765/<random-token>/のようなローカルアドレスでコンピューター上に配信され、外部からはアクセスできません。新しいプレビューが届くと更新され、画像の拡大や、基盤モデルとの比較にも対応します。

高度なヒント

ガイドAIを慎重に選ぶ

最も強力なガイダンスにはClaudeが推奨されます。一方、OpenAI互換プロバイダーとOpenRouterは、より幅広いモデルを選択できます。OllamaとLM Studioはローカル実行に対応しています。良好な結果を得るには、Breweryはツール呼び出しに対応した14B以上のローカルモデルを推奨します。ネイティブのツール呼び出しに対応していないモデルでも、自動テキストプロトコルを通じて操作できます。

ガイドモデルは、次のコマンドでいつでも変更できます:

brewery setup

一貫したデータパイプラインにETFを使う

ETFは、チャット、システムプロンプト、ツールのスキーマと呼び出し、推論、RAGドキュメント、選好ペア、生テキスト、補完、画像など、さまざまな学習素材に対して1つのJSONL形式を提供します。これにより、プロジェクトの各ステージ間でデータを検証して移動しやすくなります。形式の詳細はETFドキュメントを参照してください。

ターミナルの動作を調整する

機能が限られたターミナルでは、環境変数を使ってインターフェースを簡素化したり、合成データ生成を制御したりできます:

BREWERY_AI_PLAIN_INPUT=1
BREWERY_AI_SIMPLE_PROMPTS=1
BREWERY_AI_THINKING=off
BREWERY_AI_SYNTH_WORKERS=4

BREWERY_AI_SYNTH_WORKERSには1から16までの値を指定できます。思考表示にはon、full、offを設定できます。

プロジェクト構成を理解する

Breweryプロジェクトでは、判断、データセット、ジョブ、結果、会話履歴をまとめて管理します:

my-project/
  brewery.yaml
  data/
  data/_sets/<name>/
  runs/<job_id>/
  .brewery/

パスはプロジェクトを基準に、スラッシュを使って保存されます。そのため、プロジェクトを異なるコンピューターやOS間で移動できます。ユーザー設定は~/.config/brewery-ai/、Windowsでは%APPDATA%\brewery-ai\に保存されます。

まとめ

Breweryは、モデルのファインチューニングを、ガイド付きで検証可能なワークフローに変えます。コントロールプレーンアプリケーションをインストールし、十分な能力を持つbrewmasterを選び、目的を説明し、データを準備・検証して、ハードウェアを考慮したレシピを承認すれば、Breweryが学習、テスト、エクスポート、公開を管理します。まずは小規模なSFTプロジェクトから始め、必要に応じてCPT、SFT、DPOを連結した方式や画像LoRAを試してみてください。