モデル

Anthropic: Claude Haiku 5.5

Markdown · JSON

Anthropic: Claude Haiku 5.5

Claude Haiku 5.5は、分類、抽出、要約、振り分け、対象を絞ったエージェントのタスクに向けたAnthropicの小型モデルです。テキストと画像の理解に適応型推論を組み合わせ、迅速な応答が必要な反復作業を想定しています。

モデルについて

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

Claude Haiku 5.5は、大量の処理や低遅延が求められるタスクに向けたAnthropicの小型モデルの版です。主な用途には、分類、振り分け、情報抽出、要約、会話の圧縮、対象を絞ったサブエージェントの作業があります。テキストと画像を受け取り、テキストを生成します。有用な依頼では、対象を絞った問いと、カテゴリ、定義したフィールド一式、短い要約、大きなタスクの別の部分に必要な証拠など、明確な結果を指定します。アプリケーションが抽出情報を元の資料と結び付けられるよう、結果に出典の識別子を添えてください。

Anthropicは、反復的な分析に加え、リアルタイムの顧客対応、ブラウザー操作、短いコーディングのサブタスクを、この版の用途に挙げています。大きなモデルが意欲的なプロジェクトを担当し、Haikuが範囲を限定した検索や要約を担当する流れでは、Claude Sonnet 5.5やClaude Opus 5.5を補完できます。顧客対応では、質問と使用が認められた参考資料を提供し、応答の口調と返すべき内容を指定してください。コーディングのサブタスクでは、完了条件のない際限のないプロジェクトを任せず、関連するファイルや抜粋と正確な問いを示してください。

文書に記載されたコンテキストウィンドウは百万トークンで、通常の生成では最大128,000トークンを出力できます。思考トークンも生成枠に含まれるため、推論と表示するテキストの両方の余地が必要です。信頼できる知識の基準時点は2026年6月で、それ以降の情報には提供された証拠や検索ツールが必要です。Anthropicは別途、この版の出力を300,000トークンまで増やせる、バッチ専用のベータ機能を文書化しています。この大きな枠にはメーカーのextended-output機能が必要で、通常の上限とは別です。非同期バッチは各依頼を独立に処理するため、すぐではなく処理後に結果が必要な文書や記録の集合に適しています。

適応型思考は標準で有効になっており、推論の深さは主にeffortで制御します。レベルはlow、medium、high、xhigh、maxで、標準はmediumです。Anthropicは、通常の作業にはmedium、より持続的な作業や厳密な指示遵守にはhigh、簡単で短い依頼にはlowを推奨しています。思考はlow、medium、highで無効にできますが、xhighやmaxでの無効化は拒否されます。直接答えるようプロンプトで求めても、この制御の代わりにはなりません。Haiku 4.5の手動budget_tokens設定はこの版に引き継がれず、文書化されたインターフェースではtemperature、top_p、top_kを省く必要があります。

Haiku 5.5は、以前のClaude世代で導入された新しいトークナイザーを使います。Anthropicは、同じテキストに使うトークンが約30%多くなると見積もっており、Haiku 4.5との差は内容によって変わります。以前のassistantターンの思考ブロックも保持するため、トークナイザーの変更による増加以上に会話が大きくなる場合があります。キャッシュ可能なプロンプト長の最小値は512トークンです。推論を保持する際は以前のターンを変更せず、新しい指示を最新のターンに置いてください。最上位のeffortを変えると会話のメッセージキャッシュが無効になります。メーカーは、適応型の会話内でeffortを変更する別のベータ機能を文書化しています。これらの機能があることは、特定の依頼でキャッシュがヒットした証拠にはなりません。

情報検索では、モデルのプロンプトガイドは、検索ツールとともに現在の日付を提供し、元のシステム定義とツール定義を維持するよう推奨しています。別の日に会話を続ける場合は、最新のターンで新しい日付を伝えてください。探すべき内容を明示し、結論を求める前に返された出典を保存してください。たとえば、指定したソフトウェアの版について文書化された動作を探し、取得した記述に基づく短い説明を求められます。検索ツールを提供し、実際の結果を返すのはアプリケーションです。モデルが検索を提案しても、検索が実施された証拠にはなりません。

構造化されたJSON出力とツールを組み合わせる場合、ガイドは特定の相互作用を記載しています。思考を無効にすると、Haikuは必要なツール呼び出しを省くことがあります。Anthropicは、このような依頼では適応型思考を使うか、最終的なJSONの要件をツールの段階と分けることを推奨しています。出力フィールドを定義し、ツールの結果を受けてから最終回答を出すことを明確にしてください。データ抽出の依頼では必要なフィールドと欠けている値の表現を指定でき、検索の依頼では、それらを埋めるための証拠を先に求められます。回答が最初のブロックとは限らず、思考テキストは標準で省かれるため、応答ブロックは種類に応じて読み取ってください。

