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
Review Shark FlexStyle 5-in-1 Föhn en Multistyler – Complete keuze voor drogen en stylen
© Shark Ninja
Gezond leven

Review Shark FlexStyle 5-in-1 Föhn en Multistyler – Complete keuze voor drogen en stylen

De Shark FlexStyle 5-in-1 Föhn en Multistyler is een föhn en luchtstyler ineen. Hij wordt geleverd in een reiscase met allerlei accessoires om verschillende soorten kapsels in model te brengen. Het bedrijf heeft goed gekeken naar de concurrentie, die vergelijkbare tools aanbiedt tegen een flink steviger prijskaartje. Is dit een goed alternatief?

Goed
Conclusie

Dit is een complete en draagbare oplossing voor wie een snelle föhn en veelzijdige luchtstyler in één apparaat wil. De bediening is rechttoe rechtaan. Je kiest uit drie warmtestanden en drie luchtstroomstanden en fixeert met de Cool Shot. De temperatuur wordt continu bewaakt en gereguleerd om pieken te voorkomen; doel is snel drogen en stylen zonder extreme hitte. De resultaten op kort, lang en krullend haar zijn constant zodra de opzetstukken en secties goed gekozen zijn. Wie liever een stiller apparaat heeft of geen leercurve wil bij de krullers, zal misschien verder willen kijken. Wie snelheid, volledigheid en een milde hittebenadering belangrijk vindt, zit met de Shark FlexStyle goed.

Plus- en minpunten
  • Complete set met bruikbare opzetstukken
  • Krachtige luchtstroom en constante temperatuurregeling
  • Snel drogen en stylen met milde hetelucht
  • Prijs aantrekkelijker dan de concurrentie
  • Knoppen lastig blind te bedienen in het begin
  • Leercurve bij Auto-Wrap-krullers en wisselen van hulpstukken
  • Reiscase gevuld niet heel licht om mee te nemen

SharkNinja is één bedrijf dat onder verschillende labels consumentenartikelen uitbrengt. Bij eerdere tests, van onder meer de Ninja CRISPi, bleek al dat het bedrijf gebruiksvriendelijke producten maakt, met duidelijke handleidingen en prijzen die vaak vriendelijker uitvallen dan bij andere merken. In dit geval betreft de directe concurrentie de Dyson Airwrap, een vergelijkbare set tegen een aanzienlijk hogere prijs.

©Saskia van Weert

Wat zit er in de doos

Maar eerst even over de Shark FlexStyle 5-in-1 Föhn en Multistyler. De set bestaat uit een handstuk, twee 32millimeter zogeheten Auto-Wrap-krullers (voor krullen links en rechts van het hoofd), een platte borstel om tijdens het drogen te stylen, een ovale borstel voor volume en glans, een stylingconcentrator voor gericht föhnen en een diffuser met uitschuifbare 'vingers' voor krullend haar. Dit alles met een handleiding, tevens inspiratieboekje, in een luxe zwarte reiscase. Die overigens met alle spullen erin wel draagbaar is, maar niet zo licht dat je hem overal mee naartoe zult nemen.

©Saskia van Weert

Testopzet

Omdat de auteur van deze review met een kort kapsel beperkt de mogelijkheid heeft tot uitgebreid stylen, is de bevriende fashion influencer Larissa Mol de set uitgebreid komen uitproberen, en heeft een familielid met sterk krullend haar de diffuser ingezet om de krullen te temmen.

Ontwerp en werking

De werking van deze set is eenvoudig. Met een draai wissel je van föhnstand naar stylingstand. Een deel van de accessoires is te gebruiken met het handstuk in rechte stand. Met een schuifknop draai je voor de andere onderdelen een deel van de bovenzijde opzij, zodat er een rechte hoek ontstaat. Daar klik je een opzetstuk op, bijvoorbeeld om je haar droog te blazen.

Iets wat opvalt, is dat de set aanvankelijk vrij zwaar aanvoelt vergeleken met los gebruik van een föhn of krulborstel. Hij weegt 700 gram, wat later bij het uittesten geen probleem bleek te zijn.

©Shark Ninja

Bediening en knoppen

Onderaan het handstuk zitten een aan-uitknop en verschillende knoppen voor de gewenste warmte en de gewenste airflow, ofwel hoe hard de föhn blaast. Een stukje naar boven zit nog een knop voor de zogeheten Cool Shot, waarbij er koude lucht wordt uitgeblazen, belangrijk om bijvoorbeeld een zojuist gemaakte krul te fixeren.

Maak je haar handdoekdroog voor het stylen

Bijvoorbeeld met deze goed geteste set handdoeken!

Bedieningsgemak: aandachtspunten

