Voorbeeld 1: Websitesimulatie
Vervolgens deel ik mijn eigen ervaringen met het testen van Kimi K2 in uiteenlopende scenario’s. Ik begon met het genereren van een eenvoudige websitesimulatie met behulp van de geïntegreerde HTML-editor in de chatinterface van Kimi K2, waarmee gebruikers de gegenereerde HTML-code kunnen bekijken. Dit is de prompt die ik gebruikte:
Prompt: Maak een SaaS-landingpage met veel functies
Kimi K2 deed er aanzienlijk langer over (ongeveer 5 minuten) om code te genereren dan andere modellen die ik onlangs heb geprobeerd (zoals Grok 4 of Gemini Diffusion). Ondanks deze initiële vertraging waren de graphics en interactieve elementen van de resulterende applicatie echter zeer accuraat. Daarnaast gebruikte Kimi K2 zijn agentische mogelijkheden effectief om een relevante, rechtenvrije afbeelding van Unsplash op te halen voor de HTML-pagina.
Voorbeeld 2: SVG-representaties genereren
Daarna probeerde ik enkele SVG’s (Scalable Vector Graphics) te genereren. Hoewel het even duurde voordat het model een goede SVG-afbeelding teruggaf, leverde het uiteindelijk goed werk.
Prompt: Maak een SVG-representatie van een vlinder
Aanvankelijk vroeg ik het model om een draak te maken, en de output bestond alleen uit wat schaduw en kleuren. Na een paar iteraties genereerde het model echter een goede representatie van een vlinder.

Voorbeeld 3: Een dataset analyseren met simulatie
In dit voorbeeld vroeg ik Kimi K2 om een eenvoudige dataset te analyseren en de bevindingen te presenteren via een HTML-dashboard. Dit is de prompt die ik gebruikte:
Prompt: Maak een interactief HTML-dashboard met een strakke en moderne UI waarmee gebruikers de effecten van remote werken op salarissen in verschillende functierollen kunnen simuleren en visualiseren, gebaseerd op de meegeleverde ds_salaries.csv-dataset.
Het dashboard moet de volgende uitgebreide componenten bevatten:
1. Dynamische simulatiebediening (User Simulator):
Responsieve sliderinputs en numerieke velden voor het aanpassen van:
Remote-premie (%)
Functiespecifieke multipliers
Inflatie of deflatie van het basissalaris
Realtime feedback over hoe inputwijzigingen de dataset beïnvloeden
Tooltips die de impact van elke parameter uitleggen
2. Interactieplots en heatmaps:
Salaris vs. functieprofiel × remote-ratio interactieplot
Optionele schakelaars om te wisselen tussen staaf-, lijn- of heatmapweergaven
Markeer uitschieters of statistisch significante interacties
3. Realtime statistische inzichten:
Live regressie-uitvoer (OLS, ANOVA)
Markeer p-waarden en significantiedrempels
Visuele residuplots of modeldiagnostiek (indien haalbaar)
4. Modern interfaceontwerp:
Mobielvriendelijk, nul-dependency ontwerp met vanilla HTML/CSS/JS
Card-achtige lay-out, met inklapbare secties voor overzicht
Vloeiende animaties, overgangen en een donker/licht-schakelaar
Zorg dat alle output copy-paste-klaar is in één enkel index.html-bestand, zonder externe dependencies. Voeg placeholderlogica toe voor het laden van de CSV via een <input type="file">-element. Bonus: voeg een CSV-previewtabel en download-/exportopties voor gesimuleerde data toe.
In dit experiment met Kimi K2 accepteerde en verwerkte het model de geüploade dataset succesvol, waarbij de simulatiebediening correct werd bijgewerkt op basis van uit de data afgeleide variabelen. De gebruikersinterface ondersteunde functies zoals schakelen tussen donkere en lichte modus en bood een vloeiende visuele ervaring.
Toch ontbraken er diverse essentiële analytische componenten. Er was geen interactieplot, geen heatmapvisualisaties en geen realtime statistische inzichten zoals regressiesamenvattingen of ANOVA-resultaten. Hoewel Kimi K2 de structurele generatie en UI-logica goed aanpakte, werden de beperkingen in statistisch redeneren en interactieve visualisatie in deze use-case duidelijk.
Voorbeeld 4: Wetenschappelijke simulatie
Het team achter Kimi gaf een use-case voor hun chatinterface om wetenschappelijke simulaties te verkennen en de HTML-code binnen de chat te previewen. Dit zijn de prompts die ik probeerde:
Prompt: Maak een 3D-deeltjesgalaxysimulatie