長いエージェント向けプロンプトについて、Anthropicは、lowのeffortでは早く終了したり、検索や確認を省いたりする場合があるとしています。ガイドは、明確な完了指示と、コード変更を完了と報告する前の実際の確認を推奨しています。期待する結果と、それを示す証拠を準備してください。報告書なら選択した原文の抜粋、コード案なら変化した動作、文書なら抽出したフィールドなどです。ガイドは、タスクの途中に届くユーザーのメッセージとツール出力も区別しています。新しいユーザーの指示はuserターンに置き、ツールが返す証拠は別に保ちます。

この版には独自の保護機能があり、サイバー危害、生物学的危害、競合モデルの開発など、禁止用途に該当するカテゴリでは拒否を返すことがあります。メーカーは、Haiku 5.5のサーバー側フォールバックを文書化していません。ガイドはまた、xhighのeffortでは、複数ターンの応答が表示用の回答テキストなしで終わることが時折あり、lowのeffortや思考を無効にした場合には、推論のようなテキストが出やすくなるとしています。表示できる構造化された結果が必要な流れでは、これらの特定の挙動を考慮する必要があります。通常の抽出や要約では、対象を絞った資料、明確な出力、タスクに適したeffortレベルを使ってください。

実用タスク

実用タスク

英語の技術例

Extract a support handoff

Extract a handoff from this ticket, using only its text: T-184: 'I changed my billing email yesterday. Receipts still go to the old address. My login works. Please resend March and April receipts.' Return ticket ID, requested actions, working function and missing information. Use 'not stated' for absent details.

期待される結果

Four labeled fields retaining T-184, the receipt request, the working login and explicitly missing details.

結果の確認

Every extracted value must trace to the ticket; do not invent either email address.
Ailoot Ultra · OpenAI チャット POST /v1/chat/completions anthropic/claude-haiku-5.5

anthropic/claude-haiku-5.5

Anthropic /anthropic/claude-haiku-5.5
モデルID
  • anthropic/claude-haiku-5.5
  • ~anthropic/claude-haiku-latest

はじめに

Claude Haiku 5.5は、分類、抽出、要約、振り分け、対象を絞ったエージェントのタスクに向けたAnthropicの小型モデルです。テキストと画像の理解に適応型推論を組み合わせ、迅速な応答が必要な反復作業を想定しています。

対応する入力
テキスト
結果
テキスト

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

Ailoot Ultra · OpenAI チャット POST /v1/chat/completions
入力の種類
text
出力の種類
text
出力形式
jsonまたはSSE
フィールド種類要件値と制限デフォルト
フィールドmodel種類string要件必須値と制限
anthropic/claude-haiku-5.5
デフォルト—
フィールドmessages種類message[]要件必須値と制限
最小項目数: 1
デフォルト—
フィールドmessages[].role種類string要件必須値と制限
例:system, user, assistant, tool, function
条件: これらのロールはソースコードの互換型で明示されています。正確なロールの集合はモデルごとに異なります。
モデルによる
デフォルト—
フィールドmessages[].content種類string|content_part[]|null要件任意値と制限デフォルト—
フィールドmessages[].tool_calls種類tool_call[]要件任意値と制限デフォルト—
フィールドmessages[].tool_call_id種類string要件任意値と制限
適用条件: role=tool。実際に返されたIDを使ってください
デフォルト—
フィールドmessages[].name種類string要件任意値と制限デフォルト—
フィールドmessages[].reasoning_content種類string要件任意値と制限
適用条件: このモデルが使用する場合は、実際に返された推論をそのまま次のリクエストへ戻してください
デフォルト—
フィールドmessages[].reasoning_details種類object|array要件任意値と制限
モデルによる
デフォルト—
フィールドmax_tokens種類integer要件任意値と制限
最小値: 1
モデルによる
デフォルト—
フィールドmax_completion_tokens種類integer要件任意値と制限
最小値: 1
モデルによる
デフォルト—
フィールドstream種類boolean要件任意値と制限デフォルトfalse
フィールドstream_options.include_usage種類boolean要件任意値と制限
モデルによる
デフォルト—
フィールドtemperature種類number要件任意値と制限
モデルによる
デフォルト—
フィールドtop_p種類number要件任意値と制限
モデルによる
デフォルト—
フィールドstop種類string|string[]要件任意値と制限
モデルによる
デフォルト—
フィールドtools種類function_tool[]要件任意値と制限
モデルによる
デフォルト—
フィールドtools[].type種類string要件任意値と制限
function
モデルによる
デフォルト—
フィールドtools[].function.name種類string要件必須値と制限
適用条件: 関数ツールの指定あり
デフォルト—
フィールドtools[].function.description種類string要件任意値と制限デフォルト—
フィールドtools[].function.parameters種類JSON_schema要件任意値と制限デフォルト—
フィールドtool_choice種類string|object要件任意値と制限
モデルによる
デフォルト—
フィールドparallel_tool_calls種類boolean要件任意値と制限
モデルによる
デフォルト—
フィールドresponse_format種類object要件任意値と制限
モデルによる
デフォルト—
フィールドreasoning_effort種類string要件任意値と制限
モデルによる
デフォルト—
フィールドreasoning種類object要件任意値と制限
モデルによる
デフォルト—
フィールドservice_tier種類string要件任意値と制限
モデルによる
デフォルト—
フィールドinstructions種類string要件任意値と制限
互換性用のフィールド
デフォルト—
フィールドfunctions種類function[]要件任意値と制限
モデルによる
デフォルト—
フィールドfunction_call種類string|object要件任意値と制限
モデルによる
デフォルト—
フィールドprompt_cache_options種類object要件任意値と制限
モデルによる
デフォルト—
フィールドmodalities種類string[]要件任意値と制限
text
デフォルト—
フィールドprovider種類object要件任意値と制限
条件: このUltraテキストルートではprovider.optionsは拒否されます
デフォルト—
フィールドcache_control.ttl種類string要件任意値と制限
条件: 実際のプロンプトキャッシュの指定箇所では1hは拒否されます
デフォルト—
入力素材の組み合わせ

