---
title: Model provider
description: 公開済みの agent version が動く上流 — Subako 自身のモデル、または自前の上流を使うあなたのアカウント。
sidebar:
  order: 6
---

**Model provider** は、agent version が公開先とする上流です。Workspace からは 2 種類が見えており、`model-provider list` はそれを `type` 列で区別します。

| `type` | 誰のアカウントで呼び出しが走るか | 誰が登録するか |
| --- | --- | --- |
| `platform` | Subako のアカウント。クレジット残高から引かれる | そのデプロイメントのオペレーター |
| `workspace` | あなたのアカウント。上流から請求される | あなた |

```bash
subako model-provider list
```

どちらも公開の仕方は同じで、provider の id を `--model-provider` に渡します。

## Platform provider

Subako Cloud は `Subako` というものをひとつ提供しており、どの workspace も何も登録せず、上流のキーも持たずにそれに対して公開できます。`openai_responses` を話し、3 つのモデルを提供します。

| モデル | 向いている用途 |
| --- | --- |
| `sparrow` | 単純で大量の agent タスク — 軽量なモデル |
| `crow` | 日常的なタスク。能力とコストのバランス |
| `hawk` | 複雑な推論とコーディング — 最大のモデル |

このいずれかを version 設定の `model` に書き、provider の id を `--model-provider` に渡します。

```json agent.json
{
  "system_prompt": "You are a helpful assistant.",
  "model": {
    "format": "openai_responses",
    "model": "hawk",
    "max_tokens": 8192,
    "context_window": 128000
  }
}
```

これらの呼び出しは organization のクレジット残高から、トークン単位で、モデルごとに異なるレートで引かれます — レートは [Plan と請求](/ja/concepts/plans-and-billing)にあります。Platform provider はあなたの workspace ではなくデプロイメントに属するので、更新や削除は 403 で拒否され、plan の model provider 上限にも数えられません。

:::note
セルフホストのデプロイメントが提供する platform provider は、そのオペレーターが宣言したものだけで、ひとつもないこともあります。Workspace が何に対して公開できるか、そして各 provider がどのモデル id を受け付けるかは `model-provider list` が正解です。
:::

## 自前の上流を使う

自分の上流アカウントを登録すれば、そこに直接つなげて動かせます。これらの呼び出しを Subako が課金することはありません — あなたが上流に支払います。

```bash
subako model-provider create \
  --format anthropic \
  --display-name "Anthropic production" \
  --base-url https://api.anthropic.com < key.txt
```

API キーはフラグではなく、必ず標準入力から読まれます。`--description` はより長い説明を受け取り、省略すると空です。

## Format

Format は上流が話すプロトコルであって、ブランド名ではありません。このサーバーが受け付けるものは `subako model-provider formats` が一覧します。

| Format | 想定するベース URL |
| --- | --- |
| `anthropic` | Anthropic Messages API。例: `https://api.anthropic.com` |
| `openai_responses` | OpenAI Responses 互換のエンドポイント |

これらのプロトコルのいずれかを話す上流なら何でも動きます — ホスティングされたサービス、自分で運用するゲートウェイ、互換 provider — ベース URL を選ぶのはあなただからです。

## Format は一致していなければならない

Agent version は、そのモデル設定が話す format と一致する format の provider に対してのみ公開できます。`anthropic` の設定を `openai_responses` の provider に対して公開しようとすると、公開時に拒否されます。

```json agent.json
{
  "system_prompt": "You are a helpful assistant.",
  "model": {
    "format": "openai_responses",
    "model": "your-model-id",
    "max_tokens": 8192,
    "context_window": 128000
  }
}
```

## キーはプロキシから出ない

Run が確保されるとき、engine は **モデルプロキシのバインディング** を渡されます。その確保のために新しく発行された URL と run token です。モデル呼び出しはプロキシを経由し、あなたの provider キーを保持しているプロキシがそれを付与します。

Engine がキーを持つことはありません。古い試行の token は run が再確保された瞬間に効かなくなるので、再試行された run が古い試行のままあなたのアカウントで支出を続けることはできません。

## 削除

```bash
subako model-provider delete <model-provider-id>
```

これは provider を、保存された API キーごと恒久的に削除します。すでに動いている session は残りますが、それを経由するその後の呼び出しは拒否されます。ローテーションするには、新しい provider を作り、それに対して新しい agent version を公開してください。

削除できるのは、あなたの workspace が登録した provider だけです。platform のものは 403 で拒否されます。
