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 pagina.

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 deze pagina.

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 deze pagina.

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 deze pagina.

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 deze pagina.

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 deze pagina.

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
Coolblue trapt Black Friday-seizoen af met 5 dagen lang spectaculaire Op=Op deals
© Coolblue
Huis

Coolblue trapt Black Friday-seizoen af met 5 dagen lang spectaculaire Op=Op deals

Black Friday alleen op 28 november? Niet bij Coolblue: vanaf vandaag tot en met 1 december kun je je elke dag blauw besparen! De aftrap bestaat uit vijf dagen lang Op=Op deals: vanaf vandaag tot en met vrijdag verschijnt er elke dag een nieuwe aanbieding die slechts één dag geldig is, of zolang de voorraad strekt. De eerste deal is meteen een blikvanger: de KitchenAid Artisan Mixer 5KSM125 in Onyx Zwart kost vandaag maar 329 euro in plaats van 449 euro.

Partnerbijdrage - in samenwerking met Coolblue

Het Black Friday-seizoen bij Coolblue begint nú

Coolblue pakt het dit jaar anders aan en trapt al op 10 november af met het Black Friday-seizoen, dat doorloopt tot en met 1 december. De start wordt gemarkeerd door vijf dagen vol Op=Op deals: elke dag verschijnt er een andere aanbieding die maar één dag geldig is, of zolang de voorraad strekt. Zo kunnen shoppers hun slag slaan ruim voordat de drukte losbarst.

De aftrap met de KitchenAid Artisan Mixer is een logische keuze: een klassieker onder de keukenmixers die kracht combineert met gebruiksgemak. Wie graag bakt of kookt, weet hoe geliefd deze mixer is. Vandaag is het moment om te profiteren, want zodra de voorraad op is, verdwijnt ook de korting.

Dit is de KitchenAid Artisan Mixer 5KSM125

De KitchenAid Artisan Mixer 5KSM125 is gemaakt voor wie vaak bakt en zwaar deeg liever niet met de hand kneedt. De motor met directe aandrijving blijft krachtig zijn werk doen, ook bij stevig brood- of pizzadeeg, terwijl de softstartfunctie voorkomt dat bloem uit de kom vliegt. Dankzij de kantelbare kop voeg je gemakkelijk ingrediënten toe. Tijdens het mixen beweegt de klopper in verschillende richtingen door de kom, waardoor alles grondig wordt gemengd. De mixer wordt geleverd met een mengkom, kneedhaak, platte menghaak en draadgarde, zodat je direct kunt beginnen. De uitvoering in Onyx Zwart geeft hem een robuuste, tijdloze uitstraling die in elke keuken past.

👉 Bekijk de deal: KitchenAid Artisan Mixer 5KSM125 Onyx Zwart

©KitchenAid

Dit moet je weten over de Op=Op deals van Coolblue

De Op=Op deals vormen de aftrap van het Black Friday-seizoen bij Coolblue. Van 10 tot en met 14 november verschijnt er elke ochtend een nieuwe aanbieding die slechts één dag geldt of verdwijnt zodra de voorraad is uitverkocht. Wacht dus niet te lang, want op is bij Coolblue ook écht op!

Deze Op=Op deals kun je de komende dagen verwachten

Om welke producten het precies gaat, houden we nog even geheim (je moet maar gewoon zelf gaan kijken). Wel alvast een tipje van de sluier:

⭐ 11 november: Bluetooth tracker
⭐ 12 november: Videodeurbel
⭐ 13 november: Elektrische tandenborstel
⭐ 14 november: Robotstofzuiger

Blijf op de hoogte

💡Wil je niets missen van alle Black Friday-deals bij Coolblue tussen nu en 1 december? Bookmark dan nu de speciale Black Friday-pagina en houd die goed in de gaten!

▼ Volgende artikel
Waarom je luchtreiniger in de herfst meer doet dan je denkt
© Leonid Iastremskyi
Energie

Waarom je luchtreiniger in de herfst meer doet dan je denkt

Veel mensen denken dat een luchtreiniger vooral nuttig is in het voorjaar en de zomer, als het pollenseizoen in …uhm volle bloei staat. Maar ook – of juist – in de herfst is zo’n apparaat een echte hulp voor een gezonder binnenklimaat in huis. Hoe dat precies zit, lees je in dit artikel.

Dit artikel in het kort

Een luchtreiniger doet meer dan alleen pollen, rook en huisstofmijt uit de lucht halen. Zeker in de herfst, als we minder ventileren, helpt hij de lucht in beweging te houden, allergenen te verminderen en de luchtkwaliteit op peil te houden. In dit artikel lees je wat er verandert zodra het kouder wordt, hoe je het effect van je luchtreiniger vergroot met slim ventileren en waar je op let bij gebruik en plaatsing voor een stabieler binnenklimaat.

