LoRA アダプターに Serverless Inference を使用する理由
LoRA アダプター向けの Serverless Inference には、次の利点があります。- 一度アップロードすれば、サーバーを管理せずにデプロイできます。
- アーティファクトのバージョン管理により、稼働中のバージョンをトラッキングできます。
- モデルの重み全体ではなく、小さな LoRA アダプターのファイルを差し替えることでモデルを更新できます。
ワークフロー
大まかには、custom LoRA アダプターをサーブするには 3 つのステップがあります:- LoRA アダプターの重みを W&B アーティファクトとしてアップロードします。
- アーティファクトの URI を API のモデル名として指定します。
- W&B は推論のために重みを動的にロードします。
前提条件
以下が必要です。- W&B APIキー。
- W&B プロジェクト。
openaiおよびwandbパッケージがインストールされた Python 3.8 以降:pip install wandb openai。
LoRA アダプターを追加して使用する
W&B アカウントに LoRA アダプターを追加して使用を開始するには、2 つの方法があります。LoRA アダプターをトレーニングした場所に応じてタブを選択してください。- 別の環境でトレーニングした LoRA アダプターをアップロードする
- W&B で新しい LoRA アダプターをトレーニングする
独自の custom LoRA アダプターのディレクトリを W&B アーティファクトとしてアップロードします。別の環境 (ローカル環境、cloud provider、パートナーサービス) で LoRA アダプターをトレーニングした場合は、この方法を使用してください。この Python コードは、ローカルに保存された LoRA アダプターの重みを、バージョン管理されたアーティファクトとして W&B にアップロードします。必須のメタデータ (ベースモデル と storage region) を含む
lora タイプのアーティファクトを作成し、ローカルディレクトリから LoRA アダプターのファイルを追加して、推論で使用できるように W&B のプロジェクトにログします。主な要件
独自の LoRA アダプターを Inference で使用するには、以下を確認してください。- LoRA アダプターは、サポートされる ベースモデルセクションに記載されているモデルのいずれかを使用してトレーニングされている必要があります。
- LoRA アダプターが、W&B アカウント内に
loraタイプのアーティファクトとして PEFT 形式で保存されている必要があります。 - レイテンシーを低く抑えるため、LoRA アダプターは
storage_region="coreweave-us"に保存されている必要があります。 - アップロード時には、トレーニングに使用した ベースモデル の名 (例:
meta-llama/Llama-3.1-8B-Instruct) を含めてください。これにより、W&B が正しいモデルとともに読み込みます。
サポートされるベースモデル
LoRA アダプターは、次のいずれかのベースモデルに対してトレーニングされている必要があります。推論時に W&B がアダプターを正しいベースモデルと組み合わせられるように、wandb.base_model を設定する際は正確なモデル ID の文字列を使用してください。