Kunstig intelligens (KI) har fundamentalt endret måten vi programmerer på. KI-agenter kan generere kode, optimalisere og til og med hjelpe til med feilsøking. Likevel er det noen begrensninger programmerere bør være klar over når de arbeider med KI.
KI-agenter sliter med riktig rekkefølge i koden. De kan for eksempel plassere initialiseringer på slutten av en fil, noe som forårsaker køretidsfeil. I tillegg kan KI uten å nøle definere flere versjoner av den samme klassen eller funksjonen i et prosjekt, noe som fører til konflikter og forvirring.
En løsning på dette er å bruke KI-kodeplattformer som kan håndtere minne og prosjektstrukturer. Dette bidrar til å opprettholde konsistens i komplekse prosjekter. Dessverre blir disse funksjonene ikke alltid brukt konsekvent. Dette kan føre til at KI-en mister oversikten over prosjektets sammenheng og introduserer uønsket duplisering eller feil avhengigheter under programmeringen.
De fleste KI-kodeplattformer fungerer med såkalte verktøy som det store språkmodellen kan kalle på. Disse verktøyene er basert på en åpen standardprotokoll (MCP). Det er derfor mulig å koble en KI-kodeagent til et IDE som Visual Code. Eventuelt kan du sette opp en LLM lokalt med llama eller ollama og velge en MCP-server for integrasjon. Modeller kan finnes på huggingface.
Om AI-gegenereerde code beter te beheren, kunnen ontwikkelaars gebruik maken van IDE-extensies die toezien op code-correctheid. Hulpmiddelen zoals linters, type checkers en geavanceerde code-analyse tools helpen om fouten vroegtijdig op te sporen en te corrigeren. Ze vormen een essentiële aanvulling op AI-gegenereerde code om de kwaliteit en stabiliteit te waarborgen.
Een van de belangrijkste redenen waarom AI-agenten fouten blijven herhalen, ligt in de manier waarop AI API’s interpreteren. AI-modellen hebben context en een duidelijke rolomschrijving nodig om effectieve code te genereren. Dit betekent dat prompts volledig moeten zijn: ze moeten niet alleen de functionele eisen bevatten, maar ook het verwachte resultaat en de randvoorwaarden expliciet maken. Om dit te vergemakkelijk kun je de prompts in standaard formaat (MDC) opslaan en standaard meesturen naar de AI. Dat is vooral handig voor generieke programmeer regels die je hanteert en de functionele en technische requirements en de structuur van je project.
Producten zoals FAISS og LangChain bieden oplossingen om AI beter met context om te laten gaan. FAISS helpt bijvoorbeeld bij het efficiënt zoeken en ophalen van relevante codefragmenten, terwijl LangChain helpt bij het structureren van AI-gegenereerde code en het behouden van context binnen een groter project. Maar ook hier kun je het eventueel zelf lokaal opzetten met RAC databases.
AI is een krachtige tool voor programmeurs en kan helpen bij het versnellen van ontwikkelingsprocessen. Toch is het nog niet echt in staat om zelfstandig een complexere codebase te ontwerpen en te bouwen zonder menselijke controle. Programmeurs moeten AI beschouwen als een assistent die taken kan automatiseren en ideeën kan genereren, maar die nog altijd begeleiding en correctie nodig heeft om tot een goed resultaat te komen.
Kontakt op om te helpen de ontwikkelomgeving op te zetten om teams te helpen het maximale uit de ontwikkelomgeving te halen en meer bezig te zijn met requirements engineering en ontwerp dan met debuggen en code schrijven.