Source: https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/
Canonical: https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/
Language: id

# Anthropic: Claude Haiku 5.5

[Markdown](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/index.md) · [JSON](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/facts.json)

## [Anthropic: Claude Haiku 5.5](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/)

Claude Haiku 5.5 adalah model kecil Anthropic untuk klasifikasi, ekstraksi, ringkasan, perutean, dan tugas agen yang terarah. Model ini menggabungkan pemahaman teks dan gambar dengan penalaran adaptif serta dirancang untuk pekerjaan berulang yang memerlukan respons cepat.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/#method-1)
- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/#method-2)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/#method-3)

Tentang model

Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.

Claude Haiku 5.5 adalah edisi model kecil Anthropic untuk tugas bervolume besar yang peka terhadap latensi. Penggunaan utamanya mencakup klasifikasi, perutean, ekstraksi informasi, peringkasan, pemadatan percakapan, dan pekerjaan subagen yang terarah. Model ini menerima teks dan gambar serta menghasilkan teks. Arahan yang berguna memberikan pertanyaan dengan cakupan sempit dan hasil yang eksplisit: kategori, sekumpulan bidang yang ditentukan, ringkasan singkat, atau bukti relevan untuk bagian lain dari tugas yang lebih besar. Pertahankan pengenal sumber bersama hasil agar aplikasi dapat menghubungkan informasi yang diekstrak dengan materi aslinya.

Anthropic memosisikan edisi ini untuk dukungan pelanggan secara langsung, penggunaan peramban, dan subtugas pemrograman singkat, serta analisis berulang. Model ini dapat melengkapi Claude Sonnet 5.5 atau Claude Opus 5.5 dalam alur kerja ketika model yang lebih besar menangani proyek ambisius dan Haiku menangani pencarian atau ringkasan yang terbatas cakupannya. Untuk tugas dukungan, berikan pertanyaan dan materi rujukan yang diizinkan, lalu tentukan nada respons serta hal yang harus dikembalikan. Untuk subtugas pemrograman, tentukan berkas atau cuplikan yang relevan dan pertanyaan yang tepat, alih-alih memberikan proyek terbuka tanpa kondisi penyelesaian.

Jendela konteks yang didokumentasikan adalah satu juta token, dengan hingga 128,000 token keluaran pada generasi biasa. Token berpikir dihitung dalam jatah generasi, sehingga hasil memerlukan ruang untuk penalaran dan teks yang terlihat. Batas pengetahuan tepercayanya adalah Juni 2026; informasi setelahnya memerlukan bukti yang diberikan atau alat pencarian. Secara terpisah, Anthropic mendokumentasikan beta khusus batch yang dapat meningkatkan keluaran menjadi 300,000 token untuk edisi ini. Jatah yang lebih besar itu memerlukan fitur extended-output dari pembuatnya dan berbeda dari batas biasa. Batch asinkron menangani permintaan secara mandiri, sehingga berguna untuk kumpulan dokumen atau rekaman data yang hasilnya diperlukan setelah pemrosesan, bukan segera.

Berpikir adaptif aktif secara bawaan, dan effort merupakan kontrol utama untuk kedalaman penalaran. Tingkatnya adalah low, medium, high, xhigh, dan max, dengan medium sebagai bawaan. Anthropic merekomendasikan medium untuk kebanyakan pekerjaan, high untuk tugas yang lebih berkelanjutan atau kepatuhan ketat terhadap instruksi, dan low untuk permintaan singkat yang lebih sederhana. Berpikir dapat dinonaktifkan pada low, medium, atau high; penonaktifan pada xhigh atau max ditolak. Prompt yang meminta jawaban langsung tidak menggantikan kontrol tersebut. Pengaturan budget\_tokens manual dari Haiku 4.5 tidak berlaku pada edisi ini, dan temperature, top\_p, serta top\_k harus dihilangkan dari antarmuka yang didokumentasikan.

Haiku 5.5 menggunakan tokenizer yang lebih baru, yang diperkenalkan pada generasi Claude terdahulu, dan Anthropic memperkirakan teks yang sama dapat menggunakan sekitar 30% lebih banyak token dibandingkan Haiku 4.5, bergantung pada isinya. Model ini juga mempertahankan blok berpikir dari giliran asisten terdahulu, sehingga ukuran percakapan dapat bertambah melampaui dampak perubahan tokenizer saja. Panjang prompt minimum yang dapat di-cache adalah 512 token. Pertahankan giliran terdahulu tanpa perubahan ketika menyimpan penalaran, dan letakkan instruksi baru pada giliran terbaru. Perubahan effort tingkat atas membatalkan cache pesan percakapan; pembuatnya mendokumentasikan beta terpisah untuk mengubah effort dalam percakapan adaptif. Tidak satu pun kemampuan ini membuktikan adanya cache hit untuk permintaan tertentu.

Untuk pencarian informasi, panduan prompt model merekomendasikan pemberian tanggal saat ini bersama alat pencarian serta mempertahankan definisi sistem dan alat asli tanpa perubahan. Berikan tanggal baru pada giliran terbaru jika percakapan berlanjut pada hari lain. Nyatakan hal yang harus ditemukan dan pertahankan sumber yang dikembalikan sebelum meminta kesimpulan. Sebagai contoh, tugas ilustratif dapat meminta perilaku terdokumentasi dari versi perangkat lunak tertentu, diikuti penjelasan singkat yang didasarkan pada kutipan yang ditemukan. Aplikasi menyediakan alat pencarian dan mengembalikan hasil sebenarnya; usulan pencarian model bukan bukti bahwa pencarian telah dilakukan.