Wat een beetje onhandig is, is dat de knoppen in het begin niet gemakkelijk op de tast te bedienen zijn. Er zitten geen nokjes op waardoor je zonder te kijken niet voelt welke knop je aanraakt. Zeker als starter moet je echt goed kijken welke knop je nodig hebt en waar die zit en de styler constant omdraaien om het in beeld te krijgen. Dat maakt stylen een beetje een gehannes. Niet helemaal duidelijk verder is of de Cool Shot afzonderlijk werkt tijdens het föhnen of dat de warmte-knop eerst uitgezet moet worden en daarna pas de koude lucht aangezet kan worden. Pas na wat langer gebruik werd het switchen tussen de verschillende standen wat intuïtiever.

©Shark Ninja

Ervaring met de krulopzetstukken

De afzonderlijke accessoires bevallen goed. Het opvallendst zijn de twee hulpstukken om het haar te krullen. De werking lijkt vrij omslachtig. Er is een onderdeel voor de linkerhelft van het hoofd en een voor de rechterhelft. Je houdt een lok haar beet op 10 centimeter van de onderkant en brengt de kruller achter het haar. De kruller wikkelt het haar dan automatisch om zichzelf heen, een beetje zoals iemand met een krultang zelf handmatig doet. Dit werkte verrassend goed.

Wat minder handig is, is dat de opzet van de set eigenlijk vereist dat iemand eerst de ene helft van het hoofd in de krul zet en dan pas de andere. Dat is niet hoe mensen dit in de praktijk doen, dus switchen tussen de hulpstukken moet je wel willen en je moet er de tijd voor hebben.

©Saskia van Weert

Praktijk: drie kapsels getest

De set is in de praktijk getest op drie kapsels. Op kort haar van kinlengte werkte een combinatie van concentrator en platte borstel het snelst: eerst tot circa tachtig procent droog föhnen, daarna met de platte borstel in model brengen.

Op lang en dik haar lag de nadruk op de Auto-Wrap-krullers. Werken in kleinere secties en direct afkoelen met Cool Shot gaf gelijkmatige krullen met volume, die wel wat sneller uitzakten dan met een krultang.

Op krullend haar is vooral met de diffuser gewerkt. De set lijkt het haar zachter en glanzender te maken dan andere vergelijkbare sets. Ook bij gebruik van de diffuser viel op dat er veel minder zogeheten frizz ontstond.

©Saskia van Weert

Pluspunten en minpunten

De pluspunten liggen in de volledigheid van de set, de snelheid van drogen en relatief milde hetelucht. In één doos zitten alle gangbare tools, inclusief een volwaardige diffuser. De luchtstroom is krachtig, de temperatuurregeling voorkomt hittepieken en het gewicht blijft rond de 700 gram.
Er zijn ook minpunten. De Auto-Wrap-krullers vragen gewenning; richting wisselen, secties kiezen en de juiste droogtegraad van het haar bepalen vergt oefening. Het geluidsniveau is vergelijkbaar met de herrie die een handendroger in een restaurant maakt.

Conclusie

Samenvattend is dit een complete en draagbare oplossing voor wie een snelle föhn en veelzijdige luchtstyler in één apparaat wil. De bediening is rechttoe rechtaan. Je kiest uit drie warmtestanden en drie luchtstroomstanden en fixeert met de Cool Shot. De temperatuur wordt continu bewaakt en gereguleerd om pieken te voorkomen; doel is snel drogen en stylen zonder extreme hitte.

De resultaten op kort, lang en krullend haar zijn constant zodra de opzetstukken en secties goed gekozen zijn. Wie liever een stiller apparaat heeft of geen leercurve wil bij de krullers, zal misschien verder willen kijken. Wie snelheid, volledigheid en een milde hittebenadering belangrijk vindt, zit met de Shark FlexStyle goed.


▼ Volgende artikel
Koelen en vriezen met klasse: ontdek de Hisense RB5K330GSFC
© Hisense
Huis

Koelen en vriezen met klasse: ontdek de Hisense RB5K330GSFC

Niet elke koelvriescombinatie weet gebruiksgemak, design en slimme functies zo goed te combineren als de Hisense RB5K330GSFC. Dit model uit de KitchenFit-serie is stil, degelijk en ontworpen om naadloos op te gaan in moderne keukens. Achter de strakke zwarte deur schuilt een verrassend doordachte binnenkant, met technologie die eten langer vers houdt, geurtjes tegengaat en ontdooien overbodig maakt.

Partnerbijdrage - in samenwerking met Hisense

Slim en strak in elke keuken

De Hisense RB5K330GSFC is gemaakt voor wie een rustige, moderne keuken wil met een strak lijnenspel. Dankzij de Bottom Cooling-constructie – waarbij lucht via de onderzijde wordt aan- en afgevoerd – kan hij direct tegen een muur of tussen keukenkasten worden geplaatst. Je hoeft dus geen ruimte vrij te laten voor ventilatie. Dat geeft hem de uitstraling van een ingebouwd model, terwijl het in werkelijkheid een vrijstaande koelkast is.

©Hisense

