Partilhar via


Gerencie o contexto do bate-papo com referências

Amplie suas perguntas para o GitHub Copilot Chat usando referências, além de seu conhecimento contextual implícito, para obter melhores respostas.

Neste artigo, você aprende como obter melhores respostas fornecendo mais informações ao Copilot Chat:

  • Entenda o contexto implícito que o Copilot aproveita nos bastidores
  • Escopo do bate-papo para arquivos específicos usando referências
  • Anexe imagens ao seu prompt para fornecer contexto adicional e ilustrar melhor suas ideias
  • Analise a fonte usada pelo Copilot para gerar a resposta
  • Use tópicos diferentes para cada um dos seus bate-papos Copilot para manter o histórico de bate-papo e contexto diferente em cada um

Pré-requisitos

Para começar a usar o GitHub Copilot Chat no Visual Studio, você precisa:

Contexto implícito

O Visual Studio fornece automaticamente contexto para o prompt de bate-papo com base em sua atividade atual.

As seguintes informações estão implicitamente incluídas no contexto do chat:

  • O texto atualmente selecionado no editor ativo.
  • O arquivo atual ativo no editor.

Dependendo do seu prompt, o Copilot lê o conteúdo do arquivo ativo. Para incluir explicitamente o conteúdo de outro arquivo no contexto do bate-papo, selecione o arquivo sugerido usando o + botão na visualização de bate-papo para Adicionar anexo.

Captura de tela do contexto implícito no Copilot Chat.

Referência: âmbito de aplicação Resultados do copiloto

Você pode fazer suas perguntas relacionadas à codificação em linguagem natural e o GitHub Copilot Chat as responderá no contexto da base de código aberta no Visual Studio. Com referências, você pode obter informações mais específicas sobre as informações que deseja que o Copilot considere ao responder à sua pergunta.

Ao selecionar um contexto específico em sua base de código, você é capaz de formar perguntas melhores facilmente sem ter que escrever ou colar longas partes de informação. A especificação do contexto também permite que o Copilot forneça respostas mais relevantes.

Captura de tela de referências no Copilot Chat.

Fazer referência a um ficheiro

Para referenciar facilmente um arquivo no GitHub Copilot Chat, basta adicionar um símbolo de # no início do nome do arquivo. Por exemplo, se você tiver um arquivo chamado BasketService.cs, consulte-o no bate-papo como #BasketService.cs.

Captura de tela da referência de arquivo no Copilot Chat.

Fazer referência a um método, classe ou função

Com Visual Studio 2022 versão 17.11, agora você pode fazer referência a um método, classe ou função específica no GitHub Copilot Chat.

Para referenciar facilmente um método, classe ou função no GitHub Copilot Chat, basta adicionar um símbolo de # no início do nome do método, classe ou função. Por exemplo, se tiveres um método chamado BasketAddItem, refere-te a ele no chat como #BasketAddItem.

Captura de tela de referências a métodos no GitHub Copilot Chat no Visual Studio.

Referencie toda a solução

Use @workspace para referir-se à solução ativa no IDE para contexto. Ao usar @workspace para contexto, o Copilot Chat aproveita as informações sobre os arquivos, projetos e configurações que estão atualmente abertos e sendo trabalhados em seu IDE. Isso permite que o Copilot Chat forneça sugestões e respostas mais relevantes e sensíveis ao contexto.

Captura de tela do contexto da solução de referência no Copilot Chat.

Com o Visual Studio 2022 versão 17.11, assinantes do GitHub Copilot Enterprise agora podem usar @github no chat para incluir contexto de todo o repositório e pesquisar na Web (se a pesquisa estiver habilitada pelo seu administrador). Para saber mais sobre a coleção de habilidades específicas do GitHub que o Copilot pode usar para responder à sua pergunta ao usar o @github, consulte Usando habilidades do GitHub para o Copilot.

Captura de tela do uso das habilidades do GitHub no Copilot Chat.

Fazer referência a uma imagem

Com a integração de visão para o Copilot Chat no Visual Studio 17.14 e posterior, você pode anexar imagens ao seu prompt de chat, fornecendo ao Copilot contexto adicional para respostas aprimoradas. Use imagens em combinação com o escopo e outros recursos contextuais, como comandos de barra, para gerar respostas personalizadas.

No exemplo a seguir, o Copilot interpreta a imagem anexada para gerar um plano e sugerir código para criar um jogo Breakout colorido do zero.

Captura de tela de um cenário de exemplo de adição de uma imagem no Copilot Chat.

Janela de saída de referência

Agora pode usar a janela de saída como contexto no chat para fazer perguntas e obter ajuda com registos de saída. As janelas de saída suportadas incluem Build, Debug, Tests, Source Control, Package Manager ou qualquer outro painel de janela de saída ativo.

Use os registos de saída de referência no bate-papo de uma das seguintes maneiras:

  • Utilize #output para referenciá-lo diretamente no chat.
  • Selecione o ➕ ícone na entrada de chat e adicione Output logs como contexto.
  • Pergunte diretamente ao Copilot, por exemplo, Verifique meus logs de saída e me ajude a corrigir esse erro.
  • Clique com o botão direito do mouse na janela Saída e selecione Explicar com o Copilot para anexá-la.