Ketika keluaran JSON terstruktur digabungkan dengan alat, panduannya mendokumentasikan interaksi tertentu: ketika berpikir dinonaktifkan, Haiku dapat melewatkan pemanggilan alat yang diperlukan. Anthropic merekomendasikan berpikir adaptif untuk permintaan semacam itu, atau pemisahan persyaratan JSON akhir dari langkah penggunaan alat. Tentukan bidang keluaran dan jelaskan bahwa jawaban akhir diberikan setelah hasil alat. Arahan ekstraksi data dapat menyebutkan bidang yang diperlukan serta cara merepresentasikan nilai yang tidak tersedia, sedangkan arahan pencarian dapat terlebih dahulu meminta bukti yang diperlukan untuk mengisinya. Baca blok respons berdasarkan jenisnya, karena jawaban tidak harus berada pada blok pertama dan teks berpikir dihilangkan secara bawaan.

Untuk prompt agen yang lebih panjang, Anthropic menyatakan bahwa effort low dapat berhenti lebih awal, melewatkan pencarian, atau menghilangkan pemeriksaan. Panduannya merekomendasikan instruksi penyelesaian yang eksplisit dan pemeriksaan nyata atas perubahan kode sebelum dilaporkan selesai. Siapkan hasil yang diharapkan dan bukti yang dapat menunjukkannya: kutipan terpilih untuk laporan, perilaku yang berubah untuk usulan kode, atau bidang yang diekstrak dari dokumen. Panduan itu juga membedakan pesan pengguna di tengah tugas dari keluaran alat: instruksi pengguna baru merupakan bagian dari giliran pengguna, sementara bukti yang dikembalikan alat tetap terpisah.

Edisi ini memiliki perlindungannya sendiri dan dapat menolak kategori seperti bahaya siber, bahaya biologis, pengembangan model pesaing, atau penggunaan terlarang lainnya. Pembuatnya tidak mendokumentasikan mekanisme fallback di sisi server untuk Haiku 5.5. Panduannya juga menyatakan bahwa effort xhigh sesekali dapat mengakhiri respons beberapa giliran tanpa teks jawaban yang terlihat, dan teks menyerupai penalaran dapat muncul lebih sering pada effort low atau ketika berpikir dinonaktifkan. Ini merupakan perilaku khusus yang perlu diperhitungkan ketika alur kerja memerlukan hasil terstruktur yang terlihat. Untuk pekerjaan ekstraksi atau ringkasan biasa, gunakan sumber yang terarah, keluaran yang ditentukan, dan tingkat effort yang sesuai dengan tugas.

Tugas praktis

### Tugas praktis

Contoh teknis dalam bahasa Inggris

```
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.
```

#### Hasil yang diharapkan

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

#### Periksa hasil

```
Every extracted value must trace to the ticket; do not invent either email address.
```

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `anthropic/claude-haiku-5.5`

