ID.nl logo
Programmeren in Python met ChatGPT - Deel 4
© Alexander Limbach
Huis

Programmeren in Python met ChatGPT - Deel 4

ChatGPT is niet alleen in staat om vragen te beantwoorden, teksten samen te vatten en tags aan teksten toe te kennen. Je kunt er ook teksten mee vertalen of naar andere vormen transformeren. In dit vierde deel van onze reeks over de OpenAI-API tonen we je hoe je dat doet in Python.

In dit vierde deel laten we zien dat ChatGPT prima teksten kan omzetten:

  • In een vertaling
  • In een gedicht
  • In een computertaal
  • Taalherkenning
  • Aanspreekvorm veranderen

Lees ook: Geen talenknobbel (meer)? Deze (ver)taaltools helpen je uit de brand

Code downloaden In dit deel worden wat voorbeelden van stukken code gegeven. Omdat overtikken van code erg foutgevoelig is, kun je die code beter downloaden en daarna bekijken of kopiëren. Het bestand, gptcode-dl4.txt is beschikbaar via deze webpagina.

Een groot taalmodel, zoals dat van ChatGPT, kun je eigenlijk beschouwen als een soort krachtige rekenmachine die niet met getallen werkt, maar met woorden. Daardoor kun je tekst omzetten in een ander soort tekst. Een tekst van het Engels naar het Nederlands vertalen? Van een familiaire naar een formele toon? Of, als je met programmeertalen werkt, van tekst naar een tabel in HTML? Het is allemaal mogelijk en vrij eenvoudig in je eigen programma’s te integreren.

Basiscode

In dit vierde deel van deze reeks houden we onze code eenvoudig, zodat we de variëteit van transformaties van teksten kunnen illustreren die met de OpenAI-API mogelijk zijn. We gaan dus geen Word-bestanden inlezen, maar de te transformeren teksten als korte strings in onze code zetten.

Voor alle voorbeelden in dit artikel gebruiken we daarom de volgende basiscode:

De code kun je bekijken in het bestand gptcode-dl4.txt, te downloaden via .

Deze code gebruikten we ook al in het derde deel van deze reeks. Vervang de waarde van API_KEY door je eigen API-sleutel en kies eventueel een ander model dan gpt-3.5-turbo. Zo is het model gpt-4 taalkundig veel sterker, maar dat kost wel meer.

GPT-4 is taalkundig sterker dan GPT-3.5, maar wel een factor twintig duurder.

Vertaalmachine

Als we hiermee een tekst willen vertalen, hebben we een systeemprompt nodig met de vertaalopdracht en een gebruikersprompt met de te vertalen tekst. Dat doe je door de volgende regels code aan het einde van de basiscode toe te voegen:

De code kun je bekijken in het bestand gptcode-dl4.txt, te downloaden via .

Sla het script onder de naam translate.py op in Visual Studio Code met Ctrl+S en open een opdrachtregel met het menu Terminal / New Terminal. Klik dan rechtsboven op het afspeelknopje (het driehoekje met de tooltip Run Python File als je erboven blijft hangen). Als alles goed gaat, krijg je nu in de terminal een Nederlandse vertaling van de Engelse tekst.

Dichterlijke vrijheid

Dat vertalen hoeft niet altijd heel letterlijk te zijn. Je kunt ook vragen om een haiku te maken die een tekst beschrijft:

De code kun je bekijken in het bestand gptcode-dl4.txt, te downloaden via .

We hebben als gebruikersprompt gewoon de lead van een artikel van de website van NRC ingevoerd. Het taalmodel maakt daarvan de volgende haiku:

Wagnerstrijders gaan,

Onder de rook van Moskou,

Putsch nek omgedraaid.

Op deze manier zou je een programma kunnen schrijven dat je elke ochtend het nieuws in de vorm van haiku’s toont.

Universele vertaalmachine

De taalmodellen van OpenAI zijn getraind op teksten in allerlei talen en die talen worden zelfs automatisch herkend. Merk op dat we in de systeemprompt van ons vertaalscript niet vroegen om de tekst van het Engels naar het Nederlands te vertalen. We vroegen simpelweg om de tekst naar het Nederlands te vertalen. Dat had ook gewerkt als we een Franse tekst of een tekst in een andere taal hadden opgegeven als gebruikersprompt.

Taalbarrière?

Met een vertaalapparaat kom je er altijd uit

Die mogelijkheid om de taal te herkennen kunnen we ook gebruiken. We vragen dan eerst wat de taal is van de gegeven tekst en vragen dan pas om die te vertalen. We kunnen die laatste opdracht zelfs nog explicieter maken door te vragen om uit de herkende taal te vertalen. Dat ziet er dan als volgt uit, met enkele voorbeelden in verschillende talen:

