Agentes de codificação - AWS Orientação prescritiva

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:

Agente de codificação.

Description

  1. 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”).

  2. 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.

  3. 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

  4. 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.