[`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=chat)

Anthropic /`anthropic/claude-haiku-5.5`

ID model

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

### Mulai

Claude Haiku 5.5 adalah model kecil Anthropic untuk klasifikasi, ekstraksi, ringkasan, perutean, dan tugas agen yang terarah. Model ini menggabungkan pemahaman teks dan gambar dengan penalaran adaptif serta dirancang untuk pekerjaan berulang yang memerlukan respons cepat.

Masukan yang diterima

Teks

Hasil

Teks

### Tersedia di Ailoot · masukan & metode

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Masukan

`text`

Keluaran

`text`

Format keluaran

json atau SSE

| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
| --- | --- | --- | --- | --- |
| Kolom`model` | Jenis`string` | PersyaratanWajib | Nilai & batasan anthropic/claude-haiku-5.5 | Bawaan— |
| Kolom`messages` | Jenis`message[]` | PersyaratanWajib | Nilai & batasan Item minimum: 1 | Bawaan— |
| Kolom`messages[].role` | Jenis`string` | PersyaratanWajib | Nilai & batasan Contoh: system, user, assistant, tool, function Kondisi: Peran ini direpresentasikan secara eksplisit oleh tipe kompatibilitas dalam kode sumber; kumpulan peran model yang tepat tetap khusus untuk tiap model. Bergantung pada model | Bawaan— |
| Kolom`messages[].content` | Jenis`string\|content_part[]\|null` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`messages[].tool_calls` | Jenis`tool_call[]` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`messages[].tool_call_id` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Berlaku jika: role=tool; gunakan ID yang benar-benar dikembalikan | Bawaan— |
| Kolom`messages[].name` | Jenis`string` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`messages[].reasoning_content` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Berlaku jika: Kirim kembali penalaran yang benar-benar dikembalikan jika model ini menggunakannya | Bawaan— |
| Kolom`messages[].reasoning_details` | Jenis`object\|array` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`max_tokens` | Jenis`integer` | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
| Kolom`max_completion_tokens` | Jenis`integer` | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
| Kolom`stream` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |
| Kolom`stream_options.include_usage` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`temperature` | Jenis`number` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`top_p` | Jenis`number` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`stop` | Jenis`string\|string[]` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`tools` | Jenis`function_tool[]` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`tools[].type` | Jenis`string` | PersyaratanOpsional | Nilai & batasan function Bergantung pada model | Bawaan— |
| Kolom`tools[].function.name` | Jenis`string` | PersyaratanWajib | Nilai & batasan Berlaku jika: alat fungsi disediakan | Bawaan— |
| Kolom`tools[].function.description` | Jenis`string` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`tools[].function.parameters` | Jenis`JSON_schema` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`tool_choice` | Jenis`string\|object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`parallel_tool_calls` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`response_format` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`reasoning_effort` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`reasoning` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`service_tier` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`instructions` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Kolom kompatibilitas | Bawaan— |
| Kolom`functions` | Jenis`function[]` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`function_call` | Jenis`string\|object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`prompt_cache_options` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`modalities` | Jenis`string[]` | PersyaratanOpsional | Nilai & batasan text | Bawaan— |
| Kolom`provider` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Kondisi: provider.options ditolak pada rute teks Ultra ini | Bawaan— |
| Kolom`cache_control.ttl` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Kondisi: 1h ditolak pada lokasi cache prompt yang digunakan | Bawaan— |

Kombinasi bahan masukan

**Teks** · Teks UTF8

`messages[].content`

Parameter metode dan siklus hidup

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakmodel, messages |
| Parameter`material_types` | Kontraktext |
| Parameter`messages` | Kontrakarray pesan dengan struktur role/content |
| Parameter`file_material` | Kontrakdokumen UTF-8 yang sebenarnya dimasukkan sebagai teks apa adanya; ID file tidak disimpulkan |
| Parameter`optional_controls` | Kontrakstream, temperature, top\_p, stop, max\_tokens, max\_completion\_tokens, reasoning, response\_format, tools, tool\_choice |
| Parameter`control_scope` | Kontrakkhusus model; alat fungsi pengguna berbeda dari alat yang dihosting |
| Parameter`output_modalities` | Kontraktext |
| Parameter`hosted_operations` | Kontrakfalse |
| Parameter`multimodal_input_binding` | Kontraknull |

Siklus hidup: `synchronous_or_streamed`

Kirim ID model yang tepat bersama messages.

Panjang konteks bukan batas keluaran.

File teks dapat menyediakan teks apa adanya; masukan gambar/audio/objek file memerlukan pengikatan yang tepat.

### Paket

Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.

Mode Fast

Tarif standar Saat mode fast dipilih

Mode Flex

Tarif standar Saat mode flex dipilih

Upaya penalaran maksimum

Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default

Upaya penalaran · high

Tarif standar Saat upaya penalaran bernilai high

Upaya penalaran · low

Tarif standar Saat upaya penalaran bernilai low

Upaya penalaran · max

Tarif standar Saat upaya penalaran bernilai max

Upaya penalaran · medium

Tarif standar Saat upaya penalaran bernilai medium

Upaya penalaran · xhigh

Tarif standar Saat upaya penalaran bernilai xhigh

#### Tarif Ailoot

#### Harga menurut konfigurasi

Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.

| Konfigurasi | Jadwal tarif | Token konteks, lebih dari | Token konteks, hingga dan termasuk | Biaya |
| --- | --- | --- | --- | --- |
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Token konteks, lebih dari— | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasuk100.000 | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 2 | Jadwal tarif— | Token konteks, lebih dari100.000 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.002** / 1K token |

Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. [Cara kerja cadangan dan penyelesaian tagihan →](https://ailoot.ai/docs/id/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · OpenAI Chat

curlPython SDKAliran Python

```bash
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
```

```python
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"))
```

```python
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")
```

### Terima dan simpan hasil

#### Ailoot Ultra · OpenAI Chat

json atau SSE

##### Simpan semua hasil yang selesai

Simpan setiap respons lengkap, berkas, dan bagian konten yang dikembalikan.

Simpan setiap alternatif jawaban beserta konten, panggilan alat, dan penalarannya. Dalam SSE, gabungkan delta menurut indeks alternatif jawaban/alat, lalu pertahankan alasan penghentian akhir dan data penggunaan.

##### Jika respons asli perlu diperiksa

Simpan ID permintaan/respons dan header. URL umum untuk pengambilan tugas teks tidak disediakan.

Kolom respons

| Kolom | Jenis |
| --- | --- |
| Kolom`choices[].index` | Jenisinteger |
| Kolom`choices[].message.content` | Jenisstring\|null |
| Kolom`choices[].message.tool_calls` | Jenistool\_call\[\] |
| Kolom`choices[].message.reasoning_content` | Jenisstring |
| Kolom`choices[].message.reasoning_details` | Jenisobject\|array |
| Kolom`choices[].finish_reason` | Jenisstring\|null |
| Kolom`usage` | Jenisobject |

Kesalahan dan langkah berikutnya

| Respons | Kondisi | Langkah berikutnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |

### Alias

#### Alias model

**Ailoot Ultra** [`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=chat), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=chat)

#### Alias jalur metode

Gunakan jalur metode yang ditampilkan di atas.

#### ID pemanggil terkait

[`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=chat), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `anthropic/claude-haiku-5.5`

[`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=messages)

Anthropic /`anthropic/claude-haiku-5.5`

ID model

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

### Mulai

Claude Haiku 5.5 adalah model kecil Anthropic untuk klasifikasi, ekstraksi, ringkasan, perutean, dan tugas agen yang terarah. Model ini menggabungkan pemahaman teks dan gambar dengan penalaran adaptif serta dirancang untuk pekerjaan berulang yang memerlukan respons cepat.

Masukan yang diterima

Teks

Hasil

json · sse

### Tersedia di Ailoot · masukan & metode

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Masukan

`text`

Keluaran

`json`, `sse`

Format keluaran