テキスト · UTF8テキスト

messages[].content

メソッドのパラメータとライフサイクル
パラメータ仕様
パラメータcontent_type仕様application/json
パラメータrequired仕様model, messages
パラメータmaterial_types仕様text
パラメータmessages仕様role/content形式のメッセージ配列
パラメータfile_material仕様実際のUTF-8文書をテキストとしてそのまま挿入します。ファイルIDは推定しません
パラメータoptional_controls仕様stream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
パラメータcontrol_scope仕様モデル固有。ユーザーの関数ツールとホスト側のツールは異なります
パラメータoutput_modalities仕様text
パラメータhosted_operations仕様false
パラメータmultimodal_input_binding仕様null

ライフサイクル: synchronous_or_streamed

正確なモデルIDをmessagesとともに送ってください。

コンテキスト長は出力上限ではありません。

テキストファイルはテキストをそのまま提供できます。画像/音声/ファイルオブジェクトの入力には正確なバインディングが必要です。

料金

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

高速モード
標準料金 高速モードが選択されている場合
Flex モード
標準料金 flex モードが選択されている場合
最大推論量
標準料金 推論量が最大で、調整に既定値(default)を使用する場合
推論量 · 高
標準料金 推論量が高い場合
推論量 · 低
標準料金 推論量が低い場合
推論量 · 最大(max)
標準料金 推論量が最大(max)の場合
推論量 · 中
標準料金 推論量が中程度の場合
推論量 · xhigh
標準料金 推論量が xhigh の場合

Ailootの料金

設定別の価格

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

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

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →

リクエスト例

Ailoot Ultra · OpenAI チャット

curlPython SDKPythonストリーミング
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "anthropic/claude-haiku-5.5", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='anthropic/claude-haiku-5.5',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='anthropic/claude-haiku-5.5',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

結果を受け取って保存

Ailoot Ultra · OpenAI チャット

jsonまたはSSE

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

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

すべての選択肢と、その内容・ツール呼び出し・推論を保持してください。SSEでは選択肢/ツールのインデックスごとに差分を組み立て、最終的な終了理由と使用量を残します。

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

リクエスト/応答IDとヘッダーを保持してください。テキストジョブを取得する汎用URLは提供されません。

レスポンスのフィールド
フィールド種類
フィールドchoices[].index種類integer
フィールドchoices[].message.content種類string|null
フィールドchoices[].message.tool_calls種類tool_call[]
フィールドchoices[].message.reasoning_content種類string
フィールドchoices[].message.reasoning_details種類object|array
フィールドchoices[].finish_reason種類string|null
フィールドusage種類object
エラーと次の手順
レスポンス条件次の手順
レスポンス400 · invalid_request_error条件必須フィールド、素材の表現形式、またはパラメーター値が不正です次の手順新しい生成リクエストを送る前に、指定されたフィールドを修正してください。

エイリアス

モデルのエイリアス

Ailoot Ultra anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

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

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

関連する呼び出し用ID

anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

Ailoot Ultra · Anthropic メッセージ POST /v1/messages anthropic/claude-haiku-5.5

anthropic/claude-haiku-5.5

Anthropic /anthropic/claude-haiku-5.5
モデルID
  • anthropic/claude-haiku-5.5
  • ~anthropic/claude-haiku-latest

はじめに

Claude Haiku 5.5は、分類、抽出、要約、振り分け、対象を絞ったエージェントのタスクに向けたAnthropicの小型モデルです。テキストと画像の理解に適応型推論を組み合わせ、迅速な応答が必要な反復作業を想定しています。

対応する入力
テキスト
結果
json · sse

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

