MoonshotAI: Kimi K2.5
Kimi K2.5 adalah model agen yang secara bawaan multimodal dari Moonshot AI untuk pemrograman berlandaskan gambar, penalaran, dan pekerjaan berbantuan alat. Model ini menggabungkan teks, gambar, dan video dengan mode thinking dan instant, konteks 256K, serta alur pembuatnya untuk subtugas agen yang terkoordinasi.
- Ailoot Ultra · OpenAI Chat
POST /v1/chat/completionsmoonshotai/kimi-k2.5 - Ailoot Ultra · Anthropic Messages
POST /v1/messagesmoonshotai/kimi-k2.5
Tentang model
Deskripsi ini mencakup kemampuan model. Masukan, keluaran, dan opsi yang tersedia di Ailoot tercantum di bawah untuk metode yang dipilih.
Kimi K2.5 adalah model agen yang secara bawaan multimodal dari Moonshot AI, yang dibangun melalui prapelatihan lanjutan pada sekitar lima belas triliun token campuran visual dan teks di atas Kimi K2 Base. Model ini menggabungkan bahasa dan kemampuan visual dengan alur percakapan serta agen. Masukannya dapat memuat teks, gambar, dan video; keluarannya berupa teks seperti penjelasan, kode, atau usulan operasi alat.
Varian model
Ringkasan pembuatnya mencantumkan arsitektur mixture-of-experts dengan total satu triliun parameter dan 32 miliar parameter yang diaktifkan, konteks 256K, serta encoder visual MoonViT dengan 400 juta parameter. K2.5 mengadopsi metode kuantisasi INT4 bawaan yang didokumentasikan untuk K2 Thinking. Ini adalah sifat checkpoint pembuat yang dipublikasikan, berbeda dari pernyataan tentang setiap konfigurasi eksekusi di sekelilingnya.
Pemrograman dengan bukti visual
Kasus penggunaan yang menonjol adalah pembuatan kode dari spesifikasi visual, termasuk desain antarmuka dan alur video. Berikan media yang terbaca, kode sumber yang relevan, dan perilaku yang dimaksud. Identifikasi detail visual mana yang wajib dan bagaimana hasil harus merespons interaksi pengguna. Arahan yang berguna adalah: “Implementasikan tata letak yang diberikan, pertahankan label ini, dan jelaskan bagaimana keadaan yang terlihat sesuai dengan persyaratan.”
Untuk tugas analisis gambar, minta detail yang terlihat yang mendukung setiap temuan dan pisahkan ekstraksi dari penafsiran. Untuk video, nyatakan segmen serta tindakan atau perubahan yang harus dijelaskan. Pembuatnya menandai alur video yang didemonstrasikan sebagai eksperimental; memahami media menghasilkan teks, bukan merender video baru atau menjalankan tindakan visual dengan sendirinya.
Respons thinking dan instant
K2.5 mendukung mode thinking dan instant. Thinking mengembangkan penalaran sebelum respons akhir; mode instant menjawab langsung. Penerapan referensi pembuatnya merekomendasikan temperature 1.0 untuk thinking, 0.6 untuk instant, dan top-p 0.95. Tetapkan bentuk jawaban yang diinginkan secara terpisah dari pilihan penalaran tersebut, seperti rekaman hasil ekstraksi, memo keputusan, atau artefak kode lengkap.
Untuk pertanyaan sulit, berikan kondisi lengkap dan sumber yang relevan. Arahan dokumen dapat meminta perbandingan dengan bagian pendukung di samping setiap kesimpulan. Arahan pemrograman dapat mengidentifikasi masukan yang gagal, batasan, dan perubahan yang harus diusulkan. Keluaran harus tetap dapat ditelusuri ke tugas tersebut, bukan memperlakukan jejak penalaran panjang sebagai hasil yang telah selesai.
Alat yang diselingi penalaran dan tugas agen
K2.5 menggunakan rancangan thinking yang diselingi pemanggilan alat beberapa langkah yang sama dengan K2 Thinking. Aplikasi menyediakan fungsi dengan deskripsi dan skema, menjalankan operasi terpilih, dan mengembalikan pengamatan. Jaga hasil tetap terkait dengan pemanggilannya agar langkah berikutnya dapat menggunakan bukti aktual.
Pembuatnya juga menjelaskan alur agent-swarm yang menguraikan tujuan kompleks menjadi subtugas khusus domain yang terkoordinasi. Siapkan tujuan seperti itu dengan keluaran yang terdefinisi, tindakan yang diperbolehkan, dan kriteria penyelesaian. Artefak akhir harus mengintegrasikan pengamatan yang benar-benar diperoleh; rencana yang dihasilkan atau cabang yang diusulkan berbeda dari pekerjaan yang telah dijalankan.
Konteks dan tinjauan
Alokasikan sumber, representasi media, riwayat, penalaran, dan jawaban akhir dalam konteks 256K yang terdokumentasi. Anggaran token permintaan contoh dan evaluasi dalam kartu model bukan batas keluaran universal yang ditetapkan secara mandiri. Beri label pada sumber dan media agar hasil dapat merujuk kembali ke buktinya.
Hasil kerja yang berguna adalah penjelasan berlandaskan gambar, usulan kode, atau hasil analitis berbasis sumber. Tinjau nilai terhadap masukan dan periksa kode dalam aplikasi yang dituju. K2.5 tetap merupakan rilis multimodal tersendiri; kontrol preserve-thinking pada K2.6 berikutnya dan varian prompting K2 terdahulu yang hanya berbasis teks tidak boleh menggantikan alur yang didokumentasikan untuk edisi ini.
Tugas praktis
Tugas praktis
Contoh teknis dalam bahasa Inggris
Draft an accessible tab interaction
Provide HTML and JavaScript for three text-only tabs: Overview, Details and Returns. Exactly one panel is visible. Mouse clicks and Left/Right arrow keys change tabs; Home selects the first and End the last. Preserve those labels and include the key accessibility attributes. Return the bounded component and a short interaction-check list without claiming execution.Hasil yang diharapkan
A self-contained tab component proposal and checks for click, arrow, Home and End behavior.Periksa hasil
The selected tab, focus behavior and visible panel remain consistent after each supported interaction.Ailoot Ultra · OpenAI Chat POST /v1/chat/completions moonshotai/kimi-k2.5
moonshotai/kimi-k2.5Mulai
Kimi K2.5 adalah model agen yang secara bawaan multimodal dari Moonshot AI untuk pemrograman berlandaskan gambar, penalaran, dan pekerjaan berbantuan alat. Model ini menggabungkan teks, gambar, dan video dengan mode thinking dan instant, konteks 256K, serta alur pembuatnya untuk subtugas agen yang terkoordinasi.
- 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 |
|---|---|---|---|---|
Kolommodel | Jenisstring | PersyaratanWajib | Nilai & batasan moonshotai/kimi-k2.5 | Bawaan— |
Kolommessages | Jenismessage[] | PersyaratanWajib | Nilai & batasan Item minimum: 1 | Bawaan— |
Kolommessages[].role | Jenisstring | 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— |
Kolommessages[].content | Jenisstring|content_part[]|null | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolommessages[].tool_calls | Jenistool_call[] | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolommessages[].tool_call_id | Jenisstring | PersyaratanOpsional | Nilai & batasan Berlaku jika: role=tool; gunakan ID yang benar-benar dikembalikan | Bawaan— |
Kolommessages[].name | Jenisstring | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolommessages[].reasoning_content | Jenisstring | PersyaratanOpsional | Nilai & batasan Berlaku jika: Kirim kembali penalaran yang benar-benar dikembalikan jika model ini menggunakannya | Bawaan— |
Kolommessages[].reasoning_details | Jenisobject|array | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolommax_tokens | Jenisinteger | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
Kolommax_completion_tokens | Jenisinteger | PersyaratanOpsional | Nilai & batasan Minimum: 1 Bergantung pada model | Bawaan— |
Kolomstream | Jenisboolean | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |
Kolomstream_options.include_usage | Jenisboolean | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtemperature | Jenisnumber | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtop_p | Jenisnumber | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomstop | Jenisstring|string[] | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtools | Jenisfunction_tool[] | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomtools[].type | Jenisstring | PersyaratanOpsional | Nilai & batasan function Bergantung pada model | Bawaan— |
Kolomtools[].function.name | Jenisstring | PersyaratanWajib | Nilai & batasan Berlaku jika: alat fungsi disediakan | Bawaan— |
Kolomtools[].function.description | Jenisstring | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolomtools[].function.parameters | JenisJSON_schema | PersyaratanOpsional | Nilai & batasan | Bawaan— |
Kolomtool_choice | Jenisstring|object | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomparallel_tool_calls | Jenisboolean | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomresponse_format | Jenisobject | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomreasoning_effort | Jenisstring | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomreasoning | Jenisobject | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomservice_tier | Jenisstring | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolominstructions | Jenisstring | PersyaratanOpsional | Nilai & batasan Kolom kompatibilitas | Bawaan— |
Kolomfunctions | Jenisfunction[] | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomfunction_call | Jenisstring|object | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolomprompt_cache_options | Jenisobject | PersyaratanOpsional | Nilai & batasan Bergantung pada model | Bawaan— |
Kolommodalities | Jenisstring[] | PersyaratanOpsional | Nilai & batasan text | Bawaan— |
Kolomprovider | Jenisobject | PersyaratanOpsional | Nilai & batasan Kondisi: provider.options ditolak pada rute teks Ultra ini | Bawaan— |
Kolomcache_control.ttl | Jenisstring | 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 |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, messages |
Parametermaterial_types | Kontraktext |
Parametermessages | Kontrakarray pesan dengan struktur role/content |
Parameterfile_material | Kontrakdokumen UTF-8 yang sebenarnya dimasukkan sebagai teks apa adanya; ID file tidak disimpulkan |
Parameteroptional_controls | Kontrakstream, temperature, top_p, stop, max_tokens, max_completion_tokens, reasoning, response_format, tools, tool_choice |
Parametercontrol_scope | Kontrakkhusus model; alat fungsi pengguna berbeda dari alat yang dihosting |
Parameteroutput_modalities | Kontraktext |
Parameterhosted_operations | Kontrakfalse |
Parametermultimodal_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
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.0012 / 1K token Keluaran · Token keluaran $0.006 / 1K token Masukan · Pembacaan cache $0.0003 / 1K token Masukan · Penulisan cache $0 / 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.0012 / 1K token Keluaran · Token keluaran $0.006 / 1K token Masukan · Pembacaan cache $0.0003 / 1K token Masukan · Penulisan cache $0 / 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 →
Contoh permintaan
Ailoot Ultra · OpenAI Chat
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "moonshotai/kimi-k2.5", "messages": [{"role": "user", "content": "Explain the difference between an observation and a hypothesis in three sentences."}]}')
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/chat/completions \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
r=json.loads(Path("result.json").read_text())
for x in r.get("choices",[]):
if x.get("message",{}).get("content"): print(x["message"]["content"])
PY_RESULT
from openai import OpenAI
import os
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
result=client.chat.completions.create(model='moonshotai/kimi-k2.5',messages=[{"role":"user","content":"Explain observations and hypotheses in three sentences."}])
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
save_result(result.to_dict(mode="json"))
from openai import OpenAI
import os
from pathlib import Path
if not os.environ.get("AILOOT_API_KEY", "").strip(): raise SystemExit("Set AILOOT_API_KEY before making a request")
client=OpenAI(base_url="https://api.ailoot.ai/v1",api_key=os.environ["AILOOT_API_KEY"],max_retries=0)
import base64, json
from pathlib import Path
def save_result(data, stem="result"):
# Keep every field, including usage, IDs, reasoning and tool requests.
Path(stem + ".json").write_text(json.dumps(data, ensure_ascii=False, indent=2), encoding="utf-8")
print(json.dumps(data, ensure_ascii=False, indent=2))
def save_blob(encoded, suffix, label):
raw = base64.b64decode(encoded, altchars=b"-_", validate=True)
ext = "png" if raw.startswith(b"\x89PNG\r\n\x1a\n") else "jpg" if raw.startswith(b"\xff\xd8") else "webp" if raw[:4] == b"RIFF" and raw[8:12] == b"WEBP" else suffix
file = Path(stem + "-" + label + "." + ext)
file.write_bytes(raw)
print("Saved", file)
for index, block in enumerate(data.get("content") or []):
print("Content", index, json.dumps(block, ensure_ascii=False))
for choice in data.get("choices") or []:
print("Choice", choice.get("index"), json.dumps(choice.get("message", choice.get("delta", {})), ensure_ascii=False))
for index, item in enumerate(data.get("output") or []):
print("Output", index, json.dumps(item, ensure_ascii=False))
if item.get("type") == "image_generation_call" and item.get("result"):
save_blob(item["result"], item.get("output_format") or "bin", "output-" + str(index))
for ci, candidate in enumerate(data.get("candidates") or []):
for pi, part in enumerate((candidate.get("content") or {}).get("parts") or []):
print("Candidate/part", ci, pi, json.dumps(part, ensure_ascii=False))
blob = part.get("inlineData") or part.get("inline_data")
if blob and blob.get("data"):
mime = blob.get("mimeType") or blob.get("mime_type")
suffix = {"image/png":"png", "image/jpeg":"jpg", "image/webp":"webp", "audio/wav":"wav", "audio/mpeg":"mp3", "video/mp4":"mp4"}.get(mime, "bin")
save_blob(blob["data"], suffix, "candidate-" + str(ci) + "-part-" + str(pi))
with client.chat.completions.stream(model='moonshotai/kimi-k2.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 |
|---|---|
Kolomchoices[].index | Jenisinteger |
Kolomchoices[].message.content | Jenisstring|null |
Kolomchoices[].message.tool_calls | Jenistool_call[] |
Kolomchoices[].message.reasoning_content | Jenisstring |
Kolomchoices[].message.reasoning_details | Jenisobject|array |
Kolomchoices[].finish_reason | Jenisstring|null |
Kolomusage | 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 moonshotai/kimi-k2.5
Alias jalur metode
Gunakan jalur metode yang ditampilkan di atas.
ID pemanggil terkait
Ailoot Ultra · Anthropic Messages POST /v1/messages moonshotai/kimi-k2.5
moonshotai/kimi-k2.5Mulai
Kimi K2.5 adalah model agen yang secara bawaan multimodal dari Moonshot AI untuk pemrograman berlandaskan gambar, penalaran, dan pekerjaan berbantuan alat. Model ini menggabungkan teks, gambar, dan video dengan mode thinking dan instant, konteks 256K, serta alur pembuatnya untuk subtugas agen yang terkoordinasi.
- 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 |
|---|---|---|---|---|
Kolommodel | Jenisstring | PersyaratanWajib | Nilai & batasan moonshotai/kimi-k2.5 | Bawaan— |
Kolommessages | Jenismessage[] | PersyaratanWajib | Nilai & batasan | Bawaan— |
Kolommessages[].role | Jenisstring | PersyaratanWajib | Nilai & batasan user, assistant | Bawaan— |
Kolommessages[].content | Jenisstring | PersyaratanWajib | Nilai & batasan | Bawaan— |
Kolommax_tokens | Jenisinteger | PersyaratanWajib | Nilai & batasan | Bawaan— |
Kolomstream | Jenisboolean | PersyaratanOpsional | Nilai & batasan | Bawaanfalse |
Kombinasi bahan masukan
Teks · Teks UTF-8
string messages[].content
Parameter metode dan siklus hidup
| Parameter | Kontrak |
|---|---|
Parametercontent_type | Kontrakapplication/json |
Parameterrequired | Kontrakmodel, messages, max_tokens |
Parameteroptional_controls | Kontrakstream |
Parametermaterial_types | Kontraktext |
Parametertext_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
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.0012 / 1K token Keluaran · Token keluaran $0.006 / 1K token Masukan · Pembacaan cache $0.0003 / 1K token Masukan · Penulisan cache $0 / 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.0012 / 1K token Keluaran · Token keluaran $0.006 / 1K token Masukan · Pembacaan cache $0.0003 / 1K token Masukan · Penulisan cache $0 / 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 →
Contoh permintaan
Ailoot Ultra · Anthropic Messages
{
"model": "moonshotai/kimi-k2.5",
"max_tokens": 128,
"messages": [
{
"role": "user",
"content": "Summarize the incident report."
}
],
"stream": false
}set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_TEXT_FILE:?Set your actual UTF-8 document}"
export AILOOT_TEXT_FILE
python3 - <<'PY_REQUEST'
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'moonshotai/kimi-k2.5', 'max_tokens': 128, 'messages': [{'role': 'user', 'content': 'Summarize the incident report.'}]}
payload['messages'][0]['content'] = 'Summarize this material and quote supporting source passages.\n\n' + text
Path('request.json').write_text(json.dumps(payload, ensure_ascii=False), encoding='utf-8')
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/messages \
-H "x-api-key: $AILOOT_API_KEY" -H 'anthropic-version: 2023-06-01' -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
python3 - <<'PY_RESULT'
import json
from pathlib import Path
result = json.loads(Path('result.json').read_text(encoding='utf-8'))
print(json.dumps(result, ensure_ascii=False, indent=2))
PY_RESULT
import json, os
from pathlib import Path
source_file = Path(os.environ['AILOOT_TEXT_FILE'])
if not source_file.is_file():
raise SystemExit('Set AILOOT_TEXT_FILE to your actual UTF-8 document')
text = source_file.read_text(encoding='utf-8')
if not text.strip():
raise SystemExit('Choose a document containing text')
payload = {'model': 'moonshotai/kimi-k2.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 |
|---|---|
Kolomid | Jenisstring |
Kolommodel | Jenisstring |
Kolomcontent[] | Jenistext|thinking|tool_use|other content block |
Kolomstop_reason | Jenisstring|null |
Kolomusage | 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 moonshotai/kimi-k2.5
Alias jalur metode
Gunakan jalur metode yang ditampilkan di atas.
ID pemanggil terkait
FAQ · MoonshotAI: Kimi K2.5
- Input dan hasil apa yang tersedia?
POST /v1/chat/completions·moonshotai/kimi-k2.5:text→textPOST /v1/messages·moonshotai/kimi-k2.5:text→json,sse- Kolom apa yang digunakan permintaan?
POST /v1/chat/completions·moonshotai/kimi-k2.5:model,messages,stream,modalities,providerPOST /v1/messages·moonshotai/kimi-k2.5:model,messages,max_tokens,stream- Batasan apa yang berlaku?
POST /v1/chat/completions·moonshotai/kimi-k2.5:messages.min_items:1