Blog

Kimi K3 in de praktijk: hands-on ervaring en een vergelijking met Claude Code

Markdown

Snelheid, tokengebruik, caching en compatibiliteit met setups met meerdere agents: de persoonlijke ervaring van de auteur en gepubliceerde onafhankelijke benchmarks.

Lees het volledige artikel

Hoogtepunten

Een review van 25 juli over Kimi K3 stelde voor het model op de proef te stellen: besteed een dag aan de configuratie en kijk of het de moeite waard is. Ik heb het zelf geprobeerd. In benchmarks staat het model op de eerste plaats voor frontendwerk en presteert het beter dan Claude bij terminaltaken. Bij mijn taken werkte het twee keer zo langzaam, verbruikte het merkbaar meer tokens en verstoorde het het werk met meerdere agents.

De Ailoot-documentatie beschrijft hoe je modellen koppelt en met de API werkt.

Hoe het experiment van de auteur uitpakte

Hoogtepunten

Op 25 juli publiceerde ik een review van Kimi K3 en sloot die af met het voorstel om een dag te besteden aan het afstellen ervan, om te ontdekken of overstappen de moeite waard was. Daarna schreef ik in het kanaal dat ik het model aan het testen was en aangenaam verrast was. Dat klopte tijdens de eerste paar uur. Daarna volgden lange sessies met meerdere agents en veranderde het beeld.

Kimi K3 werd gelanceerd op 16 juli 2026. Het heeft 2,8 biljoen parameters, een contextvenster van een miljoen tokens, open gewichten en behaalde de eerste plaats in een blinde frontendvergelijking. Alle details over de architectuur, benchmarks en prijzen heb ik verzameld in de volledige review van Kimi K3 tegenover Claude Code, dus ik herhaal ze hier niet.

Aan het einde van die review schreef ik: het risico is dat je een dag verliest aan de configuratie; de opbrengst is een rekening die vanaf de tweede week daalt. Ik voerde het experiment uit met mijn eigen taken.

De eerste paar uur zijn echt opwindend. Het model pakt een taak enthousiast op, genereert samenhangend frontendwerk en deinst niet terug voor grote bestanden. Daarom schreef ik in het kanaal dat ik aangenaam verrast was. De problemen kwamen aan het licht tijdens lange sessies, met meerdere agents, na herhaalde bewerkingsrondes en ’s avonds in de terminal.

Uiteindelijk heb ik de wijziging teruggedraaid. Dit leidde tot die beslissing, met cijfers en links naar primaire bronnen zodat je alles zelf kunt controleren.

Waarom laten benchmarks zien dat Kimi K3 beter presteert dan Claude?

Hoogtepunten

In specifieke disciplines presteert Kimi K3 in benchmarks inderdaad beter dan Claude: bij terminaltaken, lange engineeringmarathons en blinde frontendvergelijkingen. Maar over de volledige reeks van 35 benchmarks is de score anders: Claude Fable 5 wint er 22, Kimi K3 wint er twaalf en één eindigt gelijk. Beide beelden kloppen; alleen wordt het eerste vaker aangehaald.

Dit zijn de benchmarks waarin Kimi K3 beter presteert dan Claude Fable 5:

BenchmarkKimi K3Claude Fable 5Verschil
Terminal-Bench 2.188.384.6+3.7
SWE-Marathon42.035.0+7.0
BrowseComp91.288.0+3.2
Program Bench77.876.8+1.0

llm-stats heeft de benchmarks verzameld; elke rij vergelijkt met Claude Fable 5.

De cijfers zijn echt. Over alle 35 benchmarks in dezelfde samenvatting wint Claude Fable 5 er 22, wint Kimi K3 er twaalf en is er één gelijkspel.

Interessanter is waar Kimi K3 tekortschiet. De achterstand op codeerbenchmarks is bescheiden: 4–5 punten. Op kennis en redeneren zakt het model terug: bij HLE loopt Claude bijna 10 punten uit. Precies daar loopt een lange taak vast: eerst moet je begrijpen, pas daarna kun je schrijven.

Moonshot verwoordt het zo in het hoofdgedeelte van het releasebericht:

Hoewel Kimi K3 overall nog achterloopt op de sterkste gesloten modellen, Claude Fable 5 en GPT 5.6 Sol, heeft het model in onze volledige benchmarksuite een grensverleggend niveau laten zien.

— Moonshot AI, https://www.kimi.com/blog/kimi-k3

Waarom voelt Kimi K3 in de praktijk twee keer zo langzaam?

Hoogtepunten

Kimi K3 geeft zijn eerste token twee keer zo snel terug als Claude, maar daarna verloopt de uitvoer twee keer zo langzaam. In een kort gesprek voelt dat snel; bij een werktaak duurt het volledige antwoord merkbaar langer. Onafhankelijke benchmarks meten 34.7 tokens per seconde tegenover 61.3 voor Claude Opus 4.8.

MaatstafKimi K3Claude Opus 4.8
Uitvoersnelheid34.7 tokens/s61.3 tokens/s
Tijd tot eerste token4.19 s9.50 s
Intelligentie-index5756
Gemiddelde prijs per miljoen$2.31$3.85

De vergelijking gebruikt Claude Opus 4.8, de Claude-versie met een volledige snelheidstest.

Kimi K3 antwoordt eerder, waardoor het in een kort gesprek subjectief sneller lijkt. Op het werk gaat de tijd ergens anders naartoe: hoe langzaam het volledige antwoord binnenkomt. Daar is het model bijna half zo snel, en bij een lang antwoord loopt het verschil op tot minuten.

Kimi Code adverteert met 180–260 tokens per seconde, en dat cijfer oogt overtuigend naast mijn 34.7. Het verwijst naar de snelheidsbuild van de vorige generatie, K2.7 Code HighSpeed. Kimi K3 heeft zo’n build helemaal niet, en de onafhankelijke benchmark meet Kimi K3 zelf.

Een sessie die bij de zevende fout vastloopt en tokens verspilt aan herhaalde aanroepen is een mislukking van context engineering; de modelkeuze is hier van secundair belang.

Waar gaan de tokens naartoe als je redeneren niet kunt uitschakelen?

Hoogtepunten

Het redeneervermogen van Kimi K3 kan helemaal niet worden uitgeschakeld. Als je het model rechtstreeks via de API aanroept, staat het maximale inspanningsniveau standaard ingesteld en redeneert het bij elk verzoek, ook bij triviale. Een prompt van 95 tokens kreeg een antwoord van 16,658 tokens, waarvan 13,241 tokens uit redeneringen bestonden. Eén generatie kostte 25 cent.

Je kunt het inspanningsniveau verlagen; de documentatie noemt er drie: laag, hoog en maximaal. Maar redeneren kan niet volledig worden uitgeschakeld: er staat expliciet dat redeneren en het opslaan van de bijbehorende geschiedenis voor Kimi K3 altijd ingeschakeld zijn. Bij rechtstreekse API-aanroepen staat het maximale niveau standaard ingesteld, en de meeste wrapperprogramma’s veranderen dat niet.

Elke beurt voegt duizenden outputtokens toe tegen $15 per miljoen. Bovendien vereist Moonshot dat je het volledige bericht van de assistant terugstuurt, inclusief de redeneergeschiedenis, en die outputtokens worden bij de volgende beurt opnieuw inputtokens.

Je betaalt dus twee keer voor dezelfde redenering: eerst wanneer het model die schrijft en daarna wanneer je die terugstuurt naar het model.

Op de totaalscore gebruikt Kimi K3 21% minder outputtokens dan zijn voorganger, K2.6. Vergeleken met zijn eigen vorige versie is het model zuiniger geworden. Claude gebruikt nog steeds minder tokens voor dezelfde taken.

De prompt “hi” wordt als 86 tokens afgerekend. Onder de motorkap staat een verborgen systeemprompt van ongeveer 85 tokens, waarvoor je bij elk verzoek betaalt.

Ik heb een aparte review over hoe je je verbruik berekent en waar je je resterende saldo kunt controleren: hoeveel tokens Claude Pro en Max je geven. De berekeningslogica is daar hetzelfde; alleen de prijzen veranderen.

Wat gebeurt er als het model vastloopt in zijn redenering?