Ailoot Ultra · Anthropic メッセージ POST /v1/messages
入力の種類
text
出力の種類
json, sse
出力形式
JSONまたはSSE
フィールド種類要件値と制限デフォルト
フィールドmodel種類string要件必須値と制限
anthropic/claude-haiku-5.5
デフォルト—
フィールドmessages種類message[]要件必須値と制限デフォルト—
フィールドmessages[].role種類string要件必須値と制限
user, assistant
デフォルト—
フィールドmessages[].content種類string要件必須値と制限デフォルト—
フィールドmax_tokens種類integer要件必須値と制限デフォルト—
フィールドstream種類boolean要件任意値と制限デフォルトfalse
入力素材の組み合わせ

テキスト · UTF-8テキスト

messages[].contentの文字列

メソッドのパラメータとライフサイクル
パラメータ仕様
パラメータcontent_type仕様application/json
パラメータrequired仕様model, messages, max_tokens
パラメータoptional_controls仕様stream
パラメータmaterial_types仕様text
パラメータtext_file_material仕様実際のUTF-8文書を読み、その本文を指定された入力またはメッセージ内容の文字列に入れてください。

ライフサイクル: synchronous_or_streamed

料金

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

高速モード
標準料金 高速モードが選択されている場合
Flex モード
標準料金 flex モードが選択されている場合
最大推論量
標準料金 推論量が最大で、調整に既定値(default)を使用する場合
推論量 · 高
標準料金 推論量が高い場合
推論量 · 低
標準料金 推論量が低い場合
推論量 · 最大(max)
標準料金 推論量が最大(max)の場合
推論量 · 中
標準料金 推論量が中程度の場合
推論量 · xhigh
標準料金 推論量が xhigh の場合

Ailootの料金

設定別の価格

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

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

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →

リクエスト例

Ailoot Ultra · Anthropic メッセージ

