Sinds 2023 zijn veel mensen in de ban van generative AI, ('generatieve kunstmatige intelligentie'). Middels generative AI zijn computers in staat om zelf nieuwe dingen te creëren. Dit is een grote verbetering ten opzichte van de situatie daarvoor, waarbij computers met software mensen assisteerden om foto's, muziek of software te maken.
Generative AI kan inmiddels gebruikt worden om teksten te genereren (ChatGPT), maar ook om afbeeldingen, foto's, en muziek te maken.
Zie ook: hoe werkt ChatGPT?
In deze blog gaan we dieper in op de werking en toepassingen van generative AI.
Je kunt meer lezen over:
- De geschiedenis, ontwikkeling, en werking van (generative) AI
- Soorten generatieve AI modellen incl voorbeelden
- Praktische toepassingen van generative AI
De geschiedenis en ontwikkeling van AI: van machine learning tot neural networks, transformers en generative AI
'AI' is een parapluterm voor algoritmes die door computers gebruikt worden om intelligente logica toe te passen, dit is ook wel bekend als machine learning.
Machine learning is een techniek waarbij een model getraind wordt op bestaande data in plaats van dat expliciet gedefinieerd wordt in welke situatie wat gedaan moet worden. Op deze manier kan een model bijvoorbeeld zelf achterhalen wat de beste manier is om een dataset te clusteren.
Voorbeelden van modellen die bij machine learning gebruikt worden zijn neural networks en deep learning. De huidige modellen waarop generative AI is gebaseerd zijn ook neural networks.
Een neural network is een model dat bestaat uit meerdere lagen van neuronen (neurons) die met elkaar verbonden zijn. Elke neuroon heeft een input, een functie om de input te verwerken en een output. Wanneer een model getraind wordt, wordt voor elke neuroon bepaald hoe de input verwerkt moet worden en dus wat de output zal zijn. Het uiteindelijke resultaat is de output van de laatste neuronen die niet verder verbonden zijn.
Enkele jaren geleden is een nieuwe variant van neural networks ontwikkeld, de transformer-architectuur, dat de basis vormt voor het huidige ChatGPT. 'GPT' betekent 'generative pre-trained transformer'.
Soorten generatieve AI modellen incl voorbeelden
AI modellen zijn in staat op basis van een input (een prompt) een output te genereren. De input en output zijn zijn te classificeren als text, image, audio of video. Modellen worden dan ook getypeerd als 'text-to-text' (bijvoorbeeld ChatGPT) of 'text-to-image' (DALL-E). We zullen nu diverse gen AI modellen behandelen.
Text-to-text
De bekendste vorm van text-to-text is ChatGPT van OpenAI: je stelt een vraag en krijgt een antwoord. Het model achter ChatGPT is een large language model (LLM). Dit LLM is van OpenAI en alleen beschikbaar via de ChatGPT website. Er zijn echter ook andere large language models, zoals:
- Claude, ontwikkeld door het bedrijf Anthropic
- LLaMa, een open-source model ontwikkeld door Meta
- Gemini: een open-source model ontwikkeld door Google
- Phi: een licht open-source model ontwikkeld door Microsoft dat ook op 'normale' PC's acceptabele resultaten geeft
Open-source modellen kunnen interessant zijn om deze op je eigen PC te gebruiken, terwijl ChatGPT altijd op de servers van OpenAI draait. Er is echter wel veel rekenkracht benodigd om tot een acceptabele snelheid te komen, waardoor in de praktijk een LLM in de cloud het meest praktisch is.
Lees ook: hoe schrijf ik goede ChatGPT prompts?
Naast het genereren van tekst kunnen LLMs ook embeddings genereren op basis van tekst. Dat is een cijfermatige representatie (vector) van een stuk tekst. Door teksten te vertalen naar vectoren kan relatief eenvoudig bepaald worden in welke mate teksten op elkaar lijken door de afstand tussen één of meerdere vectoren te vergelijken.
Text-to-image
Modellen als DALL-E en Midjourney stellen je in staat om afbeeldingen te genereren. Aangezien dit veel rekenkracht vergt, is deze functionaliteit betaald. Ook hierbij gebruik je een prompt waarmee je middels tekst aangeeft wat er op de afbeelding te zien moet zijn. Er zijn geen regels waar een prompt aan moet voldoen: een paar woorden kan voldoende zijn, maar het is ook mogelijk om tot in detail te beschrijven waar de afbeelding aan moet voldoen.
Zoals altijd is een een goede prompt belangrijk voor een goed resultaat. Het kan daarom nuttig zijn om eerst aan ChatGPT te vragen om een prompt te schrijven die beschrijft wat er getoond moet worden alvorens je deze aan de image generator doorgeeft.
Onderstaand zie je een voorbeeld van een afbeelding die door Midjourney werd gegenereerd waarbij we de prompt gebruikten:
/imagine a photorealistic image of a data scientist in a dense jungle with smoking servers and monkeys --v 6.0 --s 750
Een ander voorbeeld is de afbeelding boven aan dit blog. Deze is gegenereerd met het prompt:
/imagine photorealistic image of lots of computers falling from a light blue sky --v 6.0 --s 750
Text-to-speech
Elke tekst kan worden omgezet in een gesproken tekst. De interface van ChatGPT heeft onderaan elk antwoord een geluidsicoon staan die je in staat stelt de tekst uit te laten spreken. Door gebruik te maken van de ChatGPT API kan je zelf ook de stem configureren.
Text-to-speech modellen zijn doorgaans geoptimaliseerd voor de Engelse taal maar werken ook in het Nederlands.
Speech-to-text
Whisper is een model van OpenAI waarmee spraak herkend kan worden en omgezet in tekst. Door dit te combineren met een text-to-text model, kan de tekst ook verwerkt worden. Denk hierbij aan vertalen of samenvatten.
Image-to-text
Dit wordt door OpenAI ook wel vision genoemd. Via de de API kan je afbeeldingen uploaden en een tekstuele beschrijving terugkrijgen. Vooralsnog kan dit alleen via de API.
We gaan een vraag stellen over deze afbeelding van Wikipedia:
De vraag die we meegeven is: "What’s in this image?"
Verbinden met de API kan op de volgende manier:
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "What’s in this image?"},
{
"type": "image_url",
"image_url": {
"url": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg",
},
},
],
}
],
max_tokens=300,
)
print(response.choices[0])
Vervolgens krijg je het volgende antwoord terug: "The image depicts a scenic view of a wooden pathway winding through a lush green landscape. The path leads through tall grass and there are some trees and shrubs in the background. The sky is mostly clear with a few clouds, creating a vibrant and serene atmosphere."
Praktische toepassingen van Generatieve AI
Generatieve AI kan op allerlei manieren praktisch worden toepgeast. Hier zijn enkele voorbeelden:
- Creativiteit: je kunt afbeeldingen en teksten genereren op basis van slecht een paar woorden.
- Natuurlijke taalverwerking: teksten kunnen worden gecontroleerd op taalfouten. Daarnaast kunnen suggesties gegeven worden voor het verbeteren van de teksten in het algemeen.
- Klantenservice: een AI chatbot kan worden toegepast op content van een bedrijf, zodat een chatbot op natuurlijke wijze vragen kan beantwoorden op basis van informatie die niet in het ChatGPT-model zit.
- Transcriberen van geluidsopnames: opgenomen gesprekken geautomatiseerd omzetten naar geschreven teksten.
- Contentgeneratie: inhoud genereren voor blogs, artikelen, sociale media berichten en meer op basis van enkele termen. Als de kwaliteit nog niet voldoende is, kan het model gevraagd worden om meerdere opties te genereren waarna een menselijke redacteur het verfijnt.
Wil je allround AI expert worden?
Tijdens onze AI Opleiding leer je het hele AI spectrum kennen; van klassieke machine learning modellen tot generative AI met o.a. ChatGPT. Je leert programmeren in Python zodat je op uiteenlopende vlakken aan de slag kunt met AI.
Terry is afgestudeerd aan de TU Delft als ingenieur en heeft zich in zijn carrière beziggehouden met het optimaal benutten van data om bedrijfsprestaties te verbeteren. Dit heeft hij gedaan in verschillende rollen, als software ontwikkelaar en als data scientist.