Source: https://ailoot.ai/models/id/claude-opus-4-20250514-thinking/
Canonical: https://ailoot.ai/models/id/claude-opus-4-20250514-thinking/
Language: id

# claude-opus-4-20250514-thinking

[Markdown](https://ailoot.ai/models/id/claude-opus-4-20250514-thinking/index.md) · [JSON](https://ailoot.ai/models/id/claude-opus-4-20250514-thinking/facts.json)

## [claude-opus-4-20250514-thinking](https://ailoot.ai/models/id/claude-opus-4-20250514-thinking/)

Claude Opus 4 Thinking menggunakan mode berpikir mendalam dari Opus 4 asli untuk perubahan perangkat lunak yang kompleks, alur kerja agen yang berkelanjutan, dan riset. Model ini dapat menalar di antara langkah penggunaan alat yang didukung serta menghubungkan bukti sepanjang tugas yang menantang sebelum menghasilkan keluaran teks.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `claude-opus-4-20250514-thinking`](https://ailoot.ai/models/id/claude-opus-4-20250514-thinking/#method-0)

Tentang model

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

Claude Opus 4 Thinking menerapkan penalaran mendalam pada model Claude Opus 4 asli. Anthropic memosisikan generasi ini untuk pekerjaan pemrograman yang sulit, riset, penulisan, dan tugas yang membutuhkan arah yang konsisten sepanjang banyak langkah. Sebutan Thinking berkaitan dengan cara model menyusun respons; sebutan ini tidak mengubah Opus 4 asli menjadi edisi Opus yang lebih baru.

#### Menalar sepanjang tugas yang menantang

Claude Opus 4 menggabungkan mode respons standar dengan mode berpikir mendalam. Dalam mode berpikir mendalam, model dapat meluangkan lebih banyak waktu untuk mengkaji masalah sebelum menjawab. Pembuatnya menyebut kemampuan bekerja secara berkelanjutan pada tugas kompleks sebagai keunggulan utama, terutama ketika tugas membutuhkan rangkaian temuan yang saling terhubung, bukan penyelesaian prompt yang terpisah-pisah.

Untuk pertanyaan riset, berikan materi yang akan dibandingkan, keputusan yang perlu didukung oleh materi itu, serta kondisi yang penting. Mintalah sintesis berbasis bukti yang memisahkan temuan, asumsi, dan pertanyaan terbuka. Untuk tugas penulisan, sertakan pembaca sasaran, materi sumber, struktur yang diperlukan, dan klaim yang harus dijelaskan oleh hasilnya. Ini merupakan penerapan praktis kemampuan riset dan penulisan yang didokumentasikan untuk model, bukan janji mengenai hasil tertentu.

#### Perubahan di seluruh basis kode

Anthropic menekankan pemahaman kode yang kompleks, penyuntingan, pelacakan bug, dan perubahan yang mencakup beberapa berkas. Berikan modul yang relevan, kontrak antarmuka, perilaku yang diharapkan, serta pengujian yang ada atau keluaran kesalahan. Tentukan cakupan perubahan yang diminta dan mintalah model menjelaskan ketergantungan yang membuat suntingan usulan itu diperlukan.

Hasil rekayasa yang berguna menghubungkan tiga hal: penyebab masalah, implementasi yang konsisten, dan cara memeriksa perilaku yang dihasilkan. Untuk refaktor, nyatakan antarmuka publik dan perilaku yang dapat diamati yang harus tetap sama. Untuk fitur, jelaskan alur pengguna dan kasus kegagalannya. Dengan demikian, penalaran berkelanjutan model membantu proyek, bukan sekadar menghasilkan jawaban yang lebih panjang.

#### Alat, pekerjaan paralel, dan kesinambungan

Generasi Claude 4 asli menambahkan penalaran di antara pemanggilan alat dalam alur kerja berpikir mendalam yang didokumentasikan Anthropic. Model dapat memeriksa hasil alat, mempertimbangkan kembali pendekatannya, dan memilih tindakan selanjutnya. Pembuatnya juga menjelaskan penggunaan alat secara paralel serta kesinambungan yang lebih baik ketika aplikasi menyediakan berkas lokal yang dapat dibaca dan diperbarui model.

Agen yang menggunakan kemampuan ini memerlukan aplikasi yang menyediakan alat, menjalankan tindakan yang diminta, dan mengembalikan hasilnya. Berkas memori juga merupakan bagian dari lingkungan aplikasi; berkas itu bukan penyimpanan tanpa batas yang otomatis terbawa di antara percakapan yang tidak berkaitan. Saat merancang alur kerja, kembalikan pengamatan yang relevan kepada model dan pastikan tujuan tugas serta kriteria penerimaannya tetap tersedia.

#### Analisis visual dan keluaran teks

Claude Opus 4 juga mendukung analisis visual. Tangkapan layar, grafik, dan diagram dapat menyediakan bukti bersama teks, sementara jawaban model tetap berupa teks. Gunakan gambar yang terbaca jelas dan tentukan hubungan yang ingin dijelaskan. Sertakan nilai sumber ketika tugas bergantung pada hitungan atau pengukuran yang tepat, karena penafsiran visual dapat bersifat perkiraan.

Untuk tugas melalui Ailoot API, tentukan artefak akhir yang Anda perlukan: usulan perubahan beberapa berkas, penyelidikan teknis, sintesis riset, atau dokumen dengan struktur yang cermat. Tambahkan bukti dan batasan yang membantu model memilih pendekatan. Ringkasan berpikir mendalam dari pembuatnya memberikan penjelasan bersama hasil, tetapi ringkasan bukan rekaman kata demi kata dari seluruh penalaran. Periksa kode atau analisis yang disampaikan terhadap persyaratan tugas, termasuk asumsi yang masih memerlukan bukti.

Tugas praktis

### Tugas praktis

Contoh teknis dalam bahasa Inggris

```
Plan a coordinated order refactor

Review this proposed refactor. Module A emits {order_id, total_cents}; module B stores those fields; module C displays total_cents / 100. A developer proposes renaming only A to amount_cents. Identify affected contracts and propose a coordinated migration that preserves existing consumers, with checks for old and new records.
```

#### Hasil yang diharapkan

```
A dependency map in text, a staged migration proposal and compatibility checks for each consumer.
```

#### Periksa hasil

```
Confirm the proposal covers B and C and does not silently reinterpret cents as whole currency units.
```

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `claude-opus-4-20250514-thinking`

[`claude-opus-4-20250514-thinking`](https://ailoot.ai/models/id/#m=claude-opus-4-20250514-thinking&route=Ultra&caller=claude-opus-4-20250514-thinking&fmt=chat)

Anthropic /`claude-opus-4-20250514-thinking`

### Mulai

Claude Opus 4 Thinking menggunakan mode berpikir mendalam dari Opus 4 asli untuk perubahan perangkat lunak yang kompleks, alur kerja agen yang berkelanjutan, dan riset. Model ini dapat menalar di antara langkah penggunaan alat yang didukung serta menghubungkan bukti sepanjang tugas yang menantang sebelum menghasilkan keluaran teks.

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 claude-opus-4-20250514-thinking | 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

Tidak ditentukan Saat mode fast dipilih

Mode Flex

Tidak ditentukan Saat mode flex dipilih

Upaya penalaran maksimum

Tidak ditentukan Saat upaya penalaran maksimum menggunakan penyesuaian default

#### Tarif Ailoot

#### Harga menurut konfigurasi

| Konfigurasi | Jadwal tarif | Biaya |
| --- | --- | --- |
| KonfigurasiTarif dasar token | Jadwal tarifTarif dasar | Biaya Masukan · Token masukan **$0.03** / 1K token Keluaran · Token keluaran **$0.15** / 1K token Masukan · Pembacaan cache **$0.0006** / 1K token Masukan · Penulisan cache **$0.0075** / 1K token Masukan · Penulisan cache, 1 jam **—** / 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": "claude-opus-4-20250514-thinking", "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='claude-opus-4-20250514-thinking',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='claude-opus-4-20250514-thinking',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** [`claude-opus-4-20250514-thinking`](https://ailoot.ai/models/id/#m=claude-opus-4-20250514-thinking&route=Ultra&caller=claude-opus-4-20250514-thinking&fmt=chat)

#### Alias jalur metode

Gunakan jalur metode yang ditampilkan di atas.

#### ID pemanggil terkait

[`claude-opus-4-20250514-thinking`](https://ailoot.ai/models/id/#m=claude-opus-4-20250514-thinking&route=Ultra&caller=claude-opus-4-20250514-thinking&fmt=chat)

FAQ · claude-opus-4-20250514-thinking

Input dan hasil apa yang tersedia?

`POST /v1/chat/completions` · `claude-opus-4-20250514-thinking`: `text` → `text`

Kolom apa yang digunakan permintaan?

`POST /v1/chat/completions` · `claude-opus-4-20250514-thinking`: `model`, `messages`, `stream`, `modalities`, `provider`

Batasan apa yang berlaku?

`POST /v1/chat/completions` · `claude-opus-4-20250514-thinking`: `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.
