Note
- A GitHub Copilot code review está em versão prévia pública e sujeita a alterações. Para entrar na lista de espera, confira “Entrar na lista de espera da Copilot code review”.
- O “Termos de licença de pré-lançamento do GitHub” se aplica ao uso deste produto.
Sobre a GitHub Copilot code review
A GitHub Copilot code review é um recurso alimentado por IA que revisa o código e fornece comentários.
Quando um usuário solicita uma revisão de código do Copilot, o Copilot examina as alterações de código, além do contexto relevante adicional, e fornece comentários sobre o código. Como parte desses comentários, ele também pode fornecer sugestões de alterações de código específicas.
A revisão do Copilot pode ser personalizada com diretrizes de codificação, que são descrições em linguagem natural do estilo de codificação e melhores práticas. Para obter mais informações, confira "Configuring coding guidelines for GitHub Copilot code review".
O único idioma com suporte na GitHub Copilot code review é o inglês.
A GitHub Copilot code review inspeciona o código e fornece comentários usando uma combinação de processamento de linguagem natural e aprendizado de máquina. Esse processo pode ser dividido em várias etapas.
Processamento de entrada
As alterações de código são combinadas com outras informações contextuais relevantes (por exemplo, o título e o corpo da pull request no GitHub) e suas diretrizes de codificação, a fim de formar uma solicitação. Em seguida, essa solicitação é enviada para um grande modelo de linguagem.
Análise de modelo de linguagem
Em seguida, a solicitação pré-processada passa pelo modelo de linguagem do Copilot, que é uma rede neural treinada em um corpo grande de dados de texto. O modelo de linguagem analisa o prompt de entrada.
Geração de resposta
O modelo de linguagem gera uma resposta com base na análise do prompt de entrada. Essa resposta pode assumir a forma de sugestões de linguagem natural e sugestões de código.
Formatação de saída
A resposta gerada pelo Copilot é apresentada ao usuário diretamente no Visual Studio Code ou como uma revisão da solicitação de pull request no GitHub, fornecendo comentários de código vinculados a linhas específicas de arquivos específicos.
Quando o Copilot fornece uma sugestão de código, a sugestão é apresentada como uma alteração sugerida, que pode ser aplicada com alguns cliques.
Caso de uso do GitHub Copilot code review
O objetivo da GitHub Copilot code review é fornecer comentários rapidamente sobre o código de um desenvolvedor. Com isso, os desenvolvedores podem preparar o código para mesclá-lo mais rapidamente e aprimorar a qualidade geral do código.
Como aprimorar o desempenho da GitHub Copilot code review
Use a Copilot code review para complementar as revisões humanas, não para substituí-las
Embora a GitHub Copilot code review possa ser uma ferramenta eficiente para aprimorar a qualidade do código, é importante usá-la como uma ferramenta, em vez de substituir as revisões humanas.
Você sempre deve revisar e verificar os comentários gerados pela Copilot code review e complementar os comentários do Copilot com uma cuidadosa revisão humana, a fim de garantir que o código atenda às suas necessidades.
Enviar comentários
Caso você encontre problemas ou limitações com a Copilot code review, recomendamos que forneça comentários usando os botões de polegar para cima e para baixo nos comentários do Copilot. Isso pode ajudar o GitHub a aprimorar a ferramenta e resolver questões ou limitações.
Configurar diretrizes de codificação
Você pode configurar diretrizes de codificação para ajudar o Copilot a entender seu estilo de codificação e suas melhores práticas. Para obter mais informações, confira "Configuring coding guidelines for GitHub Copilot code review".
Limitações da GitHub Copilot code review
Dependendo de fatores como a base de código e a linguagem de programação, talvez você encontre diferentes níveis de desempenho ao usar a GitHub Copilot code review. As informações a seguir ajudam a entender as limitações do sistema e os principais conceitos sobre desempenho, conforme se aplicam à GitHub Copilot code review.
Escopo limitado
A Copilot code review só dá suporte a um conjunto específico de linguagens de programação e foi criada apenas para identificar um conjunto limitado e fixo de problemas de qualidade de código. Para garantir que todos os problemas relevantes sejam identificados e corrigidos, a Copilot code review deve ser complementada com uma cuidadosa revisão de código feita por humanos.
Problemas de qualidade de código não apontados
É possível que o Copilot não identifique todos os problemas presentes no código, especialmente quando as alterações são grandes ou complexas. Para garantir que todos os problemas relevantes sejam identificados e corrigidos, a Copilot code review deve ser complementada com uma cuidadosa revisão de código feita por humanos.
Falsos positivos
A Copilot code review tem um risco de “alucinação”, ou seja, ela poderá realçar problemas que não existem no código revisado ou que se baseiam em equívocos sobre o código. Os comentários gerados pela Copilot code review devem ser cuidadosamente revisados e considerados antes que você tome medidas e faça alterações.
Código impreciso ou não seguro
Como parte dos comentários, a Copilot code review poderá fornecer sugestões de código específicas. O código gerado poderá parecer válido, mas talvez não esteja semântica ou sintaticamente correto ou não resolva corretamente o problema identificado no comentário. Além disso, o código gerado pelo Copilot poderá conter vulnerabilidades de segurança ou outros problemas. Você sempre deve revisar e testar cuidadosamente o código gerado pelo Copilot.
Possíveis desvios
Os dados de treinamento do Copilot são extraídos de repositórios de código existentes, que podem conter desvios e erros que poderão ser perpetuados pela ferramenta. Além disso, a Copilot code review pode ser tendenciosa em relação a determinadas linguagens de programação ou estilos de codificação, o que pode resultar em comentários abaixo do ideal ou incompletos.
Próximas etapas
Para obter detalhes de como usar a Copilot code review, confira: