Coderen met een AI

Programar com um Agente de IA

A inteligência artificial (IA) mudou fundamentalmente a forma como programamos. Agentes de IA podem gerar, otimizar e até auxiliar na depuração de código. No entanto, existem algumas limitações que os programadores devem ter em mente ao trabalhar com IA.

Problemas de ordem e duplicação

Os agentes de IA têm dificuldade em manter a ordem correta do código. Podem, por exemplo, colocar inicializações no fim de um ficheiro, o que causa erros em tempo de execução. Além disso, a IA pode, sem hesitar, definir várias versões da mesma classe ou função num projeto, levando a conflitos e confusão.

Uma plataforma de código com memória e estrutura de projeto ajuda

Uma solução para isto é o uso de plataformas de código com IA que gerem memória e estruturas de projeto. Isso ajuda a manter a consistência em projetos complexos. Infelizmente, essas funcionalidades nem sempre são aplicadas de forma consistente. Assim, pode acontecer que a IA perca a coesão do projeto e introduza duplicações indesejadas ou dependências incorretas durante a programação.

A maioria das plataformas de codificação com IA funciona com as chamadas ferramentas que podem invocar o modelo de linguagem de grande dimensão. Essas ferramentas baseiam-se num protocolo padrão aberto (MCP). É portanto possível ligar um agente de codificação IA a um IDE como o Visual Studio Code. Opcionalmente, pode configurar localmente um LLM com llama ou ollama e escolha um servidor MCP para integrar. Fortis AI tem um servidor MCP para ajudar na depuração e na gestão do sistema subjacente (Linux). Útil quando queres colocar o código em produção diretamente.
Modelos podem ser encontrados em huggingface.

Extensões de IDE são indispensáveis

Para gerir melhor o código gerado por IA, os desenvolvedores podem usar extensões de IDE que fiscalizam a correção do código. Ferramentas como linters, verificadores de tipos e ferramentas avançadas de análise de código ajudam a detetar e corrigir erros precocemente. Elas constituem um complemento essencial ao código gerado por IA para garantir qualidade e estabilidade.

A causa de erros repetidos: contexto e papel nas APIs

Uma das principais razões pelas quais os agentes de IA continuam a repetir erros está na forma como interpretam as APIs de IA. Os modelos de IA necessitam de contexto e de uma descrição clara de funções para gerar código eficaz. Isso significa que os prompts devem ser completos: não só devem conter os requisitos funcionais, mas também explicitar o resultado esperado e as condições limite. Para facilitar, podes guardar os prompts num formato padrão (MDC) e enviá‑los sempre que necessário para a IA. Isso é especialmente útil para regras de programação genéricas que aplicas e para os requisitos funcionais e técnicos e a estrutura do teu projeto.

Ferramentas como FAISS e LangChain ajudam

Produtos como FAISS e LangChain oferecem soluções para melhorar o manuseio de contexto pela IA. O FAISS ajuda, por exemplo, na pesquisa eficiente e recuperação de fragmentos de código relevantes, enquanto o LangChain auxilia na estruturação do código gerado pela IA e na preservação do contexto dentro de um projeto maior. Mas também aqui podes configurar localmente usando bases de dados RAC.

Conclusão: útil, mas ainda não autónoma

A IA é uma ferramenta poderosa para programadores e pode ajudar a acelerar os processos de desenvolvimento. No entanto, ainda não é verdadeiramente capaz de projetar e construir de forma autónoma uma base de código complexa sem supervisão humana. Os programadores devem encarar a IA como uma assistente que pode automatizar tarefas e gerar ideias, mas que continua a necessitar de orientação e correção para atingir um bom resultado.

Contacte contacto para ajudar a configurar o ambiente de desenvolvimento, permitindo que as equipas tirem o máximo partido do ambiente e se concentrem mais em engenharia de requisitos e desenho do que em depuração e escrita de código.

 

Gerard

O Gerard atua como consultor e gestor de IA. Com vasta experiência em grandes organizações, consegue rapidamente dissecar um problema e avançar para uma solução. Combinado com uma formação económica, assegura escolhas responsáveis do ponto de vista empresarial.