Hoogtepunten

Kimi K3 raakte bij mij meerdere keren in een lus: het redeneerblok begon steeds dezelfde tekstpassage te herhalen en viel uiteen in stukjes lettergrepen, terwijl de agents eronder bewegingloos bleven hangen. En ik ben niet de enige. In Moonshots eigen lijst met bekende problemen staan meerdere meldingen van zulke lussen.

Het ziet er zo uit. Het model begint na te denken, maar in plaats van zijn gedachte verder te ontwikkelen, vervalt de tekst in herhaling: hetzelfde woord, daarna stukjes lettergrepen, eindeloos. De taak loopt vast terwijl de tokenteller blijft draaien.

Een melding van 28 juli in Moonshots bekende problemen beschrijft hoe Kimi K3 zes keer achter elkaar hetzelfde bestand probeert te lezen, zeven keer de afwijzing “no-op call, file hasn’t changed since the previous read” krijgt en vervolgens de beurt beëindigt alsof er niets is gebeurd. In de Kimi CLI-issuetracker beschrijft de auteur vier varianten van hetzelfde soort vastlopen — lezen, vervangen, testen en analyseren — en vat het in één zin samen:

Zelfs nadat ik een bestand meerdere keren heb gelezen, blijf ik het lezen. Zelfs na een geslaagde vervanging blijf ik uitvoeren. Deze eindeloze lussen hebben enorm veel tokens verbrand.

— Ontwikkelaar, Kimi CLI-issuetracker

Moonshot noemt de oorzaak rechtstreeks. Het model is getraind in een modus die de redeneergeschiedenis bewaart en moet zijn eerdere redeneringen volledig terugkrijgen. Als de geschiedenis onvolledig binnenkomt, probeert het model het antwoord te reconstrueren, produceert het dezelfde toolaanroep en begint er opnieuw een lus.

De auteur van een analyse in een router van derden stelt dezelfde diagnose: Kimi is zo strikt dat het verzoeken met een onvolledige redeneergeschiedenis afwijst. Een externe wrapper weet niet van die strengheid en kort de geschiedenis in.

Waarom valt een setup met meerdere agents uiteen met Kimi K3?

Hoogtepunten

Wanneer Claude Code verbinding maakt met de Moonshot API, werken sommige mogelijkheden niet meer. WebFetch wordt helemaal niet ondersteund, het uitgesteld laden van tools laat het verzoek mislukken met een 400-fout en na meerdere van zulke fouten reageert de sessie zelfs niet meer op gewone tekst. De storing treedt op bij de interface tussen Claude Code en de Moonshot API.

De officiële Moonshot-documentatie zegt het duidelijk: hun API ondersteunt WebFetch nog niet. Met andere woorden, Claude Code kan op Kimi K3 niet online een pagina ophalen, hoewel het dat normaal gesproken wel doet. De omweg is de inhoud handmatig plakken of een tool van derden koppelen.

Claude Code kan tools op aanvraag laden en plaatst een serviceblok van het type tool_reference in de geschiedenis. Kimi accepteert dit type niet en geeft een 400-fout terug. Dat gebeurt zonder verdere uitleg: de API noemt noch het veld, noch de reden:

{"error":{"type":"invalid_request_error","message":"Invalid request Error"},"type":"error"}

Ter vergelijking: zo ziet dezelfde fout eruit bij de native API van Anthropic, waar de server ten minste het veld noemt en de geaccepteerde typen opsomt:

messages.166.content.0.tool_result.content.0: Input tag 'tool_reference' found
using 'type' does not match any of the expected tags: 'document', 'image',
'search_result', 'text'

Dat verschil is belangrijk. De eerste melding is onmogelijk te diagnosticeren: noch de client, noch degene die erachter zit kan zien welk blok is afgewezen. Dat is precies waar de auteurs van de meldingen over klagen. Ontwikkelaars van providerschakelaars stellen al voor om het uitgesteld laden van tools voor Kimi standaard uit te schakelen, of de Moonshot API aan te merken als niet geschikt voor deze blokken.

