Use a personalização de código do Gemini Code Assist

Este documento descreve como usar a personalização de código do Gemini Code Assist e fornece algumas práticas recomendadas. Este recurso permite que você receba recomendações de código, baseadas em bibliotecas internas, APIs privadas e no estilo de codificação da sua organização.

Antes de começar

  1. Configure o Gemini Code Assist com uma assinatura Enterprise .
  2. Configure a personalização do código do Gemini Code Assist com uma assinatura Enterprise .

Como usar a personalização de código

A tabela a seguir lista maneiras de usar a personalização de código do Gemini Code Assist:

Forma Como acionar Notas e recursos

Bate-papo em linguagem natural

Insira um prompt de linguagem natural no chat do Gemini Code Assist no IDE.

Considere o seguinte:

  • O histórico de bate-papo não está disponível. Evite consultas em várias etapas.
  • Você pode solicitar mais detalhes sobre as fontes, incluindo links para fontes específicas.
  • Se você destacar ou selecionar um código ao enviar uma mensagem no chat, o Gemini Code Assist usará esse código para melhorar a personalização do código e a qualidade do chat.

Para mais informações, consulte Bate-papo com o Gemini Code Assist .

Gerar código Na barra de seleção rápida do seu IDE, com ou sem código selecionado, pressione Command+Enter (no macOS) ou Control+Enter . Para obter mais informações, consulte Gerar código com prompts .
Transformar código Na barra de seleção rápida do seu IDE, com ou sem código selecionado, digite /fix . Para obter mais informações, consulte Gerar código com prompts .
Preenchimento automático A personalização do código é acionada automaticamente e fornece sugestões com base no que você escreve.

Considere o seguinte:

  • A complementação de código exige um certo nível de confiança para propor uma sugestão. Certifique-se de que uma quantidade substancial de código esteja disponível para que trechos relevantes sejam recuperados.
  • A conclusão de código verifica se você tem bibliotecas necessárias para usar determinados elementos da função.

Para obter mais informações, consulte Obter conclusões de código .

Casos de uso e exemplos rápidos

A tabela a seguir fornece orientação e exemplos sobre o uso da personalização de código em casos de uso específicos:

Caso de uso Coisas que valem a pena tentar
Escrevendo novo código

Tente o seguinte para gerar código no seu IDE ou no chat do Gemini Code Assist:

  • Gere código que use termos já mencionados na sua base de código.
  • Cole seu código, como uma assinatura funcional ou código com comentários TODO , e peça ao Gemini Code Assist para preencher ou substituir os comentários TODO pelo código. Adicione comentários com explicações contextualizadas.

Tente gerar código com os seguintes prompts no chat do Gemini Code Assist:

  • Escreva uma função principal onde uma conexão com DATABASE seja criada. Inclua verificações de integridade.
  • Escreva uma FUNCTION_OR_CLASS na seguinte estrutura: EXPLAIN_STRUCTURE .

Depois de gerar algum código, tente usar um prompt de acompanhamento para melhorá-lo:

  • "Experimente o comando /fix para ajustar o código gerado — por exemplo, erros de sintaxe."
  • "Adicionar importações ausentes."
  • "Tente /fix no código gerado pelo chat."
Limpeza, simplificação e refatoração de código

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Você pode mesclar IMPORTS_VARIABLES_OR_NOTE_EXPORTED_FUNCTIONS neste arquivo?"
  • "Como você simplificaria a função FUNCTION_NAME ?"
  • "Você pode mesclar FUNCTION_NAME_1 e FUNCTION_NAME_2 em uma função?"
  • "Você poderia incorporar algumas variáveis ​​em FUNCTION_NAME ?"
  • "Você poderia simplificar a nomenclatura de variáveis ​​na função FUNCTION_NAME ?"
Legibilidade

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Escreva a função FUNCTION_NAME em menos linhas de código, se possível."
  • "Adicione comentários à função FUNCTION_NAME ."
  • "Remova espaços em branco desnecessários na função FUNCTION_NAME ."
  • "Formate a função FUNCTION_NAME de maneira semelhante ao restante do código."
