> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coreweave.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Use Serverless LoRA Inference

> Bring your own custom LoRA for serving fine-tuned models on Serverless Inference.


このページでは、W\&B Serverless Inferenceで独自のカスタムLoRA アダプターを提供する方法について説明します。サポートされるベースモデルのファインチューニングしたモデルをインフラストラクチャーを管理せずにデプロイしたい開発者やML実践者を対象としています。

LoRA アダプター (Low-Rank Adaptation) を使用すると、完全な新しいモデルではなく軽量なアドオンをトレーニングおよび保存するだけで、大規模言語モデルをカスタマイズできます。これにより、カスタマイズのサイズとコストが削減されます。

LoRA アダプターをトレーニングするまたはアップロードして、ベースモデルに新しい機能を追加できます。たとえば、カスタマーサポート、クリエイティブライティング、または特定の技術分野に特化させることができます。これにより、モデル全体を再トレーニングまたは再デプロイせずに、モデルの動作を適応させることができます。

<h2 id="why-use-serverless-inference-for-loras">
  LoRA アダプターに Serverless Inference を使用する理由
</h2>

LoRA アダプター向けの Serverless Inference には、次の利点があります。

* 一度アップロードすれば、サーバーを管理せずにデプロイできます。
* アーティファクトのバージョン管理により、稼働中のバージョンをトラッキングできます。
* モデルの重み全体ではなく、小さな LoRA アダプターのファイルを差し替えることでモデルを更新できます。

<h2 id="workflow">
  ワークフロー
</h2>

大まかには、custom LoRA アダプターをサーブするには 3 つのステップがあります：

1. LoRA アダプターの重みを W\&B アーティファクトとしてアップロードします。
2. アーティファクトの URI を API のモデル名として指定します。
3. W\&B は推論のために重みを動的にロードします。

以下の例は、Serverless Inference を使用して custom LoRA アダプターモデルを呼び出す方法を示しています。以下のセクションでは、ここで参照されている LoRA アダプターをアップロードまたはトレーニングする方法について説明します。

```python theme={"system"}
from openai import OpenAI

model_name = f"wandb-artifact:///{WB_TEAM}/{WB_PROJECT}/qwen_lora:latest"

client = OpenAI(
    base_url="https://api.inference.wandb.ai/v1",
    api_key=API_KEY,
    project=f"{WB_TEAM}/{WB_PROJECT}",
)

resp = client.chat.completions.create(
    model=model_name,
    messages=[{"role": "user", "content": "Say 'Hello World!'"}],
)
print(resp.choices[0].message.content)
```