Het gevolg wordt beschreven in een afzonderlijke melding, geopend op 17 juli en nog steeds onbeantwoord. De auteur kreeg deze fout zeven keer in één sessie. De sessie overleefde de eerste zes; de zevende beëindigde haar definitief: daarna crashte die zelfs toen de gewone tekst “continue” werd ingevoerd. De auteur vermeldt afzonderlijk dat de contextlimiet nog lang niet was bereikt, dus de verklaring “de geschiedenis was te lang” klopt niet.

Hier volgt een overzicht van de bloktypen die de Moonshot API wel en niet accepteert:

Wat Claude Code doetWerkt dit met Kimi K3?
Standaardtoolaanroepja
Zoeken op het webja
Pagina’s ophalen via WebFetchnee, de API ondersteunt dit niet
Tools uitgesteld ladennee, 400-fout en risico op verlies van de sessie

Het woord “compatibel” beschrijft hier alleen het verzoekformaat. Al het andere verschilt: welke bloktypen worden geaccepteerd, wat de geschiedenis moet bevatten en welke tools überhaupt beschikbaar zijn.

Wat werkt niet met Kimi K3?

Hoogtepunten

Een modelwissel verandert de motor, maar de volledige wrapper eromheen — Claude Code zelf, zijn tools en zijn subagents — blijft afgestemd op Claude. Het instructiebestand, de skills en de subagents zijn geschreven voor het gedrag van Claude. Moonshot adviseert uitdrukkelijk een wrapper te gebruiken waarvan de compatibiliteit is bewezen en niet midden in een sessie van model te wisselen.

In het gedeelte over beperkingen van het releasebericht staat letterlijk:

K3 is getraind in een modus die de redeneergeschiedenis bewaart. Als een agentwrapper de volledige redeneergeschiedenis niet terugstuurt zoals vereist, of als een sessie die met een ander model is gestart naar K3 wordt overgeschakeld, kan de kwaliteit van de generatie uiterst instabiel worden. We raden aan een wrapper te gebruiken waarvan de compatibiliteit is bewezen, zoals Kimi Code, en tijdens een sessie niet naar K3 over te schakelen.

— Moonshot AI, sectie over beperkingen, https://www.kimi.com/blog/kimi-k3

De ontwikkelaar van het model zegt: gebruik onze client; we geven geen garantie over het gedrag van die van iemand anders.

Het tweede punt in hetzelfde gedeelte legt nog iets uit wat ik aan de koppigheid van het model had toegeschreven:

K3 is getraind met de nadruk op lange, complexe taken. Daardoor kan het bij een kleine inconsistentie of onduidelijke bedoeling van de gebruiker tijdens het werk onverwacht een beslissing namens de gebruiker nemen.

— Moonshot AI, sectie over beperkingen, https://www.kimi.com/blog/kimi-k3

Mijn CLAUDE.md was geschreven voor precies de tegenovergestelde gewoonte: vragen stellen, een plan laten zien en op bevestiging wachten. De instructies staan er nog steeds, maar worden nu gelezen door een model met een ander temperament.

Als je één regelbestand voor meerdere agents wilt gebruiken, heb ik die setup apart behandeld: één instructiebestand voor Claude Code, Codex en Cursor.

Hoeveel kostte Kimi K3 echt?

Hoogtepunten

Per token is Kimi K3 bijna half zo duur als Claude. In workflows met agents gaat die rekensom niet meer op door de cache: elke wijziging aan de systeemprompt of de lijst met tools reset die volledig, waardoor de prijs van inputtokens stijgt van 30 cent naar $3 per miljoen. Claude Code brengt zulke wijzigingen voortdurend aan.

Eerst de prijzen, die in het voordeel van Kimi K3 zijn:

OnderdeelKimi K3Claude Opus 5
Input per miljoen$3.00$5.00
Gecachte input per miljoen$0.30$0.50
Output per miljoen$15.00$25.00

De prijzen van Kimi komen uit de documentatie over contextcaching; de rechterkolom toont de prijzen van Claude Opus 5 op 30 juli 2026.

De cache van Kimi is automatisch, kan niet worden uitgeschakeld en wordt geïdentificeerd aan de hand van de hash aan het begin van het verzoek. Elke wijziging aan de systeemprompt of de lijst met tools wist de berichtcache volledig.

