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
Kerstsfeer in huis? Dit kun je allemaal met Philips Hue
© Philips
Zekerheid & gemak

Kerstsfeer in huis? Dit kun je allemaal met Philips Hue

Kerstverlichting ophangen hoort bij december, maar de sfeer zit niet alleen in extra lampjes. Het verschil maak je met hóe je licht inzet. Met Philips Hue kun je dat piekfijn regelen. Of je nu rustig sfeervol licht wilt tijdens het kerstdiner of juist een uitbundig fonkelende kerstboom: in de Hue-app kies je scènes en pas je de verlichting helemaal naar je eigen wensen aan. Wat er allemaal mogelijk is, lees je in dit artikel.

Dit artikel in het kort

Je leest hoe je met Philips Hue warme kerstsfeer neerzet, van rustige scènes voor het diner tot levendiger licht tijdens een borrel. Ook lees je hoe muziek- en filmsynchronisatie werken, welke lichteffecten passen bij kerst, hoe je zelf scènes kunt maken en wat je kunt doen om de kerstsfeer door te trekken naar buiten.

Met Hue combineer je het licht in huis op een natuurlijke manier. Een lamp op tafel geeft fijn licht tijdens het eten, terwijl het plafondlicht gewoon aan kan blijven zonder te overheersen. De kerstboom mag daarbij natuurlijk opvallen. Het Festavia-lichtsnoer is speciaal gemaakt voor in de boom en bestaat uit losse lampjes die je afzonderlijk kunt aansturen. Zo kun je het licht in de boom net iets levendiger maken, zonder dat het druk wordt.

Ook met lightstrips breng je nog meer kerstsfeer in huis. Plaats je ze langs een kast, onder een dressoir of langs een raam, dan voeg je extra licht toe zonder dat het direct in het oog springt. Door dezelfde kleuren te gebruiken als in de kerstboom voelt de verlichting vanzelf als een samenhangend geheel.

©Philips

Festavia-lichtsnoer of Hue lightstrip?

Het Festavia-lichtsnoer is ontwikkeld als decoratieve kerstverlichting. Het bestaat uit losse lampjes aan een snoer en is bedoeld voor de kerstboom of een overdekte buitenplek. Omdat je elk lampje apart kunt aansturen, kun je effecten gebruiken waarbij de lichtjes afwisselend oplichten of in meerdere kleuren door de boom verdeeld zijn.

Een Hue lightstrip is een flexibele lichtstrip die een doorlopende lichtlijn geeft. Je gebruikt deze vooral als indirecte verlichting langs meubels, wanden of ramen. Lightstrips zijn niet seizoensgebonden en blijven het hele jaar door in gebruik als sfeerverlichting.

Warm licht op donkere decembermomenten

In december valt de avond snel. Met Hue kun je instellen dat de verlichting automatisch aangaat rond zonsondergang, zodat het licht al brandt wanneer je thuiskomt. Dat is prettig en zorgt er meteen voor dat je huis er bewoond uitziet als je later op de avond weg bent.

Ook 's ochtends kun je daar gebruik van maken. In plaats van fel licht gaat de verlichting geleidelijk aan, met warmere tinten die langzaam sterker worden. Dat maakt opstaan in de winter net wat makkelijker. Heb je meerdere Hue-lampen, dan stel je ze per ruimte in. De kerstboom kan bijvoorbeeld op vaste tijden aan en uit gaan, terwijl de rest van de woonkamer apart wordt geregeld of juist tegelijk mee aan- en uitgaat.

Kerstscènes en lichteffecten

In de Hue-app vind je de Scene Gallery met voorgeprogrammeerde scènes. Rond de feestdagen verschijnt daar een speciale categorie: Winterse feestdagen / Kerstmis. Daarmee zet je met één tik een complete kerstsfeer neer, zonder zelf kleuren te hoeven kiezen. Voorbeelden? De scène Onder de boom is geïnspireerd op cadeaus onder de kerstboom en werkt met een combinatie van rood, geel en groen. Dat zorgt voor een herkenbaar, klassiek kerstgevoel dat goed past bij traditionele decoratie. Vrolijk gebruikt meerdere kleuren tegelijk en oogt daardoor speelser dan de rustigere kerstscènes. Deze scène werkt goed wanneer het licht wat meer mag opvallen, bijvoorbeeld tijdens een borrel of wanneer er bezoek is. Stille nacht kiest juist voor rust, met zachte perziktinten en minder contrast. Een goede keuze dus voor tijdens het kerstdiner of een lange avond aan tafel, omdat zo aandacht vooral bij het eten en het gezelschap blijft.

Sommige Hue-lampen, zoals het Festavia-lichtsnoer, bieden daarnaast extra lichteffecten. Denk aan effecten als Sparkle en Prism, waarbij lampjes afwisselend oplichten of kleuraccenten zich door de verlichting verplaatsen. Voor rustigere momenten zijn er ook effecten zoals kaarslicht of haardvuur, waarbij het licht subtiel knippert.

©ID.nl

Kerstscènes in de Hue Scene Gallery