この [Getting Started ノートブック](https://wandb.me/lora_nb) を参照して、LoRA アダプターを作成し、W\&B にアーティファクトとしてアップロードする方法のインタラクティブなデモンストレーションをご覧ください。

<h2 id="prerequisites">
  前提条件
</h2>

以下が必要です。

* [W\&B APIキー](/ja/products/wandb/integrations/add-wandb-to-any-library#create-an-api-key)。
* [W\&B プロジェクト](/ja/products/wandb/track/project-page)。
* `openai` および `wandb` パッケージがインストールされた Python 3.8 以降: `pip install wandb openai`。

<h2 id="add-and-use-loras">
  LoRA アダプターを追加して使用する
</h2>

W\&B アカウントに LoRA アダプターを追加して使用を開始するには、2 つの方法があります。LoRA アダプターをトレーニングした場所に応じてタブを選択してください。

<Tabs>
  <Tab title="別の環境でトレーニングした LoRA アダプターをアップロードする">
    独自の custom LoRA アダプターのディレクトリを W\&B アーティファクトとしてアップロードします。別の環境 (ローカル環境、cloud provider、パートナーサービス) で LoRA アダプターをトレーニングした場合は、この方法を使用してください。

    この Python コードは、ローカルに保存された LoRA アダプターの重みを、バージョン管理されたアーティファクトとして W\&B にアップロードします。必須のメタデータ (ベースモデル と storage region) を含む `lora` タイプのアーティファクトを作成し、ローカルディレクトリから LoRA アダプターのファイルを追加して、推論で使用できるように W\&B のプロジェクトにログします。

    ```python theme={"system"}
    import wandb

    run = wandb.init(entity=WB_TEAM, project=WB_PROJECT)

    artifact = wandb.Artifact(
        "qwen_lora",
        type="lora",
        metadata={"wandb.base_model": "OpenPipe/Qwen3-14B-Instruct"},
        storage_region="coreweave-us",
    )

    artifact.add_dir("[PATH-TO-LORA-WEIGHTS]")
    run.log_artifact(artifact)
    ```

    <h3 id="key-requirements">
      主な要件
    </h3>

    独自の LoRA アダプターを Inference で使用するには、以下を確認してください。

    * LoRA アダプターは、[サポートされる ベースモデル](#supported-base-models)セクションに記載されているモデルのいずれかを使用してトレーニングされている必要があります。
    * LoRA アダプターが、W\&B アカウント内に `lora` タイプのアーティファクトとして PEFT 形式で保存されている必要があります。
    * レイテンシーを低く抑えるため、LoRA アダプターは `storage_region="coreweave-us"` に保存されている必要があります。
    * アップロード時には、トレーニングに使用した ベースモデル の名 (例：`meta-llama/Llama-3.1-8B-Instruct`) を含めてください。これにより、W\&B が正しいモデルとともに読み込みます。
  </Tab>

  <Tab title="W&B で新しい LoRA アダプターをトレーニングする">
    [Serverless RL](/ja/products/post-training/serverless-training) で新しい LoRA アダプターをトレーニングします。LoRA アダプターは自動的に W\&B アーティファクトになり、そのまま使用できます。

    独自の LoRA アダプターをトレーニングする方法の詳細については、[OpenPipe の ART クイックスタート](https://art.openpipe.ai/getting-started/quick-start)を参照してください。

    トレーニングが完了すると、LoRA アダプターは自動的にアーティファクトとして使用可能になります。
  </Tab>
</Tabs>

どちらの方法を使用した場合でも、LoRA アダプターをアーティファクトとして project に追加した後は、その URI をモデル名として渡すことで、任意の推論 Call から参照できます。

```python theme={"system"}
# トレーニングが完了したら、アーティファクトを直接使用します
model_name = f"wandb-artifact:///{WB_TEAM}/{WB_PROJECT}/your_trained_lora:latest"
```

```python theme={"system"}
# トレーニングが完了したら、アーティファクトを直接使用します
model_name = f"wandb-artifact:///{WB_TEAM}/{WB_PROJECT}/your_trained_lora:latest"
```

<h2 id="supported-base-models">
  サポートされるベースモデル
</h2>

LoRA アダプターは、次のいずれかのベースモデルに対してトレーニングされている必要があります。推論時に W\&B がアダプターを正しいベースモデルと組み合わせられるように、`wandb.base_model` を設定する際は正確なモデル ID の文字列を使用してください。

| モデル ID (API で使用) | 最大 LoRA アダプター rank |
| - | - |
| `google/gemma-4-26B-A4B-it` | 16 |
| `meta-llama/Llama-3.1-70B-Instruct` | 16 |
| `meta-llama/Llama-3.1-8B-Instruct` | 16 |
| `OpenPipe/Qwen3-14B-Instruct` | 16 |
| `Qwen/Qwen3.8-27B` | 16 |
| `Qwen/Qwen3.6-35B-A3B` | 16 |
| `Qwen/Qwen3.6-27B` | 16 |
| `Qwen/Qwen3-30B-A3B-Instruct-2507` | 16 |

<h2 id="pricing">
  料金
</h2>

常時稼働するサーバーや専用クラウド GPU インスタンスではなく、ストレージと実行した推論に対してのみ料金が発生します。料金は次の 2 つの要素で構成されます。

* [**ストレージ**](https://coreweave.com/forge-pricing): LoRA アダプターの重みを保存するストレージに対して課金されます。
* **推論の使用量**: LoRA アダプターのアーティファクトを使用する Call は、[標準のモデル推論](/ja/products/inference/serverless/usage-limits#account-tiers-and-default-usage-caps)と同じ料金で課金されます。
