メインコンテンツへスキップ
LoRA (Low-Rank Adaptation) を使用すると、完全な新しいモデルではなく、軽量な「追加モジュール」だけをトレーニングして保存することで、大規模言語モデルを目的に合わせて調整できます。これにより、カスタマイズをより迅速かつ低コストで行え、デプロイも容易になります。 LoRA をトレーニングするかアップロードすることで、ベースモデルに新しい機能を持たせることができます。たとえば、顧客サポート、クリエイティブライティング、特定の技術分野向けに特化させることができます。これにより、モデル全体を再トレーニングしたり再デプロイしたりすることなく、モデルの挙動を調整できます。

LoRAs で W&B Inference を使用する理由

  • 一度アップロードすれば、すぐにデプロイできます。サーバー管理は不要です。
  • アーティファクト のバージョン管理により、どのバージョンが本番稼働中かを正確にトラッキングできます。
  • モデル全体の重みではなく、小さな LoRA ファイルを差し替えるだけで、数秒でモデルを更新できます。

ワークフロー

  1. LoRA の重みを W&B アーティファクトとしてアップロードします
  2. API で、モデル名としてアーティファクト URI を指定します
  3. W&B が推論時に重みを動的に読み込みます
以下は、W&B Inference を使用してカスタム LoRA モデルを呼び出す例です。
LoRA を作成し、それをアーティファクトとして W&B にアップロードする方法を対話形式で示したデモについては、このスタートガイドノートブックをご覧ください。

前提条件

以下が必要です。

LoRA を追加して使用する方法

LoRA は、2 つの方法で W&B アカウントに追加して使用を開始できます。
独自のカスタム LoRA ディレクトリを W&B アーティファクト としてアップロードします。これは、LoRA を別の環境 (ローカル環境、cloud provider、またはパートナーサービス) でトレーニングした場合に最適です。この Python コードは、ローカルに保存された LoRA の重みを、バージョン管理された アーティファクト として W&B にアップロードします。必要なメタデータ (ベースモデル と storage region) を含む lora タイプの アーティファクト を作成し、ローカルディレクトリから LoRA ファイルを追加して、推論で使用できるよう W&B プロジェクトにログします。

主な要件

独自の LoRA を Inference で使用するには:
  • LoRA は、Supported Base Models section に記載されているモデルのいずれかを使用してトレーニングされている必要があります。
  • LoRA は、W&B アカウント内に lora タイプの アーティファクト として PEFT 形式で保存されている必要があります。
  • 低レイテンシを実現するため、LoRA は storage_region="coreweave-us" に保存されている必要があります。
  • アップロード時には、トレーニングに使用した ベースモデル の名 (たとえば meta-llama/Llama-3.1-8B-Instruct) を含めてください。これにより、W&B は適切なモデルで読み込めます。
LoRA が アーティファクト としてプロジェクトに追加されたら、次のように推論 call で アーティファクト の URI を使用します。

サポートされているベースモデル

Inference は現在、以下の LLM をサポートしています (wandb.base_model には以下の文字列を正確に使用してください) 。今後さらに多くのモデルに対応予定です。

料金

Serverless LoRA Inference はシンプルでコスト効率が高く、常時稼働のサーバーや専用 GPU インスタンスではなく、実際に使用したストレージと実行した推論分に対してのみ料金が発生します。
  • ストレージ - LoRA の重みの保存は低コストで、特に独自の GPU インフラストラクチャーを維持する場合と比べると安価です。
  • 推論使用量 - LoRA アーティファクトs を使用する call には、標準的なモデル推論と同じ料金率が適用されます。カスタム LoRA の提供に追加料金はかかりません。