JSON atau SSE

| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
| --- | --- | --- | --- | --- |
| Kolom`model` | Jenis`string` | PersyaratanWajib | Nilai & batasan anthropic/claude-haiku-5.5 | Bawaan— |
| Kolom`messages` | Jenis`message[]` | PersyaratanWajib | Nilai & batasan | Bawaan— |
| Kolom`messages[].role` | Jenis`string` | PersyaratanWajib | Nilai & batasan user, assistant | Bawaan— |
| Kolom`messages[].content` | Jenis`string` | PersyaratanWajib | Nilai & batasan | Bawaan— |
| Kolom`max_tokens` | Jenis`integer` | PersyaratanWajib | Nilai & batasan | Bawaan— |
| Kolom`stream` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |

Kombinasi bahan masukan

**Teks** · Teks UTF-8

`string messages[].content`

Parameter metode dan siklus hidup

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakmodel, messages, max\_tokens |
| Parameter`optional_controls` | Kontrakstream |
| Parameter`material_types` | Kontraktext |
| Parameter`text_file_material` | KontrakBaca dokumen UTF-8 yang sebenarnya dan masukkan teksnya ke string masukan atau konten pesan yang ditunjukkan. |

Siklus hidup: `synchronous_or_streamed`

### Paket

Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.

Mode Fast

Tarif standar Saat mode fast dipilih

Mode Flex

Tarif standar Saat mode flex dipilih

Upaya penalaran maksimum

Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default

Upaya penalaran · high

Tarif standar Saat upaya penalaran bernilai high

Upaya penalaran · low

Tarif standar Saat upaya penalaran bernilai low

Upaya penalaran · max

Tarif standar Saat upaya penalaran bernilai max

Upaya penalaran · medium

Tarif standar Saat upaya penalaran bernilai medium

Upaya penalaran · xhigh

Tarif standar Saat upaya penalaran bernilai xhigh

#### Tarif Ailoot

#### Harga menurut konfigurasi

Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.

| Konfigurasi | Jadwal tarif | Token konteks, lebih dari | Token konteks, hingga dan termasuk | Biaya |
| --- | --- | --- | --- | --- |
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Token konteks, lebih dari— | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasuk100.000 | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 2 | Jadwal tarif— | Token konteks, lebih dari100.000 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.002** / 1K token |

Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. [Cara kerja cadangan dan penyelesaian tagihan →](https://ailoot.ai/docs/id/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · Anthropic Messages

Isi permintaan JSON minimal yang lengkapcurl · gunakan dokumen UTF-8 AndaPython · simpan hasil secara lengkap

```json
{
  "model": "anthropic/claude-haiku-5.5",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
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
```

```python
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))
```

### Terima dan simpan hasil

#### Ailoot Ultra · Anthropic Messages

JSON atau SSE

##### Simpan semua hasil yang selesai

Simpan setiap respons lengkap, berkas, dan bagian konten yang dikembalikan.

Simpan semua blok konten, tanda tangan penalaran, dan ID penggunaan alat yang sebenarnya. Gabungkan semua delta blok SSE; blok teks pertama bukan keseluruhan keluaran.

##### Jika respons asli perlu diperiksa

Simpan ID permintaan/respons dan header. URL umum untuk pengambilan tugas teks tidak disediakan.

Kolom respons

| Kolom | Jenis |
| --- | --- |
| Kolom`id` | Jenisstring |
| Kolom`model` | Jenisstring |
| Kolom`content[]` | Jenistext\|thinking\|tool\_use\|other content block |
| Kolom`stop_reason` | Jenisstring\|null |
| Kolom`usage` | Jenisobject |

Kesalahan dan langkah berikutnya

| Respons | Kondisi | Langkah berikutnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |

### Alias

#### Alias model

**Ailoot Ultra** [`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=messages), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=messages)

#### Alias jalur metode

Gunakan jalur metode yang ditampilkan di atas.

#### ID pemanggil terkait

[`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=messages), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=messages)

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `~anthropic/claude-haiku-latest`