必要最小限の完全な JSON ボディcurl · ご自身の UTF-8 ドキュメントを使用するPython · 結果全体を保存する
{
  "model": "anthropic/claude-haiku-5.5",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'anthropic/claude-haiku-5.5', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': 'anthropic/claude-haiku-5.5', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))

結果を受け取って保存

Ailoot Ultra · Anthropic メッセージ

JSONまたはSSE

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

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

すべてのコンテンツブロック、思考署名、実際のツール利用IDを保持してください。SSEのすべてのブロック差分を組み立てます。最初のテキストブロックだけでは完全な出力になりません。

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

リクエスト/応答IDとヘッダーを保持してください。テキストジョブを取得する汎用URLは提供されません。

レスポンスのフィールド
フィールド種類
フィールドid種類string
フィールドmodel種類string
フィールドcontent[]種類text|thinking|tool_use|other content block
フィールドstop_reason種類string|null
フィールドusage種類object
エラーと次の手順
レスポンス条件次の手順
レスポンス400 · invalid_request_error条件必須フィールド、素材の表現形式、またはパラメーター値が不正です次の手順新しい生成リクエストを送る前に、指定されたフィールドを修正してください。

エイリアス

モデルのエイリアス

Ailoot Ultra anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

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

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

関連する呼び出し用ID

anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

Ailoot Ultra · OpenAI チャット POST /v1/chat/completions ~anthropic/claude-haiku-latest

~anthropic/claude-haiku-latest

Anthropic /~anthropic/claude-haiku-latest
モデルID
  • anthropic/claude-haiku-5.5
  • ~anthropic/claude-haiku-latest

はじめに

Claude Haiku 5.5は、分類、抽出、要約、振り分け、対象を絞ったエージェントのタスクに向けたAnthropicの小型モデルです。テキストと画像の理解に適応型推論を組み合わせ、迅速な応答が必要な反復作業を想定しています。

対応する入力
テキスト
結果
テキスト

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

Ailoot Ultra · OpenAI チャット POST /v1/chat/completions
入力の種類
text
出力の種類
text
出力形式
jsonまたはSSE
フィールド種類要件値と制限デフォルト
フィールドmodel種類string要件必須値と制限
~anthropic/claude-haiku-latest
デフォルト—
フィールドmessages種類message[]要件必須値と制限
最小項目数: 1
デフォルト—
フィールドmessages[].role種類string要件必須値と制限
例:system, user, assistant, tool, function
条件: これらのロールはソースコードの互換型で明示されています。正確なロールの集合はモデルごとに異なります。
モデルによる
デフォルト—
フィールドmessages[].content種類string|content_part[]|null要件任意値と制限デフォルト—
フィールドmessages[].tool_calls種類tool_call[]要件任意値と制限デフォルト—
フィールドmessages[].tool_call_id種類string要件任意値と制限
適用条件: role=tool。実際に返されたIDを使ってください
デフォルト—
フィールドmessages[].name種類string要件任意値と制限デフォルト—
フィールドmessages[].reasoning_content種類string要件任意値と制限
適用条件: このモデルが使用する場合は、実際に返された推論をそのまま次のリクエストへ戻してください
デフォルト—
フィールドmessages[].reasoning_details種類object|array要件任意値と制限
モデルによる
デフォルト—
フィールドmax_tokens種類integer要件任意値と制限
最小値: 1
モデルによる
デフォルト—
フィールドmax_completion_tokens種類integer要件任意値と制限
最小値: 1
モデルによる
デフォルト—
フィールドstream種類boolean要件任意値と制限デフォルトfalse
フィールドstream_options.include_usage種類boolean要件任意値と制限
モデルによる
デフォルト—
フィールドtemperature種類number要件任意値と制限
モデルによる
デフォルト—
フィールドtop_p種類number要件任意値と制限
モデルによる
デフォルト—
フィールドstop種類string|string[]要件任意値と制限
モデルによる
デフォルト—
フィールドtools種類function_tool[]要件任意値と制限
モデルによる
デフォルト—
フィールドtools[].type種類string要件任意値と制限
function
モデルによる
デフォルト—
フィールドtools[].function.name種類string要件必須値と制限
適用条件: 関数ツールの指定あり
デフォルト—
フィールドtools[].function.description種類string要件任意値と制限デフォルト—
フィールドtools[].function.parameters種類JSON_schema要件任意値と制限デフォルト—
フィールドtool_choice種類string|object要件任意値と制限
モデルによる
デフォルト—
フィールドparallel_tool_calls種類boolean要件任意値と制限
モデルによる
デフォルト—
フィールドresponse_format種類object要件任意値と制限
モデルによる
デフォルト—
フィールドreasoning_effort種類string要件任意値と制限
モデルによる
デフォルト—
フィールドreasoning種類object要件任意値と制限
モデルによる
デフォルト—
フィールドservice_tier種類string要件任意値と制限
モデルによる
デフォルト—
フィールドinstructions種類string要件任意値と制限
互換性用のフィールド
デフォルト—
フィールドfunctions種類function[]要件任意値と制限
モデルによる
デフォルト—
フィールドfunction_call種類string|object要件任意値と制限
モデルによる
デフォルト—
フィールドprompt_cache_options種類object要件任意値と制限
モデルによる
デフォルト—
フィールドmodalities種類string[]要件任意値と制限
text
デフォルト—
フィールドprovider種類object要件任意値と制限
条件: このUltraテキストルートではprovider.optionsは拒否されます
デフォルト—
フィールドcache_control.ttl種類string要件任意値と制限
条件: 実際のプロンプトキャッシュの指定箇所では1hは拒否されます
デフォルト—
入力素材の組み合わせ

テキスト · UTF8テキスト

messages[].content

メソッドのパラメータとライフサイクル
パラメータ仕様
パラメータcontent_type仕様application/json
パラメータrequired仕様model, messages
パラメータmaterial_types仕様text
パラメータmessages仕様role/content形式のメッセージ配列
パラメータfile_material仕様実際のUTF-8文書をテキストとしてそのまま挿入します。ファイルIDは推定しません
パラメータoptional_controls仕様stream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice
パラメータcontrol_scope仕様モデル固有。ユーザーの関数ツールとホスト側のツールは異なります
パラメータoutput_modalities仕様text
パラメータhosted_operations仕様false
パラメータmultimodal_input_binding仕様null

ライフサイクル: synchronous_or_streamed

正確なモデルIDをmessagesとともに送ってください。

コンテキスト長は出力上限ではありません。

テキストファイルはテキストをそのまま提供できます。画像/音声/ファイルオブジェクトの入力には正確なバインディングが必要です。

料金

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

高速モード
標準料金 高速モードが選択されている場合
Flex モード
標準料金 flex モードが選択されている場合
最大推論量
標準料金 推論量が最大で、調整に既定値(default)を使用する場合
推論量 · 高
標準料金 推論量が高い場合
推論量 · 低
標準料金 推論量が低い場合
推論量 · 最大(max)
標準料金 推論量が最大(max)の場合
推論量 · 中
標準料金 推論量が中程度の場合
推論量 · xhigh
標準料金 推論量が xhigh の場合

Ailootの料金

設定別の価格

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

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

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →

リクエスト例

Ailoot Ultra · OpenAI チャット

curlPython SDKPythonストリーミング
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "~anthropic/claude-haiku-latest", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')

Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
    if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='~anthropic/claude-haiku-latest',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path

if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path

def save_result(data, stem="result"):
    # Keep every field, including usage, IDs, reasoning and tool requests.
    Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
    print(json.dumps(data, ensure_ascii=False, indent=2))
    def save_blob(encoded, suffix, label):
        raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
        ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
        file = Path(stem + "-" + label + "." + ext)
        file.write_bytes(raw)
        print("Saved", file)
    for index, block in enumerate(data.get("content") or []):
        print("Content", index, json.dumps(block, ensure_ascii=False))
    for choice in data.get("choices") or []:
        print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
    for index, item in enumerate(data.get("output") or []):
        print("Output", index, json.dumps(item, ensure_ascii=False))
        if item.get("type") == "image_generation_call" and item.get("result"):
            save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
    for ci, candidate in enumerate(data.get("candidates") or []):
        for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
            print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
            blob = part.get("inlineData") or part.get("inline_data")
            if blob and blob.get("data"):
                mime = blob.get("mimeType") or blob.get("mime_type")
                suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
                save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))

