Ga naar hoofdinhoud

Kimi K2: Een gids met zes praktische voorbeelden

Leer wat Moonshot's Kimi K2 is, hoe je er toegang toe krijgt en bekijk zes praktische voorbeelden die je kunt gebruiken.
· 8 min lezen

Verken met AI

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:

  • Gestructureerde en responsieve webcontent genereren
  • Grafische outputs maken zoals SVG’s
  • Interactieve datavisualisatie en statistische analyse faciliteren
  • Complexe wetenschappelijke fenomenen simuleren
  • Leuke games ontwikkelen
  • Gedetailleerde reisplannen maken met interactieve functies

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:

  1. Kimi-K2-Base, een basismodel voor eigen fine-tuning; en
  2. Kimi-K2-Instruct, afgestemd op algemene chat en autonome taakuitvoering.

Kimi K2 laat veelbelovende benchmarkresultaten zien, vooral in agentisch coderen en toolgebruik:

kimi k2 benchmarks

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.

Gebruik van Free Tier in Kimi K2

Gebruikersniveau voor 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:

  1. Log in op de Moonshot console met je Gmail-account.

Moonshot console inloggen

  1. Klik op Recharge onder het tabblad Billing en voeg je kaartgegevens toe. Voor deze tutorial is ongeveer $5 voldoende. Je krijgt nog eens $5 als voucher op de factuur.
  2. Ga naar het tabblad API Keys en klik op Create API Key. Vul de naam van de API-sleutel en het project in (laat dit in eerste instantie op standaard staan) en sla de API-sleutel op voor later gebruik.

Maak een API-sleutel voor kimi k2

Stap 2: Een Python-omgeving opzetten

Laten we nu een omgeving opzetten voor al onze lokale experimenten:

conda create -n kimi python=3.10
conda activate kimi

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 geval kimi):

export MOONSHOT_API_KEY="your_api_key"

Om te controleren of de Moonshot API correct is ingesteld als globale variabele in je omgeving, voer je uit:

echo $MOONSHOT_API_KEY

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:

MOONSHOT_API_KEY=your_api_key

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.

from openai import OpenAI
import os
MOONSHOT_API_KEY = os.getenv("MOONSHOT_API_KEY", "your-moonshot-api-key")
client = OpenAI(
    api_key=MOONSHOT_API_KEY,
    base_url="https://api.moonshot.ai/v1"
)
def simple_chat(model_name: str):
    messages = [
        {"role": "system", "content": "You are Kimi, an AI assistant created by Moonshot AI."},
        {"role": "user", "content": "Explain LLM to a 5-year-old."}
    ]
    response = client.chat.completions.create(
        model=model_name,
        messages=messages,
        stream=False,
        temperature=0.6,
        max_tokens=256
    )
    print(response.choices[0].message.content)
simple_chat("kimi-k2-0711-preview")

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. 

Eerste uitvoer van gebruikersverzoek

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.

SVG-representaties genereren met Kimi K2

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

Wetenschappelijke simulatie 1 met kimi k2

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.

Aashi Dutt

Auteur

Aashi Dutt

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.

Onderwerpen

Gerelateerd