Dit doet Claude Code tijdens een gewone werkdag:

  1. Externe tools verbinden en loskoppelen naarmate de taak vordert.
  2. Tools op aanvraag laden wanneer ze nodig zijn.
  3. Subagents starten met een andere set tools.
  4. Het instructiebestand toevoegen aan de systeemprompt.
  5. De geschiedenis opnieuw opbouwen bij het comprimeren van de context.

Elk onderdeel van deze lijst reset het begin van het verzoek en daarmee de cache. Inputtokens kosten dan weer $3 per miljoen in plaats van 30 cent — tien keer zoveel. Daarbovenop komt het voortdurende redeneren voor $15 per miljoen outputtokens, en diezelfde tokens keren bij de volgende beurt terug als input. Zo kan een model met een lage vermelde prijs een onverwacht hoge rekening opleveren.

Volgens de samengevoegde gegevens van OpenCode kost een gemiddelde Kimi K3-sessie $1.86, met gemiddeld 3.1 miljoen tokens, over bijna 280,000 live sessies. Dat cijfer is gebaseerd op 93% van de inputtokens die in de cache terechtkomen. Verander het begin van het verzoek en het geldt niet meer voor jou.

De Kimi-abonnementen kosten $19, $39, $99 en $199. Het quotum komt uit een gedeelde pool voor het hele lidmaatschap, wordt wekelijks vernieuwd zonder ongebruikte tegoeden mee te nemen en gebruikt een voortschrijdend venster van vijf uur. De review van de abonnementen stelt het zo: vier terminals met Kimi K3 dat voortdurend redeneert, verbruiken een venster van vijf uur snel.

Het codeerquotum van het abonnement van $99 is vergelijkbaar met dat van Anthropic’s abonnement van $200, wat tegen mijn eigen standpunt ingaat. Kimi is goedkoper per token, maar dat is ’s avonds niet meer terug te zien op de rekening.

Waar is Kimi K3 objectief goed in?

Hoogtepunten

Kimi K3 is sterk wanneer de taak één grote, duidelijk omschreven opdracht is: frontendwerk, grootschalige code-refactoring, werken met lange bestanden en een grote repository analyseren. Het verdiende de eerste plaats in de blinde frontendvergelijking en het is logisch om het dit soort taken te geven. Hieronder staan vijf pluspunten.

  1. Frontend. Eerste plaats in een blinde vergelijking door actieve ontwikkelaars. Het maakt nette layouts met een behoorlijke smaak.
  2. Omvang. Een contextvenster van een miljoen tokens; lange bestanden deren het niet. Een grote repository analyseren en in kaart brengen is precies het soort taak dat bij het model past.
  3. Eerste antwoord. De tijd tot het eerste token is de helft van die van Claude. In een kort gesprek merk je dat, en het voelt prettig.
  4. Prijs per token. Ongeveer 60% van de prijs van Claude Opus 5. Als het begin van het verzoek niet verandert, levert dat echte besparingen op bij grote, repetitieve workloads.
  5. Open gewichten. Het model is niet aan één provider gebonden.

Bij dat laatste punt hoort een kanttekening. Het is niet realistisch om zo’n model thuis te draaien: zelfs in gecomprimeerde vorm zijn de gewichten terabytes groot. Openheid betekent hier onafhankelijkheid van één provider.

Hoe kun je dit allemaal in één avond zelf testen?

Hoogtepunten