In de categorie Winter Holiday / Christmas staan tien speciale kerstscènes: Onder de boom, Vrolijk, Gouden ster, Notenkraker, Roze glinstering, Stille nacht, Sneeuwschittering, Kleurexplosie, Feestelijk plezier en Kristalhelder. Je vindt ze in de Hue-app via Scènes en vervolgens Scene Gallery. Kies de categorie, selecteer een scène en wijs een kamer of zone toe. Na opslaan blijft de scène beschikbaar, ook wanneer de categorie later weer uit de galerie verdwijnt.

Zelf een kerstscène maken

Naast de vaste kerstscènes kun je ook zelf lichtscènes maken. Dat is handig als je een specifieke sfeer zoekt die beter past bij jouw interieur of bij een bepaald moment. Zie het als het samenstellen van een lichtrecept. Je kiest een beperkt kleurenpalet, bepaalt hoe het licht zich door de ruimte verdeelt en stelt in hoe rustig of levendig het effect mag zijn.

Begin met twee tot vier kleuren om het geheel in balans te houden. Warm wit met een vleugje amber werkt goed voor rustige avonden, terwijl rood en groen met een zachtere tussenkleur een klassieke kerstsfeer geven. Vervolgens kies je een stijl, zoals een geleidelijke overgang of kleuren die op verschillende plekken terugkomen. Tot slot stel je het tempo in. Langzame overgangen passen bij een rustige avond, snellere wisselingen bij een borrel. Stel eenmalig je ideale kerstscène in, sla hem op en laat de app het werk doen; de verlichting schakelt dan op jouw vaste tijden automatisch over.

Ook buiten in kerstsfeer

De kerstsfeer hoeft niet bij de voordeur te stoppen. Met Hue-buitenverlichting trek je het licht door naar de tuin, het balkon of de oprit. Door binnen en buiten dezelfde scènes te gebruiken ontstaat één geheel. Hang bijvoorbeeld een Festavia-buitenlichtsnoer op aan de overkapping van je veranda, of langs de rand van je balkon.

©Philips

Licht dat meebeweegt met muziek en film

Tijdens een kerstborrel mag het licht best wat levendiger zijn. Met de muziek-synchronisatie van Hue - vaak aangeduid als Party Mode - reageert de verlichting direct op het ritme en de sfeer van de muziek. Je stelt dit in via de Entertainment-functies in de Hue-app. Daarbij kies je een stijl, past je de intensiteit aan en bepaal je of Hue vaste kleuren gebruikt of automatisch meebeweegt met de muziek. Voor deze synchronisatie heb je een Hue Bridge nodig om de extra functies te ontgrendelen.

Review Philips Hue Bridge Pro: dé bridge voor de toekomst

Ook bij een filmavond voegt gesynchroniseerde verlichting iets toe. In Homecinema-modus past het licht zich aan het beeld op het scherm aan. Koel bij winterse scènes, warmer bij een haardvuur of een gezellig interieur. Zo zit je nog meer in de film.

©Philips

Bedienen zonder telefoon

Tijdens het koken of wanneer je gasten ontvangt, wil je niet steeds je telefoon erbij pakken. Met slimme schakelaars van Hue bedien je de verlichting net zo eenvoudig als met een gewone lichtknop. Je schakelt scènes, dimt het licht of zet alles in één keer uit.

De Hue Dimmer Switch is de bekendste keuze en maakt het makkelijk om snel een andere lichtstand te kiezen. Wie wat meer mogelijkheden wil, kan de Hue Tap Dial of de kleinere Tap Switch Mini kiezen, waarmee je meerdere instellingen kunt bedienen of het licht preciezer bijstelt. Voor eenvoudige handelingen is er de Smart Button, waarmee je met één druk bijvoorbeeld je vaste kerstsfeer inschakelt. Al deze schakelaars stel je in via de Hue-app en koppel je aan kamers en scènes, zodat de verlichting doet wat je op dat moment nodig hebt.

Oude kerstverlichting slim maken

Heb je al bestaande kerstverlichting die niet slim is? Dan hoef je die niet te vervangen. Met een slimme stekker zorg je ervoor dat ook die automatisch aan of uit gaat, zonder dat je 's avonds onder de boom hoeft te zoeken naar de aan/uit-knop of het stekkerblok.

©Philips

Kerst: nu écht feest van het licht

Met slimme Philips Hue-verlichting kun je tijdens de feestdagen meer met licht doen dan alleen aan en uit. Door vooraf een paar scènes en momenten in te stellen, past de verlichting zich aan je de dag aan: rustig tijdens het eten, wat uitbundiger bij bezoek en weer ingetogen aan het einde van de avond. Zo draagt het licht bij aan de kerstsfeer, zonder dat je er steeds mee bezig hoeft te zijn.

©Philips

Checklist kerst met Philips Hue

Philips Hue Festavia lichtsnoer: speciaal voor in de kerstboom. Er zijn ook Festavia-snoeren voor buiten.

Philips Hue Lightstrips: leuk om bijvoorbeeld langs het raam- of deurkozijn te gebruiken.

