Examine os prompts e as palavras-chave do GitHub Copilot
A interface de chat do GitHub Copilot usa o processamento de linguagem natural e o aprendizado de máquina para interpretar seus prompts e fornecer respostas relevantes. Seus prompts e o contexto que você fornece são essenciais para gerar respostas precisas e úteis.
Qualidade do prompt
Ao escrever prompts para o GitHub Copilot, considere as seguintes diretrizes para melhorar a qualidade das respostas:
Os prompts que você enviar devem ser claros, concisos e específicos. Por exemplo, em vez de perguntar "Como posso usar essa função?", você poderia perguntar "Você pode explicar como a
calculateTotalfunção funciona noshoppingCart.jsarquivo?".Quando você precisar escrever um prompt mais longo, o prompt deverá ser escrito usando várias frases curtas. Comece com uma visão geral que descreva sua meta e forneça detalhes específicos.
Considere dividir prompts complexos em partes menores e mais gerenciáveis. Dividir prompts complexos ajuda a IA a entender sua intenção e fornecer respostas mais precisas. Os prompts subsequentes podem se basear nos anteriores, permitindo que você refine sua solicitação e obtenha respostas mais específicas. Trabalhar com o programador par é semelhante a trabalhar com uma pessoa. É melhor enquadrar sua conversa primeiro e, em seguida, descrever os detalhes específicos em vez de enviar tudo em uma única solicitação que possa ser mal interpretada.
Usar palavras-chave de prompt
Além de processar texto em linguagem natural, o GitHub Copilot Chat usa palavras-chave para ajudá-lo a especificar o contexto e a intenção de seus prompts. Palavras-chave são palavras ou frases especiais que têm significados específicos no contexto do GitHub Copilot Chat. Usando palavras-chave, você pode ajudar a IA a entender o que está solicitando e fornecer respostas mais relevantes.
O GitHub Copilot usa as seguintes palavras-chave para ajudá-lo a especificar o contexto e a intenção de seus prompts:
Participantes do chat: os participantes do chat são como especialistas em um campo específico que ajudam o GitHub Copilot a gerar melhores respostas. Os participantes do chat são especificados usando o
@símbolo.Comandos de barra: os comandos de barra ajudam a descrever a intenção (a meta ou o objetivo) do prompt. Uma das tarefas do Chat do Copilot ao responder perguntas é determinar a intenção, entendendo o que você deseja fazer. Os comandos de barra podem ajudar a esclarecer sua intenção.
Variáveis de chat: as variáveis de chat fornecem contexto específico do domínio. Você pode referenciar uma variável de chat no prompt de chat usando o símbolo
#. Usando uma variável de chat, você pode ser mais específico sobre o contexto que você inclui no prompt de chat.
Participantes do chat
O GitHub Copilot Chat fornece respostas melhores quando ele entende o contexto no qual você está interessado e pode aplicar os melhores recursos. Você pode ajudar o GitHub Copilot Chat a gerar respostas melhores adicionando um participante do Chat aos seus prompts. Os participantes do chat são como especialistas em um campo específico que fornece respostas melhores. Os participantes do chat são especificados usando o @ símbolo.
Atualmente, o Chat do Copilot dá suporte aos seguintes participantes de chat internos:
@workspace: o@workspaceparticipante pode ajudar a responder perguntas sobre o código em seu workspace ou sugerir maneiras de refatorar ou melhorar seu código.@vscode: O participante@vscodesabe sobre comandos e recursos no próprio editor do Visual Studio Code e pode ajudá-lo a usá-los.@terminal: O participante@terminalpode ajudar com o shell do terminal integrado e seu conteúdo.@github: o@githubparticipante pode ajudar a obter respostas fundamentadas na pesquisa na Web, na pesquisa de código e nas bases de dados de conhecimento da sua empresa.
Você pode prefixar seu prompt com um participante de chat específico para ajudar o Copilot a gerar uma resposta mais relevante.
Comandos de barra "/"
Os comandos de barra ajudam o Chat do Copilot a entender sua intenção ao fazer uma pergunta. Você está aprendendo sobre uma base de código (/explain), deseja ajuda para corrigir um problema (/fix) ou está criando casos de teste (/tests)? Ao permitir que o Copilot Chat saiba o que você está tentando fazer, ele pode ajustar a resposta à sua tarefa e fornecer comandos, configurações e snippets de código úteis.
Os participantes do chat geralmente são agrupados com comandos de barra. O comando de barra é uma maneira concisa de explicar sua intenção ao participante do chat. O comando barra "/" /explain é frequentemente fornecido com o participante do chat @workspace. A combinação de um participante do chat e um comando barra "/" é uma maneira eficaz de esclarecer sua intenção.
Por exemplo, considere a seguinte amostra de prompt:
Create a new workspace that uses Node.js, the Express framework, the Pug template engine, and TypeScript.
O GitHub Copilot pode interpretar esse prompt como uma solicitação para um novo projeto de código criado usando as tecnologias especificadas, mas é mais fácil para o GitHub Copilot entender o seguinte prompt que usa palavras-chave:
@workspace /new Node.js Express Pug TypeScript
Se você inserir o segundo prompt, o GitHub Copilot proporá a estrutura de diretório a seguir. A lista de arquivos pode ser usada para visualizar os arquivos propostos e o botão Criar Workspace pode ser usado para gerar os arquivos em uma nova pasta.

