ai

    Stichting Brein en 1984

    De laatste weken is AI-land in rep en roer over Deepseek, het Chinese model dat volgens de overlevering met minder geld meer gedaan krijgt. Je moet wel op de koop toe nemen dat de online versie het niet zo nauw neemt met jouw gegevens, maar er is een offline en open source model. Daarmee kun je je eigen versie van Deepseek gebruiken, zonder dat de Chinese overheid meekijkt.

    Ik vroeg de online versie naar moderne voorbeelden die geïnspireerd zijn op The Ministry of Truth, uit de klassieker 1984. Je raadt nooit hoe Deepseek daar mee om ging…

    Dus iedereen aan de open source, lokale modellen? Niet zo snel… Kijk eens wat gebeurde met het Nederlandse taalmodel GEITje van Edwin Rijgersberg. Een succesvol open source project om een Nederlands taalmodel te ontwikkelen. Een LLM dat werd gebruikt door hobbyisten en wetenschappers. Helaas steekt Stichting Brein (weer) een stokje voor verder ontwikkeling en moet Rijgersberg het model offline halen. In het persbericht van de Stichting:

    BREIN heeft de aanbieder o.m. aangesproken omdat het model getraind was op tienduizenden kopieën van Nederlandstalige boeken uit illegale bron.

    Natuurlijk zijn er genoeg kopieën van GEITje in omloop, aangezien je het model kon downloaden en lokaal gebruiken. Dus het is niet écht offline. Maar het gaat hier (weer) om de auteursrechten discussie. Zoals Brein die in de muziekindustrie gebruikte om P2P delen de kop in te drukken. Maar goed, terwijl China en de Verenigde Staten lekker doorontwikkelen, zien we hier in Europa al weer een vertraging ontstaan door dit soort praktijken. Het is alles of niets volgens Stichting Brein. Je gebruikt auteursrechtelijk materiaal dus alles moet offline. Terwijl je volgens mij je tijd beter kunt besteden aan het afstemmen van de juiste vergoedingen en het eenvoudiger maken van de afhandeling.

    De discussie is complex en ik ben er zelf ook nog altijd niet uit, wat nu dé weg is. Enerzijds ben ik verschrikkelijk enthousiast over AI en de achtbaan van innovatie die nu plaatsvindt, anderzijds geloof ik in een maatschappij waar kennis open en zonder restricties moet rondwaren, open source en bereikbaar. Maar zonder daar voorbij te gaan aan ethische, sociale en maatschappelijke normen. Zoals vergoedingen, beschikbaarheid, energieverbruik en privacy.

    Taken in ChatGPT. Waarom dan

    Het is vroeg, mijn hersenen werken nog niet op volle toeren, dus zie dit als wat eerste losse gedachten. ChatGPT start met een beta versie van Taken in hun chat-assistent.

    Waarom?

    Taken zijn namelijk discrete, duidelijk omlijnde acties die je doet om verder te komen in een project. Een puzzelstukje in de productiviteitspuzzel. “Haal de bestelling op”, “Bel je moeder”, “Brainstorm over de zomervakantie”. Waarom zou een generative AI model dit willen integreren in hun systeem?

    Het kan zijn omdat ze willen uitbreiden in het dagelijks gebruik van de app. Zodat mensen er meer gebruik van maken en dus minder van de competitie. Dat maakt OpenAI als bedrijf weer interessanter voor aandeelhouders.

    Het kan zijn dat het een beta is om te leren van ons gedrag en zo op een later moment de taken te integreren in de API. Zodat taakmanagers als Things of Todoist er gebruik van kunnen maken in hun eigen app.

    Het kan zijn om te leren van ons dagelijks, repeterende gedrag. Welke taken doen we en masse en zijn dus interessant om te gebruiken voor meer omzet. Zodat “Brainstorm over vakantie” als taak, in ChatGPT direct een canvas wordt met vakantie-ideeën, gesponsord door TUI of Sunweb.

    Ik gebruik dagelijks Claude en ChatGPT. Maar voor mijn todo-lijst blijf ik vooralsnog trouw aan een aparte app.

    Ik liet AI een adventskalender maken

    De afgelopen weken had ik losse ideeën die nu samen zijn gekomen in een klein project wat ik zojuist live zette. De AIdventskalender 2024. Een persoonlijk project om AI en programmeren samen te brengen. Een adventskalender die elke dag een tip geeft om de feestmaand door te komen met behulp van AI diensten. Voor playlists, gedichten en films. Wat bracht me tot dit project? Drie losse momenten.

    1. Terwijl ik met iemand praatte over adventskalenders, vroeg ik me af of het domein AIdventskalender.nl nog vrij zou zijn. Ja dus.
    2. Mijn oude blog Digging the Digital draait nog altijd op WordPress, maar liever wil ik die omzetten in een statische site, zodat het minder resources kost. En eenvoudiger ergens is te hosten. Ik wil daarom kijken hoe ik die site in Hugo kan omzetten, een framework voor statische sites
    3. In POKI, de Podcast over Kunstmatige Intelligentie, hoorde ik Wietse praten over manieren om programmeerwerk over te laten nemen door AI.

    Breng dat allemaal bij elkaar in mijn hoofd… en ik heb weer een projectje!

    Screenshot van de AIdventskalender

    De route

    In een aantal avonden maakte ik de AIdventskalender. Ik heb echter geen letter code zelf geschreven. Alles is door AI gegenereerd, ik heb het eenvoudigweg steeds geknipt en geplakt in een code-editor. Krijg ik een foutmelding? Dan geef ik de foutmelding aan de chatbot (Claude Pro in dit geval) en die ging aan de slag voor me om het te verbeteren. Ik heb wel meer dan alleen Claude gebruikt. De allereerste versie van de site kwam uit Open Hands, een open source platform met software development agents. Met behulp van AI kun je een eerste ruwe versie van een app laten maken. Die versie heb ik overgenomen in VSCode en ben daarna met behulp van de chatbot Claude stap voor stap alles gaan verbeteren.

    Je kunt een groot deel meelezen in het chatverslag dat ik op Github heb gepubliceerd.

    Notities

    Het hele traject ging zeker niet van een leien dakje. We zijn er nog echt niet om AI zelfstandig aan de slag te zetten voor een project als dit. Wat me zoal opviel in het hele proces:

    • Ik moest sowieso een hoop troubleshooten rondom de lokale installatie van Hugo. Tenminste, dat dacht ik. Maar Claude ging in een rabbit-hole van versies en plugins die uiteindelijk niet nodig bleek te zijn. Door zelf goed op te letten wat er aan antwoorden kwam en tussentijds ook wat bij te lezen via de good old zoekmachine.
    • Wat me brengt bij: Enige kennis is wel handig. Zowel van programmeren in het algemeen als van verschillende pakketten. De code die ik kreeg was soms verouderd, soms besloot Claude andere variabelen te gebruiken. Of het vergat hele stukken opnieuw aan te bieden. Als je de basisprincipes van programmeren enigszins herkent, kun je al snel aangeven waar de chatbot beter zijn best moet doen.
    • Een systeem prompt is zeker handig. Daarmee geef je basis instructies aan de chatsessie. Hier kon ik steeds mee tweaken zoals de opdracht om altijd de volledige code plus eventuele aanpassingen terug te geven.
    • Claude is heel vriendelijk. Aan de hand van de code en de werking had het al snel door dat ik een adventskalender maakte. Daarop kwam het met suggesties om de kalender wat meer aan te kleden. Niet alle suggesties waren even waardevol, maar er zat soms wat aardigs tussen wat me op nieuwe richtingen bracht.
    • Met logisch nadenken kom je best ver. Als ik zelf het idee had dat we onnodige code maakte, dan vroeg ik dat, stelde een alternatief voor en hoe Claude dat zou oppakken. Soms gingen we dan de goede kant op, soms gaf Claude aan waarom het wel handig is om een bepaalde keuze te maken.
    • Je eigen creativiteit helpt. Bijvoorbeeld, ik wilde een Javascript om de deur van elke dag echt als deur te openen en sluiten. Na wat iteraties met Claude had ik een versie waar ik tevreden over ben. Claude had dit zelf (nog) niet bedacht.
    • Ik liet Claude een eenvoudig Bash-script schrijven om direct 24 dagen aan ideeën rondom Kerstmis en AI te genereren. En om deze direct in het juiste bestandsformat op te slaan. Om eerlijk te zijn, de teksten waren allemaal te generiek. Voor elk deurtje heb ik de tekst zelf herschreven en er eigen links bij gezocht. Dus eigenlijk is de content is van mij, de code van Claude.
    • Er zaten steeds een paar dagen tussen de sessies dat ik met Claude werkte. Ik kon soms met de bestaande chatsessie doorgaan. Maar door de populariteit van Claude, kreeg ik meldingen dat chatsessies niet té lang moesten worden en ik beter een nieuwe sessie kon beginnen. Dat betekende dat ik weer allerlei kennis moest overhevelen, zoals bestanden en afspraken.
    • Sowieso helpt het om bestanden te uploaden met je code. HTML, Javascript, CSS, Claude eet alles en kan je dan veel gerichter helpen. Zelfs screenshots van mijn browser-console met debug-berichten konden Claude de goede kant op sturen.

    Ik had nog geen ervaring met Github Actions, een manier om automatisch taken en workflows uit te voeren in Github repositories. Met behulp van Claude kreeg ik alle uitleg, achtergrondinformatie en stappenplan. Toegepast op mijn situatie. Door iets nieuws te leren (Github Actions in dit geval) en het direct in een lopend project toe te passen, geeft mij meer voldoening dan eerst alle achtergronden te kennen en het stapje voor stapje via een Hello World voorbeeld te leren. Zo ook met het werken in Hugo templates, de projectstructuur en hoe content en templates samen tot een site leiden.

    Creativiteit is een vereiste

    Ik ben over de afgelopen 2 weken zo’n 6 uur met dit project bezig geweest. Van registratie van de domeinnaam tot publicatie van de huidige versie. Leuk om hier eens mee bezig te zijn. Ik heb geen ambitie om software engineer te worden, of een full stack developer. Maar soms heb je van die ideeën die je wel zelf tot leven wil brengen. De code die ik door Claude heb laten maken zal door menselijke intelligentie en kennis zeker sneller, compacter en efficiënter kunnen. Goede creatieve developers zijn echt nog altijd nodig. Hun kennis, levenservaring en creatief vermogen brengt een project veel verder dan wat AI nu kan. Als dit een proof of concept is, dan zou ik het vervolg zeker door een creatieve developer verder laten oppakken.

    Geniet de komende maand van de AIdventskalender! Alles is statisch gehost, je kunt de broncode zelf bekijken en verbeteren als je wilt.

    Wat vind je er van?