From 1413d79cbf452b3c91c3e1e0557877651711e368 Mon Sep 17 00:00:00 2001 From: vps1_gitea_admin Date: Tue, 31 Mar 2026 15:48:38 +0000 Subject: [PATCH] Add "AI en Agentstrategie" --- AI-en-Agentstrategie.md | 248 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 248 insertions(+) create mode 100644 AI-en-Agentstrategie.md diff --git a/AI-en-Agentstrategie.md b/AI-en-Agentstrategie.md new file mode 100644 index 0000000..486bdc5 --- /dev/null +++ b/AI-en-Agentstrategie.md @@ -0,0 +1,248 @@ +# 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 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 + +1. Welke LLM-provider is beschikbaar? (Claude API, OpenAI, Azure OpenAI, lokaal?) +2. Is er een embedding-model voorkeur? (OpenAI ada-002, lokaal model?) +3. Mag projectdata naar een externe API worden gestuurd, of moet alles lokaal? +4. Wat is het acceptabele latentieniveau voor AI-responses? (<5s, <10s, <30s?) +5. Moeten AI-gesprekken per gebruiker of per project worden opgeslagen? +6. Is er behoefte aan meertalige ondersteuning? (Nederlands + Engels?)