Je agent geeft een raar antwoord en je hebt geen idee waarom: was het de prompt, een tool die faalde, of het model zelf? Precies dat gat vult LangSmith, het observability-platform van LangChain. Een verse freeCodeCamp-tutorial (22 juli) liet zien hoe je er een lokale agent mee doorlicht; dit is de aanpak in vier stappen, geverifieerd tegen de LangChain-documentatie.
Stap 1: maak een gratis LangSmith-account
Meld je aan op smith.langchain.com en maak een API-sleutel aan via de instellingen. Het gratis Developer-plan geeft je 1 seat en 5.000 base traces per maand met 14 dagen retentie — zonder creditcard blijft dat ook meteen het plafond (Bron: LangSmith-pricing via Inference.net, stand juli 2026). Voor het uitproberen van een lokale agent kom je daar ruim mee toe.
Stap 2: zet tracing aan met twee variabelen
Hier zit de verrassing: er is géén extra code nodig. LangChain-agents die je bouwt met create_agent ondersteunen tracing automatisch. Twee omgevingsvariabelen volstaan:
export LANGSMITH_TRACING=true
export LANGSMITH_API_KEY=<jouw-sleutel>
Draai daarna je agent zoals altijd; elke run belandt als trace in het project default op smith.langchain.com (Bron: LangChain-docs). In zo’n trace zie je de complete keten: de gebruikersvraag, elke modelcall met prompt en antwoord, elke tool-aanroep met argumenten en resultaat, en de latency per stap.
💡 Beginner-tip: je hoeft geen betaald model te gebruiken om dit te leren. Draai je agent lokaal met een klein model via Ollama (de freeCodeCamp-tutorial gebruikt Qwen) en alleen de tracing-laag staat in de cloud — je experimenteert dan zonder API-kosten.
Stap 3: organiseer je traces in projecten
Alles in default dumpen wordt snel onoverzichtelijk. Zet LANGSMITH_PROJECT=mijn-agent als omgevingsvariabele, of kies per run een project met de tracing_context-manager:
import langsmith as ls
with ls.tracing_context(project_name="email-agent-test", enabled=True):
agent.invoke({"messages": [{"role": "user", "content": "Stuur een testmail"}]})
Datzelfde blok accepteert ook tags en metadata (bijvoorbeeld een user-id of omgeving), zodat je traces in de web-UI kunt filteren op wat jou interesseert. Handig zodra meerdere versies van je agent naast elkaar draaien.
Stap 4: lees een trace als een verhaal
Open een trace en loop de boom van boven naar beneden door: klopt de system-prompt die het model kreeg? Koos de agent de juiste tool, met de juiste argumenten? Waar zit de meeste latency? De meeste agent-bugs blijken geen modelproblemen maar aansturing: een tool-beschrijving die het model op het verkeerde been zet, of een tussenresultaat dat niet in de vervolgprompt belandt. Dat zie je alleen met een trace — en het is dezelfde discipline die we eerder aanraadden in AI-agents evalueren met een LLM-judge en betere prompts voor AI-agents. Waarom dit zicht geen luxe is, laat Gartners voorspelling zien dat veel bedrijven hun agents zonder goede governance weer terugschroeven — lees het bij hetlaatsteainieuws.nl.
⚡ Gevorderden: wil je selectief tracen in productie (bijvoorbeeld alleen 1 op de N runs, of alleen bepaalde endpoints), gebruik dan
ls.tracing_context(enabled=True)rond specifieke aanroepen in plaats van de globale variabele. Zo houd je je trace-budget onder controle.
Checklist: ben je klaar?
- Gratis account aangemaakt op smith.langchain.com
- API-sleutel gegenereerd en veilig opgeslagen
-
LANGSMITH_TRACING=trueenLANGSMITH_API_KEYgezet - Agent één keer gedraaid en de trace teruggevonden in de web-UI
- Eigen projectnaam ingesteld via
LANGSMITH_PROJECToftracing_context - Tags/metadata toegevoegd zodat je runs kunt filteren
- Eén echte bug opgespoord door een trace stap voor stap door te lezen
Bronnen
- LangSmith Observability — officiële LangChain-documentatie
- LangSmith-platform — LangChain
- How to Trace and Monitor AI Agents with LangSmith — freeCodeCamp, 22 juli 2026 (aanleiding)
- LangSmith Pricing Explained (2026) — Inference.net, geraadpleegd juli 2026
