As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Agentes de codificação
Os agentes de codificação podem raciocinar sobre tarefas de programação, gerar ou modificar código e interagir com ambientes de desenvolvedores, como IDEs e. CLIs Esses agentes combinam a compreensão da linguagem natural com o raciocínio estruturado para auxiliar, aumentar e automatizar o desenvolvimento de software, desde a geração de funções até a correção de bugs e a criação de testes.
Diferentemente das ferramentas de preenchimento automático, os agentes de codificação interpretam ativamente as metas do usuário, consultam o ambiente de desenvolvimento em busca de contexto (por exemplo, ele abre arquivos e rastreia erros), identificam os requisitos e, em seguida, propõem e executam ações.
Arquitetura
Um padrão de agente codificador é mostrado no diagrama a seguir:
Description
-
Recebe consulta
-
O usuário fornece instruções em linguagem natural por meio de uma paleta de comandos, janela de bate-papo ou CLI (por exemplo, “Adicionar registro a esta função” ou “Refatorar para facilitar a leitura”).
-
-
Extrai o contexto do ambiente
-
O agente coleta o contexto do IDE, incluindo arquivos ativos, posição do cursor, trechos de código e tabelas de símbolos.
-
Ele emite mensagens de erro, resultados de testes e saídas de outros agentes.
-
-
Raciocínio LLM
-
O agente envia um prompt, incluindo a consulta e o contexto ambiental, para um LLM.
-
O LLM executa um raciocínio para determinar o seguinte:
-
O que precisa mudar
-
Como gerar uma solução
-
Qualquer etapa de refatoração, reescrita ou codificação
-
-
-
Executa ações
-
O LLM retorna a saída para o agente e a importa para o ambiente IDE ou runtime.
-
Isso pode incluir inserir ou modificar código, gerar comentários ou documentação e acionar tarefas posteriores de compilação, teste e linting.
-
Capacidades
-
Alto conhecimento contextual (por exemplo, estado do IDE, cursor e árvore de sintaxe)
-
Raciocínio iterativo de metas e feedback
-
Planejamento de código opcional e separação de ações (por exemplo, primeiro raciocinar e depois agir)
-
Funciona em fluxos de trabalho de desenvolvedores síncronos ou assíncronos
Casos de uso comuns
-
Geração de código a partir de descrições de tarefas
-
Refatoração e otimização de código
-
Geração e validação de casos de teste
-
Explicações de erros e depuração
-
Assistentes de documentação
-
Co-pilotos de programação emparelhados
Orientação para implementação
-
Você pode criar esse padrão usando as seguintes ferramentas e Serviços da AWS:
-
Amazon Bedrock para geração e raciocínio orientados por LLM
-
Amazon Q Developer para sugestões e conclusões de codificação
-
AWS Lambda ou Amazon Elastic Container Service (Amazon ECS) para executar e testar ambientes sandbox
-
AWS Cloud9, extensões do VS Code ou integrações personalizadas de IDE para hospedar e avaliar o contexto
-
Amazon Simple Storage Service (Amazon S3) (Amazon S3) para armazenar solicitações intermediárias, respostas e histórico de revisões
Resumo
Os agentes de codificação são novas ferramentas de desenvolvimento baseadas em IA que são capazes de interpretar a linguagem natural, analisar o contexto, gerar alterações de código em várias etapas e integrar-se ao ciclo de vida do desenvolvimento de software.