Wat AI niet kan
Beperkingen: realtimegegevens, geheugen, redeneerfouten en zelfverzekerd foute antwoorden.
Wat AI niet kan is een gratis AI-promptengineering-les op CoddyKit. Dit is les 4 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject AI-promptengineering. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus AI-promptengineering bevat in totaal 4 lessen.
De beperkingen die je moet kennen
AI-taalmodellen zijn krachtig — maar ze hebben harde grenzen. Als je die grenzen niet begrijpt, leidt dat tot verspilde moeite, verkeerde antwoorden en gefrustreerde gebruikers.
De vier grootste beperkingen zijn: geen realtime-internettoegang, geen blijvend geheugen tussen sessies, zelfverzekerde hallucinaties en redeneerfouten in wiskunde en logica.
Geen realtime-internettoegang
LLM's zijn standaard volledig offline tijdens de inferentie. Ze kunnen niet:
- De aandelenkoersen van vandaag opzoeken
- Het huidige weer controleren
- URL's openen die je noemt
- Google of een andere bron doorzoeken
Als je vraagt 'Wat is de huidige aandelenkoers van Tesla?', zal het model weigeren of gokken op basis van trainingsgegevens — die maanden of jaren verouderd kunnen zijn.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=128,
messages=[{
'role': 'user',
'content': 'What is Bitcoin\'s price right now in USD?'
}]
)
# The model will acknowledge it cannot access real-time data
print(response.content[0].text)
# To add real-time data, you must inject it yourself:
current_price = 67500 # fetched from an exchange API by YOUR code
response2 = client.messages.create(
model='claude-opus-4-5',
max_tokens=128,
messages=[{
'role': 'user',
'content': f'Bitcoin price as of now: ${current_price}. Is this above or below $70,000?'
}]
)
print(response2.content[0].text)Datums van de kennisgrens
Elke LLM is getraind op een momentopname van het internet tot een specifieke datum — de kennisgrens.
Gebeurtenissen, wetten, producten, onderzoeksartikelen en mensen die na die grens bekend werden, zijn onbekend voor het model. Het kan nog steeds zelfverzekerd antwoorden, maar die antwoorden zijn gebaseerd op extrapolatie en niet op echte kennis.
Controleer voor tijdgevoelige taken altijd de vermelde kennisgrensdatum van het model.
import openai
client = openai.OpenAI(api_key='sk-your-key-here')
# Ask the model to disclose its cutoff and caveats
response = client.chat.completions.create(
model='gpt-4o',
messages=[{
'role': 'user',
'content': (
'I need to know about the latest AI models released in the past 3 months. '
'Please state your knowledge cutoff date and any caveats before answering.'
)
}]
)
print(response.choices[0].message.content)
# Best practice: inject a date stamp so the model knows the current date
from datetime import date
today = date.today().isoformat()
response2 = client.chat.completions.create(
model='gpt-4o',
system=f'Today is {today}. Your knowledge cutoff may be earlier — say so if relevant.',
messages=[{'role': 'user', 'content': 'What are the latest LLM releases?'}]
)Geen blijvend geheugen tussen sessies
Wanneer je een nieuwe sessie start, heeft het model geen herinnering aan eerdere gesprekken — zelfs niet aan een gesprek van 5 minuten geleden.
Dit is geen fout; zo werkt de staatloze API. Elke sessie begint met een lege context.
Om informatie tussen sessies te bewaren, moet je die zelf opslaan (in een database of bestand) en opnieuw toevoegen aan het systeembericht of de gespreksgeschiedenis.
import json
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
# Simulate storing user preferences between sessions
def load_user_profile(user_id):
# In production: load from database
return {'name': 'Alice', 'preferred_language': 'Python', 'skill_level': 'intermediate'}
def build_system_message(profile):
return (
f'The user\'s name is {profile["name"]}. '
f'They prefer {profile["preferred_language"]} examples. '
f'Their skill level is {profile["skill_level"]}. '
f'Tailor all responses accordingly.'
)
profile = load_user_profile('user-123')
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=256,
system=build_system_message(profile),
messages=[{'role': 'user', 'content': 'Show me how to read a file.'}]
)
print(response.content[0].text)Hallucinaties: zelfverzekerd en fout
Een hallucinatie ontstaat wanneer het model aannemelijk klinkende tekst genereert die feitelijk onjuist is — en die volledig zelfverzekerd presenteert.
Veelvoorkomende soorten hallucinaties:
- Verzonnen bronverwijzingen en titels van onderzoeksartikelen
- Verkeerde datums, namen of statistieken
- Verzonnen bedrijfsgegevens of productspecificaties
- Niet-bestaande API's of functienamen
Het model heeft geen interne feitencontrole — het genereert wat statistisch waarschijnlijk lijkt, niet wat is geverifieerd.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
# Asking for a citation is a classic hallucination trigger
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=256,
messages=[{
'role': 'user',
'content': (
'Cite 3 peer-reviewed papers about the effect of social media on teen anxiety. '
'Include author names, journal names, and publication years.'
)
}]
)
print(response.content[0].text)
# WARNING: verify every citation independently — some may be fabricatedHallucinaties verminderen
Je kunt hallucinaties niet volledig uitsluiten, maar je kunt ze wel aanzienlijk verminderen:
- Lever het bronmateriaal aan — vraag het model om alleen vanuit een geplakt document te antwoorden
- Vraag om een betrouwbaarheidsinschatting — instrueer het model om 'Dat weet ik niet' te zeggen wanneer het twijfelt
- Gebruik een lagere temperatuur — dit vermindert wilde gokpogingen
- Controleer onafhankelijk — controleer belangrijke uitvoer altijd op feiten
- Gebruik informatie-ophaling als aanvulling — voeg realtimefeiten toe voordat je de vraag stelt
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
# Ground the model with provided source material
document = (
'According to the 2023 Pew Research report, 46% of US teens say '
'they are online almost constantly, up from 24% in 2014-2015.'
)
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=256,
system=(
'Answer ONLY using the provided document. '
'If the answer is not in the document, say: "The document does not cover this."'
),
messages=[{
'role': 'user',
'content': f'Document:\n{document}\n\nQuestion: What percentage of US teens are online almost constantly?'
}]
)
print(response.content[0].text)Rekenfouten bij wiskunde
LLM's zijn geen rekenmachines. Ze genereren tokens die eruitzien als correcte berekeningen — maar ze maken fouten bij:
- Rekenwerk in meerdere stappen
- Bewerkingen met grote getallen
- Conversies van percentages en eenheden
- Logische puzzels met veel variabelen
Gebruik voor alles waarbij getallen een rol spelen altijd code-uitvoering of een externe rekenmachine, en laat het model daarna het resultaat interpreteren.
import openai
client = openai.OpenAI(api_key='sk-your-key-here')
# Bad practice: ask the LLM to compute a complex calculation directly
response_direct = client.chat.completions.create(
model='gpt-4o',
messages=[{'role': 'user', 'content': 'What is 17.83% of 348,921.47?'}]
)
print('LLM answer:', response_direct.choices[0].message.content)
# Good practice: compute in Python, then ask LLM to explain it
result = round(348921.47 * 0.1783, 2)
response_explained = client.chat.completions.create(
model='gpt-4o',
messages=[{
'role': 'user',
'content': f'17.83% of 348,921.47 is ${result}. Explain what this means for a budget report.'
}]
)
print('Explained:', response_explained.choices[0].message.content)Complexe logica en grenzen aan redeneren
LLM's hebben moeite met taken waarbij ze veel gelijktijdige voorwaarden moeten bijhouden of de toestand over veel stappen moeten volgen:
- Lange logische bewijzen met veel stappen
- Planningsproblemen met veel voorwaarden
- Code met diep geneste logica
- Het doorlopen van grafen of combinatorische problemen
Prompts voor stap-voor-stap-redeneren (waarbij je het model vraagt om 'stap voor stap te denken') verbeteren de prestaties aanzienlijk — maar sluiten fouten niet uit.
import anthropic
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
# Chain-of-thought improves complex reasoning
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=512,
messages=[{
'role': 'user',
'content': (
'A train leaves Station A at 9:00 AM traveling at 80 km/h. '
'Another train leaves Station B (300 km away) at 10:00 AM traveling at 100 km/h toward Station A. '
'At what time do they meet?\n\n'
'Think step by step before giving your answer.'
)
}]
)
print(response.content[0].text)Beperkingen voor bestanden en afbeeldingen
Basis-API's voor LLM's hebben beperkingen bij bestandsverwerking waar je rekening mee moet houden:
- Je kunt geen PDF versturen en het model die laten 'lezen' tenzij je eerst de tekst extraheert
- Voor afbeeldingsinvoer is een multimodaal model vereist (GPT-4o, Claude met ingeschakelde beeldherkenning)
- Voor audio, video en rekenbladen is doorgaans voorbewerking nodig voordat het model ze kan gebruiken
Zet documenten altijd om naar tekst voordat je ze aan een prompt toevoegt, tenzij je een multimodaal eindpunt gebruikt.
import anthropic
import base64
from pathlib import Path
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
# Images require explicit base64 encoding and vision-capable model
image_data = base64.standard_b64encode(Path('chart.png').read_bytes()).decode('utf-8')
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=256,
messages=[{
'role': 'user',
'content': [
{
'type': 'image',
'source': {'type': 'base64', 'media_type': 'image/png', 'data': image_data}
},
{'type': 'text', 'text': 'Describe what this chart shows.'}
]
}]
)
print(response.content[0].text)Wat AI goed doet — een evenwichtig beeld
Als je de beperkingen kent, kun je AI gebruiken waar het in uitblinkt:
- Taaltaken: schrijven, redigeren, samenvatten en vertalen — uitstekend
- Patroonherkenning in tekst: classificeren en extraheren — uitstekend
- Ideeën bedenken: veel verschillende ideeën genereren — uitstekend
- Wiskunde en logica: besteed dit uit aan code, gebruik AI voor interpretatie — gebruik hulpmiddelen
- Realtimefeiten: voeg gegevens zelf toe, gebruik AI om te redeneren — gebruik informatie-ophaling
- Geheugen: bewaar het extern en voeg het opnieuw toe — gebruik een database
# Pattern: inject real-time context + use AI for reasoning, not retrieval
import anthropic
from datetime import datetime
client = anthropic.Anthropic(api_key='sk-ant-your-key-here')
# Your application fetches these from real sources
weather_data = {'city': 'London', 'temp_c': 12, 'condition': 'rainy'}
news_headline = 'UK inflation drops to 2.3% in April 2025'
context = (
f'Current date: {datetime.now().strftime("%Y-%m-%d")}\n'
f'Weather in {weather_data["city"]}: {weather_data["temp_c"]}C, {weather_data["condition"]}\n'
f'Today\'s top news: {news_headline}'
)
response = client.messages.create(
model='claude-opus-4-5',
max_tokens=256,
system='You are a helpful assistant. Use only the provided context for current facts.',
messages=[{'role': 'user', 'content': f'{context}\n\nWhat should I wear today and what is the economic mood?'}]
)
print(response.content[0].text)De gouden regel: controleer AI-uitvoer
De belangrijkste gewoonte bij het gebruik van AI: controleer de uitvoer voordat je ernaar handelt.
- Feiten → controleer primaire bronnen
- Code → voer de code uit en test randgevallen
- Wiskunde → bereken het resultaat onafhankelijk
- Bronverwijzingen → zoek ze op in Google Scholar
- Medische, juridische en financiële adviezen → raadpleeg een bevoegde professional
Gebruik AI om teksten op te stellen, te genereren en te brainstormen — gebruik je eigen oordeel om ze te valideren.
import openai
client = openai.OpenAI(api_key='sk-your-key-here')
# Ask the model to flag its own uncertainty
response = client.chat.completions.create(
model='gpt-4o',
messages=[
{
'role': 'system',
'content': (
'After every response, add a line starting with CONFIDENCE: '
'and rate your certainty as HIGH, MEDIUM, or LOW, '
'with a brief reason.'
)
},
{
'role': 'user',
'content': 'Who won the 2023 FIFA Women\'s World Cup and what was the final score?'
}
]
)
print(response.choices[0].message.content)Kenniscontrole
Een ontwikkelaar vraagt een LLM om 23.7% van 1,456,820 te berekenen en het resultaat te gebruiken voor een samenvatting van een financieel rapport. Wat is het risico van deze werkwijze?
AI-beperkingen — samenvatting
De belangrijkste beperkingen om altijd in gedachten te houden:
- Geen realtime-internettoegang — voeg livegegevens toe vanuit je eigen code
- Kennisgrens — het model weet niets van na de trainingsdatum
- Geen sessiegeheugen — bewaar de context extern en voeg die opnieuw toe
- Hallucinaties — controleer feiten, bronverwijzingen en code onafhankelijk
- Rekenfouten — reken in code en gebruik AI voor interpretatie
- Grenzen aan logica — gebruik stap-voor-stap-redeneren, maar controleer complexe redeneringen nog steeds
Als je de beperkingen begrijpt, onderscheid je je als effectieve AI-gebruiker van gefrustreerde gebruikers.
Leer AI-promptengineering met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 53
- Lessen
- 199
Veelgestelde vragen
Is de les “Wat AI niet kan” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad AI-promptengineering, waaronder “Wat AI niet kan”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus AI-promptengineering bevat in totaal 4 lessen.
Wat leer ik in “Wat AI niet kan”?
Beperkingen: realtimegegevens, geheugen, redeneerfouten en zelfverzekerd foute antwoorden. Je oefent met AI-promptengineering door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met AI-promptengineering te beginnen?
Ervaring vooraf is niet nodig. AI-promptengineering op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 4 van 4.
Hoe lang duurt de les “Wat AI niet kan”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over AI-promptengineering?
Ja. Elke les over AI-promptengineering bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- De chatinterface begrijpen
- Typen verzoeken die AI kan verwerken
- Hoe AI antwoorden genereert
- Wat AI niet kan