AI-modellen en platforms
Zullen grote taalmodellen het programmeren beëindigen?
De voorbije week markeerde een belangrijke mijlpaal voor OpenAI, aangezien ze GPT-4 Turbo aankondigden op hun OpenAI DevDay. Een opvallende functie van GPT-4 Turbo is de uitgebreide contextwindow van 128.000, een aanzienlijke sprong van GPT-4’s 8.000. Deze verbetering maakt het mogelijk om tekst te verwerken die 16 keer groter is dan zijn voorganger, wat overeenkomt met ongeveer 300 pagina’s tekst.
Dit wordt gekoppeld aan een andere belangrijke ontwikkeling: het potentiële effect op het landschap van SaaS-startups.
OpenAI’s ChatGPT Enterprise, met zijn geavanceerde functies, vormt een uitdaging voor veel SaaS-startups. Deze bedrijven, die producten en diensten aanboden rond ChatGPT of zijn API’s, worden nu geconfronteerd met concurrentie van een tool met ondernemingsbrede mogelijkheden. De aanbod van ChatGPT Enterprise, zoals domeinverificatie, SSO en gebruiksinzichten, overlapt rechtstreeks met veel bestaande B2B-diensten, waardoor het voortbestaan van deze startups mogelijk in gevaar komt.
In zijn keynote onthulde de CEO van OpenAI, Sam Altman, een andere belangrijke ontwikkeling: de uitbreiding van GPT-4 Turbo’s kennislimiet. In tegenstelling tot GPT-4, die alleen informatie had tot 2021, is GPT-4 Turbo bijgewerkt met kennis tot april 2023, wat een aanzienlijke stap vooruit is in de relevantie en toepasbaarheid van de AI.
ChatGPT Enterprise onderscheidt zich door functies zoals verbeterde beveiliging en privacy, hoge-snelheidstoegang tot GPT-4 en uitgebreide contextvensters voor langere invoer. De geavanceerde gegevensanalysemogelijkheden, aanpassingsmogelijkheden en verwijdering van gebruikslimieten maken het een superieure keuze ten opzichte van zijn voorgangers. De mogelijkheid om langere invoer en bestanden te verwerken, samen met onbeperkte toegang tot geavanceerde gegevensanalysehulpmiddelen zoals de eerder bekende Code Interpreter, versterkt zijn aantrekkingskracht, vooral onder bedrijven die eerder aarzelden vanwege zorgen over gegevensbeveiliging.
De tijd van handmatig schrijven van code gaat over in AI-gestuurde systemen, getraind in plaats van geprogrammeerd, wat een fundamentele verandering in softwareontwikkeling aanduidt.
De saaie taken van programmeren kunnen binnenkort aan AI worden overgelaten, waardoor de behoefte aan diepe programmeerkennis afneemt. Tools zoals GitHub’s CoPilot en Replit’s Ghostwriter, die helpen bij het programmeren, zijn vroege indicatoren van de groeiende rol van AI in programmeren, wat suggereert dat AI in de toekomst verder gaat dan alleen ondersteuning en het volledige programmeringsproces zal beheren. Stel je voor dat een programmeur de syntaxis voor het omkeren van een lijst in een bepaalde taal vergeet. In plaats van een zoektocht door onlineforums en artikelen biedt CoPilot onmiddellijke ondersteuning, waardoor de programmeur zich kan concentreren op het doel.
Overgang van low-code naar AI-gestuurde ontwikkeling
Low-code- en no-code-tools hebben het programmeringsproces vereenvoudigd door het automatiseren van de creatie van basiscodeblokken en door ontwikkelaars te bevrijden om zich te concentreren op de creatieve aspecten van hun projecten. Maar nu we deze nieuwe AI-golf betreden, verandert het landschap verder. De eenvoud van gebruikersinterfaces en de mogelijkheid om code te genereren met eenvoudige opdrachten zoals “Bouw een website om X te doen” revolutioneert het proces.
AI’s invloed op programmeren is al enorm. Net zoals vroege computerwetenschappers overstapten van een focus op elektrotechniek naar meer abstracte concepten, kunnen toekomstige programmeurs gedetailleerd programmeren als verouderd beschouwen. De snelle vooruitgang in AI is niet beperkt tot tekst/codegeneratie. In gebieden zoals beeldgeneratie, zoals diffusiemodellen zoals Runway ML, DALL-E 3, laten enorme verbeteringen zien. Bekijk alleen het onderstaande tweet van Runway dat hun laatste functie laat zien.
https://twitter.com/runwayml/status/1723033256067489937
AI’s impact op creatieve industrieën zal eveneens transformerend zijn. Jeff Katzenberg, een gigant in de filmindustrie en voormalig voorzitter van Walt Disney Studios, heeft voorspeld dat AI de productiekosten van geanimeerde films aanzienlijk zal verlagen. Volgens een recent artikel van Bloomberg voorziet Katzenberg een drastische verlaging van de kosten met 90%. Dit kan het automatiseren van arbeidsintensieve taken zoals in-betweening in traditionele animatie, rendering van scènes en zelfs het helpen bij creatieve processen zoals karakterontwerp en storyboarding omvatten.
De kosteneffectiviteit van AI in codering
Kostenanalyse van het inhuren van een software-ingenieur:
- Totale compensatie: Het gemiddelde salaris voor een software-ingenieur, inclusief extra voordelen in technologiehubs zoals Silicon Valley of Seattle, bedraagt ongeveer $312.000 per jaar.
Dagelijkse kostenanalyse:
- Werkdagen per jaar: Als we ervan uitgaan dat er ongeveer 260 werkdagen in een jaar zijn, bedraagt de dagelijkse kosten van het inhuren van een software-ingenieur ongeveer $1.200.
- Code-output: Als we een ruwe schatting nemen van 100 afgeronde, geteste, beoordeelde en goedgekeurde regels code per dag, vormt deze dagelijkse output de basis voor de vergelijking.
Kostenanalyse van het gebruik van GPT-3 voor codegeneratie:
- Tokenkosten: De kosten van het gebruik van GPT-3, op het moment van de video, waren ongeveer $0,02 voor elke 1.000 tokens.
- Tokens per regel code: Gemiddeld kan een regel code ongeveer 10 tokens bevatten.
- Kosten voor 100 regels code: Derhalve zouden de kosten voor het genereren van 100 regels code (of 1.000 tokens) met GPT-3 ongeveer $0,12 bedragen.
Vergelijkende analyse:
- Kosten per regel code (mens vs. AI): Als we de kosten vergelijken, bedragen de kosten voor het genereren van 100 regels code per dag $1.200 als het door een menselijke software-ingenieur wordt gedaan, tegenover slechts $0,12 met GPT-3.
- Kostenfactor: Dit vertegenwoordigt een kostenfactorverschil van ongeveer 10.000 keer, waarbij AI aanzienlijk goedkoper is.
Deze analyse wijst op het economisch potentieel van AI in het veld van programmeren. De lage kosten van AI-gegenereerde code in vergelijking met de hoge uitgaven voor menselijke ontwikkelaars suggereren een toekomst waarin AI de voorkeursmethode voor codegeneratie kan worden, vooral voor standaard- of herhalende taken. Deze verschuiving kan leiden tot aanzienlijke kostenbesparingen voor bedrijven en een herbeoordeling van de rol van menselijke programmeurs, waarbij hun vaardigheden mogelijk worden gericht op complexere, creatievere of toezichttaken die AI nog niet kan uitvoeren.
ChatGPT’s veelzijdigheid strekt zich uit tot verschillende programmeercontexten, waaronder complexe interacties met webontwikkelingsframeworks. Stel dat een ontwikkelaar werkt met React, een populaire JavaScript-bibliotheek voor het bouwen van gebruikersinterfaces. Traditioneel zou deze taak het doornemen van uitgebreide documentatie en community-verstrekte voorbeelden omvatten, vooral bij het omgaan met ingewikkelde componenten of staatbeheer.
Met ChatGPT wordt dit proces gestroomlijnd. De ontwikkelaar kan eenvoudigweg de functionaliteit beschrijven die hij wil implementeren in React, en ChatGPT biedt relevante, direct bruikbare codefragmenten. Dit kan variëren van het opzetten van een basiscomponentstructuur tot geavanceerde functies zoals het beheren van de staat met hooks of het integreren met externe API’s. Door de tijd te verminderen die wordt besteed aan onderzoek en trial-and-error, verhoogt ChatGPT de efficiëntie en versnelt het projectontwikkeling in webontwikkelingscontexten.
Uitdagingen in AI-gestuurd programmeren
Naarmate AI het programmeringslandschap blijft herschikken, is het essentieel om de beperkingen en uitdagingen te erkennen die samenhangen met het volledig vertrouwen op AI voor programmeertaken. Deze uitdagingen onderstrepen de noodzaak van een evenwichtige aanpak die de sterke punten van AI benut en tegelijkertijd zijn beperkingen erkent.
- Codekwaliteit en onderhoud: AI-gegenereerde code kan soms verwoord of inefficiënt zijn, wat kan leiden tot onderhoudsuitdagingen. Hoewel AI functionele code kan schrijven, blijft het een taak voor mensen om ervoor te zorgen dat deze code voldoet aan de beste praktijken voor leesbaarheid, efficiëntie en onderhoud.
- Foutopsporing en foutafhandeling: AI-systemen kunnen code snel genereren, maar ze zijn niet altijd goed in het opsporen van fouten of het begrijpen van subtiele fouten in bestaande code. De nuances van foutopsporing, vooral in grote, complexe systemen, vereisen vaak een menselijke, genuanceerde begrip en ervaring.
- Afhankelijkheid van trainingsgegevens: De effectiviteit van AI in programmeren is grotendeels afhankelijk van de kwaliteit en de omvang van de trainingsgegevens. Als de trainingsgegevens voorbeelden van bepaalde bugs, patronen of scenario’s ontbreken, wordt de mogelijkheid van de AI om met deze situaties om te gaan, aangetast.
- Ethische en beveiligingszorgen: Met AI die een meer prominente rol speelt in codering, ontstaan er ethische en beveiligingszorgen, vooral met betrekking tot gegevensprivacy en de mogelijkheid van vooroordelen in AI-gegenereerde code. Het waarborgen van een verantwoordelijke ontwikkeling van AI-gestuurde programmeertools is cruciaal.
Evenwicht tussen AI en traditionele programmeervaardigheden
In toekomstige softwareontwikkelteams kan een hybride model ontstaan. Productmanagers kunnen vereisten vertalen in richtlijnen voor AI-codegeneratoren. Menselijke toezicht kan nog steeds nodig zijn voor kwaliteitsborging, maar de focus zal verschuiven van het schrijven en onderhouden van code naar het verifiëren en fijnafstemmen van AI-gegenereerde uitvoer. Deze verandering suggereert een afnemende nadruk op traditionele programmeerprincipes zoals modulariteit en abstractie, aangezien AI-gegenereerde code niet hoeft te voldoen aan door de mens gedefinieerde onderhoudsstandaarden.
In deze nieuwe tijd zal de rol van ingenieurs en computerwetenschappers aanzienlijk veranderen. Zij zullen interactie hebben met LLM, waarbij ze trainingsgegevens en voorbeelden bieden om taken uit te voeren, waardoor de focus verschuift van het schrijven en onderhouden van code naar het strategisch werken met AI-modellen.
De basisberekeningsunit zal verschuiven van traditionele processors naar enorme, vooraf getrainde LLM-modellen, wat een afwijking markeert van voorspelbare, statische processen naar dynamische, adaptieve AI-agents.
De focus verschuift van het creëren en begrijpen van programma’s naar het leiden van AI-modellen, waardoor de rollen van computerwetenschappers en ingenieurs worden herdefinieerd en onze interactie met technologie wordt herschikt.
De voortdurende behoefte aan menselijke inzicht in AI-gegenereerde code
De toekomst van programmeren gaat minder over coderen en meer over het leiden van de intelligentie die onze technologische wereld zal aandrijven.
De overtuiging dat natuurlijke taalverwerking door AI de precisie en complexiteit van formele wiskundige notaties en traditioneel programmeren volledig kan vervangen, is, op zijn best, prematuur. De verschuiving naar AI in programmeren elimineert de behoefte aan de strengheid en precisie die alleen formele programmering en wiskundige vaardigheden kunnen bieden, niet.
Bovendien blijft de uitdaging om AI-gegenereerde code te testen op problemen die nog niet eerder zijn opgelost, aanzienlijk. Technieken zoals property-based testing vereisen een diep begrip van programmeren, vaardigheden die AI in zijn huidige staat niet kan repliceren of vervangen.
Ter samenvatting, terwijl AI belooft veel aspecten van programmeren te automatiseren, blijft het menselijke element cruciaal, vooral in gebieden die creativiteit, complex probleemoplossing en ethische toezicht vereisen.












