Source: https://ailoot.ai/docs/ja/how-it-works/
Canonical: https://ailoot.ai/docs/ja/how-it-works/
Language: ja

[はじめに](https://ailoot.ai/docs/ja/) 

# 仕組み

[Markdown](https://ailoot.ai/docs/ja/how-it-works/index.md)

プログラムとモデルの間で、リクエストがどのように処理されるか。

OpenAI、Anthropic、Googleへ直接送る場合と同じように、Ailoot APIへリクエストを送信します。Ailootがキーと残高を検証し、リクエストをモデルに渡し、同じ形式でレスポンスを返して、実際の使用量に基づき残高から差し引きます。

<em>01</em><strong>リクエスト</strong>クライアントが、キーsk-…を使ってapi.ailoot.aiへリクエストを送信

<em>02</em><strong>検証と仮確保</strong>キー、制限値、残高を検証。レスポンスを待つ間、金額を仮確保します。

<em>03</em><strong>モデル</strong>モデルのレスポンスが、指定した形式で返されます。

<em>04</em><strong>残高の差し引き</strong>実際のトークン数に基づき一度だけ残高から差し引き、仮確保の未使用分を解放します。

## [](https://ailoot.ai/docs/ja/how-it-works/#formats)一つのキーで三つの形式

形式を決めるのはモデルではなく、リクエストのパスです。同じClaudeモデルをOpenAI Chat、OpenAI Responses、Anthropic Messagesで呼び出せます。レスポンスは、呼び出したパスの形式で返されます。

| 形式 | パス | 利用するクライアント |
| --- | --- | --- |
| OpenAI Chat Completions | `/v1/chat/completions` | OpenAI SDK、多くのチャットやエディター、n8n、LangChain |
| OpenAI Responses | `/v1/responses` | Codex CLI、OpenAI Agents SDK、新しいSDKバージョン |
| Anthropic Messages | `/v1/messages` | Claude Code, Anthropic SDK, Zed, Cline |
| Gemini | `/v1beta/models/{model}:generateContent` | Gemini CLI, Google GenAI SDK |

## [](https://ailoot.ai/docs/ja/how-it-works/#money)料金処理：仮確保と一度の差し引き

- 新しいテキストリクエストの送信前に、Ailootは入力と標準的なレスポンスの見積額を、指定した上限（`max_tokens`）と使用するモデルの条件を考慮して仮確保します。計算した仮確保額が空き残高やキーの上限に収まらない場合、出力上限を引き下げられるのは、その上限を実際に守るモデルとメソッドだけです。256トークンと定められた最低出力量のいずれも下回ることはありません。出力が画像、動画、音声の場合は、結果の料金全額の仮確保を維持します。
- レスポンス後、実際の使用量に基づき一度だけ残高から差し引きます。仮確保の未使用分は、すぐに残高へ戻ります。
- レスポンスの料金が仮確保額を超えた場合、差額は空き残高から差し引かれます。残高がマイナスになることはありません。
- 最低限の仮確保に必要な残高もない場合、リクエストは送信されません。分かりやすい402エラーが返り、料金は差し引かれません。
- 結果を得られなかったエラーは課金されません。

詳細と計算例の参照先：[仮確保と残高の差し引き](https://ailoot.ai/docs/ja/billing/reserve/)。

## [](https://ailoot.ai/docs/ja/how-it-works/#errors)Request ID付きのエラー

各レスポンスには、リクエストの識別子が付与されます。ヘッダー `X-Request-ID`とエラーテキストに記載されます。エラーは、呼び出した形式のJSONで返されるため、SDKが正しく認識できます。問題が発生した場合は、Request IDを次の窓口へお送りください：[サポート](https://ailoot.ai/docs/ja/support/) 。これにより、一分でリクエストを見つけられます。

401 Unauthorized

```json
{
  "code": "API_KEY_REQUIRED",
  "error": {
    "code": "invalid_api_key",
    "message": "No API key was sent with the request. Nothing was charged. Please check that the full key is sent in the Authorization header as \"Bearer <key>\". Request ID: 3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6.",
    "param": null,
    "reason": "invalid_api_key",
    "request_id": "3b28d3de-5b02-4d07-9f3c-4b9a7d0e68d6",
    "type": "invalid_request_error"
  },
  "message": "No API key was sent with the request. Nothing was charged. …"
}
```

## [](https://ailoot.ai/docs/ja/how-it-works/#streaming)ストリームとタイムアウト

ストリーミングレスポンス（`stream: true`）はServer-Sent Eventsとして届きます。Ailootは、課金対象のテキストレスポンスを料金計算後に返します。したがって、 `stream: true` を指定すると形式はSSEのままですが、テキストは単語ごとではなく、モデルの生成終了後に一つのブロックとして届きます。準備におよそ15秒を超える場合、Chat Completions、Responses、Messagesのストリームでは、まず制御用の行 `: ping` がおよそ10秒ごとに届き、続いて `: ailoot-charged-usd …` に差し引き額が示され、データが届きます。SDKはこれらの行を読み飛ばします。

Gemini形式には制御用の行がありません。レスポンス `:streamGenerateContent` は、料金計算後に全体が届きます。推論モデルでは、クライアントのタイムアウトに余裕を持たせてください。数分かかることは正常です。

## [](https://ailoot.ai/docs/ja/how-it-works/#headers)レスポンスヘッダー

`X-Request-ID` は、すべてのレスポンスに含まれます。その他のヘッダーは、課金対象のテキストレスポンスにAilootが追加します：

| ヘッダー | 内容 |
| --- | --- |
| `X-Request-ID` | リクエストの識別子。サポートが確認に使用します。 |
| `X-Ailoot-Charged-USD` | このリクエストで差し引かれた金額（ドル） |
| `X-Ailoot-Output-Tokens` | 支払い対象となった出力トークン数 |
| `X-Ailoot-Max-Tokens-Capped` | 全額の仮確保に残高が足りなかったため、引き下げた後の出力上限 |
| `X-Ailoot-Notice-Code`, `X-Ailoot-Notice` | 出力長の上限でレスポンスが停止した場合の説明 |

制御用の行でストリームがすでに始まっている場合、これらの情報はヘッダーではなく、データの前のコメント行として届きます。

## [](https://ailoot.ai/docs/ja/how-it-works/#cache)プロンプトキャッシュ

キャッシュに対応するモデルでは、長いプレフィックス（システム指示、文書）を再送すると料金が下がる場合があります。キャッシュの読み取りと書き込みの料金が記載されるモデルカードの参照先：[カタログ](https://ailoot.ai/models/ja/)。キャッシュにヒットするかどうかはモデル開発元が決めるため、Ailootは保証しません。

ご不明な点はありますか？Request IDと状況の説明をお送りください。調査をお手伝いします。[サポートに問い合わせる](mailto:support@ailoot.ai)

## Ailoot · 企業とそのプロジェクト群





Ailootは、蓄積した運営経験、幅広い顧客基盤、安定したサービス、継続的なKPI管理を基盤としています。





企業とそのプロジェクト群：数百万の顧客、毎月数十億規模の売上。





Ailootはこの運営経験を、お客様の製品、エージェント、アプリケーション、自動化でAI機能を利用するためのAPIアクセスに活かしています。