with client.chat.completions.stream(model='~anthropic/claude-haiku-latest',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}]) as stream:
    with Path("stream-events.jsonl").open("w",encoding="utf-8") as log:
        for event in stream:
            payload=event.to_dict(mode="json")
            log.write(json.dumps(payload,ensure_ascii=False)+"\n"); log.flush()
            print(json.dumps(payload,ensure_ascii=False))
    final=stream.get_final_completion()
    save_result(final.to_dict(mode="json"),"stream-result")

結果を受け取って保存

Ailoot Ultra · OpenAI チャット

jsonまたはSSE

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

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

すべての選択肢と、その内容・ツール呼び出し・推論を保持してください。SSEでは選択肢/ツールのインデックスごとに差分を組み立て、最終的な終了理由と使用量を残します。

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

リクエスト/応答IDとヘッダーを保持してください。テキストジョブを取得する汎用URLは提供されません。

レスポンスのフィールド
フィールド種類
フィールドchoices[].index種類integer
フィールドchoices[].message.content種類string|null
フィールドchoices[].message.tool_calls種類tool_call[]
フィールドchoices[].message.reasoning_content種類string
フィールドchoices[].message.reasoning_details種類object|array
フィールドchoices[].finish_reason種類string|null
フィールドusage種類object
エラーと次の手順
レスポンス条件次の手順
レスポンス400 · invalid_request_error条件必須フィールド、素材の表現形式、またはパラメーター値が不正です次の手順新しい生成リクエストを送る前に、指定されたフィールドを修正してください。

エイリアス

モデルのエイリアス

Ailoot Ultra anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

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

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

関連する呼び出し用ID

anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

Ailoot Ultra · Anthropic メッセージ POST /v1/messages ~anthropic/claude-haiku-latest

~anthropic/claude-haiku-latest

Anthropic /~anthropic/claude-haiku-latest
モデルID
  • anthropic/claude-haiku-5.5
  • ~anthropic/claude-haiku-latest

はじめに

Claude Haiku 5.5は、分類、抽出、要約、振り分け、対象を絞ったエージェントのタスクに向けたAnthropicの小型モデルです。テキストと画像の理解に適応型推論を組み合わせ、迅速な応答が必要な反復作業を想定しています。

対応する入力
テキスト
結果
json · sse

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

Ailoot Ultra · Anthropic メッセージ POST /v1/messages
入力の種類
text
出力の種類
json, sse
出力形式
JSONまたはSSE
フィールド種類要件値と制限デフォルト
フィールドmodel種類string要件必須値と制限
~anthropic/claude-haiku-latest
デフォルト—
フィールドmessages種類message[]要件必須値と制限デフォルト—
フィールドmessages[].role種類string要件必須値と制限
user, assistant
デフォルト—
フィールドmessages[].content種類string要件必須値と制限デフォルト—
フィールドmax_tokens種類integer要件必須値と制限デフォルト—
フィールドstream種類boolean要件任意値と制限デフォルトfalse
入力素材の組み合わせ

テキスト · UTF-8テキスト

messages[].contentの文字列

メソッドのパラメータとライフサイクル
パラメータ仕様
パラメータcontent_type仕様application/json
パラメータrequired仕様model, messages, max_tokens
パラメータoptional_controls仕様stream
パラメータmaterial_types仕様text
パラメータtext_file_material仕様実際のUTF-8文書を読み、その本文を指定された入力またはメッセージ内容の文字列に入れてください。

ライフサイクル: synchronous_or_streamed

料金

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

高速モード
標準料金 高速モードが選択されている場合
Flex モード
標準料金 flex モードが選択されている場合
最大推論量
標準料金 推論量が最大で、調整に既定値(default)を使用する場合
推論量 · 高
標準料金 推論量が高い場合
推論量 · 低
標準料金 推論量が低い場合
推論量 · 最大(max)
標準料金 推論量が最大(max)の場合
推論量 · 中
標準料金 推論量が中程度の場合
推論量 · xhigh
標準料金 推論量が xhigh の場合

Ailootの料金

設定別の価格

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

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

Ailootはリクエスト前に見積額を確保します。結果の取得後、実測使用量に基づいて最終料金を精算します。ストリーミング時の精算には最終の使用量記録を使用します。金額の確保と精算の仕組み →

リクエスト例

Ailoot Ultra · Anthropic メッセージ

必要最小限の完全な JSON ボディcurl · ご自身の UTF-8 ドキュメントを使用するPython · 結果全体を保存する
{
  "model": "~anthropic/claude-haiku-latest",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': '~anthropic/claude-haiku-latest', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
  -H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path

source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
    raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
    raise SystemExit('Choose a document containing text')
payload = {'model': '~anthropic/claude-haiku-latest', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
from urllib.request import Request, urlopen
from urllib.error import HTTPError

api_key = os.environ['AILOOT_API_KEY']
if not api_key.strip():
    raise SystemExit('Set AILOOT_API_KEY before making a request')
headers = {'x-api-key': 'PLACEHOLDER_KEY', 'anthropic-version': '2023-06-01', 'Content-Type': 'application/json'}
headers['x-api-key'] = api_key
request = Request('https://api.ailoot.ai/v1/messages', data=json.dumps(payload, ensure_ascii=False).encode('utf-8'), headers=headers, method='POST')
try:
    with urlopen(request, timeout=120) as response:
        raw = response.read()
        Path('response-headers.txt').write_text(str(response.headers), encoding='utf-8')
except HTTPError as error:
    Path('result.json').write_bytes(error.read())
    Path('response-headers.txt').write_text(str(error.headers), encoding='utf-8')
    raise
Path('result.json').write_bytes(raw)
import json
from pathlib import Path

result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))

結果を受け取って保存

Ailoot Ultra · Anthropic メッセージ

JSONまたはSSE

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

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

すべてのコンテンツブロック、思考署名、実際のツール利用IDを保持してください。SSEのすべてのブロック差分を組み立てます。最初のテキストブロックだけでは完全な出力になりません。

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

リクエスト/応答IDとヘッダーを保持してください。テキストジョブを取得する汎用URLは提供されません。

レスポンスのフィールド
フィールド種類
フィールドid種類string
フィールドmodel種類string
フィールドcontent[]種類text|thinking|tool_use|other content block
フィールドstop_reason種類string|null
フィールドusage種類object
エラーと次の手順
レスポンス条件次の手順
レスポンス400 · invalid_request_error条件必須フィールド、素材の表現形式、またはパラメーター値が不正です次の手順新しい生成リクエストを送る前に、指定されたフィールドを修正してください。

エイリアス

モデルのエイリアス

Ailoot Ultra anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

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

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

関連する呼び出し用ID

anthropic/claude-haiku-5.5, ~anthropic/claude-haiku-latest

FAQ · Anthropic: Claude Haiku 5.5
利用できる入力と結果は何ですか?

POST /v1/chat/completions · anthropic/claude-haiku-5.5: text → text

POST /v1/messages · anthropic/claude-haiku-5.5: text → json, sse

POST /v1/chat/completions · ~anthropic/claude-haiku-latest: text → text

POST /v1/messages · ~anthropic/claude-haiku-latest: text → json, sse

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

POST /v1/chat/completions · anthropic/claude-haiku-5.5: model, messages, stream, modalities, provider

POST /v1/messages · anthropic/claude-haiku-5.5: model, messages, max_tokens, stream

POST /v1/chat/completions · ~anthropic/claude-haiku-latest: model, messages, stream, modalities, provider

POST /v1/messages · ~anthropic/claude-haiku-latest: model, messages, max_tokens, stream

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

POST /v1/chat/completions · anthropic/claude-haiku-5.5: messages.min_items: 1

POST /v1/chat/completions · ~anthropic/claude-haiku-latest: messages.min_items: 1

詳細を見る

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

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

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

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

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

サブスクリプション
定期的なリクエストに合う割引プランを選びましょう。
最大50%のプロモコード
購入時にコードを入力すると、実施中のキャンペーンに沿って価格を再計算します。
支出を履歴で確認
各リクエストのモデル、トークン、金額が保存されます。

サブスクリプションを選ぶ · モデルの価格を見る

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

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

商用アプリ
サービスの有料機能に、文章、画像、動画、音声の生成を組み込めます。
リセラーライセンス
プロジェクトの説明とアクセスの仕組みをお送りください。利用・再販条件の書面を申請できます。
サイトで契約文書を確認
接続前にサービス提供条件、ライセンス契約、データ処理ポリシーを読めます。

リセラーライセンスを申請 · サービス提供条件とライセンス契約

Ailoot APIで利用可能

claude-haiku-5-5 · Core

Core Anthropic MessagesPOST /v1/messages
入力の種類
text
出力の種類
text
コンテキスト
200,000 トークン
最大出力
65,536 トークン
入力
$0.0001 / 1K
出力
$0.0005 / 1K
キャッシュ読み取り
$0.00001 / 1K
キャッシュ書き込み
$0.000125 / 1K
キャッシュ書き込み、5分
$0.000125 / 1K tokens
キャッシュ書き込み、1時間
$0.0002 / 1K tokens
web_search_call
$0.01 呼び出しあたり
最大呼び出し回数 web_search_call
8

リクエスト長別の料金 · Anthropic Messages

