Table of Contents
- AI- en Agentstrategie
- 1. Rol van AI binnen het platform
- 2. AI-architectuur
- 3. Agentische taken
- 3.1 Projectassistent
- 3.2 Kennisassistent
- 3.3 Documentassistent
- 3.4 Analysator
- 3.5 Uitleg-agent (Etalage & Studenten)
- 3.6 Systeemtaken (achtergrond)
- 4. Grenzen van autonomie
- 5. RAG-strategie
- 6. Scheiding systeembron en AI-gedrag
- 7. Logging en terugkoppeling
- 8. MVP AI-scope
- 9. Open vragen
AI- en Agentstrategie
1. Rol van AI binnen het platform
Kernprincipe
AI is geen bijzaak of feature — het is een integraal onderdeel van hoe het platform werkt. De AI-laag ondersteunt gebruikers bij het structureren, analyseren, documenteren en beslissen. Tegelijkertijd blijft de mens altijd in control.
Drie niveaus van AI-inzet
| Niveau | Beschrijving | Voorbeeld |
|---|---|---|
| Assistentie | Reactief helpen op verzoek | "Vat dit project samen", "Wat zijn de risico's?" |
| Signalering | Proactief attenderen op patronen | "Dit commitment is 2 weken over deadline", "Deze projecten hebben overlap" |
| Agentisch | Autonome taken uitvoeren binnen grenzen | Embeddings genereren, documenten classificeren, overdrachtscheck uitvoeren |
2. AI-architectuur
┌─────────────────────────────────────────────────┐
│ LARAVEL APP │
│ │
│ Gebruiker ──▶ Chat Interface ──▶ AI Gateway │
│ │ │
└───────────────────────────────────────┼──────────┘
│ REST API
▼
┌─────────────────────────────────────────────────┐
│ PYTHON AI-SERVICE │
│ │
│ ┌─────────────┐ ┌──────────────────────┐ │
│ │ Router / │───▶│ LangGraph Orchestrator│ │
│ │ Classifier │ └──────────┬───────────┘ │
│ └─────────────┘ │ │
│ ┌───────────┼───────────┐ │
│ ▼ ▼ ▼ │
│ ┌─────────┐ ┌─────────┐ ┌────────┐│
│ │ Project │ │ Kennis │ │ Analyse ││
│ │ Agent │ │ Agent │ │ Agent ││
│ └────┬────┘ └────┬────┘ └───┬────┘│
│ │ │ │ │
│ ▼ ▼ ▼ │
│ ┌──────────────────────────────┐ │
│ │ Tool Layer │ │
│ │ - DB Query (read-only) │ │
│ │ - Document Retrieval (RAG) │ │
│ │ - Embedding Search │ │
│ │ - Calculation │ │
│ │ - Report Generation │ │
│ └──────────────────────────────┘ │
└─────────────────────────────────────────────────┘
3. Agentische taken
3.1 Projectassistent
Taken:
- Projectsamenvatting genereren
- Risico's identificeren op basis van projectbeschrijving
- Vergelijking met soortgelijke projecten
- Voortgangsanalyse en signalering
Autonomie: Laag — genereert voorstellen, gebruiker beslist
3.2 Kennisassistent
Taken:
- Semantisch zoeken over documenten en lessons learned
- Context ophalen uit projecthistorie
- Relevante documenten suggereren bij nieuwe projecten
- Samenvatten van lange documenten
Autonomie: Laag — zoekt en presenteert, schrijft niet
3.3 Documentassistent
Taken:
- Structuurvoorstel voor documenten
- Tekstsuggesties en aanvullingen
- Consistentiecheck over documenten
- Generatie van concept-overdrachtsrapporten
Autonomie: Midden — genereert concepten, gebruiker reviewt en bevestigt
3.4 Analysator
Taken:
- Portfolioanalyse (overlap, gaps, risico's)
- Trendanalyse over projecten
- Budget- en bestedingsanalyse
- Overdrachtgereedheidscheck
Autonomie: Laag — analyseert en rapporteert
3.5 Uitleg-agent (Etalage & Studenten)
Taken:
- Technische projectbeschrijvingen vertalen naar jargonvrije uitleg
- Concept etalage-items genereren, afgestemd op doelgroep (bestuur, collega's, studenten, extern)
- Taalregister aanpassen per doelgroep ("doelgroep-switch")
- Studentopdrachten verduidelijken en structureren
- Eerder gepubliceerde etalage-items als referentie gebruiken voor consistente toon
Autonomie: Midden — genereert concepten en vertalingen, maar publicatie naar de etalage vereist altijd menselijke review en bevestiging
Zie Studenten en Etalage voor de volledige beschrijving.
3.6 Systeemtaken (achtergrond)
Taken:
- Embeddings genereren bij document-updates
- Automatische tagging van documenten
- Deadline-signalering
- Samenvattingen cachen
Autonomie: Hoog — draait autonoom, maar alleen voor technische/ondersteunende taken
4. Grenzen van autonomie
Wat autonoom mag
- Embeddings genereren en bijwerken
- Documenten classificeren en taggen
- Samenvattingen genereren (als concept)
- Semantisch zoeken en resultaten presenteren
- Signaleringen genereren (deadlines, risico's)
Wat alleen na goedkeuring mag
- Documenten publiceren of wijzigen
- Statusovergangen van projecten
- Commitments aanmaken of wijzigen
- Notificaties versturen naar andere gebruikers
- Besluiten registreren
- Overdrachtsplannen genereren
Wat nooit autonoom mag
- Data verwijderen
- Autorisaties wijzigen
- Namens gebruikers communiceren naar buiten
- Bestuurlijke besluiten nemen
- Financiële mutaties doorvoeren
5. RAG-strategie
Retrieval-Augmented Generation
Gebruikersvraag
│
▼
┌─────────────┐ ┌──────────────┐
│ Query │────▶│ pgvector │──▶ Top-K relevante chunks
│ Embedding │ │ Similarity │
└─────────────┘ └──────────────┘
│
▼
┌──────────────┐
│ Context │
│ Assembly │──▶ Prompt met context
└──────────────┘
│
▼
┌──────────────┐
│ LLM │──▶ Antwoord met bronverwijzingen
└──────────────┘
Bronnen voor RAG
| Bron | Chunking-strategie | Update-trigger |
|---|---|---|
| Projectbeschrijvingen | Per sectie | Bij wijziging |
| Documenten | Per paragraaf (overlap) | Bij upload/wijziging |
| Lessons learned | Per artikel | Bij aanmaak/wijziging |
| Besluiten | Per besluit | Bij registratie |
| Kennisartikelen | Per sectie | Bij publicatie |
Kwaliteitswaarborgen
- Bronverwijzing bij elk antwoord (welk document, welk project)
- Confidence indicator ("gebaseerd op 3 bronnen" vs. "geen directe bronnen gevonden")
- Mogelijkheid voor gebruiker om feedback te geven op antwoorden
- Periodieke evaluatie van RAG-kwaliteit
6. Scheiding systeembron en AI-gedrag
Principe
Het systeem moet altijd duidelijk maken wat feitelijke data is en wat AI-gegenereerd is.
Implementatie:
- AI-gegenereerde content krijgt een visueel label ("AI-suggestie", "Concept")
- Gebruiker moet expliciet bevestigen voordat AI-content systeem-status krijgt
- Audit log registreert of content door mens of AI is aangemaakt
- AI heeft read-only toegang tot domeindata, schrijft alleen via gebruikersbevestiging
7. Logging en terugkoppeling
Verplichte logging
- Alle AI-requests en -responses (geanonimiseerd waar nodig)
- Welke tools/agents zijn ingezet per request
- Welke bronnen zijn gebruikt voor RAG
- Gebruikersfeedback op AI-antwoorden (thumbs up/down)
- Foutmeldingen en time-outs
Doel van logging
- Kwaliteitsverbetering van prompts en retrieval
- Inzicht in gebruikersbehoeften
- Detectie van onjuiste of misleidende antwoorden
- Basis voor iteratieve verbetering
8. MVP AI-scope
In MVP
- Chat-interface binnen projectcontext
- Projectsamenvatting genereren
- Semantisch zoeken over documenten
- Basis-RAG met bronverwijzing
Niet in MVP
- Gespecialiseerde agents per domein
- Proactieve signalering
- Automatische tagging
- Portfolioanalyse
- Documentgeneratie
Motivatie
Start eenvoudig, meet gebruik en kwaliteit, breid uit op basis van echte behoeften. Een basale maar betrouwbare AI-ervaring is waardevoller dan een brede maar onbetrouwbare.
9. Open vragen
- Welke LLM-provider is beschikbaar? (Claude API, OpenAI, Azure OpenAI, lokaal?)
- Is er een embedding-model voorkeur? (OpenAI ada-002, lokaal model?)
- Mag projectdata naar een externe API worden gestuurd, of moet alles lokaal?
- Wat is het acceptabele latentieniveau voor AI-responses? (<5s, <10s, <30s?)
- Moeten AI-gesprekken per gebruiker of per project worden opgeslagen?
- Is er behoefte aan meertalige ondersteuning? (Nederlands + Engels?)