Ik probeerde enkele aanpassingen aan de simulatie om te zien hoe het model zich aanpast, zoals een bovenaanzicht met juiste deeltjesrotatie en variërende deeltjesgrootte.
Aangepaste prompt: Pas de huidige 3D-deeltjesgalaxysimulatie aan zodat de galaxie vanuit een bovenaanzicht (zoals gezien van boven het galactische vlak) wordt weergegeven. De sterren en armen moeten verschijnen als een spiraalpatroon dat naar buiten straalt, met rotatie rond de Z-as (loodrecht op het scherm). Zorg ervoor dat:
De sterrenposities zijn verdeeld in een platte spiraal in bovenaanzicht
De rotatiesnelheid beïnvloedt de hoekrotatie binnen het XY-vlak
Er geen verticale kanteling of Y-as-dikte zichtbaar is — maak de Z-dimensie plat
Camera/standpunt vast boven de galaxie staat (orthografisch of top-down perspectief)
Voeg optioneel een centraal gloeiend uitpuilend deel toe om de galactische kern te simuleren
Behoud alle bestaande bedieningselementen (aantal sterren, aantal armen, zoom, rotatiesnelheid) en zorg dat regeneratie de bovenaanzichtindeling weerspiegelt.
De aangepaste prompt resulteerde in een aanzienlijk verbeterde visualisatie, wat aantoont dat het model zich snel weet aan te passen aan promptwijzigingen. De schuifregelaars in de preview bleken echter puur decoratief en boden geen zinvolle interactie of invloed op de daadwerkelijke galaxysimulatie.
Voorbeeld 5: Gamesimulatie
Geïnspireerd door de originele documentatie vroeg ik het model om een webgebaseerde game te genereren, vergelijkbaar met het dinosaurusspel dat je misschien speelde als het internet eruit lag. Dit is de prompt die ik gebruikte:
Prompt: Maak een webgebaseerde 3D Dino Survival Game.
Ontwerp een prehistorische omgeving met low-poly bomen, rotsen en kliffen.
Animeer de dino met eenvoudige loop-, spring- en hurkmechanieken met basisfysica (zwaartekracht, traagheid).
De speler bestuurt de dino met WASD-toetsen en de spatiebalk om over obstakels te springen.
Gebruik handgemaakte texturen voor het terrein en de skybox om een “rotsschildering”-stijl (à la Altamira) te benaderen, met procedurele patronen in plaats van afbeeldingslinks.
Voeg achtergrond elementen toe zoals bewegende wolken en vliegende pterosauriërs voor immersie.
Maak de grond ongelijk en hobbelig, met vloeiende overgangen tussen terreindelen.
Genereer willekeurig obstakels zoals cactussen, lavaputten of andere dino’s.
De score stijgt naarmate de dino langer overleeft — toon deze linksboven met een Flintstones-achtige teller.
Voeg omgevingsaudio toe: lage drumbeats en junglegeluiden.
Optioneel:
Voeg een nachtmodus toe met vuurvliegjes en gloeiende ogen in struiken.
Gebruik Three.js of Babylon.js indien nodig, maar val terug op pure WebGL/Canvas als je het dependency-vrij wilt houden.
Tot mijn verrassing was de eerste versie van deze game onbruikbaar. Ik probeerde hem opnieuw te genereren met een verfijnde en langere prompt, terwijl ik binnen het contextvenster bleef. Dit was het resultaat:
Het resultaat was iets beter, maar de gameplaymechanieken werkten niet zoals bedoeld. Deze observatie benadrukt dat one-shot prompting tot prestatieproblemen kan leiden bij het ontwikkelen van complete softwareprojecten. Dit suggereert dat het gebruik van Kimi K2 binnen een agentisch raamwerk, met iteratieve prompts en aanpassingen, over het algemeen betere en betrouwbaardere resultaten oplevert, zoals het team in de sectie met beperkingen vermeldde.
Voorbeeld 6: Vakantieplanner
In dit voorbeeld verkende ik de webzoekfunctie van Kimi K2 door het te vragen een reisplanning te maken en die te delen in de vorm van een HTML-pagina.
Prompt: Ik voel me mentaal en fysiek uitgeput, en ik ben op zoek naar een diep herstellende 5-daagse wellnessretreat om mijn lichaam en geest te resetten. Ik woon in San Francisco en sta open voor reizen binnen of buiten de VS. Begin met het zoeken naar wellnessretreats die aansluiten bij mijn gezondheidsdoelen — zoals stressvermindering, digitale detox, yoga en gezond eten — en in mijn flexibele schema passen. Geef prioriteit aan opties met natuurbeleving, spabehandelingen en mindful activiteiten zoals meditatie of ademwerk.
Zodra je de ideale retreat hebt gevonden, plan dan alles: reis (vluchten of lokaal vervoer), accommodaties, dagelijkse yogasessies, massage- of spa-afspraken, gezonde maaltijden (bij voorkeur vegan of vegetarisch) en eventuele nabijgelegen natuur- of culturele ervaringen (zoals boswandelingen, klankschalen of theeceremonies).
Controleer bovendien de weersverwachting voor de gekozen locatie tijdens mijn mogelijke reisperiode en stel de optimale data voor. Stel vervolgens een volledig dag-tot-dag reisschema op, uitgesplitst per tijd, inclusief:
Ochtendrituelen en -sessies
Maaltijden en dieetplan
Middagactiviteiten
Avondafbouwroutines
Lokale verkenningsmogelijkheden
Ik wil ook graag een mooie routemap met mijn vertrek uit San Francisco en de bestemming van de retreat, met markeringen voor belangrijke haltes, bezienswaardigheden of interessante momenten.
Maak tot slot, in plaats van te synchroniseren met mijn agenda of e-mails te sturen, het volledige plan op in een visueel verbluffende lokale HTML-reispagina. De HTML-pagina moet:
Voldoen aan de Neo-Brutalism-stijl
Een gedurfde, expressieve lay-out gebruiken met opzettelijke stijlconflicten
Een aards maar rijk kleurenpalet hanteren (zachte groenen, steengrijzen, diepe bruintinten)
Handgetekende of geïllustreerde wellness-elementen bevatten (bijv. yoga-silhouetten, zon/maanmotieven)
Een schone routemap en een inklapbaar dagoverzicht bevatten
Volledig responsief zijn op mobiel en desktop
Zorgvuldige aandacht besteden aan lettertypekeuzes en contrast
Deze HTML-pagina moet sereen, modern en geaard aanvoelen, en dienen als mijn persoonlijke wellnessplanningsportaal.
Het kostte me ongeveer twee iteraties om een reisplan op te stellen en dit te previewen in de vorm van een HTML-pagina. De informatie die via de webzoektool werd opgehaald, hielp het model echter om een perfect reisschema op te stellen.
Conclusie
Kimi K2 is een opvallende toevoeging aan het open-source LLM-ecosysteem. Tijdens mijn tests leverde het sterke resultaten op het gebied van visuele en structurele generatie, vooral wanneer het stap voor stap of iteratief werd begeleid.
Dat gezegd hebbende is Kimi K2 niet foutloos. Het kan traag reageren, sommige outputs — met name in simulaties en gamelogica — vereisen meerdere iteraties om goed te worden, en interactieve elementen werken niet altijd zoals bedoeld.
Al met al biedt Kimi K2 echte mogelijkheden voor ontwikkelaars die willen experimenteren. Als je je prettig voelt bij LLM-gebaseerde workflows en meer controle wilt over agentisch gedrag tegen lage kosten, is het een model dat het verkennen waard is.
Ik ben een Google Developers Expert in ML (Gen AI), een Kaggle 3x Expert en een Women Techmakers Ambassador met meer dan 3 jaar ervaring in tech. In 2020 heb ik een healthtech-startup mee opgericht en ik volg een master computer science aan Georgia Tech, met als specialisatie machine learning.


