Gerar código usando o GitHub Copilot Chat

Concluído

O GitHub Copilot no Visual Studio Code suporta as seguintes interfaces de chat:

  • A Chat View disponibiliza um assistente de IA disponível para o ajudar a qualquer momento.

  • A janela de Chat Rápido pode ser usada para fazer uma pergunta rápida e depois voltar ao que está a fazer.

  • A interface do Chat Inline abre diretamente no editor para interações contextuais enquanto estás a programar.

A visualização de bate-papo e a janela de bate-papo rápido permitem conversas interativas de vários turnos com a IA. Ambas as interfaces fornecem uma maneira de fazer perguntas, obter ajuda com um problema de codificação e gerar código. A visualização de bate-papo é uma interface mais robusta que fornece uma experiência de bate-papo completa, enquanto a janela de bate-papo rápido é projetada para interações rápidas.

A interface de bate-papo em linha foi projetada para fornecer ajuda contextual e sugestões de código enquanto você codifica. A interface de bate-papo em linha está disponível no editor e permite que você faça perguntas e obtenha ajuda com trechos de código específicos.

Gerar código usando a visualização de bate-papo

A visualização Chat fornece um ambiente gerenciado para conversas entre você e o programador de par de IA. Você pode usar o modo de exibição Bate-papo para fazer perguntas, obter ajuda com problemas de codificação e gerar código. A visualização de bate-papo foi projetada para ser uma experiência mais interativa e conversacional do que a interface de bate-papo em linha.

Por predefinição, a vista do Chat está localizada na Barra Lateral Secundária do lado direito da janela do Visual Studio Code.

Quando inicia uma sessão de chat, três escolhas moldam a forma como a IA responde:

  • Tipo de agente: determina para onde o agente corre. Selecione um tipo no menu suspenso Agente Destino na visualização do Chat. Selecione Local para executar o agente de forma interativa no editor com acesso total ao seu espaço de trabalho, ferramentas e modelos. Outras opções incluem Copilot CLI, Cloud e fornecedores terceiros.
  • Agente: determina o papel ou persona da IA. Selecione um agente a partir do selecionador de agentes na vista de Chat. Os três agentes locais incorporados são Perguntar, Plan e Agente.
  • Nível de permissões: controla quanta autonomia o agente tem para invocar ferramentas e comandos de terminal. As opções são Aprovações Padrão, Aprovações de Contorno e Piloto Automático.

Use o agente Ask para gerar código

O agente Ask foi concebido para o ajudar a analisar o seu código e investigar as opções para novas funcionalidades antes de sugerir implementações de código. Ao usar o agente Ask, o GitHub Copilot atua como um assistente conversacional que pode responder às suas perguntas e ajudar com problemas de programação ou novas funcionalidades.

  1. Abre a visão do Chat e seleciona a opção Perguntar no seletor de agentes.

  2. Adicione contexto ao chat.

    O agente Ask suporta participantes do chat, comandos de barra e variáveis do chat. Podes adicionar #codebase ao chat para dar contexto, juntamente com ficheiros ou pastas.

  3. Faça perguntas que o ajudem a avaliar o novo recurso que deseja implementar.

    Por exemplo, podes pedir ao GitHub Copilot para te ajudar a perceber como implementar uma nova funcionalidade ou como usar uma biblioteca específica.

    • Como faço para adicionar uma página de login?
    • Quais são as melhores práticas para usar o React?
    • Como uso a @mui/material biblioteca?
  4. Construa um prompt que descreva o recurso de código que você deseja implementar.

    Seu prompt deve incluir uma descrição do recurso de código que você deseja implementar. Por exemplo:

    Create the code to obtain a book title. Prompt the user to "Enter a book title to search for". Read the user input and ensure the book title isn't null.
    
  5. Reveja o código sugerido na vista de Chat.

    A resposta exibida na visualização Chat deve incluir um trecho de código que você pode usar para implementar o recurso. Você pode inserir mais prompts para refinar o código ou pedir mais detalhes.

  6. Para implementar código sugerido, pode passar o rato sobre o excerto de código e depois selecionar entre as opções Aplicar, Inserir e Copiar .

    • Aplicar: Aplica a sugestão de código ao ficheiro atual no editor.
    • Inserir: Insere a sugestão de código na posição atual do cursor no editor.
    • Copiado: Copia a sugestão de código para a prancheta.

    Captura de ecrã mostrando a visualização do Chat com o agente do Ask a sugerir uma atualização de código.

  7. Continue a iterar e refinar o novo recurso com mais instruções, se necessário.

Use o agente de planejamento para planear antes de codificar