De code kun je bekijken in het bestand gptcode-dl4.txt, te downloaden via .

Zoals je ziet, zijn we in LANGUAGE_PROMPT vrij expliciet geweest. Als we gewoon vragen “What language is this?”, krijgen we antwoorden als “This is Chinese” of “This language is Italian”. Dat willen we niet. Ook een antwoord als “French.” met een punt op het einde willen we zo vermijden, maar zelfs na het expliciet te vragen blijft het taalmodel dit meestal met een punt eindigen. Daarom dat we met rstrip(".") dit nog verwijderen.

Sla een andere toon aan

Je kunt met taal allerlei registers bespelen. In een formele sollicitatiebrief sla je een andere toon aan dan in een appje naar je vrienden. Ook daarmee kunnen de taalmodellen van OpenAI aan de slag. Je kunt een tekst eenvoudig naar een andere toon omzetten. Een voorbeeld maakt dit duidelijk:

De code kun je bekijken in het bestand gptcode-dl4.txt, te downloaden via .

Computertalen omzetten

Op dezelfde manier kunnen we computertalen vertalen. Maar een omzetting van bijvoorbeeld JSON naar HTML doe je beter met een Python-bibliotheek die daarin gespecialiseerd is. Waar taalmodellen wel goed in zijn, is het omzetten van een tekstuele beschrijving van een gebruiker naar een computertaal. Stel dat je in een programma bestellingen van een gebruiker opneemt, dan kun je het resultaat naar een tabel in HTML laten omzetten:

De code kun je bekijken in het bestand gptcode-dl4.txt, te downloaden via .

Het resultaat is inderdaad een HTML-bestand met een tabel met de juiste gegevens.

Maak een HTML-tabel op basis van een tekst.

En verder

Teksten transformeren, in alle mogelijke vormen, is een krachtige functie waarvoor je ChatGPT en dus ook de achterliggende taalmodellen via de OpenAI-API kunt inzetten. Zo breid je eenvoudig je eigen programma’s uit met allerlei transformaties van teksten. We hebben hier nog maar een kleine greep van de mogelijkheden getoond. Titels beschrijven in emoji’s? Handleidingen naar gedichten omzetten? Tweeten in de stijl van Donald Trump? Het is zo gebeurd.

Volgende week maandag het vijfde en laatste deel van deze reeks! Hierin gaan we de OpenAI-API nog interactiever toepassen en echte gesprekken voeren.

Lees ook:

▼ Volgende artikel
Eerste teaser van het derde House of the Dragon-seizoen is te zien
Huis

Eerste teaser van het derde House of the Dragon-seizoen is te zien

Het derde seizoen van Game of Thrones-spin-off House of the Dragon zal in juni op HBO Max verschijnen. Daarbij is gisteren de eerste teaser trailer uitgebracht.

Veel details over het derde seizoen zijn er nog niet, maar in het tweede seizoen stond het conflict tussen de verschillende groepen binnen Huis Targaryen centraal, en de spanningen zullen in het derde seizoen nog verder oplopen.

House of the Dragon is een prequel op Game of Thrones en gebaseerd op Fire and Blood van schrijver George R. R. Martin, die ook de boeken schreef waar Game of Thrones op gebaseerd is. Onder de acteurs in de serie vallen onder andere Emma D'Arcy, Matt SMith en Olivia Cooke.

Watch on YouTube

Een vierde seizoen voor de serie is ook al bevestigd, maar het is zo goed als zeker dat dat het laatste seizoen wordt. Er zijn namelijk plannen gemaakt voor vier seizoenen - dan is het verhaal verteld.

Daar blijft het natuurlijk niet bij op het gebied van Game of Thrones-content. Op HBO Max is onlangs het eerste seizoen van spin-off A Knight of the Seven Kingdoms afgerond, gebaseerd op Tales of Dunk and Egg (wederom uit de koker van Martin). Deze serie werd erg positief ontvangen en er zijn plannen om elk jaar een nieuw seizoen uit te brengen. De wachttijd tussen seizoenen van House of the Dragon is vaak juist twee jaar of langer.

▼ Volgende artikel
ETNA CM250MZ: waarom deze matzwarte combi-oven de favoriet van 2025 is
© ETNA
Huis

ETNA CM250MZ: waarom deze matzwarte combi-oven de favoriet van 2025 is

De ETNA CM250MZ is officieel bekroond met de Best Reviewed 2025 award van Kieskeurig.nl. Deze matzwarte combi-oven combineert een ruime inhoud van 50 liter met geavanceerde turbo-hetelucht en een intuïtieve touch-bediening. In dit artikel ontdek je waarom consumenten dit model massaal verkiezen boven andere ovens en wat deze award precies betekent voor jouw aankoopkeuze.