De zwarte afwerking en de verzonken handgreep zorgen voor een minimalistisch front dat past bij de nieuwste keukentrends. Bovenin de kast zit een elektronische aanraakbediening: een strak weggewerkt touchdisplay waarmee je met met een simpele druk op de knop instellingen aanpast. En met een geluidsniveau van 35 dB(A) werkt hij opvallend stil, wat prettig is in open woonkeukens.

Koelen met precisie

Met een totale inhoud van 330 liter biedt de RB5K330GSFC genoeg ruimte voor het dagelijks gebruik van een gezin. De indeling is overzichtelijk: 190 liter voor het koelgedeelte, 115 liter voor de vriezer en een 0°-gradenzone van 25 liter voor vlees en vis. Dankzij Multi Air Flow blijft de temperatuur overal gelijk, ook als je de deur net hebt geopend. Bovendien houdt de Metal Tech Cooling-achterwand van roestvrij staal kou beter vast. Daardoor zijn zowel de temperatuur als de vochtigheidsgraad altijd optimaal, waardoor je etenswaren langer vers blijven.

©Hisense

Slim vriezen met No-Frost en Deep Freeze

De vriezer is uitgerust met No-Frost-technologie, waardoor ijsvorming geen kans krijgt. Je hoeft dus nooit meer handmatig te ontdooien. Met Deep Freeze vries je nieuwe producten extra snel in, zodat de structuur en smaak behouden blijven. Samen zorgen deze functies voor een constante temperatuur en efficiënte luchtcirculatie. Die combinatie voorkomt energieverlies en houdt bevroren producten langer goed.

⭐ Ondanks de royale inhoud en het No-Frost-systeem blijft het verbruik netjes binnen de perken: de energieklasse C biedt een goede balans tussen prestaties en verbruik, zeker gezien de stille werking en de functies die continu actief zijn.

Optimaal bewaren met luchtvochtigheidsregeling

De groentelade met luchtvochtigheidsregeling is een kleine maar slimme toevoeging. Met een draaiknop bepaal je hoeveel vocht er in de lade blijft. Zo blijven bladgroenten knapperig, terwijl fruit juist niet te vochtig wordt. In de 0°-gradenzone blijft de temperatuur net boven het vriespunt. Deze Fresh Box is dus ideaal voor vis of vlees dat je binnen enkele dagen wilt gebruiken. Zo hoef je minder vaak te vriezen, maar blijft alles wel vers.

©Hisense

ConnectLife: bediening via je smartphone

Met ConnectLife bedien je de RB5K330GSFC (en andere slimme Hisense-apparaten) via een app. Je kunt de temperatuur controleren, instellingen aanpassen of een melding ontvangen als de deur te lang openstaat. Ook het energieverbruik zie je terug in de app.

©Hisense

Hygiënisch en doordacht interieur

Binnenin heeft de RB5K330GSFC een donkere afwerking die direct opvalt. De binnenwanden zijn voorzien van een Antibacterial Guard-coating die 99,9 procent van alle bacteriën uitschakelt. Dat houdt het interieur niet alleen schoner, maar voorkomt ook ongewenste geurtjes. Het donkere interieur en de antibacteriële coating maken deze koelvriescombinatie echt onderscheidend binnen zijn klasse: fris van binnen, strak van buiten.

De Multi Tray is daarbij een handig extraatje. Dit vernieuwde flessenrek houdt flessen netjes op hun plek en kan ook dienen als plateau voor kleine verpakkingen, zodat je de ruimte beter benut.

©Hisense

❄️De pluspunten van de Hisense RB5K330GSFC

➕KitchenFit-design: plaatsbaar tegen een muur of tussen kasten
➕Metal Tech Cooling
: stabiele temperatuur, minder schommelingen
➕No-Frost
en Deep Freeze: ijsvrij vriezen en snel invriezen
➕0°-gradenzone
en luchtvochtigheidsregeling: langer vers bewaren
➕ConnectLife-app
: bediening en inzicht via je telefoon
➕Antibacterial Guard
: hygiënisch interieur met donkere afwerking
➕Fluisterstil
: slechts 35 dB(A)
➕Energieklasse C
: goede balans tussen prestaties en verbruik
➕Elektronische aanraakbediening
: strak touchdisplay bovenin de kast

Een stille, complete koelvriescombinatie

De Hisense RB5K330GSFC combineert een strak ontwerp met functies die in de praktijk echt verschil maken. Geen overdaad aan instellingen, maar precies wat nodig is om slim, hygiënisch en stil te koelen.

Met een adviesprijs van 799 euro biedt hij de bouwkwaliteit en het gemak van een premium-model. Wie op zoek is naar een moderne koelvriescombinatie die netjes in de keuken opgaat en weinig aandacht vraagt, vindt in dit model een stille en betrouwbare partner voor elke dag.

©Hisense

Hisense RB5K330GSFC koelvriescombinatie

Kijk voor de actuele prijs