Je moet Kimi K3 testen op een taak die je normaal uitvoert: het verschil blijkt niet uit een kort gesprek. Meet twee dingen: hoeveel tijd het kostte en hoeveel de avond heeft gekost. Hieronder staan zeven stappen in volgorde, zodat je een probleem met het model zelf niet verwart met een probleem met de wrapper eromheen.

  1. Stel de toegang in aan de hand van de instructies. Ik beschreef de drie omgevingsvariabelen en de modelvervangingen per niveau in de review van Kimi K3 tegenover Claude Code. Controleer de configuratie met het commando /status: Kimi verschijnt niet in het modelkeuzemenu omdat het een ingebouwde lijst met aliassen heeft, en je hoeft die niet aan te passen.
  2. Verwijder de oude sleutel. Als je eerder ANTHROPIC_API_KEY had ingesteld, verwijder die dan. Samen met ANTHROPIC_AUTH_TOKEN veroorzaakt die een conflict, waardoor je zonder goede reden een autorisatiefout krijgt.
  3. Schakel het uitgesteld laden van tools meteen uit. Doe dit vóór de eerste uitvoering, niet nadat de eerste sessie vastloopt.
  4. Wissel niet midden in een taak van model. Ben je begonnen met Kimi K3, maak de taak dan af met Kimi K3. Andersom geldt hetzelfde. Dit is een rechtstreeks vereiste van Moonshot; ik citeerde het hierboven.
  5. Gebruik een echte taak van jezelf. Een taak waaraan je gisteren hebt gewerkt, inclusief alle rommel en onafgemaakte draden. Een slangenspel laat het verschil niet zien: dat verschijnt pas op de lange termijn.
  6. Noteer twee cijfers. Hoeveel minuten het kostte en hoeveel geld je die avond hebt uitgegeven. Vergelijk dat met een gebruikelijke avond met Claude.
  7. Houd inactieve tijd apart bij. Wanneer de agent vastloopt, hetzelfde bestand in een lus leest of met een fout reageert, hoort dat ook bij de kosten.

Komt de rekening van die avond hoger uit dan verwacht, dan ligt dat bijna altijd aan de cache: tel hoe vaak het begin van het verzoek die avond is gereset. De prijs per token heeft er weinig mee te maken.

Wat heb ik uiteindelijk behouden?

Hoogtepunten

Kimi K3 heeft Claude Code niet volledig vervangen, en ik heb het daar ook niet toe gedwongen. Claude Code bleef de belangrijkste motor voor lange taken en setups met meerdere agents. Kimi K3 blijft ernaast als tweede motor voor taken met veel repetitief layoutwerk die in hun geheel kunnen worden overgedragen. De scheidslijn is het aantal overgangen dat een taak vereist.

Lezers van het kanaal die het model samen met mij hebben getest, kwamen onafhankelijk tot dezelfde setup: ze laten Kimi K3 de repository inspecteren en een second opinion geven, terwijl ze het hoofdwerk aan hun vertrouwde agent overlaten. Deze setup houdt stand omdat je de wrapper niet hoeft te verplaatsen en niets hoeft te breken dat al werkt.

Je kunt het zo formuleren: één complete taak gaat naar Kimi K3; een lange keten met tools en subagents gaat naar Claude Code. Hoe meer wisselingen tussen tools een taak vereist, hoe duurder die met Kimi K3 wordt en hoe groter de kans op een kapotte sessie.

Ik heb een aparte review over het toewijzen van rollen aan twee agents zonder ze door elkaar te halen: drie manieren om met twee agents te werken.

Benchmarks beantwoorden de vraag “wie is sterker onder laboratoriumomstandigheden?” De rekening van je avond en je lijst met afgeronde werkzaamheden beantwoorden de vraag “wie is voor jou sterker?” Als die twee antwoorden verschillen, vertrouw dan het tweede: je hebt het zelf berekend, niet de marketingafdeling.

Na dit alles te hebben bekeken, besloot ik voor mezelf: wat mensen ook over nieuwe modellen zeggen, een leider blijft een leider. Claude Code blijft mijn belangrijkste motor.

Je kunt verder met AI werken op Ailoot.

Meer details

Vragen en antwoorden

Betekent een sneller eerste token dat Kimi programmeertaken sneller afrondt?

Nee. De vertraging tot het eerste token en de snelheid van de resterende uitvoerstroom zijn verschillende metingen. Meet de hele taak, inclusief toolstappen, nieuwe pogingen en controles, in plaats van alleen het begin van het antwoord te beoordelen.

Hoe test ik of Kimi voor mijn workflow werkt?

Gebruik één representatieve taak met dezelfde startbestanden en succescontroles als je huidige configuratie. Leg totale tijd, tokengebruik en resultaat vast en test daarna de workflow met meerdere agents afzonderlijk voordat je erop vertrouwt voor lange sessies.

Alle artikelen