Exemplos de comandos barra "/" internos:
/help: Obter ajuda sobre como usar o GitHub Copilot./doc: Gere documentação de código./clear: Iniciar uma nova sessão de chat./explain: Explicar como o código selecionado funciona./tests: Gere testes de unidade para o código selecionado./fix: Propor uma correção para o código selecionado./new: Código scaffold para um novo workspace. Somente o prompt de chat é usado como contexto./newNotebook: Crie um novo Jupyter Notebook. Somente o prompt de chat é usado como contexto.
Exemplos de uso de participantes do chat combinados com comandos barra "/":
@workspace /explain: Gere uma explicação do espaço de trabalho completo.@workspace /fix(ou/fix): proponha uma correção para os problemas no código selecionado.@workspace /tests(ou/tests): gere testes de unidade para o código selecionado.@vscode /api(ou/api): Pergunte sobre o desenvolvimento de extensão do Visual Studio Code.@workspace /new(ou/new): código Scaffold para um novo workspace.@workspace /newNotebook(ou/newNotebook): crie um novo Jupyter Notebook.
Variáveis de chat
As variáveis de chat são usadas para especificar o contexto. Você pode referenciar uma variável de chat no prompt de chat usando o símbolo #. Por exemplo, a variável #selection contém a seleção de texto no editor ativo.
Usando uma variável de chat, você pode ser mais específico sobre o contexto que você inclui no prompt de chat. Por exemplo, o prompt "qual algoritmo de classificação é usado em #selection" concentra a solicitação de chat no snippet de código selecionado.
Os participantes do chat, como @workspace ou @vscode, podem contribuir com variáveis de chat que fornecem contexto específico do domínio.
Exemplos de variáveis de chat internas são:
#editor: o código-fonte visível no editor ativo.#selection: a seleção atual no editor ativo. O conteúdo do editor está incluído implicitamente no contexto de exibição de Chat.#<file or folder name>: type #, seguido por um nome de arquivo ou pasta, para adicioná-lo como contexto de chat.#codebase: adicione conteúdo relevante do workspace como contexto ao seu prompt.#terminalSelection: a seleção do terminal ativo.#terminalLastCommand: o último comando de execução do terminal ativo.
Qual é a diferença entre @workspace e #codebase?
Conceitualmente, tanto @workspace quanto #codebase permitem que você faça perguntas sobre toda a sua base de código. No entanto, há algumas diferenças em como você pode usá-las:
Sobre a @workspace palavra-chave:
- A palavra-chave
@workspaceé um participante do chat dedicado a responder perguntas sobre sua base de código. - A
@workspacepalavra-chave assume o controle do prompt do usuário e usa a base de código para fornecer uma resposta. - A
@workspacepalavra-chave não pode invocar outras ferramentas. - A
@workspacepalavra-chave só pode ser usada quando você estiver usando o modo de solicitação. - Exemplo: "
@workspace how can I validate a date?"
Sobre a #codebase palavra-chave:
- A
#codebasepalavra-chave é uma ferramenta que executa uma pesquisa de base de código com base no prompt do usuário e adiciona o código relevante como contexto ao prompt de chat. - Quando você usa a
#codebasepalavra-chave, o modelo de linguagem permanece no controle e pode combinar#codebasecom outras ferramentas para cenários de edição. - A
#codebasepalavra-chave pode ser usada em todos os modos de chat (Pergunte, Edite e Agente). - Exemplos: "
add a tooltip to this button, consistent with other button #codebase", "add unit tests and run them #codebase"
O GitHub recomenda usar #codebase em seus prompts de chat, pois oferece mais flexibilidade.
Resumo
A interface de chat do GitHub Copilot usa o processamento de linguagem natural e o aprendizado de máquina para interpretar seus prompts e fornecer respostas relevantes. Seus prompts e o contexto que você fornece são essenciais para gerar respostas precisas e úteis. Você pode melhorar a qualidade das respostas usando prompts claros, concisos e específicos, dividindo prompts complexos em partes menores e usando palavras-chave como participantes do chat, comandos de barra e variáveis de chat.