Open-source AI zorgt opnieuw voor opschudding: Moonshot AI bracht onlangs Kimi K2 uit, een Mixture-of-Experts (MoE) taalmodel met 32 miljard geactiveerde parameters en in totaal één biljoen parameters.
In deze blog leg ik uit wat Kimi K2 is, hoe je er toegang toe krijgt, en neem ik je mee door praktische use-cases van Kimi K2. We verkennen hoe Kimi K2 kan:
We houden onze lezers op de hoogte van het laatste AI-nieuws via The Median, onze gratis vrijdagse nieuwsbrief die de belangrijkste verhalen van de week samenvat. Abonneer je en blijf scherp in een paar minuten per week:
Wat is Kimi K2?
Kimi K2 is een taalmodel ontwikkeld door Moonshot AI, met 32 miljard geactiveerde parameters binnen een uitgebreid raamwerk van in totaal 1 biljoen parameters. Kimi K2 is geoptimaliseerd voor agentische taken. Het is gebouwd om complexe, tool-gedreven taken uit te voeren, acties te nemen en te redeneren. Eind januari 2026 is er een nieuw model, Kimi K2.5.
Kimi K2 is beschikbaar in twee varianten:
Kimi K2 laat veelbelovende benchmarkresultaten zien, vooral in agentisch coderen en toolgebruik:
Bron: Kimi K2
Vergeleken met open-source tegenhangers zoals DeepSeek V3, Qwen 2.5 en LLaMA 4 presteert Kimi K2 vaak beter op benchmarks, maar kan in de praktijk zorgvuldige prompt engineering vereisen om optimale resultaten te behalen, doorgaans via iteratieve verfijning. Het is zelfs informeel omschreven als “DeepSeek V3 met minder heads en meer experts”, gezien de expert-routing MoE-architectuur.
Hoewel de API-infrastructuur nog in ontwikkeling is en de documentatie duidelijker kan, springt Kimi K2 eruit als een van de meest betaalbare opties van dit moment. Het is goed geschikt voor ervaren ontwikkelaars die bekend zijn met LLM-gebaseerde workflows, al kan de leercurve voor beginners steiler zijn.
Hoe krijg je toegang tot Kimi K2?
Je kunt Kimi K2 gebruiken via de chatinterface en de API.
Kimi Chat
Je kunt Kimi K2 openen via de Kimi Chat-interface:
Vervolgens leg ik stap voor stap uit hoe je Kimi K2 via de API instelt, dus voel je vrij om direct naar de voorbeelden te springen.
Kimi K2 API
Je kunt Kimi K2 ook benaderen via een API-endpoint. Het is momenteel gratis te gebruiken voor algemene vragen binnen de gratis laag voor een bepaald aantal verzoeken, waarna wordt overgeschakeld naar een kredietgebaseerde laag.
Je hebt een API-sleutel nodig, die je kunt genereren via de Moonshot Developer Console. Laten we dit proces stap voor stap doornemen.
Stap 1: Een API-sleutel genereren
Zo krijg je toegang tot de Moonshot API om het Kimi K2-model te gebruiken:
Stap 2: Een Python-omgeving opzetten
Laten we nu een omgeving opzetten voor al onze lokale experimenten:
Deze code maakt en activeert een Python-omgeving met de naam
kimi.Stap 3: Een globale variabele instellen
Het is aan te raden om de API-sleutel te exporteren als een omgevingsvariabele in je terminal of deze op te slaan in een
.env-bestand. Zo sla je hem op binnen je Python-omgeving (in dit gevalkimi):Om te controleren of de Moonshot API correct is ingesteld als globale variabele in je omgeving, voer je uit:
Als je de sleutelwaarde ziet bij het uitvoeren van het bovenstaande commando, kun je verder; zo niet, stel de sleutel dan eerst in als globale variabele. Als je de API-sleutel in een .env-bestand instelt, sla hem dan als volgt op:
Nu zijn we klaar om de mogelijkheden van Kimi K2 te verkennen.
Stap 4: Een API-call doen
Nu onze API-sleutel is ingesteld, proberen we een eenvoudige chat-completion met het Kimi K2-model.
Het bovenstaande Python-script zet de API-client op met de opgegeven API-sleutel en endpoint. De functie
simple_chat()stuurt een vooraf gedefinieerde prompt naar het Kimi-model (kimi-k2-0711-preview) in een chat-achtig formaat met systeem- en gebruikersberichten, waarna de reactie van de assistent wordt afgedrukt.