Partnerbijdrage - in samenwerking met ETNA

Het vinden van de juiste keukenapparatuur voelt vaak als een gok waarbij je moet kiezen tussen design en functionaliteit. Veel consumenten laten zich leiden door alléén het uiterlijk, om er later achter te komen dat de bakresultaten tegenvallen of de bediening onnodig ingewikkeld is. De jaarlijkse Best Reviewed-award van Kieskeurig.nl maakt een einde aan die onzekerheid door echte gebruikerservaringen centraal te stellen. Na het lezen van dit artikel weet je exact of de ETNA CM250MZ de juiste aanvulling is voor jouw keuken.

©ETNA

Het keurmerk van échte consumentenervaringen

De Best Reviewed 2025-award is geen prijs die door een vakjury achter gesloten deuren wordt uitgereikt, maar een erkenning gebaseerd op talloze onafhankelijke reviews van gebruikers. Een product komt pas in aanmerking voor deze titel als het gedurende het hele jaar consistent hoog scoort op gebruiksvriendelijkheid, prijs-kwaliteitverhouding en prestaties. Voor een merk als ETNA is dat de hoogste vorm van erkenning, omdat het direct reflecteert hoe de apparatuur in de dagelijkse praktijk functioneert. Wanneer je een combi-oven zoekt die dit label draagt, weet je dat andere kopers je al voorgingen en hun goedkeuring hebben gegeven aan de duurzaamheid en het gebruiksgemak van het apparaat.

De techniek achter de matzwarte afwerking

Zodra je de deur van de ETNA CM250MZ opent, voel je de degelijkheid van de scharnieren en het gladde oppervlak van de binnenruimte. Onder de motorkap vind je een krachtig turbo-heteluchtsysteem dat temperaturen tussen de 50 en 250 graden Celsius nauwkeurig vasthoudt.

De bediening van dit model verloopt via een modern touch-paneel met een slider die direct reageert op je vingerbewegingen. In plaats van herhaaldelijk op knoppen te tikken, veeg je soepel door de temperatuurinstellingen en tijden. Dit werkt intuïtief en snel, waardoor je de juiste van de acht ovenfuncties binnen enkele seconden hebt ingesteld voordat je de bereiding start.

©ETNA

Optimaal resultaat in een compacte keuken

Deze oven is bij uitstek geschikt voor huishoudens die de ruimte van een volwaardige oven willen zónder een enorme nis op te offeren. Met een inhoud van 50 liter en meerdere bakniveaus kun je probleemloos twee bakplaten met koekjes of een grote ovenschotel kwijt. De dertien automatische programma's nemen het denkwerk uit handen; je selecteert het type gerecht en het gewicht, waarna de oven zelf de juiste verhouding tussen magnetronvermogen en hetelucht bepaalt. Dat werkt bijzonder goed bij het bereiden van vlees dat sappig van binnen moet blijven, maar een krokante korst vereist. De vijf magnetronstanden bieden bovendien genoeg souplesse om zowel voorzichtig te ontdooien als snel een maaltijd op te warmen.

Beste match voor jou?

Er zijn situaties waarin de ETNA CM250MZ niet de beste match voor je is. Als je een professionele thuisbakker bent die regelmatig meerdere grote broden tegelijk bakt, heb je meer aan de inhoud van een volledig formaat oven. Ook wanneer je keuken een nismaat heeft die afwijkt van de standaard 45 centimeter hoogte, zal dit model niet passen zonder ingrijpende aanpassingen aan je kasten. Voor mensen die moeite hebben met digitale menu's en alleen een simpele knop voor start en stop willen, kan de uitgebreide interface misschien wat overweldigend aanvoelen. Tot slot is dit model minder geschikt voor al te kleine studentenkamers waar een vrijstaand model op het aanrecht de enige optie is, aangezien dit toch echt een inbouwmodel is.

©ETNA

Een betrouwbare alleskunner voor dagelijks gebruik

De ETNA CM250MZ is de Best Reviewed combi-oven van 2025 vanwege de uitstekende balans tussen een luxe matzwart design, een ruime 50 liter inhoud en veelzijdige kookfuncties. Met acht ovenfuncties en dertien automatische programma's biedt het apparaat gebruiksgemak voor zowel snelle opwarmtaken als uitgebreide bakprojecten. Het full touch-bedieningspaneel en de turbo-hetelucht zorgen voor een moderne kookervaring en gelijkmatige resultaten. Dit model is de ideale keuze voor wie een betrouwbare, stijlvolle inbouwoplossing zoekt die door echte gebruikers hoog wordt gewaardeerd op Kieskeurig.nl.