Philips Hue Starterkit White & Color Ambiance: leuk als je net begint met Hue, om basisverlichting flexibel in te stellen in verschillende kamers. Goed om te weten: ook beschikbaar in de (goedkopere) Essential reeks.

Philips Hue Bridge: wil je kunnen automatiseren, muziek en licht synchroniseren en scènes instellen en gebruiken? Daarvoor heb je de Bridge nodig).

Er zijn ook Hue tafellampen, zoals Hue Signe, Hue Iris en de Hue Go. Dat is een draagbare lamp die je dus makkelijk overal in huis kunt neerzetten.

Philips Hue Sync Box: voor synchronisatie media en geluid.

Philips Hue slimme stekkers: om je oude kerstverlichting te automatiseren.

Review Philips Hue Essential: goedkoper aan de slag met Hue-lampen

©Philips

Hue Bridge versus de Sync Box: wat is het verschil?

Hoewel de namen op elkaar lijken, hebben de Philips Hue Bridge en de Sync Box een totaal andere functie. De Bridge is de basis die je nodig hebt om je lampen slim te maken. Je kunt dit kastje zien als de verkeersleider: het verbindt je lampen met het internet en zorgt dat je alles via de app kunt bedienen, ook als je niet thuis bent. Zonder Bridge zijn de mogelijkheden van je slimme verlichting een stuk beperkter.

De Sync Box is een extra uitbreiding voor wie van films en gamen houdt. Je koppelt dit apparaat aan je televisie en je mediabox of spelcomputer. De Sync Box kijkt naar wat er op het scherm gebeurt en stuurt je lampen aan om in exact dezelfde kleuren mee te lichten. Zo trek je de actie van een film of game je hele woonkamer in. Belangrijk om te weten: om de Sync Box te gebruiken, heb je altijd ook de Bridge nodig.

▼ Volgende artikel
Van foto naar video: breng je afbeeldingen tot leven met Pollo
© ID.nl
Huis

Van foto naar video: breng je afbeeldingen tot leven met Pollo

In de stortvloed aan nieuwe AI-videogeneratoren introduceren we Pollo. Net als bij de meeste AI-tools begin je met een tekstopdracht, maar in dit geval kun je van bestaande foto's fimpjes maken.

Wat gaan we doen

In dit stappenplan zie je hoe je met Pollo een stilstaand beeld omzet in een korte video. Je begint met het kiezen van Image to Video, snijdt het beeld bij tot het juiste formaat en geeft daarna een duidelijke opdracht om de animatie te laten maken.

Lees ook: Van prompt tot filmpje: zo maak je je eigen AI-video met Bing Video Creator

Stap 1: Image to video

Je kunt Pollo gratis uitproberen. Je start met 50 credits en ontvangt daarna elke maand 20 extra credits. De video's die je gratis maakt, zijn wel allemaal voorzien van een watermerk. Wil je video's zonder watermerk en toegang tot meer functies, dan zijn er drie abonnementsopties: 15, 30 en 90 dollar per maand, goed voor respectievelijk 300, 800 en 3000 credits. Pollo is een webapplicatie. Ga op je laptop naar https://pollo.ai en klik op Try for free. Vervolgens log je in met je e-mailadres.

Op de homepage zie je dat je deze generator niet alleen kunt gebruiken voor het maken van AI-video's, maar ook om AI-afbeeldingen te genereren, gezichten in filmpjes te vervangen door iemand anders of AI-effecten toe te passen op je foto's. Bekijk zeker de voorbeelden in de showcase. Wij kiezen in dit stappenplan voor de optie Image to Video, waarmee je stilstaande beelden tot leven wekt in een korte videoanimatie.

Er staat een massa voorbeelden klaar die de mogelijkheden van Pollo illustreren.

Stap 2: Beeld bijsnijden

Laad eerst de afbeelding in die je als basis voor je video wilt gebruiken. In de pop-up kun je bij Aspect Ratio de gewenste beeldverhouding van het eindresultaat instellen. Zo kun je bijvoorbeeld een staande foto bijsnijden naar een liggend (landscape) of vierkant formaat. Verschuif de foto indien nodig, zodat de belangrijkste onderdelen mooi in beeld blijven. Bevestig vervolgens met OK.

Kies zorgvuldig de hoogte-breedteverhouding van je filmpje om te zorgen dat het perfect aansluit bij je publicatiekanaal.

Stap 3: Video creëren

In het vak Prompt beschrijf je wat Pollo met de foto moet doen. In dit voorbeeld willen we bijvoorbeeld dat het meisje op de schouders van de man enthousiast de menigte aanmoedigt. Zet de optie Translate Prompt aan voor een beter resultaat. Je ziet meteen dat dit type opdracht 5 credits kost. Onder Advanced kun je extra instellingen aanpassen, zoals de videolengte die standaard op 5 seconden staat, maar die je kunt verlengen tot 10 seconden. Wil je meerdere outputvideo's genereren, dan kost dat uiteraard meer credits. Het eindresultaat kun je upscalen voor een hogere kwaliteit, delen en publiceren.

Pollo produceert in dit geval een video van 5 seconden.

Liever meteen video's maken?

Vlogcamera's