Coderen met een AI

Programmering med en AI-agent

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.

Problemen met volgorde en duplicatie

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.

Een codeplatform met memory en projectstructuur helpt

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.

IDE-extensies zijn onmisbaar

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.

Årsaken til gjentatte feil: kontekst og rolle i API-er

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.

Verktøy som FAISS og LangChain hjelper

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.

Konklusjon: nyttig, men ennå ikke selvstendig

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.

 

Gerard

Gerard er aktiv som AI-konsulent og leder. Med bred erfaring fra store organisasjoner kan han raskt analysere et problem og arbeide mot en løsning. Kombinert med en økonomisk bakgrunn sikrer han forretningsmessig forsvarlige valg.

AI (Kunstig Intelligens Robot)