Kimi K3 untuk Reasoning dan Agent Rangkaian Panjang: Dari Matematika Kompetisi ke Rantai Tugas Multi-Langkah
Kimi K3 untuk Reasoning dan Agent Rangkaian Panjang: Dari Matematika Kompetisi ke Rantai Tugas Multi-Langkah
Menilai apakah sebuah model bisa menjalankan agent sulit hanya dari leaderboard β pembeda sesungguhnya adalah kestabilan di rantai tugas multi-langkah: langkah satu memanggil tool, langkah dua mencerna hasil, langkah tiga memutuskan langkah berikutnya. Jika satu mata rantai melenceng, seluruh rantai runtuh. Laporan resmi Moonshot menempatkan kimi-k3 sebagai flagship long-horizon: pada 12 tes coding dan agentic yang dipublikasikan, model mengalahkan flagship Claude generasi sebelumnya di semuanya, dan fondasi reasoning keras GPQA 93.5% / AIME 91.2% menjaga keputusan antara tetap andal.
Versi 30 detik
kimi-k3: GPQA 93.5%, AIME 91.2%, Artificial Analysis Intelligence Index 57.1. Tiga aturan untuk agent: definisikan tool secara presisi, simpan state antara terstruktur setiap langkah, dan selalu sediakan jalur rollback. Model ID kimi-k3, dipanggil dengan satu key EXAIV.
Mengapa kemampuan reasoning penting bagi agent
Inti agent adalah model yang memutuskan sendiri apa yang dilakukan berikutnya. Kualitas setiap keputusan bergantung pada penalaran atas state saat ini: setelah membaca hasil tool, ia harus menilai lanjut, retry, atau ganti jalur. Benchmark seperti matematika kompetisi dan tanya-jawab sains tingkat doktoral mengukur tepat penalaran multi-langkah ini β AIME 91.2% berarti model sanggup memikul tugas berantai panjang tanpa satu mata rantai pun boleh putus, GPQA 93.5% berarti penilaian atas pengetahuan domain kompleks bertahan.
Artificial Analysis Intelligence Index, komposit lintas berbagai benchmark, memberi 57.1 β jajaran pertama model terbuka. Artinya bukan "kimi-k3 serbabisa", melainkan: sebagai otak pengambil keputusan sebuah agent ia memenuhi syarat, dan dipasangkan dengan tool loop ia sanggup memikul pekerjaan multi-langkah nyata.
Agent loop minimal
Siklus tool format OpenAI punya empat bagian: definisikan tool β model memutuskan memanggil β eksekusi dan kirim balik hasil β model melanjutkan dari hasil.
import json
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["EXAIV_API_KEY"],
base_url="https://exaiv.com/api/ai/v1",
)
tools = [
{
"type": "function",
"function": {
"name": "search_orders",
"description": "Look up order status by order ID or customer name",
"parameters": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "Order ID or customer name"},
},
"required": ["query"],
},
},
},
{
"type": "function",
"function": {
"name": "send_refund",
"description": "Initiate a refund for a given order",
"parameters": {
"type": "object",
"properties": {
"order_id": {"type": "string"},
"amount": {"type": "number"},
},
"required": ["order_id", "amount"],
},
},
},
]
def execute_tool(name, args):
if name == "search_orders":
return {"order_id": "A1024", "status": "delivered_damaged", "amount": 129.0}
if name == "send_refund":
return {"ok": True, "refund_id": "R7788"}
raise ValueError(f"unknown tool {name}")
messages = [{"role": "user", "content": "Customer says order A1024 arrived damaged. Handle it per policy."}]
for _ in range(10): # hard cap to prevent infinite loops
resp = client.chat.completions.create(
model="kimi-k3",
messages=messages,
tools=tools,
)
msg = resp.choices[0].message
if not msg.tool_calls:
print(msg.content) # final answer
break
messages.append(msg)
for call in msg.tool_calls:
args = json.loads(call.function.arguments)
result = execute_tool(call.function.name, args)
messages.append({
"role": "tool",
"tool_call_id": call.id,
"content": json.dumps(result, ensure_ascii=False),
})
Kerangka ini langsung berjalan. Sistem nyata hanya mengganti execute_tool dengan API Anda; protokolnya standar penuh sehingga LangChain dan LlamaIndex tersambung tanpa mengubah definisi tool.
Tiga aturan rekayasa yang menjaga rantai panjang tetap stabil
Skor benchmark tinggi tidak sama dengan stabil di production. Tambahkan sendiri tiga lapis pengaman:
Satu, tulis definisi tool secara presisi. Field description adalah satu-satunya dasar model memutuskan memakai tool itu atau tidak; deskripsi kabur menyebabkan salah panggil. Jelaskan pula format dan makna setiap parameter β definisi tool punya return on investment tertinggi di seluruh agent stack.
Dua, simpan state antara terstruktur setiap langkah. Jangan biarkan status tugas hanya hidup di riwayat percakapan. Setiap langkah, catat apa yang selesai dan apa berikutnya sebagai rekaman terstruktur, agar model melihat state bersih pada setiap keputusan alih-alih menyimpulkannya dari tumpukan dialog.
Tiga, kegagalan harus bisa mundur. Pemanggilan tool bisa gagal karena timeout, argumen salah, atau aturan bisnis melarang. Loop harus menangani tiga kelas: tool gagal β kirim pesan error kembali sebagai tool message agar model ganti jalur; parsing output gagal β retry dengan petunjuk korektif; batas langkah tercapai β hentikan dan beri alert. Agent tanpa rollback pasti akan patah di production, biasanya tengah malam.
Selalu pasang batas langkah
range(10) di contoh bukan hiasan. Tanpa batas, model yang terus ragu akan membakar token tanpa henti. Pasang batas wajar sesuai kompleksitas tugas dan arahkan kasus menyentuh batas ke jalur eskalasi manusia.
Bentuk state antar-langkah
Aturan state di atas perlu wujud konkret. Setiap siklus tool, tambahkan blok state ringkas yang bisa diandalkan model:
def build_state_block(steps_done, pending, constraints):
return (
"CURRENT STATE:\n"
+ "\n".join(f"- done: {s}" for s in steps_done)
+ "\n".join(f"- pending: {p}" for p in pending)
+ "\nconstraints: " + constraints
)
messages.append({
"role": "user",
"content": build_state_block(
steps_done=["searched order A1024", "confirmed damaged delivery"],
pending=["decide refund amount", "send refund", "notify customer"],
constraints="refunds over 200 require human approval",
),
})
Biayanya beberapa ratus token per langkah, dan membeli dua hal: model tidak pernah menurunkan ulang posisinya dari riwayat mentah, serta monitoring Anda bisa membaca blok state untuk tahu persis di mana rantai berdiri. Saat suatu run melenceng, log state adalah bahan post-mortem.
Menguji perilaku agent sebelum production
Benchmark mengukur reasoning; pipeline Anda harus mengukur pipeline Anda. Sebelum rilis, putar ulang satu set evaluasi tetap:
- Golden tasks: sepuluh sampai dua puluh rantai tugas nyata dengan hasil benar yang diketahui, dijalankan ulang setiap kali model atau prompt berubah
- Hasil tool adversarial: putar ulang dengan tool mengembalikan error, hasil kosong, dan data malformed β verifikasi model berbelok alih-alih mengarang sukses
- Laju sentuh batas: hitung seberapa sering run menyentuh batas langkah; laju naik berarti definisi tool atau pembingkaian tugas perlu diperbaiki
- Biaya per tugas selesai: total token dibagi run sukses β angka yang memutuskan apakah agent ini layak naik production
Harness ini butuh satu sore untuk dibangun dan menangkap sebagian besar insiden sebelum pengguna menemukannya.
Routing berdasarkan bentuk tugas
Memilih berdasarkan bentuk tugas lebih baik daripada berdasarkan leaderboard:
| Bentuk tugas | Pilihan tepat | Alasan |
|---|---|---|
| Banyak langkah, rantai panjang, butuh riwayat | kimi-k3 | Reasoning keras plus konteks yang menampung lintasan |
| Tugas pendek frekuensi tinggi, tool sederhana | Model tier cepat | Latensi dan biaya lebih rendah |
| Keputusan dari screenshot atau video | kimi-k3 | Multimodal native |
| Klasifikasi teks, konversi format | Model tier umum | Flagship di sini mubazir |
Orkestrasi hibrida adalah bentuk umum: tier cepat menangani tugas mekanis frekuensi tinggi, kimi-k3 mengambil rantai kompleks. Satu key, satu endpoint.
Tier routing di dalam satu rantai
Rantai agent sebenar mencampurkan langkah mudah dan langkah sukar, dan membelanjakan flagship untuk setiap langkah membazirkan masa dan wang. Penghala bertingkat di dalam gelung mengekalkan kualiti di tempat yang penting:
def route_step(step):
if step["kind"] in ("decide", "synthesize", "verify"):
return "kimi-k3" # langkah pertimbangan: flagship reasoning
return "deepseek-v4.1-flash-1017" # langkah mekanikal: carian, format, klasifikasi
Langkah pertimbangan β memutuskan apa seterusnya, menyatukan hasil alat yang bercanggah, mengesahkan calon jawapan β ialah tempat penanda aras reasoning benar-benar berbayar. Langkah mekanikal (pemformatan semula, klasifikasi, carian mudah) berjalan baik di peringkat pantas. Pasukan lazimnya mendapati majoriti langkah mendarat dalam baldi mekanikal, jadi pembahagian peringkat memotong kos dengan ketara sambil menambat kualiti keputusan rantai kepada flagship. Endpoint dan kunci yang sama melayani kedua-dua model; hanya medan model yang berubah.
Kebolehcerapan untuk larian agent
Sebaik rantai berjalan di production, tiga log menjawab hampir setiap soalan insiden:
- Log keputusan: satu baris setiap lelaran gelung β nombor langkah, model dipilih, alat dipanggil, token digunakan
- Log keadaan: blok state berstruktur daripada setiap langkah, supaya larian gagal boleh dimain semula dari titik tepat percabangan
- Log kos: token setiap larian diagregat mengikut jenis tugasan, iaitu cara anda perasan satu aliran kerja senyap memakan separuh bajet
Simpan kesemuanya di bawah ID jejak yang sama supaya satu larian gagal boleh dibina semula hujung ke hujung. Penyahpepijatan agent tanpa log ini merosot menjadi teka-teki; dengannya, kebanyakan insiden selesai dalam dua minit bacaan.
Gerbang keluaran sebelum rantai naik produksi
Selain harness evaluasi, tetapkan empat syarat yang harus lolos sebelum sebuah agent diizinkan menerima trafik nyata. Syarat ini sengaja ditulis sebelum peluncuran agar keputusan tidak diambil di tengah insiden:
- Kadar kejayaan minimum pada golden tasks: tetapkan angka yang disepakati tim, dan blokir rilis bila turun di bawahnya
- Cap token per tugasan: setiap run yang melebihi ambang wajib dicatat dan ditinjau, bukan diabaikan
- Jalur eskalasi manusia aktif: pastikan kasus yang menyentuh batas langkah benar-benar sampai ke orang, bukan berakhir di log saja
- Satu tombol rollback: kembalikan ke model lama atau ke jawaban statis bila kualitas turun mendadak
Empat hal ini murah dipasang namun mengubah agent dari eksperimen menjadi layanan. Tim kecil di Asia Tenggara sering mengandalkan satu orang yang paham seluruh pipeline; dengan gerbang seperti ini, pengetahuan itu berubah menjadi aturan tertulis yang tetap berjalan meski orangnya sedang cuti.
Catatan terakhir untuk tim yang baru mulai: jangan langsung membangun agent dengan sepuluh alat. Mulai dari dua alat, satu rantai tugas, dan satu set golden tasks. Setelah metrik stabil sebulan, barulah tambah alat dan percabangan. kimi-k3 memberi ruang konteks 1 juta token, tetapi ruang besar bukan alasan untuk menyimpan keputusan yang tidak perlu β semakin pendek dan jelas state yang Anda berikan, semakin murah dan semakin dapat diprediksi hasilnya. Dokumentasikan juga setiap perubahan prompt bersama metrik yang menyertainya; kebiasaan sederhana ini membuat evaluasi berikutnya jauh lebih cepat. Simpan catatan versi model, daftar alat, dan hasil golden tasks di satu berkas yang sama agar siapa pun di tim dapat menelusuri mengapa sebuah keputusan diambil.
FAQ
Di mana posisi kimi-k3 soal reasoning di antara sesamanya
Apakah format tool calling sama dengan OpenAI
Bagaimana mencegah agent loop berjalan selamanya
Apa yang terjadi saat pemanggilan tool gagal
Akankah rantai panjang meluapkan konteks
Bisakah bekerja sama dengan model lain
Artikel ini menjawab apa
- membangun agent dengan kimi-k3
- menulis tool loop
- memulihkan agent dari kegagalan
Peta skenario cepat
| Jika Anda perlu | Buka bagian |
|---|---|
| membangun agent | Agent loop minimal |
| kelola state | State antar langkah |
| tangani kegagalan | Pemulihan kegagalan |
Pandang ke depan
Katalog dan bobot terus berubah; konvensi integrasi dan pemanggilan di sini mengikuti dokumen resmi saat publikasi.
Sumber dan verifikasi
Fakta kunci dalam artikel ini berasal dari laporan resmi Kimi dan dokumentasi function calling EXAIV dan diverifikasi pada 2026-11-09. ID model, harga, dan ketersediaan mengikuti katalog langsung platform β sengaja tidak menulis angka tetap yang cepat usang. Contoh kode mengikuti kontrak API saat publikasi; periksa dokumen resmi sebelum menghubungkan ke produksi.
Ruang lingkup dan audiens
Audiens: developer yang membangun agent multi-langkah. Cakupan: tool loop, manajemen state, dan pemulihan kegagalan. Tidak mencakup: perbandingan benchmark atau pelatihan model.
Catatan editorial dan koreksi
Ditulis oleh tim konten EXAIV dari fakta yang dapat diverifikasi, dengan sumber dan kode diperiksa sebelum publikasi. Jika ada yang usang atau keliru, halaman rilis resmi dan katalog langsung yang berlaku β beri tahu lewat kanal masukan halaman agar kami memperbaikinya.
Bacaan terkait
- Panduan Kimi K3
- Panduan Function Calling
- Panduan framework agent
- Penanganan error dan retry
- Checklist sebelum production