Files
novi-lessons/Samenvattingen/Les12-Samenvatting.md
2026-06-07 15:15:11 +02:00

2.3 KiB

Les 12: Tool Calling — Laat AI zelf functies kiezen

Deze les is volledig uitgewerkt

Lesmateriaal


Deel

Deel 3 — AI Development (Les 11-16)

Beschrijving

Vervolg op Les 11. We lossen het schaalprobleem op: niet alles in de context proppen, maar de AI laten kiezen welke tool (functie) hij nodig heeft. We bouwen 6 tools voor de Polderfest-app: search, stats, schedule, favorites en meer.


Te Behandelen

Theorie

  • Wat is Tool Calling? (vergelijking met traditionele API-call)
  • Het schaalprobleem: 30.000 tokens per call werkt niet voor 50.000 records
  • tool({ description, inputSchema, execute }) met Zod
  • stopWhen: stepCountIs(5) — multi-step reasoning
  • Wanneer tool calling NIET de oplossing is

Live demo's

  1. Eerste tool: searchBands met Zod-schema
  2. Multi-step setup + extra tools (stats, schedule)
  3. Streaming + tool-results renderen in de UI
  4. Debug-view: zien welke tools de AI kiest

Tools

  • Vercel AI SDK v6 (tool, stepCountIs)
  • Zod voor input-validatie
  • Supabase queries vanuit tools
  • Polderfest-demo (in repo: Les12-Tool-Calling/polderfest-demo)

Lesopdracht (in-class, 60 min)

Studenten kijken klassikaal mee. In-class oefening:

  • Voeg een eigen tool toe aan de Polderfest-app (bv. getBandsByGenre)
  • Test of de AI je tool spontaan gebruikt
  • Check de debug-view: hoeveel stappen nam de chain?

Inleveren: Screenshot van debug-view met meerdere tool-calls.


Huiswerk (take-home)

Bouw vanuit je eigen Les 11-project:

  • Minimaal 3 tools met Zod-schemas
  • Multi-step setup (max 5 stappen)
  • README documenteert elk tool: doel + voorbeeld-prompt
  • Reflectie 300 woorden: wanneer kies je tool calling vs. all-in-context?

Inleveren: GitHub URL via Teams.


Leerdoelen

Na deze les kan de student:

  • Een Tool definiëren met tool() en Zod-schema
  • Multi-step tool calling configureren met stopWhen
  • Een Supabase-query als tool blootstellen aan de LLM
  • Bepalen wanneer tool calling de juiste oplossing is
  • Tool-calls debuggen via de AI SDK debug-output