[`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=chat)

Anthropic /`~anthropic/claude-haiku-latest`

ID model

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

### Mulai

Claude Haiku 5.5 adalah model kecil Anthropic untuk klasifikasi, ekstraksi, ringkasan, perutean, dan tugas agen yang terarah. Model ini menggabungkan pemahaman teks dan gambar dengan penalaran adaptif serta dirancang untuk pekerjaan berulang yang memerlukan respons cepat.

Masukan yang diterima

Teks

Hasil

Teks

### Tersedia di Ailoot · masukan & metode

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions`

Masukan

`text`

Keluaran

`text`

Format keluaran

json atau SSE

| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
| --- | --- | --- | --- | --- |
| Kolom`model` | Jenis`string` | PersyaratanWajib | Nilai & batasan ~anthropic/claude-haiku-latest | Bawaan— |
| Kolom`messages` | Jenis`message[]` | PersyaratanWajib | Nilai & batasan Item minimum: 1 | Bawaan— |
| Kolom`messages[].role` | Jenis`string` | PersyaratanWajib | Nilai & batasan Contoh: system, user, assistant, tool, function Kondisi: Peran ini direpresentasikan secara eksplisit oleh tipe kompatibilitas dalam kode sumber; kumpulan peran model yang tepat tetap khusus untuk tiap model. Bergantung pada model | Bawaan— |
| Kolom`messages[].content` | Jenis`string\|content_part[]\|null` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`messages[].tool_calls` | Jenis`tool_call[]` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`messages[].tool_call_id` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Berlaku jika: role=tool; gunakan ID yang benar-benar dikembalikan | Bawaan— |
| Kolom`messages[].name` | Jenis`string` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`messages[].reasoning_content` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Berlaku jika: Kirim kembali penalaran yang benar-benar dikembalikan jika model ini menggunakannya | Bawaan— |
| Kolom`messages[].reasoning_details` | Jenis`object\|array` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`max_tokens` | Jenis`integer` | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
| Kolom`max_completion_tokens` | Jenis`integer` | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
| Kolom`stream` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |
| Kolom`stream_options.include_usage` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`temperature` | Jenis`number` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`top_p` | Jenis`number` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`stop` | Jenis`string\|string[]` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`tools` | Jenis`function_tool[]` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`tools[].type` | Jenis`string` | PersyaratanOpsional | Nilai & batasan function Bergantung pada model | Bawaan— |
| Kolom`tools[].function.name` | Jenis`string` | PersyaratanWajib | Nilai & batasan Berlaku jika: alat fungsi disediakan | Bawaan— |
| Kolom`tools[].function.description` | Jenis`string` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`tools[].function.parameters` | Jenis`JSON_schema` | PersyaratanOpsional | Nilai & batasan | Bawaan— |
| Kolom`tool_choice` | Jenis`string\|object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`parallel_tool_calls` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`response_format` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`reasoning_effort` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`reasoning` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`service_tier` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`instructions` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Kolom kompatibilitas | Bawaan— |
| Kolom`functions` | Jenis`function[]` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`function_call` | Jenis`string\|object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`prompt_cache_options` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`modalities` | Jenis`string[]` | PersyaratanOpsional | Nilai & batasan text | Bawaan— |
| Kolom`provider` | Jenis`object` | PersyaratanOpsional | Nilai & batasan Kondisi: provider.options ditolak pada rute teks Ultra ini | Bawaan— |
| Kolom`cache_control.ttl` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Kondisi: 1h ditolak pada lokasi cache prompt yang digunakan | Bawaan— |

Kombinasi bahan masukan

**Teks** · Teks UTF8

`messages[].content`

Parameter metode dan siklus hidup

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakmodel, messages |
| Parameter`material_types` | Kontraktext |
| Parameter`messages` | Kontrakarray pesan dengan struktur role/content |
| Parameter`file_material` | Kontrakdokumen UTF-8 yang sebenarnya dimasukkan sebagai teks apa adanya; ID file tidak disimpulkan |
| Parameter`optional_controls` | Kontrakstream, temperature, top\_p, stop, max\_tokens, max\_completion\_tokens, reasoning, response\_format, tools, tool\_choice |
| Parameter`control_scope` | Kontrakkhusus model; alat fungsi pengguna berbeda dari alat yang dihosting |
| Parameter`output_modalities` | Kontraktext |
| Parameter`hosted_operations` | Kontrakfalse |
| Parameter`multimodal_input_binding` | Kontraknull |

Siklus hidup: `synchronous_or_streamed`

Kirim ID model yang tepat bersama messages.

Panjang konteks bukan batas keluaran.

File teks dapat menyediakan teks apa adanya; masukan gambar/audio/objek file memerlukan pengikatan yang tepat.

### Paket

Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.

Mode Fast

Tarif standar Saat mode fast dipilih

Mode Flex

Tarif standar Saat mode flex dipilih

Upaya penalaran maksimum

Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default

Upaya penalaran · high

Tarif standar Saat upaya penalaran bernilai high

Upaya penalaran · low

Tarif standar Saat upaya penalaran bernilai low

Upaya penalaran · max

Tarif standar Saat upaya penalaran bernilai max

Upaya penalaran · medium

Tarif standar Saat upaya penalaran bernilai medium

Upaya penalaran · xhigh

Tarif standar Saat upaya penalaran bernilai xhigh

#### Tarif Ailoot

#### Harga menurut konfigurasi

Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.

| Konfigurasi | Jadwal tarif | Token konteks, lebih dari | Token konteks, hingga dan termasuk | Biaya |
| --- | --- | --- | --- | --- |
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Token konteks, lebih dari— | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasuk100.000 | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 2 | Jadwal tarif— | Token konteks, lebih dari100.000 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.002** / 1K token |

Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. [Cara kerja cadangan dan penyelesaian tagihan →](https://ailoot.ai/docs/id/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · OpenAI Chat

curlPython SDKAliran Python

```bash
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
```

```python
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"))
```

```python
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")
```

### Terima dan simpan hasil

#### Ailoot Ultra · OpenAI Chat

json atau SSE

##### Simpan semua hasil yang selesai

Simpan setiap respons lengkap, berkas, dan bagian konten yang dikembalikan.

Simpan setiap alternatif jawaban beserta konten, panggilan alat, dan penalarannya. Dalam SSE, gabungkan delta menurut indeks alternatif jawaban/alat, lalu pertahankan alasan penghentian akhir dan data penggunaan.

##### Jika respons asli perlu diperiksa

Simpan ID permintaan/respons dan header. URL umum untuk pengambilan tugas teks tidak disediakan.

Kolom respons

| Kolom | Jenis |
| --- | --- |
| Kolom`choices[].index` | Jenisinteger |
| Kolom`choices[].message.content` | Jenisstring\|null |
| Kolom`choices[].message.tool_calls` | Jenistool\_call\[\] |
| Kolom`choices[].message.reasoning_content` | Jenisstring |
| Kolom`choices[].message.reasoning_details` | Jenisobject\|array |
| Kolom`choices[].finish_reason` | Jenisstring\|null |
| Kolom`usage` | Jenisobject |

Kesalahan dan langkah berikutnya

| Respons | Kondisi | Langkah berikutnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |

### Alias

#### Alias model

**Ailoot Ultra** [`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=chat), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=chat)

#### Alias jalur metode

Gunakan jalur metode yang ditampilkan di atas.

#### ID pemanggil terkait

[`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=chat), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `~anthropic/claude-haiku-latest`

[`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=messages)

Anthropic /`~anthropic/claude-haiku-latest`

ID model

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

### Mulai

Claude Haiku 5.5 adalah model kecil Anthropic untuk klasifikasi, ekstraksi, ringkasan, perutean, dan tugas agen yang terarah. Model ini menggabungkan pemahaman teks dan gambar dengan penalaran adaptif serta dirancang untuk pekerjaan berulang yang memerlukan respons cepat.

Masukan yang diterima

Teks

Hasil

json · sse

### Tersedia di Ailoot · masukan & metode

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages`

Masukan

`text`

Keluaran

`json`, `sse`

Format keluaran

JSON atau SSE

| Kolom | Jenis | Persyaratan | Nilai & batasan | Bawaan |
| --- | --- | --- | --- | --- |
| Kolom`model` | Jenis`string` | PersyaratanWajib | Nilai & batasan ~anthropic/claude-haiku-latest | Bawaan— |
| Kolom`messages` | Jenis`message[]` | PersyaratanWajib | Nilai & batasan | Bawaan— |
| Kolom`messages[].role` | Jenis`string` | PersyaratanWajib | Nilai & batasan user, assistant | Bawaan— |
| Kolom`messages[].content` | Jenis`string` | PersyaratanWajib | Nilai & batasan | Bawaan— |
| Kolom`max_tokens` | Jenis`integer` | PersyaratanWajib | Nilai & batasan | Bawaan— |
| Kolom`stream` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |

Kombinasi bahan masukan

**Teks** · Teks UTF-8

`string messages[].content`

Parameter metode dan siklus hidup

| Parameter | Kontrak |
| --- | --- |
| Parameter`content_type` | Kontrakapplication/json |
| Parameter`required` | Kontrakmodel, messages, max\_tokens |
| Parameter`optional_controls` | Kontrakstream |
| Parameter`material_types` | Kontraktext |
| Parameter`text_file_material` | KontrakBaca dokumen UTF-8 yang sebenarnya dan masukkan teksnya ke string masukan atau konten pesan yang ditunjukkan. |

Siklus hidup: `synchronous_or_streamed`

### Paket

Referensi tarif tidak menambah opsi permintaan. Parameter yang didukung tercantum pada metode yang dipilih.

Mode Fast

Tarif standar Saat mode fast dipilih

Mode Flex

Tarif standar Saat mode flex dipilih

Upaya penalaran maksimum

Tarif standar Saat upaya penalaran maksimum menggunakan penyesuaian default

Upaya penalaran · high

Tarif standar Saat upaya penalaran bernilai high

Upaya penalaran · low

Tarif standar Saat upaya penalaran bernilai low

Upaya penalaran · max

Tarif standar Saat upaya penalaran bernilai max

Upaya penalaran · medium

Tarif standar Saat upaya penalaran bernilai medium

Upaya penalaran · xhigh

Tarif standar Saat upaya penalaran bernilai xhigh

#### Tarif Ailoot

#### Harga menurut konfigurasi

Cocokkan setiap biaya dengan kondisi yang ditampilkan. Gunakan satu tarif untuk setiap kelompok konfigurasi alternatif.

| Konfigurasi | Jadwal tarif | Token konteks, lebih dari | Token konteks, hingga dan termasuk | Biaya |
| --- | --- | --- | --- | --- |
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Token konteks, lebih dari— | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasuk100.000 | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.0004** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 2 | Jadwal tarif— | Token konteks, lebih dari100.000 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0002** / 1K token Keluaran · Token keluaran **$0.001** / 1K token Masukan · Pembacaan cache **$0.00002** / 1K token Masukan · Penulisan cache **$0.00025** / 1K token Masukan · Penulisan cache, 1 jam **$0.002** / 1K token |

Ailoot mencadangkan perkiraan dana sebelum permintaan. Setelah hasil diterima, tagihan akhir diselesaikan berdasarkan penggunaan yang terukur. Penyelesaian tagihan streaming menggunakan catatan penggunaan akhir. [Cara kerja cadangan dan penyelesaian tagihan →](https://ailoot.ai/docs/id/billing/reserve/)

### Contoh permintaan

#### Ailoot Ultra · Anthropic Messages

Isi permintaan JSON minimal yang lengkapcurl · gunakan dokumen UTF-8 AndaPython · simpan hasil secara lengkap

```json
{
  "model": "~anthropic/claude-haiku-latest",
  "max_tokens": 128,
  "messages": [
    {
      "role": "user",
      "content": "Summarize the incident report."
    }
  ],
  "stream": false
}
```

```bash
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
```

```python
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))
```

### Terima dan simpan hasil

#### Ailoot Ultra · Anthropic Messages

JSON atau SSE

##### Simpan semua hasil yang selesai

Simpan setiap respons lengkap, berkas, dan bagian konten yang dikembalikan.

Simpan semua blok konten, tanda tangan penalaran, dan ID penggunaan alat yang sebenarnya. Gabungkan semua delta blok SSE; blok teks pertama bukan keseluruhan keluaran.

##### Jika respons asli perlu diperiksa

Simpan ID permintaan/respons dan header. URL umum untuk pengambilan tugas teks tidak disediakan.

Kolom respons

| Kolom | Jenis |
| --- | --- |
| Kolom`id` | Jenisstring |
| Kolom`model` | Jenisstring |
| Kolom`content[]` | Jenistext\|thinking\|tool\_use\|other content block |
| Kolom`stop_reason` | Jenisstring\|null |
| Kolom`usage` | Jenisobject |

Kesalahan dan langkah berikutnya

| Respons | Kondisi | Langkah berikutnya |
| --- | --- | --- |
| Respons400 · `invalid_request_error` | KondisiBidang wajib, representasi materi, atau nilai parameter tidak valid | Langkah berikutnyaPerbaiki bidang yang ditunjukkan sebelum permintaan pembuatan baru. |

### Alias

#### Alias model

**Ailoot Ultra** [`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=messages), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=messages)

#### Alias jalur metode

Gunakan jalur metode yang ditampilkan di atas.

#### ID pemanggil terkait

[`anthropic/claude-haiku-5.5`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=anthropic%2Fclaude-haiku-5.5&fmt=messages), [`~anthropic/claude-haiku-latest`](https://ailoot.ai/models/id/#m=anthropic%2Fclaude-haiku-5.5&route=Ultra&caller=~anthropic%2Fclaude-haiku-latest&fmt=messages)

FAQ · Anthropic: Claude Haiku 5.5

Input dan hasil apa yang tersedia?

`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`

Kolom apa yang digunakan permintaan?

`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`

Batasan apa yang berlaku?

`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`

Hubungkan Ailoot ke Claude Code, OpenCode, Hermes, atau aplikasi Anda.

## Perusahaan dan portofolio proyeknya

Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.

## Beli token dengan diskon.

Diskon langganan untuk pekerjaan rutin. Kode promo — hingga 50% untuk pembelian token.

Langganan

Pilih paket dengan diskon untuk permintaan rutin Anda.

Kode promo hingga 50%

Masukkan kode saat membeli. Harga dihitung ulang sesuai promosi aktif.

Biaya dalam riwayat

Model, token, dan jumlah tagihan disimpan untuk setiap permintaan.

[Pilih langganan](https://ailoot.ai/docs/id/billing/subscriptions/) · [Lihat harga model](https://ailoot.ai/models/id/)

## Hubungkan API ke produk yang Anda jual.

SaaS, aplikasi, dan bot — sesuai penawaran dan perjanjian lisensi Ailoot. Untuk penjualan kembali, mintalah lisensi reseller.

Aplikasi komersial

Integrasikan pembuatan teks, gambar, video, dan suara dalam fitur berbayar layanan Anda.

Lisensi reseller

Kirim deskripsi proyek dan skema akses. Mintalah ketentuan penggunaan dan penjualan kembali secara tertulis.

Dokumen di situs

Penawaran, perjanjian lisensi, dan kebijakan pemrosesan data tersedia sebelum koneksi.

[Minta lisensi reseller](mailto:support@ailoot.ai) · [Penawaran dan perjanjian lisensi](https://ailoot.ai/legal/offer?lang=id)

## Ailoot · Perusahaan dan portofolio proyeknya





Ailoot bertumpu pada pengalaman operasional yang teruji, basis pelanggan yang besar, layanan yang stabil, dan pemantauan KPI berkelanjutan.





Perusahaan dan portofolio proyeknya: jutaan pelanggan; penjualan miliaran setiap bulan.





Ailoot memanfaatkan pengalaman operasional ini untuk akses API ke fitur AI dalam produk pelanggan, agen, aplikasi, dan otomatisasi.


## Tersedia melalui Ailoot API

`claude-haiku-5-5` · Core

Masukan

`text`

Keluaran

`text`

Konteks

200.000 *token*

Panjang jawaban maksimum

65.536 *token*

Masukan

US$0,0001 */ 1K*

Keluaran

US$0,0005 */ 1K*

Pembacaan cache

US$0,00001 */ 1K*

Penulisan cache

US$0,000125 */ 1K*

Penulisan cache, 5 menit

US$0,000125 */ 1K tokens*

Penulisan cache, 1 jam

US$0,0002 */ 1K tokens*

web\_search\_call

US$0,01 *per pemanggilan*

Jumlah pemanggilan maksimum web\_search\_call

8

#### Harga menurut panjang permintaan · Anthropic Messages

| Ukuran permintaan, dalam token | Masukan | Keluaran | Pembacaan cache | Penulisan cache | Cache 5 menit | Cache 1 jam |
| --- | --- | --- | --- | --- | --- | --- |
| Ukuran permintaan, dalam token(0; 100.000\] | MasukanUS$0,0001 | KeluaranUS$0,0005 | Pembacaan cacheUS$0,00001 | Penulisan cacheUS$0,000125 | Cache 5 menitUS$0,000125 | Cache 1 jamUS$0,0002 |
| Ukuran permintaan, dalam token(100.000; ∞) | MasukanUS$0,0005 | KeluaranUS$0,0025 | Pembacaan cacheUS$0,00005 | Penulisan cacheUS$0,000625 | Cache 5 menitUS$0,000625 | Cache 1 jamUS$0,001 |

Tarif dalam USD per 1K token. Jika tidak ada tarif yang ditetapkan, tarif dasar metode ini diwarisi; «—» berarti tidak ada tarif dasar yang ditetapkan.

`claude-haiku-5-5` · Core

Masukan

`text`

Keluaran

`text`

Konteks

200.000 *token*

Panjang jawaban maksimum

65.536 *token*

Masukan

US$0,0001 */ 1K*

Keluaran

US$0,0005 */ 1K*

Pembacaan cache

US$0,00001 */ 1K*

Penulisan cache

US$0,000125 */ 1K*

Penulisan cache, 5 menit

US$0,000125 */ 1K tokens*

Penulisan cache, 1 jam

US$0,0002 */ 1K tokens*

web\_search\_call

US$0,01 *per pemanggilan*

Jumlah pemanggilan maksimum web\_search\_call

8

#### Harga menurut panjang permintaan · OpenAI Responses

| Ukuran permintaan, dalam token | Masukan | Keluaran | Pembacaan cache | Penulisan cache | Cache 5 menit | Cache 1 jam |
| --- | --- | --- | --- | --- | --- | --- |
| Ukuran permintaan, dalam token(0; 100.000\] | MasukanUS$0,0001 | KeluaranUS$0,0005 | Pembacaan cacheUS$0,00001 | Penulisan cacheUS$0,000125 | Cache 5 menitUS$0,000125 | Cache 1 jamUS$0,0002 |
| Ukuran permintaan, dalam token(100.000; ∞) | MasukanUS$0,0005 | KeluaranUS$0,0025 | Pembacaan cacheUS$0,00005 | Penulisan cacheUS$0,000625 | Cache 5 menitUS$0,000625 | Cache 1 jamUS$0,001 |

Tarif dalam USD per 1K token. Jika tidak ada tarif yang ditetapkan, tarif dasar metode ini diwarisi; «—» berarti tidak ada tarif dasar yang ditetapkan.

`claude-haiku-5-5` · Core

Masukan

`text`

Keluaran

`text`

Konteks

200.000 *token*

Panjang jawaban maksimum

65.536 *token*

Masukan

US$0,0001 */ 1K*

Keluaran

US$0,0005 */ 1K*

Pembacaan cache

US$0,00001 */ 1K*

Penulisan cache

US$0,000125 */ 1K*

Penulisan cache, 5 menit

US$0,000125 */ 1K tokens*

Penulisan cache, 1 jam

US$0,0002 */ 1K tokens*

web\_search\_call

US$0,01 *per pemanggilan*

Jumlah pemanggilan maksimum web\_search\_call

8

#### Harga menurut panjang permintaan · OpenAI Chat

| Ukuran permintaan, dalam token | Masukan | Keluaran | Pembacaan cache | Penulisan cache | Cache 5 menit | Cache 1 jam |
| --- | --- | --- | --- | --- | --- | --- |
| Ukuran permintaan, dalam token(0; 100.000\] | MasukanUS$0,0001 | KeluaranUS$0,0005 | Pembacaan cacheUS$0,00001 | Penulisan cacheUS$0,000125 | Cache 5 menitUS$0,000125 | Cache 1 jamUS$0,0002 |
| Ukuran permintaan, dalam token(100.000; ∞) | MasukanUS$0,0005 | KeluaranUS$0,0025 | Pembacaan cacheUS$0,00005 | Penulisan cacheUS$0,000625 | Cache 5 menitUS$0,000625 | Cache 1 jamUS$0,001 |

Tarif dalam USD per 1K token. Jika tidak ada tarif yang ditetapkan, tarif dasar metode ini diwarisi; «—» berarti tidak ada tarif dasar yang ditetapkan.

`claude-haiku-5-5` · Core

Masukan

`text`

Keluaran

`text`

Konteks

200.000 *token*

Panjang jawaban maksimum

65.536 *token*

Masukan

US$0,0001 */ 1K*

Keluaran

US$0,0005 */ 1K*

Pembacaan cache

US$0,00001 */ 1K*

Penulisan cache

US$0,000125 */ 1K*

Penulisan cache, 5 menit

US$0,000125 */ 1K tokens*

Penulisan cache, 1 jam

US$0,0002 */ 1K tokens*

web\_search\_call

US$0,01 *per pemanggilan*

Jumlah pemanggilan maksimum web\_search\_call

8

#### Harga menurut panjang permintaan · Gemini generateContent

| Ukuran permintaan, dalam token | Masukan | Keluaran | Pembacaan cache | Penulisan cache | Cache 5 menit | Cache 1 jam |
| --- | --- | --- | --- | --- | --- | --- |
| Ukuran permintaan, dalam token(0; 100.000\] | MasukanUS$0,0001 | KeluaranUS$0,0005 | Pembacaan cacheUS$0,00001 | Penulisan cacheUS$0,000125 | Cache 5 menitUS$0,000125 | Cache 1 jamUS$0,0002 |
| Ukuran permintaan, dalam token(100.000; ∞) | MasukanUS$0,0005 | KeluaranUS$0,0025 | Pembacaan cacheUS$0,00005 | Penulisan cacheUS$0,000625 | Cache 5 menitUS$0,000625 | Cache 1 jamUS$0,001 |

Tarif dalam USD per 1K token. Jika tidak ada tarif yang ditetapkan, tarif dasar metode ini diwarisi; «—» berarti tidak ada tarif dasar yang ditetapkan.

[JSON](https://ailoot.ai/models/id/anthropic-claude-haiku-5-5/method-additions-902470a62d7e4a07d477.json)
