Source: https://ailoot.ai/models/id/inclusionai-ling-3-1-flash/
Canonical: https://ailoot.ai/models/id/inclusionai-ling-3-1-flash/
Language: id

# inclusionAI: Ling 3.1 Flash

[Markdown](https://ailoot.ai/models/id/inclusionai-ling-3-1-flash/index.md) · [JSON](https://ailoot.ai/models/id/inclusionai-ling-3-1-flash/facts.json)

## [inclusionAI: Ling 3.1 Flash](https://ailoot.ai/models/id/inclusionai-ling-3-1-flash/)

Ling 3.1 Flash adalah model penalaran hibrida inclusionAI untuk pekerjaan kantor, pengembangan perangkat lunak berkelanjutan, dan agen kompleks. Arsitektur sparse dengan 560 miliar parameter mengaktifkan sekitar 25 miliar parameter per token, mendukung perencanaan beberapa langkah, interaksi alat, dan revisi berdasarkan hasil antara.

- [**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/inclusionai-ling-3-1-flash/#method-0)
- [**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/inclusionai-ling-3-1-flash/#method-1)

Tentang model

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

Ling 3.1 Flash adalah model bahasa penalaran hibrida inclusionAI untuk tugas yang melibatkan beberapa tahap, bukan satu jawaban singkat. Produsen memosisikannya untuk pekerjaan kantor sehari-hari, rekayasa perangkat lunak berkelanjutan, dan alur kerja agen kompleks. Model ini menggunakan arsitektur mixture-of-experts dengan sekitar 560 miliar parameter total dan sekitar 25 miliar parameter aktif untuk setiap token, menyeimbangkan kapasitas model besar dengan komputasi aktif yang lebih kecil.

Tujuan utama desainnya adalah mempertahankan status tugas dan memperbaiki arah pekerjaan yang lebih panjang. Dalam alur kerja yang terhubung ke alat, model dapat merencanakan beberapa langkah, menafsirkan hasil antara, dan merevisi langkah berikutnya ketika bukti berubah. Berikan tujuan yang tepat, materi yang tersedia, dan definisi penyelesaian. Contoh: “Tinjau catatan insiden ini, identifikasi penyebab yang belum terselesaikan, dan buat rencana investigasi berprioritas. Untuk setiap tindakan, sebutkan bukti yang diperlukan untuk menentukan apakah tindakan itu berhasil.” Ini mengubah permintaan samar menjadi hasil yang dapat diperiksa dan dilanjutkan.

Untuk pekerjaan kantor, masukan yang berguna meliputi catatan sumber, teks hasil ekstraksi dokumen, tabel dengan definisi kolom yang jelas, dan audiens laporan yang dituju. Nyatakan periode, satuan, dan perbandingan yang digunakan. Mintalah hasil tertulis seperti ringkasan pengarahan manajemen, kerangka laporan, atau penjelasan perubahan penting. Contohnya: “Hanya berdasarkan tabel triwulanan ini, jelaskan perubahan terbesar, bedakan nilai yang diamati dari asumsi, dan susun ringkasan pengarahan dengan pertanyaan yang belum terjawab di bagian akhir.” Pertahankan label sumber bersama masukan agar klaim hasil dapat ditelusuri ke materi yang tepat.

Untuk pengembangan perangkat lunak, produsen menonjolkan refactoring lintas bahasa, optimasi kinerja, dan analisis bagian basis kode yang sering digunakan. Berikan berkas relevan sebagai teks, perilaku yang harus dipertahankan, versi dependensi, serta keluaran gagal atau pengukuran yang tersedia. Permintaan yang berguna meminta usulan perubahan dan pemeriksaan untuk menilainya: “Lakukan refactoring parser ini sambil mempertahankan format keluaran yang didokumentasikan. Jelaskan perilaku yang terpengaruh, tampilkan kode revisi, dan identifikasi kasus yang dapat mengungkap regresi.” Untuk pekerjaan kinerja, berikan profil atau pengukuran waktu nyata dan minta setiap rekomendasi dihubungkan dengan hambatan yang terukur.

Untuk analisis profesional, kumpulkan aturan, definisi, dan bukti yang relevan sebelum meminta rekomendasi. Ling 3.1 Flash ditujukan untuk menyintesis informasi yang tersebar, menafsirkan indikator, dan mengembangkan saran tindakan. Mintalah perbandingan yang menyebut asumsi dan informasi tambahan yang masih dibutuhkan, bukan putusan tanpa dukungan. Misalnya, berikan beberapa proposal proyek dan minta memo keputusan dengan kriteria yang sama bagi masing-masing, serta pengamatan yang didukung sumber dipisahkan dari konsekuensi yang disimpulkan. Ketika bukti bertentangan, mintalah bagian teks yang bertentangan dan pertanyaan yang dapat menyelesaikannya.

Produsen membedakan batas konteks model sebesar 1M token dari konteks 256K yang saat ini dibuka oleh layanan resminya. Angka ini menggambarkan batas berbeda. Susun materi kerja berdasarkan jendela yang berlaku dan sisakan ruang bagi respons; batas tingkat model tidak berarti setiap antarmuka menerima masukan sebesar itu. Untuk tugas besar, simpan tujuan, keputusan yang sudah diselesaikan, pertanyaan terbuka, dan referensi sumber bersama. Gunakan batas eksplisit di sekitar dokumen dan kode agar materi yang perlu dianalisis tidak disalahartikan sebagai instruksi untuk diikuti.

Siapkan tugas yang terhubung ke alat dengan deskripsi alat yang jelas, argumen yang diharapkan, dan catatan hasil yang berguna. Masukkan hasil nyata kembali ke percakapan agar usulan berikutnya berdasarkan pengamatan. Mintalah model menjelaskan perubahan yang ditimbulkan hasil tersebut dan bukti yang masih kurang. Desain model yang berorientasi agen mendukung pola perencanaan dan umpan balik ini; aplikasi yang mengelilinginya menjalankan langkah alat dan menyimpan hasilnya. Usulan perintah, perubahan kode, atau laporan paling berguna ketika statusnya jelas: diusulkan, dijalankan dengan hasil tercatat, atau masih menunggu verifikasi.

Ling 3.1 Flash termasuk dalam lini model bahasa; edisi terpisah Ling 3.0 Flash VL adalah model visual produsen. Untuk tugas teks ini, siapkan isi sumber tekstual dan pertahankan struktur, label, serta asal-usulnya. Tentukan bahasa dan bentuk keluaran, seperti memo ringkas, tabel temuan, penjelasan patch, atau rencana bernomor. Mintalah model menandai informasi yang kurang dan periksa hasil yang diminta terhadap batasan awal. Alur kerja panjang tetap memerlukan pemeriksaan hasil antara: asumsi keliru di awal dapat terbawa ke penalaran selanjutnya dan dipoles menjadi laporan akhir yang meyakinkan.

**Ailoot Ultra · OpenAI Chat** `POST /v1/chat/completions` `inclusionai/ling-3.1-flash`

[`inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/#m=inclusionai%2Fling-3.1-flash&route=Ultra&caller=inclusionai%2Fling-3.1-flash&fmt=chat)

inclusionAI /`inclusionai/ling-3.1-flash`

### Mulai

Ling 3.1 Flash adalah model penalaran hibrida inclusionAI untuk pekerjaan kantor, pengembangan perangkat lunak berkelanjutan, dan agen kompleks. Arsitektur sparse dengan 560 miliar parameter mengaktifkan sekitar 25 miliar parameter per token, mendukung perencanaan beberapa langkah, interaksi alat, dan revisi berdasarkan hasil antara.

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 inclusionai/ling-3.1-flash | Bawaan— |
| Kolom`messages` | Jenis`message[]` | PersyaratanWajib | Nilai & batasan Item minimum: 1 | Bawaan— |
| Kolom`messages[].role` | Jenis`string` | PersyaratanWajib | Nilai & batasan Bergantung pada model | Bawaan— |
| Kolom`messages[].content` | Jenis`string` | PersyaratanOpsional | Nilai & batasan Berlaku jika: Percakapan teks | Bawaan— |
| Kolom`stream` | Jenis`boolean` | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |

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 |
| Parameter`control_scope` | KontrakPercakapan teks; stream adalah nilai boolean dengan false sebagai bawaan. |
| Parameter`output_modalities` | Kontraktext |
| Parameter`hosted_operations` | Kontrakfalse |
| Parameter`multimodal_input_binding` | Kontraknull |

Alias metode: `/chat/completions`

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

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.0006** / 1K token Keluaran · Token keluaran **$0.0018** / 1K token Masukan · Pembacaan cache **$0.00012** / 1K token Masukan · Penulisan cache **—** / 1K token Masukan · Penulisan cache, 1 jam **—** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0006** / 1K token Keluaran · Token keluaran **$0.0018** / 1K token Masukan · Pembacaan cache **$0.00012** / 1K token Masukan · Penulisan cache **—** / 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 SDK

```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":"inclusionai/ling-3.1-flash","messages":[{"role":"user","content":"hello"}],"stream":false}')

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="inclusionai/ling-3.1-flash", messages=[{"role":"user","content":"hello"}], stream=False)
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"))
```

### 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** [`inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/#m=inclusionai%2Fling-3.1-flash&route=Ultra&caller=inclusionai%2Fling-3.1-flash&fmt=chat)

#### Alias jalur metode

`/chat/completions`

#### ID pemanggil terkait

[`inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/#m=inclusionai%2Fling-3.1-flash&route=Ultra&caller=inclusionai%2Fling-3.1-flash&fmt=chat)

**Ailoot Ultra · Anthropic Messages** `POST /v1/messages` `inclusionai/ling-3.1-flash`

[`inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/#m=inclusionai%2Fling-3.1-flash&route=Ultra&caller=inclusionai%2Fling-3.1-flash&fmt=messages)

inclusionAI /`inclusionai/ling-3.1-flash`

### Mulai

Ling 3.1 Flash adalah model penalaran hibrida inclusionAI untuk pekerjaan kantor, pengembangan perangkat lunak berkelanjutan, dan agen kompleks. Arsitektur sparse dengan 560 miliar parameter mengaktifkan sekitar 25 miliar parameter per token, mendukung perencanaan beberapa langkah, interaksi alat, dan revisi berdasarkan hasil antara.

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 inclusionai/ling-3.1-flash | 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

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

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.0006** / 1K token Keluaran · Token keluaran **$0.0018** / 1K token Masukan · Pembacaan cache **$0.00012** / 1K token Masukan · Penulisan cache **—** / 1K token Masukan · Penulisan cache, 1 jam **—** / 1K token |
| KonfigurasiPanjang permintaan · tingkat 1 | Jadwal tarif— | Token konteks, lebih dari0 | Token konteks, hingga dan termasukTanpa batas atas | Biaya Masukan · Token masukan **$0.0006** / 1K token Keluaran · Token keluaran **$0.0018** / 1K token Masukan · Pembacaan cache **$0.00012** / 1K token Masukan · Penulisan cache **—** / 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 · Anthropic Messages

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

```json
{
  "model": "inclusionai/ling-3.1-flash",
  "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': 'inclusionai/ling-3.1-flash', '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': 'inclusionai/ling-3.1-flash', '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** [`inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/#m=inclusionai%2Fling-3.1-flash&route=Ultra&caller=inclusionai%2Fling-3.1-flash&fmt=messages)

#### Alias jalur metode

`/chat/completions`

#### ID pemanggil terkait

[`inclusionai/ling-3.1-flash`](https://ailoot.ai/models/id/#m=inclusionai%2Fling-3.1-flash&route=Ultra&caller=inclusionai%2Fling-3.1-flash&fmt=messages)

FAQ · inclusionAI: Ling 3.1 Flash

Input dan hasil apa yang tersedia?

`POST /v1/chat/completions` · `inclusionai/ling-3.1-flash`: `text` → `text` `POST /v1/messages` · `inclusionai/ling-3.1-flash`: `text` → `json`, `sse`

Kolom apa yang digunakan permintaan?

`POST /v1/chat/completions` · `inclusionai/ling-3.1-flash`: `model`, `messages`, `stream` `POST /v1/messages` · `inclusionai/ling-3.1-flash`: `model`, `messages`, `max_tokens`, `stream`

Batasan apa yang berlaku?

`POST /v1/chat/completions` · `inclusionai/ling-3.1-flash`: `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.
