Source: https://ailoot.ai/models/ja/openai-gpt-4o-mini-u003a-batch/
Canonical: https://ailoot.ai/models/ja/openai-gpt-4o-mini-u003a-batch/
Language: ja

# OpenAI: GPT-4o-mini (batch)

[Markdown](https://ailoot.ai/models/ja/openai-gpt-4o-mini-u003a-batch/index.md) · [JSON](https://ailoot.ai/models/ja/openai-gpt-4o-mini-u003a-batch/facts.json)

## [OpenAI: GPT-4o-mini (batch)](https://ailoot.ai/models/ja/openai-gpt-4o-mini-u003a-batch/)

GPT-4o Miniは、文書からの抽出、簡潔な回答、アプリケーションのツール呼び出しなど、対象を絞ったテキストと画像のタスクを扱います。128,000トークンのコンテキストとStructured Outputsにより、結果を明確に定義した繰り返しのワークフローに対応します。

- [**Ailoot Ultra · バッチ** `POST /v1/batches` `openai/gpt-4o-mini:batch`](https://ailoot.ai/models/ja/openai-gpt-4o-mini-u003a-batch/#method-0)

モデルについて

この説明はモデルの機能を紹介するものです。Ailootで利用できる入力、出力、オプションは、選択したメソッドごとに以下に記載されています。

GPT-4o Miniは、対象を絞った作業に対応する、OpenAIのGPT-4oファミリーの小型モデルです。テキストと画像を受け取り、Structured Outputsを含むテキストを出力します。フィールドの抽出、提供された参照資料からの返信作成、大きな処理の範囲を限定した工程など、明確な依頼に対して簡潔な回答をアプリケーションが必要とする場合に役立ちます。

サポートの回答では、受信したメッセージ、関連するポリシーの抜粋、会話ですでに確認された事実を提供してください。短い返信案を求め、送信者からまだ必要な情報を示します。文書からの抽出では、フィールドを定義し、値がない場合の扱いを説明し、各結果を原資料に結び付けるラベルを保持します。同じ方法で、分類、編集した文章、小さなコード変更の説明も作成できます。モデルを、周囲のアプリケーションのロジックの代わりとして扱う必要はありません。

開発元は、コンテキストウィンドウを128,000トークン、最大出力を16,384トークン、知識の期限を2023年10月1日としています。原資料、会話、生成される出力が、このコンテキストを一緒に使います。前の重要な事実を見える状態にし、必要な最終成果物を示してください。GPT-4o Miniは独立した小型モデルであり、完全版GPT-4oの出力の長さを変えるモードではありません。両モデルが同じ仕様を持つ部分でも、Mini自身の識別名と機能に基づいてタスクを決めます。

画像として、スクリーンショット、文書のページ、写真、図を提供できます。OpenAIの画像理解ワークフローは、PNG、JPEG、WebP、アニメーションでないGIFを受け付け、このファミリーの詳細度はlow、high、autoです。高い詳細度では、開発元のタイル分割に基づく画像処理が行われます。重要なラベルを読みやすく正しい向きにし、画像のどの部分を回答に使うかを説明してください。細かな空間関係、正確な物体数、特殊な投影の画像、一部の非ラテン文字は、文書化された難点です。対象を絞った質問にすると、画像についての回答を元の根拠と比較しやすくなります。OpenAIの文書化された画像理解ワークフローでは、リクエスト全体のペイロードの上限は512 MBで、最大1,500枚の画像を含められます。画像とテキストは、モデルのコンテキストにも収まる必要があります。

開発元のファイルのワークフローは、画像理解に対応するモデルへ、PDFから抽出したテキストとページの画像を渡します。他のオフィスファイルやテキストファイルからは、抽出したテキストが提供されます。そのため、埋め込みの画像やグラフが重要な場合は、PDF表現が必要です。スプレッドシートの情報補完は、各シートの先頭最大1,000行を使います。各ファイルは50 MB未満で、リクエスト内の合計上限は50 MBです。Chat CompletionsはPDFのファイルパートを受け付け、文書化されたResponsesワークフローは、より広い種類のファイル形式を受け付けます。抽出に使う資料では、ページ、行、節の識別子を保持してください。

ストリーミングはテキストを順次返します。Structured Outputsは、完成した回答をサポート対象のJSON Schemaのサブセットに制約します。一方、JSONモードのリクエストが保証するのは、有効なJSONだけです。必要なフィールドと許可する値を示し、根拠がない場合の明示的な表現も含めてください。アプリケーションでは、拒否と未完了の回答を別に処理する必要があります。スキーマは成果物を次の段階に適した形式にできますが、値は空のフィールドを架空の情報で埋めず、実際の原資料を反映する必要があります。

GPT-4o Miniは、関数呼び出しと、ウェブ検索、ファイル検索、コードインタープリター、MCP接続を使う開発元のツール中心のワークフローに対応します。利用可能な関数を説明し、アプリケーションが依頼された操作を実行して観測を返してから、モデルに後続の回答を作らせてください。OpenAIは、設定されたResponsesワークフローで使う独立した画像生成ツールもサポートします。そのツールが作る画像は別の成果物であり、文書化されたモデルの直接の出力はテキストです。検索やツールの使用は設定して行う処理であり、すべての返信が最新の情報を参照した証拠ではありません。

Predicted Outputsは、ほぼ既知の文書やコードファイルを小さく変更して再生成する作業に対応します。前の内容と正確な編集を提供し、できた成果物をその依頼と比較してください。予測を使う経路はテキストのみをサポートし、関数呼び出しとは併用できません。logprobs、max\_completion\_tokens、その他のいくつかの制御も対象外です。返信に新たな検索や計算が必要な場合は、通常のツールを使うリクエストという別の経路を選びます。

OpenAIは、このモデルのファインチューニングを文書化しており、大きなモデルの出力を使って、小さなGPT-4o Miniモデルに専門タスクを学習させる方法を説明しています。この蒸留のワークフローはカスタマイズしたモデルを作るもので、通常のMiniの回答の識別名を変えるものではありません。通常のリクエストでは、明確な例でタスクと出力形式を定め、対象を絞った後続の依頼で同じ結果を修正してください。有用な最終成果物は、元の事実、想定する読者、それを処理するアプリケーションの工程に結び付いています。

**Ailoot Ultra · バッチ** `POST /v1/batches` `openai/gpt-4o-mini:batch`

[`openai/gpt-4o-mini:batch`](https://ailoot.ai/models/ja/#m=openai%2Fgpt-4o-mini%3Abatch&route=Ultra&caller=openai%2Fgpt-4o-mini%3Abatch&fmt=batches)

OpenAI /`openai/gpt-4o-mini:batch`

### はじめに

GPT-4o Miniは、文書からの抽出、簡潔な回答、アプリケーションのツール呼び出しなど、対象を絞ったテキストと画像のタスクを扱います。128,000トークンのコンテキストとStructured Outputsにより、結果を明確に定義した繰り返しのワークフローに対応します。

対応する入力

テキスト

結果

テキスト

### Ailootで利用可能 · 入力とメソッド

**Ailoot Ultra · バッチ** `POST /v1/batches`

入力の種類

`text`

出力の種類

`text`

出力形式

インラインの results\[\].response.body JSON

| フィールド | 種類 | 要件 | 値と制限 | デフォルト |
| --- | --- | --- | --- | --- |
| フィールド`endpoint` | 種類`string` | 要件必須 | 値と制限 /v1/chat/completions | デフォルト— |
| フィールド`model` | 種類`string` | 要件必須 | 値と制限 openai/gpt-4o-mini:batch | デフォルト— |
| フィールド`requests` | 種類`batch_item[]` | 要件必須 | 値と制限 最小項目数: 1 | デフォルト— |
| フィールド`requests[].custom_id` | 種類`string` | 要件必須 | 値と制限 | デフォルト— |
| フィールド`requests[].body.messages` | 種類`message[]` | 要件必須 | 値と制限 | デフォルト— |
| フィールド`completion_window` | 種類`string` | 要件任意 | 値と制限 24h | デフォルト— |
| フィールド`provider` | 種類`object\|null` | 要件任意 | 値と制限 | デフォルト— |
| フィールド`requests[].body.model` | 種類`string` | 要件任意 | 値と制限 openai/gpt-4o-mini:batch, openai/gpt-4o-mini | デフォルト— |
| フィールド`provider.only` | 種類`string[]` | 要件任意 | 値と制限 openai | デフォルト— |
| フィールド`provider.allow_fallbacks` | 種類`boolean\|null` | 要件任意 | 値と制限 false, null | デフォルト— |

メソッドのパラメータとライフサイクル

| パラメータ | 仕様 |
| --- | --- |
| パラメータ`content_type` | 仕様application/json |
| パラメータ`required` | 仕様endpoint, model, requests |
| パラメータ`material_types` | 仕様text |
| パラメータ`representation` | 仕様インラインの requests\[\]。各項目には custom\_id と body を指定します |
| パラメータ`request_endpoint_profile` | 仕様/v1/chat/completions |
| パラメータ`file_material` | 仕様呼び出し元は実際の UTF-8 JSONL をローカルで読み込み、requests\[\] に格納できます。アップロードの purpose、input\_file\_id、ファイル参照は使用しません。顧客の素材が存在しない、または空の場合、POST の前に準備を停止します。 |
| パラメータ`serialization_order` | 仕様endpoint, model, provider（指定されている場合）, completion\_window（指定されている場合）, requests を最後に配置 |
| パラメータ`optional_controls` | 仕様provider.only, provider.allow\_fallbacks, completion\_window |
| パラメータ`schema_scope` | 仕様ドキュメントに記載されたインラインの Batch エンベロープに格納する、テキスト Chat Completions のリクエストボディ。 |

ライフサイクル: `asynchronous`

`GET /v1/batches/{operation_id}` · 元の作成レスポンスに実際に含まれる response.id。同じユーザー／キー／グループを使用します

### 料金

料金情報はリクエストの機能を追加しません。対応するパラメーターは選択したメソッドに記載されています。

高速モード

未指定 高速モードが選択されている場合

Flex モード

未指定 flex モードが選択されている場合

最大推論量

未指定 推論量が最大で、調整に既定値（default）を使用する場合

明示的キャッシュの料金

無効 明示的キャッシュを要求した場合

#### Ailootの料金

#### 設定別の価格

各料金を表示された条件と照合してください。選択肢となる設定の各組には、いずれか1つの料金を適用します。

| 設定 | 料金表 | コンテキストトークン数が次の値を超える場合 | コンテキストトークン数が次の値以下の場合 | 料金 |
| --- | --- | --- | --- | --- |
| 設定トークンの基本単価 | 料金表基本料金 | コンテキストトークン数が次の値を超える場合— | コンテキストトークン数が次の値以下の場合上限なし | 料金 入力 · 入力トークン **$0.00015** / 1K トークン 出力 · 出力トークン **$0.0006** / 1K トークン 入力 · キャッシュ読み取り **$0.000075** / 1K トークン 入力 · キャッシュ書き込み **—** / 1K トークン 入力 · キャッシュ書き込み、1時間 **—** / 1K トークン |
| 設定リクエスト長に応じた料金区分 1 | 料金表— | コンテキストトークン数が次の値を超える場合0 | コンテキストトークン数が次の値以下の場合上限なし | 料金 入力 · 入力トークン **$0.00015** / 1K トークン 出力 · 出力トークン **$0.0006** / 1K トークン 入力 · キャッシュ読み取り **$0.000075** / 1K トークン 入力 · キャッシュ書き込み **—** / 1K トークン 入力 · キャッシュ書き込み、1時間 **—** / 1K トークン |

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。[金額の確保と精算の仕組み →](https://ailoot.ai/docs/ja/billing/reserve/)

### リクエスト例

#### Ailoot Ultra · バッチ

curl · 保存済みフィクスチャPython HTTP · 実際の顧客の JSONLPython · 完了した結果をすべて保存する

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"openai/gpt-4o-mini:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
```

```python
import json, os
from pathlib import Path
from urllib.request import Request, urlopen

def prepare_requests(customer_path):
    path = Path(customer_path)
    if not path.is_file(): raise ValueError("Customer JSONL file is missing")
    items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
    if not items: raise ValueError("Customer JSONL contains no requests")
    ids = set()
    for item in items:
        if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
        cid = item["custom_id"]
        if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
        ids.add(cid)
        if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
        supplied_model = item["body"].get("model")
        if supplied_model is not None and supplied_model not in ['openai/gpt-4o-mini:batch', 'openai/gpt-4o-mini']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"openai/gpt-4o-mini:batch", "requests":items}

if __name__ == "__main__":
    material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
    if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
    body = prepare_requests(material)
    key = os.environ.get("AILOOT_API_KEY", "")
    if not key: raise SystemExit("Set AILOOT_API_KEY")
    request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
    with urlopen(request) as response:
        raw = response.read()
        Path("batch-create-response.json").write_bytes(raw)
        print(raw.decode("utf-8"))
```

```python
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
    raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
    raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.
```

### 結果を受け取って保存

#### Ailoot Ultra · バッチ

インラインの results\[\].response.body JSON

- `GET /v1/batches/{operation_id}`

##### ジョブのステータスを確認

curl · 元の処理のステータス

```bash
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
```

##### 完了した結果をすべて保存

返された完全なレスポンス、ファイル、コンテンツ部分をすべて保存してください。

元のステータス JSON の全体、各結果と custom\_id、レスポンスまたはエラーボディの全体を保存してください。完了済みの results\[\] は、絞り込まずに JSONL として保存してください。

##### 元のレスポンスを確認する場合

元の操作 ID を保存してください。503 result\_pending\_check には X-Should-Retry:false が設定されています。結果が不明な元のバッチを決して再送しないでください。

レスポンスのフィールド

| フィールド | 種類 |
| --- | --- |
| フィールド`results[].custom_id` | 種類string |
| フィールド`results[].response.body.choices[].message.content` | 種類string\|null |
| フィールド`results[].error` | 種類object\|null |
| フィールド`usage` | 種類object\|null |
| フィールド`id` | 種類string |
| フィールド`model` | 種類string |
| フィールド`endpoint` | 種類string |
| フィールド`status` | 種類string |
| フィールド`request_counts` | 種類object |
| フィールド`results[].id` | 種類string |
| フィールド`results[].response.status_code` | 種類integer |
| フィールド`results[].response.request_id` | 種類string |

エラーと次の手順

| レスポンス | 条件 | 次の手順 |
| --- | --- | --- |
| レスポンス400 · `invalid_request_error` | 条件ドキュメントに記載されたインラインエンベロープが無効、キーが重複、項目の識別情報が不正、または設定されたモデル機能に矛盾があります。 | 次の手順新しく送信する前に、指摘されたフィールドを修正してください。 |
| レスポンス401 · `authentication_error` | 条件無効な API キーです。 | 次の手順利用を許可された Ailoot キーを使用してください。 |
| レスポンス403 · `permission_error` | 条件バッチグループを利用できません。 | 次の手順キー／グループの利用権限を確認してください。 |
| レスポンス422 · `invalid_request_error` | 条件バッチは残高課金を使用します。サブスクリプションでのバッチ作成は拒否されます。 | 次の手順利用を許可された残高課金グループを使用してください。 |
| レスポンス422 · `price_unavailable` | 条件バッチ入力の料金を見積もれません。 | 次の手順レスポンスを保存し、対象 API ファミリーのドキュメントに記載された入力を使用してください。 |
| レスポンス402 · `billing_error` | 条件バッチの予約額を確保できません。 | 次の手順新しいリクエストの前に、受付条件の問題を解決してください。 |
| レスポンス503 · `price_unavailable` | 条件Batch メソッドの価格／ネイティブ料金を利用できません。 | 次の手順レスポンスを保存してください。価格を別の値に置き換えないでください。 |
| レスポンス503 · `api_error` | 条件指定どおりのサプライヤールートを利用できません。 | 次の手順ルートを修復するためにレスポンスを保存してください。 |
| レスポンス503 · `result_pending_check` | 条件元の結果の確認が必要です。X-Should-Retry:false。 | 次の手順元の operation\_id/id を保存し、そのステータスを読み取ってください。元の POST を決して繰り返さないでください。 |
| レスポンス404 · `not_found` | 条件バッチのステータス操作が存在しないか、別の識別主体が所有しています。 | 次の手順元の正確な id と、同じユーザー／キー／グループを使用してください。 |

### エイリアス

#### モデルのエイリアス

**Ailoot Ultra** [`openai/gpt-4o-mini:batch`](https://ailoot.ai/models/ja/#m=openai%2Fgpt-4o-mini%3Abatch&route=Ultra&caller=openai%2Fgpt-4o-mini%3Abatch&fmt=batches)

#### メソッドパスのエイリアス

上記に表示されたメソッドパスを使用してください。

#### 関連する呼び出し用ID

[`openai/gpt-4o-mini:batch`](https://ailoot.ai/models/ja/#m=openai%2Fgpt-4o-mini%3Abatch&route=Ultra&caller=openai%2Fgpt-4o-mini%3Abatch&fmt=batches)

FAQ · OpenAI: GPT-4o-mini (batch)

利用できる入力と結果は何ですか？

`POST /v1/batches` · `openai/gpt-4o-mini:batch`: `text` → `text`

リクエストはどの項目を使用しますか？

`POST /v1/batches` · `openai/gpt-4o-mini:batch`: `endpoint`, `model`, `requests`, `completion_window`, `provider`

どの制限が適用されますか？

`POST /v1/batches` · `openai/gpt-4o-mini:batch`: `requests.min_items`: `1`

AilootをClaude Code、OpenCode、Hermes、自分のアプリに接続しましょう。

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

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

## トークンを割引価格で購入。

継続利用にサブスクリプション割引。プロモコードでトークン購入が最大50%割引。

サブスクリプション

定期的なリクエストに合う割引プランを選びましょう。

最大50%のプロモコード

購入時にコードを入力すると、実施中のキャンペーンに沿って価格を再計算します。

支出を履歴で確認

各リクエストのモデル、トークン、金額が保存されます。

[サブスクリプションを選ぶ](https://ailoot.ai/docs/ja/billing/subscriptions/) · [モデルの価格を見る](https://ailoot.ai/models/ja/)

## 販売する製品に、 APIを組み込みましょう。

SaaS、アプリ、ボットをAilootの公式サービス提供条件とライセンス契約に基づいて接続できます。再販にはリセラーライセンスを申請できます。

商用アプリ

サービスの有料機能に、文章、画像、動画、音声の生成を組み込めます。

リセラーライセンス

プロジェクトの説明とアクセスの仕組みをお送りください。利用・再販条件の書面を申請できます。

サイトで契約文書を確認

接続前にサービス提供条件、ライセンス契約、データ処理ポリシーを読めます。

[リセラーライセンスを申請](mailto:support@ailoot.ai) · [サービス提供条件とライセンス契約](https://ailoot.ai/legal/offer?lang=ja)

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





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





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





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