O agente de planos foi concebido para o ajudar a pesquisar e planear uma tarefa antes de escrever qualquer código. Quando usa o agente Plan, o GitHub Copilot analisa a sua base de código, faz perguntas esclarecedoras e cria um plano de implementação estruturado passo a passo. Depois de finalizar o plano, podes entregá-lo a um agente de implementação.

  1. Abra a vista de Chat e selecione Plan no selecionador de agentes.

  2. Adicione contexto ao chat.

    O agente do Plano utiliza ferramentas de somente leitura e análise da base de código para investigar a sua tarefa. Podes adicionar ficheiros e pastas ao chat para fornecer contexto adicional.

  3. Constrói um prompt que descreva a tarefa que queres planear.

    O seu prompt deve incluir uma descrição da funcionalidade ou tarefa que pretende implementar. Por exemplo:

    
    Implement a user authentication system with OAuth2 and JWT.
    
    
  4. Responda a quaisquer perguntas esclarecedoras que o agente do plano fizer.

    O agente do plano investiga a sua tarefa e pode fazer perguntas para resolver ambiguidades antes de elaborar um plano.

  5. Revise o plano proposto.

    O agente do Plano fornece um resumo de alto nível, uma divisão dos passos de implementação, critérios de verificação e decisões documentadas. Pode iterar o plano dando feedback.

  6. Uma vez finalizado o plano, use os botões para iniciar a implementação ou abrir o plano no editor para revisão adicional.

    Pode optar por implementar o plano na mesma sessão de chat, ou iniciar uma sessão de agente em segundo plano ou cloud para trabalhar a implementação de forma autónoma.

Use o Agente para gerar código

Quando usa o GitHub Copilot em modo Agente, o GitHub Copilot atua como um agente autónomo que pode tomar ações em seu nome. Podes pedir ao GitHub Copilot para realizar tarefas específicas, e ele gera código com base nos teus pedidos.

Importante

Quando usa o modo Agente, o GitHub Copilot pode fazer múltiplos pedidos premium para completar uma única tarefa. Solicitações premium podem ser usadas por prompts iniciados pelo utilizador e ações de seguimento que o GitHub Copilot realiza em nome do utilizador. O total de solicitações premium usadas depende da complexidade da tarefa, do número de etapas envolvidas e do modelo selecionado.

  1. Abra a vista do Chat e selecione Agente no selecionador de agentes.

  2. Constrói um prompt que descreva a tarefa que queres que o GitHub Copilot realize.

    Por exemplo, pode pedir ao GitHub Copilot para gerar uma nova funcionalidade ou criar uma aplicação totalmente nova.

    • Crie um aplicativo Web de planejamento de refeições usando o React e o Node.js
    • Adicionar funcionalidade de partilha de redes sociais
    • Substitua a autenticação atual por OAuth
  3. O Agente pode invocar múltiplas ferramentas para realizar diferentes tarefas. Opcionalmente, selecione o ícone Ferramentas para configurar quais ferramentas podem ser usadas para responder à sua solicitação.

  4. Confirme invocações de ferramentas e comandos de terminal.

    Antes de o GitHub Copilot executar um comando de terminal ou uma ferramenta que não esteja integrada, pede confirmação para continuar. O GitHub Copilot pede confirmação porque as ferramentas podem correr localmente na sua máquina e realizar ações que modificam ficheiros ou dados.

  5. O GitHub Copilot deteta problemas e problemas em edições de código e comandos de terminal, e irá iterar e executar ações para os resolver.

  6. À medida que o GitHub Copilot processa o seu pedido, transmite as edições de código sugeridas diretamente no editor como diferenciais inline.

  7. Revise as edições sugeridas e aceite-as ou descarte-as.

    Abre um ficheiro alterado para veres a sobreposição de diferenças no editor. Use os controlos de sobreposição do editor para navegar entre as alterações e selecione Manter ou Desfazer para edições individuais. Alternativamente, a preparação das suas alterações na vista de Controlo de Versões aceita automaticamente todas as edições pendentes.

  8. Continue a iterar e refinar o novo recurso com mais instruções, se necessário.

Sugestão

O Visual Studio Code cria automaticamente checkpoints (imagens instantâneas de ficheiros) em momentos-chave durante as sessões do agente. Se o agente fizer alterações indesejadas, podes voltar a um ponto de controlo anterior. Para mais informações, veja Pontos de controlo do Chat.

Gerar código usando uma sessão de chat em linha

A sessão de chat em linha pode ser usada para analisar e gerar código. A interface de chat em linha só é acessível quando um arquivo é aberto no editor de códigos. Ele pode ser usado para analisar o código selecionado ou criar um novo código com base em um prompt.

  1. Abra um arquivo no editor.

  2. Abra uma sessão de chat inline usando o atalho de teclado Ctrl+I ou selecionando Abrir Chat Inline no menu Chat na barra de título.

    A sessão de bate-papo em linha é aberta na posição do cursor no editor.

  3. Selecione um bloco de código no editor.

    O código selecionado é usado como contexto para o prompt. Se nenhum código for selecionado, o prompt usará o arquivo inteiro como contexto.

  4. Digite seu prompt no campo de entrada de chat.

    Por exemplo:

    Update selection to include an option for the `CommonActions.SearchBooks` action. Use the letter "b" and the message "to check for book availability".
    
  5. As sugestões de atualização de código são apresentadas como um diff no editor.

  6. Revê as atualizações de código sugeridas e depois aceita ou descarta as alterações.

    Captura de ecrã que mostra uma sessão de chat inline a atualizar código.

  7. Continue a iterar e refinar o novo recurso com mais instruções, se necessário.

Resumo

O GitHub Copilot Chat oferece um conjunto poderoso de ferramentas para gerar código e ajudar em tarefas de programação. A visualização de bate-papo, a janela de bate-papo rápido e a sessão de bate-papo em linha oferecem diferentes maneiras de interagir com o programador de par de IA e obter ajuda com problemas de codificação. Usando essas ferramentas de forma eficaz, você pode melhorar sua produtividade e eficiência de codificação.