Programmera med AI

Programmering med en AI-agent

Artificifik intelligens (AI) har i grunden förändrat sättet vi programmerar på. AI-agenter kan generera kod, optimera den och till och med hjälpa till med felsökning. Det finns dock vissa begränsningar som programmerare bör ha i åtanke när de arbetar med AI.

Problem med ordning och duplisering

AI-agenter har svårt att hantera rätt ordning på koden. De kan till exempel placera initieringar i slutet av en fil, vilket orsakar körtidsfel. Dessutom kan AI utan tvekan definiera flera versioner av samma klass eller funktion inom ett projekt, vilket leder till konflikter och förvirring.

En kodplattform med minne och projektstruktur hjälper till

En lösning på detta är att använda AI-kodningsplattformar som kan hantera minne och projektstrukturer. Detta hjälper till att upprätthålla konsekvens i komplexa projekt. Tyvärr tillämpas inte dessa funktioner alltid konsekvent. Detta kan leda till att AI:n förlorar sammanhanget i ett projekt och introducerar oönskade dupliceringar eller felaktiga beroenden under programmeringen.

De flesta AI-kodningsplattformar fungerar med så kallade verktyg som det stora språkmodellen (LLM) kan anropa. Dessa verktyg är baserade på ett öppet standardprotokoll (MCP). Det är därför möjligt att koppla en AI-kodningsagent till en IDE som Visual Studio Code. Eventuellt kan du sätta upp en LLM lokalt med Llama eller Ollama, och välja en MCP-server att integrera med. NetCare har skapat en MCP-server som hjälper till med felsökning och hantering av det underliggande (Linux-)systemet. Praktiskt när du vill publicera koden direkt live.
Modeller finns på Hugging Face.

IDE-tillägg är oumbärliga

För att bättre hantera AI-genererad kod kan utvecklare använda IDE-tillägg som övervakar kodens korrekthet. Verktyg som linters, typkontrollanter (type checkers) och avancerade kodanalysverktyg hjälper till att upptäcka och åtgärda fel i ett tidigt skede. De utgör ett nödvändigt komplement till AI-genererad kod för att säkerställa kvalitet och stabilitet.

Orsaken till återkommande fel: kontext och roll i API:er

En av de utama orsakerna till att AI-agenter fortsätter att upprepa misstag ligger i hur AI tolkar API:er. AI-modeller behöver sammanhang och en tydlig rollbeskrivning för att generera effektiv kod. Det innebär att prompterna måste vara fullständiga: de bör inte bara innehålla de funktionella kraven, utan också göra det förväntade resultatet och förutsättningarna explicita. För att underlätta detta kan du spara prompterna i ett standardformat (MDC) och skicka med dem som standard till AI:n. Detta är särskilt användbart för generella programmeringsregler som du tillämpar samt för projektets funktionella och tekniska krav och struktur.

Verktyg som FAISS och LangChain hjälper till

Produkter som FAISS och LangChain erbjuder lösningar för att låta AI hantera kontext på ett bättre sätt. FAISS hjälper till exempel med att effektivt söka och hämta relevanta kodfragment, medan LangChain hjälper till att strukturera AI-genererad kod och bevara kontexten inom ett större projekt. Men även här kan du eventuellt sätta upp det lokalt själv med RAC-databaser.

Slutsats: användbar, men inte självständig än

AI är ett kraftfullt verktyg för programmerare och kan bidra till att snabba upp utvecklingsprocesserna. Ändå är den ännu inte riktigt kapabel att på egen hand designa och bygga en mer komplex kodbas utan mänsklig kontroll. Programmerare bör betrakta AI som en assistent som kan automatisera uppgifter och generera idéer, men som fortfarande behöver vägledning och korrigering för att nå ett bra resultat.

Ta kontakt för att få hjälp med att sätta upp utvecklingsmiljön, så att teamen kan få ut det mesta av den och fokusera mer på kravhantering och design än på felsökning och kodskrivning.

 

Gerard

Gerard är verksam som AI-konsult och manager. Med gedigen erfarenhet från stora organisationer kan han snabbt nysta upp ett problem och arbeta mot en lösning. I kombination med en ekonomisk bakgrund säkerställer han affärsmässigt ansvarsfulla val.