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
Waar voor je geld: 5 scheerapparaten met roterende koppen voor minder dan 65 euro
© ID.nl
Gezond leven

Waar voor je geld: 5 scheerapparaten met roterende koppen voor minder dan 65 euro

Op zoek naar een nieuw scheerapparaat? Op Kieskeurig.nl vind een groot assortiment. Wij bekeken scheerapparaten met roterende koppen met een prijs van onder de 65 euro. De meeste modellen zijn zowel nat als droog te gebruiken en het merendeel van de door ons gevonden scheerapparaten hebben een reviewscore van 7,5 en hoger.

Philips Shaver 3000 Series S3143/00

De Philips Shaver 3000 Series S3143/00 wordt op Kieskeurig.nl aangeboden als elektrisch scheerapparaat voor nat en droog scheren, met roterende scheerkoppen. Het apparaat heeft een opgegeven batterijduur van 60 minuten, maar heeft even lang nodig om volledig op te laden. Het apparaat is afspoelbaar en bedoeld om ook onder de kraan te reinigen.

De messen van dit scheerapparaat zijn zelfslijpend. De Philips Shaver 3000 wordt goed beoordeeld op Kieskeurig.nl: bij dit product staat een gemiddelde score van 9,0, gebaseerd op 56 reviews van gebruikers.

Remington XR1600

Bij de Remington XR1600 zie je meteen dat het om een roterend elektrisch scheerapparaat gaat met een ingestelde minimale haarlengte van 0,02 cm (0,2 mm). De kop werkt met vijf ringen/mesjes en is bedoeld voor heel kort scheren, bijvoorbeeld hoofdhaar of een heel korte stoppel. De voeding loopt via een oplaadbare batterij; bij een volle lading geeft de fabrikant een gebruiksduur van 60 minuten op.

Laden gebeurt in ongeveer een uur via de meegeleverde lader. Dit scheerapparaat kun je nat en droog gebruiken. De XR1600 heeft een geïntegreerde trimmersetfunctie en een minimale verstelbare lengte die gelijk is aan de kortste stand. In de reviewsectie op Kieskeurig.nl wordt een gemiddelde gebruikersscore van 8,2 op basis van zes reviews genoemd.

Remington Style Series R3

Dit model uit de Style Series R3-lijn heeft een scheerunit dat vast is gemonteerd en ontworpen is voor droog scheren. De opgegeven accuduur bedraagt 40 minuten, met een opvallend lange laadtijd van ongeveer 4 uur via netstroom.

Deze Remington is afspoelbaar onder de kraan en is voorzien van een geïntegreerde precisietrimmer voor het bijwerken van randen. op Kieskeurig.nl krijgt de Remington Style Series R3 een gemiddelde gebruikersscore van 7,5 op basis van 14 reviews.

Philips Shaver Series 1000 S1142/00

De Philips Shaver Series 1000 S1142/00 is een model in de lagere nummerreeks van Philips en is eigenlijk een scheerkit. De batterijduur van deze shaver is rond de 40 minuten, maar heeft maar liefst 8 uur nodig om volledig opgeladen te worden.

De kop is opgebouwd uit drie ringen. Het scheerapparaat is onder de kraan af te spoelen en dus ook geschikt voor nat scheren; bij de accessoires vinden we een extra beschermkapje

Remington PR1350 PowerSeries Plus

Bij de Remington PR1350 gaat het om een PowerSeries-model met drie roterende scheerringen. In de productspecificaties op Kieskeurig.nl staat dat dit een draadloos te gebruiken elektrisch scheerapparaat is voor droog scheren, met een opgegeven accuduur van 40 minuten en een laadtijd van ongeveer 4 uur. Er zit een geïntegreerde precisietrimmer op.

De shaver is verder waterdicht, waardoor je de kop onder de kraan kunt reinigen. In de productinformatie is verder opgenomen dat het apparaat op een ingebouwde accu/netstroom werkt en dat er een gebruikshandleiding wordt meegeleverd. Op de reviewpagina van Kieskeurig.nl staat een gemiddelde beoordeling van 8,5, gebaseerd op 61 goedgekeurde reviews.

▼ Volgende artikel
Coöpgame Horizon Hunters Gathering van Guerrilla Games onthuld
Huis

Coöpgame Horizon Hunters Gathering van Guerrilla Games onthuld

Guerrilla Games en Sony hebben vanmiddag de coöperatieve actiegame Horizon Hunters Gathering aangekondigd, een nieuwe game binnen de Horizon-reeks.

Het spel, dat op een nog onbekend moment op PlayStation 5 en pc uitkomt, was enkele jaren geleden al deels gelekt. Toen was al bekend dat de game een speelser uiterlijk zou krijgen dan de wat volwassener vormgegeven Horizon-hoofddelen.

Op PlayStation Blog wordt gemeld dat spelers met z'n drieën een team kunnen vormen en als Hunters de wereld kunnen beschermen van dodelijke machines. De setting blijft daarbij gelijk aan eerdere games uit de reeks van de Amsterdamse ontwikkelaar. Het is daarnaast ook mogelijk om de game alleen te spelen, of om een team met computergestuurde personages samen te stellen.

Verschillende modi en Hunters

Er zijn twee verschillende modi onthuld. In Machine Incursion is het de bedoeling dat spelers het opnemen tegen golven aan machines, gevolgd door een eindbaas, terwijl Cauldron Descent langere potjes omslaat met constant veranderende ruimtes die het uiterste van spelers vragen.

Watch on YouTube

Spelers kunnen kiezen uit een uniek aantal Hunters, elk met hun eigen speelstijl, zoals mêlee of van een afstand aanvallen. Tussen missies waarbij er gejaagd wordt op machines door kan men socializen in de Hunters Gathering, waar men ook hun personages kan aanpassen, aankopen kan doen en gear kan upgraden.

Aankomende februari wordt een kleinschalige speeltest gehouden, waarvoor mensen zich kunnen aanmelden via het PlayStation Beta Program. In deze test zal het overigens alleen mogelijk zijn om in teamverband te spelen. Een releasedatum voor de uiteindelijke versie van het spel is nog niet bekend.

Over de Horizon-reeks

Horizon Zero Dawn verscheen in 2017 en is zoals gezegd ontwikkeld door het in Amsterdam gevestigde Guerrilla Games. Sindsdien is ook vervolg Horizon Forbidden West uitgekomen, alsmede vr-spel Horizon: Call of the Mountain en Lego Horizon Adventures. Voor het origineel is ook een remaster op de PS5 en pc verschenen.

Ondertussen werkt NCSoft in samenwerking met Sony ook aan Horizon Steel Frontiers, een mmorpg gebaseerd op de franchise die op een nog onbekend moment naar pc, iOS en Android komt.

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.