Lees ook: Schimmel in je badkamer? Zo kom je er voor eens en altijd vanaf!

Open deur: minder ventilatie = minder frisse lucht

Waar in de zomer ramen en deuren openstaan, houden we in de herfst juist alles vaker dicht. Dat houdt de warmte binnen, maar doordat de lucht minder goed circuleert blijven vocht, stof en geuren langer hangen. In badkamers, keukens en woonkamers met goed sluitende kozijnen merk je dat direct: de lucht voelt wat bedompter aan en ruikt sneller muf. Een luchtreiniger helpt dat te voorkomen door fijnstof, pollen en andere kleine deeltjes actief uit de lucht te filteren. Zo blijft het binnenklimaat merkbaar frisser, ook wanneer de ramen dicht blijven.

Luchtfiltering uitgelegd

De meeste luchtreinigers gebruiken een HEPA-filter dat microscopisch kleine deeltjes opvangt. Sommige modellen combineren dat met een koolstoffilter dat geuren en vluchtige stoffen neutraliseert. Zo verdwijnt niet alleen stof, maar ook kookluchtjes en sigarettenrook sneller uit de ruimte. Een goed HEPA-filter verwijdert tot 99,97 procent van de deeltjes van 0,3 micrometer of groter, waaronder fijnstof, pollen en schimmelsporen.

Minder allergieklachten

Wie gevoelig is voor huisstofmijt of schimmelsporen, merkt dat klachten vaak toenemen in de herfst. Dat komt doordat vocht en temperatuur in huis precies de omstandigheden bieden waarin deze allergenen goed gedijen. Een luchtreiniger helpt door de lucht continu in beweging te houden en allergenen te vangen. Wat je wel moet weten: schimmelsporen worden door een filter grotendeels uit de lucht gehaald, maar de bron – vaak vochtige muren of slecht geventileerde ruimtes – moet je nog steeds aanpakken. Zonder die bronbestrijding blijft het probleem terugkomen. Een luchtreiniger helpt dus vooral bij de symptomen, niet bij de oorzaak.

De ideale stand

Laat de luchtreiniger liever langdurig op lage stand draaien dan af en toe kort op volle kracht. Zo blijft de luchtkwaliteit stabiel. Veel luchtreinigers meten zelf de luchtkwaliteit met sensoren en schakelen automatisch een tandje bij als dat nodig is. Op lage stand gebruiken ze meestal 20 tot 40 watt, vergelijkbaar met een ledlamp.

©Philips

Ventileren en luchtvochtigheid

Een luchtreiniger is geen vervanger voor ventilatie. Ventileren blijft nodig om koolstofdioxide, vocht en geur af te voeren. Wie de ramen regelmatig openzet en daarnaast een luchtreiniger laat draaien, houdt de lucht zowel vers als schoon. De luchtreiniger pakt de fijne stofdeeltjes aan, terwijl ventilatie zorgt dat nieuwe zuurstof binnenkomt.

In de herfst speelt ook de luchtvochtigheid een rol. Door de verwarming kan de lucht binnen te droog worden, en daar doet een luchtreiniger weinig aan. Wil je het binnenklimaat prettig houden, combineer hem dan met een luchtbevochtiger.

De beste plek om je luchtreiniger neer te zetten

Zet de luchtreiniger niet in een hoek, maar vrij in de kamer zodat lucht rondom het apparaat kan circuleren. In de buurt van een deur of raam werkt vaak het best. Zet hem niet op de grond, maar juist wat hoger – bijvoorbeeld op een kast of bijzettafel. Zo zuivert hij de lucht op borsthoogte (dus de hoogte waarop je lucht inademt) beter en verdeelt hij de schone lucht gelijkmatig door de ruimte.

Betere lucht, beter binnenklimaat

Een luchtreiniger is geen wondermiddel, maar wel een apparaat dat in de herfst meer doet dan veel mensen denken. Hij haalt stof, pollen en schimmelsporen uit de lucht, helpt muffe geur te voorkomen en ondersteunt de ventilatie in huis. Zeker in goed geïsoleerde woningen, waar de lucht snel stil komt te staan, merk je het verschil. De lucht voelt frisser aan, je ademt prettiger en het binnenklimaat blijft in balans – precies wat je nodig hebt in het seizoen waarin we het liefst binnen blijven.



Minder stof = een beter binnenklimaat

Heb jij al een plumeau in huis?