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
🍕 Effe wachten… Met deze oven staat er in tweeënhalve minuut een verse pizza op tafel!
© sonyakamoz - stock.adobe.com
Huis

🍕 Effe wachten… Met deze oven staat er in tweeënhalve minuut een verse pizza op tafel!

Niks zo lekker als een verse pizza. Jammer alleen dat het altijd zo lang duurt voordat-ie klaar is. Dat probleem is nu opgelost: AEG komt met een inbouw combi-stoomoven die een speciale pizzastand heeft. Pizza erin en 2,5 minuut* later is het genieten geblazen. Mangiare!

*Om het even in perspectief te zetten: 2,5 minuut, dat is net lang genoeg om de vaatwasser uit te ruimen, je tanden goed te poetsen of één gemiddelde track op Spotify te beluisteren. Helemaal niks dus.

View post on Instagram
 

In een gewone oven duurt het bakken van een verse pizza al gauw 10 tot 12 minuten. De AEG TX7PB62FSB is dus echt supersnel. Dat komt omdat er een speciale pizzastand op zit met een indrukwekkende maximale temperatuur van 340°C. Dankzij deze enorme hitte bak je in slechts 150 seconden een pizza met een perfecte, luchtige en krokante korst. Het is dan ook niet voor niets dat deze oven officieel is goedgekeurd door de Scuola Italiana Pizzaioli, de Italiaanse Pizza Academy.

En het mooie is: ook wie geen principe della cucina (inderdaad, keukenprins) is maakt hiermee de lekkerste pizza's. Het EXCite Touch Display fungeert als je persoonlijke assistent in de keuken. Het scherm vertelt je exact wanneer je de pizza in de oven moet schuiven en wanneer hij er weer uit mag. Voor de voorbereiding kun je rekenen op de AEG-app, die je helpt bij het kneden van authentiek Napolitaans deeg, het bereiden van de perfecte tomatensaus én de nodige inspiratie biedt. Bovendien krijg je er een speciale bakplaat en pizzaschep bij. Succes gegarandeerd dus.

©AEG

Na afloop van een legendarische pizza-avond hoef je niet op te zien tegen het schoonmaken. De pyrolytische zelfreinigingsfunctie brandt vet en resten op hoge temperatuur weg tot as, waardoor je alleen nog maar een vochtig doekje over de binnenkant van de oven hoeft te halen.

Behalve voor die legendarische pizza-avonden is deze ruime oven van 72 liter ook handig voor allerlei andere gerechten. Je wisselt makkelijk tussen de broodbakfunctie met deegrijsfunctie en technieken zoals garen op lage temperatuur of het dehydrateren van fruit en kruiden. Wil je een ovenschotel gratineren, een quichebodem krokant krijgen met alleen onderwarmte of snel iets ontdooien, dan kies je simpelweg de stand die daarbij past. Zelfs aan de details is gedacht, met functies voor het voorverwarmen van borden, het warmhouden van maaltijden en een slimme stand voor inmaken.

Hebben? Effe wachten… effe wachten… zoals het er nu naar uitziet is de AEG TX7PB62FSB vanaf maart bij alle bekende aanbieders verkrijgbaar.

Bekijk alle inbouwovens van AEG op Kieskeurig.nl

▼ Volgende artikel
Gerucht: Resident Evil: Code Veronica-remake verschijnt volgend jaar
Huis

Gerucht: Resident Evil: Code Veronica-remake verschijnt volgend jaar

Het ziet er naar uit dat een remake van Resident Evil: Code Veronica ergens in de eerste helft van 2027 uitkomt.

Er gaan al geruime tijd geruchten over een remake van Resident Evil: Code Veronica. Resident Evil-insider Dusk Golem meldt al geruime tijd dat Capcom aan een remake van de game werkt, alsmede een remake van Resident Evil 0.

Nu heeft de betrouwbare insider NateTheHate zich ook uitgesproken over de remake. Hij claimt ook dat de remake ergens in de eerste helft van 2027 verschijnt. Het is dan ook waarschijnlijk dat de game ergens dit jaar wordt aangekondigd.

De meest recente remake van een Resident Evil-game is de remake van Resident Evil 4. Die game werd zeer goed ontvangen. Hoewel veel fans vermoedden dat de volgende remake die van Resident Evil 5 zou betreffen, lijkt het er op dat mensen hier voorlopig nog op moeten wachten, omdat Code Veronica - en mogelijk ook Resident Evil 0 - eerst aan de beurt zijn.

View post on X

Over Resident Evil: Code Veronica

Resident Evil: Code Veronica kwam in 2000 uit op Sega's laatste console, de Dreamcast, en later ook naar andere platforms. De game speelt zich ongeveer drie maanden na de gebeurtenissen uit Resident Evil 2 en 3 af. In het spel proberen Claire Redfield en haar broer Chris een uitbraak van het zombievirus op een afgelegen eiland en een onderzoeksfaciliteit in Antarctica te overleven.

De oorspronkelijke game bevatte de traditionele, ietwat ouderwetse besturing van de eerdere Resident Evil-delen voordat Resident Evil 4 een modernere besturing introduceerde. Wel werden de voorgerenderde achtergronden uit eerdere delen vervangen voor 3D-omgevingen en een dynamische camera.

Nog meer Resident Evil

Hoewel de Resident Evil-reeks in de jaren negentig ontstond, blijft de gamefranchise erg relevant, mede dankzij de remakes en nieuwe delen. Op 27 februari verschijnt het negende hoofddeel in de serie, genaamd Resident Evil: Requiem.

In Requiem besturen spelers twee personages: Grace Ashcroft en Leon S. Kennedy. Beide personages bieden een verschillende speelstijl. De segmenten met Leon - onder andere bekend uit Resident Evil 2 en Resident Evil 4 - zijn erg op actievolle schietgevechten gericht. Leon kan daarnaast ook de kelen van vijanden doorsnijden. Hij heeft ook een bijl waarmee hij aanvallen kan afweren. Grace's segmenten zijn juist erg gericht op spanning en horror en draaien vooral om het vermijden van intense gevechten.

Onlangs werden er nog nieuwe beelden van de game getoond, die hier zijn te bekijken. Resident Evil Requiem verschijnt op 27 februari (pre-orderen kan nu al) voor PlayStation 5Xbox Series X en S, Nintendo Switch 2 en pc. Op 27 februari zullen ook Resident Evil 7 en Resident Evil Village (het achtste deel) op Nintendo Switch 2 uitkomen.

Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.