Revisão de código

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Divida o código em partes e explique cada parte usando nossa base de código."
  • "Existem variáveis ​​ou palavras-chave que poderiam ser mais curtas e autoexplicativas?"
  • "Você pode me dar um código útil do contexto REPOSITORY_NAME_PACKAGE_MODULE para este código?"
  • "O que você acha da função FUNCTION_NAME ?"
Depuração

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Estou recebendo um erro quando tento fazer X/adicionar Y. Por quê?"
  • "Você consegue identificar um erro na função FUNCTION_NAME ?"
  • "Como você corrigiria a função FUNCTION_NAME dada esta mensagem de erro?"
Aprendizagem e integração

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Divida este código em partes e explique cada uma delas usando nossa base de código."
  • "Mostrar como chamar a função FUNCTION_NAME ?"
  • "Mostrar como executar a função principal no ambiente ENVIRONMENT_NAME ?"
  • "Qual é a principal melhoria técnica que podemos fazer para tornar esse código mais performático?"
  • "Mostre-me a implementação de FUNCTION_OR_CLASS_NAME para obter melhores resultados e adicione o que é esse elemento específico" — por exemplo, "Mostre-me a implementação da função foo, onde foo é o nome da função."
Migração

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Dê-me uma estratégia de como posso migrar FILE_NAME de LANGUAGE_1 para LANGUAGE_2 " — por exemplo, de Go para Python.
  • "Dada a função FUNCTION_NAME no repositório REPOSITORY_NAME , encontre uma função equivalente na linguagem LANGUAGE_NAME que eu possa usar."

Experimente o seguinte fluxo de trabalho de transformação baseado em chat ou geração de código usando prompts:

  1. "Pegue o código FILENAME_COMPONENT já escrito em LANGUAGE_1 , refatore e migre-o para LANGUAGE_2 " — por exemplo, de Go para Python.
  2. Depois de migrar algum código, tente o seguinte:
    • Selecione pedaços menores e use /fix para deixá-los no estado desejado.
    • Tente as seguintes instruções:
      • "Há algo que pode ser melhorado?"
      • "Dê-me possíveis pontos problemáticos."
      • "Como você testaria esse código se essa migração estiver correta?"
Gerando documentação

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Resuma o código no pacote ou pasta X e forneça documentação para os cinco principais métodos importantes."
  • "Gerar documentação para FUNCTION_OR_CLASS_NAME ."
  • "Encurte a documentação, preservando as informações principais."
Geração de testes unitários

Experimente os seguintes prompts no chat do Gemini Code Assist:

  • "Gerar testes unitários para FILENAME ."
  • "Adicione os casos de teste mais relevantes para a função FUNCTION_NAME ."
  • "Remova casos de teste que você acha que não trazem muito valor."

Melhores práticas

  • Use nomes de variáveis ​​e funções relevantes ou trechos de código. Isso direciona a personalização do código para os exemplos mais pertinentes.
  • Use repositórios de índice que você deseja escalar e evite adicionar funcionalidades obsoletas. A personalização do código ajuda a escalar de acordo com o estilo, os padrões, a semântica, o conhecimento e as implementações do código em toda a base de código. Exemplos ruins de repositórios para escalar são funcionalidades obsoletas, código gerado e implementações legadas.
  • Para casos de uso de recuperação de código, utilize a funcionalidade de geração de código em vez da funcionalidade de autocompletar código . Use a linguagem "Usando a definição de FUNCTION_NAME , gere exatamente a mesma função" ou "Gere a implementação exata de FUNCTION_NAME ".
  • Tenha inclusões ou importações presentes no arquivo para o código que você deseja recuperar para melhorar a conscientização contextual do Gemini.
  • Execute apenas uma ação para cada prompt. Por exemplo, se você quiser recuperar código e implementá-lo em uma nova função, execute estas etapas em dois prompts.
  • Para casos de uso em que você deseja mais do que apenas código (como explicação de código, plano de migração ou explicação de erro), use a personalização de código para bate-papo, onde você tem uma conversa com o Gemini com sua base de código em contexto.
  • Observe que a geração do modelo de IA é não determinística . Se você não estiver satisfeito com a resposta, executar o mesmo prompt novamente pode gerar um resultado melhor.
  • Observe que a geração de testes unitários geralmente funciona melhor se você abrir o arquivo localmente e, em seguida, no chat, solicitar a geração de testes unitários para esse arquivo ou uma função específica.