リクエストサイズ、トークン数入力出力キャッシュ読み取りキャッシュ書き込み5分キャッシュ1時間キャッシュ
リクエストサイズ、トークン数(0; 100,000]入力$0.0001出力$0.0005キャッシュ読み取り$0.00001キャッシュ書き込み$0.0001255分キャッシュ$0.0001251時間キャッシュ$0.0002
リクエストサイズ、トークン数(100,000; ∞)入力$0.0005出力$0.0025キャッシュ読み取り$0.00005キャッシュ書き込み$0.0006255分キャッシュ$0.0006251時間キャッシュ$0.001

料金は1KトークンあたりのUSDです。 料金が未設定の場合、このメソッドの基本料金を引き継ぎます。«—»は基本料金が未設定であることを示します。

claude-haiku-5-5 · Core

Core OpenAI ResponsesPOST /v1/responses
入力の種類
text
出力の種類
text
コンテキスト
200,000 トークン
最大出力
65,536 トークン
入力
$0.0001 / 1K
出力
$0.0005 / 1K
キャッシュ読み取り
$0.00001 / 1K
キャッシュ書き込み
$0.000125 / 1K
キャッシュ書き込み、5分
$0.000125 / 1K tokens
キャッシュ書き込み、1時間
$0.0002 / 1K tokens
web_search_call
$0.01 呼び出しあたり
最大呼び出し回数 web_search_call
8

リクエスト長別の料金 · OpenAI Responses

リクエストサイズ、トークン数入力出力キャッシュ読み取りキャッシュ書き込み5分キャッシュ1時間キャッシュ
リクエストサイズ、トークン数(0; 100,000]入力$0.0001出力$0.0005キャッシュ読み取り$0.00001キャッシュ書き込み$0.0001255分キャッシュ$0.0001251時間キャッシュ$0.0002
リクエストサイズ、トークン数(100,000; ∞)入力$0.0005出力$0.0025キャッシュ読み取り$0.00005キャッシュ書き込み$0.0006255分キャッシュ$0.0006251時間キャッシュ$0.001

料金は1KトークンあたりのUSDです。 料金が未設定の場合、このメソッドの基本料金を引き継ぎます。«—»は基本料金が未設定であることを示します。

claude-haiku-5-5 · Core

Core OpenAI ChatPOST /v1/chat/completions
入力の種類
text
出力の種類
text
コンテキスト
200,000 トークン
最大出力
65,536 トークン
入力
$0.0001 / 1K
出力
$0.0005 / 1K
キャッシュ読み取り
$0.00001 / 1K
キャッシュ書き込み
$0.000125 / 1K
キャッシュ書き込み、5分
$0.000125 / 1K tokens
キャッシュ書き込み、1時間
$0.0002 / 1K tokens
web_search_call
$0.01 呼び出しあたり
最大呼び出し回数 web_search_call
8

リクエスト長別の料金 · OpenAI Chat

リクエストサイズ、トークン数入力出力キャッシュ読み取りキャッシュ書き込み5分キャッシュ1時間キャッシュ
リクエストサイズ、トークン数(0; 100,000]入力$0.0001出力$0.0005キャッシュ読み取り$0.00001キャッシュ書き込み$0.0001255分キャッシュ$0.0001251時間キャッシュ$0.0002
リクエストサイズ、トークン数(100,000; ∞)入力$0.0005出力$0.0025キャッシュ読み取り$0.00005キャッシュ書き込み$0.0006255分キャッシュ$0.0006251時間キャッシュ$0.001

料金は1KトークンあたりのUSDです。 料金が未設定の場合、このメソッドの基本料金を引き継ぎます。«—»は基本料金が未設定であることを示します。

claude-haiku-5-5 · Core

Core Gemini generateContentPOST /v1beta/models/{model}:generateContent
入力の種類
text
出力の種類
text
コンテキスト
200,000 トークン
最大出力
65,536 トークン
入力
$0.0001 / 1K
出力
$0.0005 / 1K
キャッシュ読み取り
$0.00001 / 1K
キャッシュ書き込み
$0.000125 / 1K
キャッシュ書き込み、5分
$0.000125 / 1K tokens
キャッシュ書き込み、1時間
$0.0002 / 1K tokens
web_search_call
$0.01 呼び出しあたり
最大呼び出し回数 web_search_call
8

リクエスト長別の料金 · Gemini generateContent

リクエストサイズ、トークン数入力出力キャッシュ読み取りキャッシュ書き込み5分キャッシュ1時間キャッシュ
リクエストサイズ、トークン数(0; 100,000]入力$0.0001出力$0.0005キャッシュ読み取り$0.00001キャッシュ書き込み$0.0001255分キャッシュ$0.0001251時間キャッシュ$0.0002
リクエストサイズ、トークン数(100,000; ∞)入力$0.0005出力$0.0025キャッシュ読み取り$0.00005キャッシュ書き込み$0.0006255分キャッシュ$0.0006251時間キャッシュ$0.001

料金は1KトークンあたりのUSDです。 料金が未設定の場合、このメソッドの基本料金を引き継ぎます。«—»は基本料金が未設定であることを示します。

JSON