Captura de tela da janela de saída como contexto no Copilot Chat.

URLs de referência

Cole um URL na caixa de prompt e o Copilot extrairá informações da Web para preencher os espaços em branco quando os dados de treinamento do Copilot não cobrirem um tópico ou quando você quiser fazer referência a um recurso específico.

Por exemplo, você pode pedir ao Copilot para ajudá-lo a escrever um arquivo readme.md com base nas práticas recomendadas no GitHub.

Captura de ecrã a mostrar a referência a um URL no chat para contextualização.

Observe que o Copilot só pode fazer referência a conteúdo HTML estático a partir da URL pública fornecida e não acessará outros links nessa página, páginas atrás da autenticação ou conteúdo de páginas dinâmicas.

Exemplos de utilização

Aqui estão alguns exemplos de uso de referências para controle de contexto:

Exemplo Contexto utilizado pelo Copilot para formar a pergunta
Qual é o objetivo do #MyFile.cs: 66-72? Seção exata do arquivo
Onde estão os testes em #BasketService.cs? BasketService.cs
/explicar a função #AddItemToBasket no #BasketService.cs Método AddItemToBasket em BasketService.cs
Existe um método de exclusão de cesta neste @workspace Solução atual aberta no IDE
Eu tenho um método de teste chamado #TestCalculator. Como posso garantir que está a ser executado corretamente? Método TestCalculator
Pode explicar as diferenças entre as classes #BasketService e #OrderService? Classe BasketService e Classe OrderService
Onde está o #AddItemToBasket na minha @workspace? Solução atual aberta no IDE
Atualizar minha interface do usuário no App.tsx para se assemelhar a esta imagem Imagem carregada

Analise as fontes usadas pelo Copilot Chat

O Copilot Chat exibe o contexto usado após cada resultado, para que você possa dizer o que foi levado em conta ao responder à sua pergunta. Quando você faz uma pergunta ao Copilot Chat e recebe uma resposta na janela de chat, uma lista suspensa Referências aparece abaixo da resposta. As entradas no menu suspenso Referências mostram o contexto referenciado pelo Copilot Chat para gerar esta resposta. Esta informação pode ajudá-lo a modificar a sua pergunta para obter respostas melhores e mais relevantes.

Captura de tela do menu suspenso de Referências Usadas no Copilot Chat.

Organizar: gerenciar o contexto do histórico de bate-papo com threads

À medida que você itera e envia vários prompts de bate-papo em uma sessão de bate-papo, o Copilot usa o histórico de prompts e respostas de bate-papo como contexto para seu prompt de bate-papo atual. Isto significa que pode fazer perguntas de acompanhamento ou esclarecer a sua pergunta anterior sem ter de repetir o contexto. Por exemplo, você pode perguntar "Como isso difere de...", "Agora adicione um caso de teste", "explique com mais detalhes" e muito mais.

Para recomeçar com uma nova sessão de chat e descartar o contexto atual, inicie um novo thread na visualização de chat. Isso é útil quando você deseja mover para um tópico diferente e evitar o contexto e o histórico anteriores. Use tópicos para manter as conversas focadas na tarefa em questão e mantenha o contexto claro para que as respostas sejam baseadas no histórico relevante.

Novo tópico de bate-papo

Selecione Criar novo thread ou Ctrl+N na janela de chat para iniciar um novo thread.

Captura de ecrã do ícone Criar novo tópico no Copilot Chat.

Alternar conversa de bate-papo

Você pode selecionar entre vários tópicos em andamento para fornecer o contexto histórico certo para sua pergunta. Você pode usar Ctrl+PgDown para thread anterior ou Ctrl+PgUp para próximo thread na janela de chat. + CtrlTurno+T expande a lista suspensa de threads.

Captura de ecrã da alternância entre tópicos em curso no Copilot Chat.

Mova o bate-papo embutido para a janela de bate-papo

Com Visual Studio 2022 versão 17.11, agora pode preservar o histórico do seu chat online promovendo-o para a janela de chat . Selecione Continuar na janela de chat... para manter um registro e contexto da conversa e continuar na janela de chat.

Captura de tela da elevação de um thread contínuo no chat em linha para a janela de conversação.

Melhores práticas

O Copilot Chat usa o histórico de bate-papo para obter contexto sobre sua solicitação. Para dar ao Copilot apenas o histórico relevante:

  • Utilize tópicos para iniciar uma nova conversa para uma nova tarefa.
  • Exclua solicitações que não são mais relevantes ou que não deram o resultado desejado.

Mantenha a conversa no chat aberta e continue a fazer iterações e a pedir ao Copilot para melhorar a solução sugerida. O copiloto tem o contexto do código gerado e seu histórico de conversas atual. À medida que você continua fazendo perguntas adicionais, o Copilot refina ainda mais a resposta de acordo com suas necessidades. Consulte Engenharia de comandos para o GitHub Copilot para estratégias eficazes de solicitação que melhorem os resultados do Copilot.

Próximos passos