Usar 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 apresenta algumas práticas recomendadas. Esse recurso permite receber recomendações de código, que são extraídas das bibliotecas internas, APIs privadas e do estilo de programação da sua organização.

Antes de começar

  1. Configure o Gemini Code Assist com uma assinatura corporativa.
  2. Configure a personalização de 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:

Formulário Como acionar Notas e recursos

Chat com linguagem natural

Insira um comando de linguagem natural no chat do Gemini Code Assist no ambiente de desenvolvimento integrado.

Considere o seguinte:

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

Para mais informações, consulte Conversar com o Gemini Code Assist .

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

Considere o seguinte:

  • O preenchimento de código precisa de um certo nível de confiança para propor uma sugestão. Verifique se uma quantidade significativa de código está disponível para que os snippets relevantes sejam recuperados.
  • A conclusão de código verifica se você tem bibliotecas necessárias para usar determinados elementos da função.

Para mais informações, consulte Receber preenchimentos de código.

Casos de uso e exemplos de comando

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

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

Siga estas etapas para gerar código no seu ambiente de desenvolvimento integrado ou no chat do Gemini Code Assist:

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

Tente gerar código com as seguintes instruções no chat do Gemini Code Assist:

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

Depois de gerar um código, tente usar uma solicitação de acompanhamento para melhorá-lo:

  • "Tente usar 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."
Limpar, simplificar e refatorar o código

Teste as seguintes solicitações 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?"
  • "É possível 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 das variáveis na função FUNCTION_NAME?"
Legibilidade

Teste os seguintes comandos no chat do Gemini Code Assist:

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

Teste os seguintes comandos 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

Teste os seguintes comandos no chat do Gemini Code Assist:

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

Teste os seguintes comandos no chat do Gemini Code Assist:

  • "Divida esse 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 melhorar o desempenho desse código?"
  • "Mostre a implementação de FUNCTION_OR_CLASS_NAME para conseguir melhores resultados e adicione o que esse elemento específico é". Por exemplo, "Mostre a implementação da função foo, em que foo é o nome da função".
Migração

Teste os seguintes comandos no chat do Gemini Code Assist:

  • "Dê uma estratégia de como 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."

Teste o seguinte fluxo de trabalho de transformação de geração de código ou baseado em chat usando instruções:

  1. "Pegue o código FILENAME_COMPONENT já escrito em LANGUAGE_1, refatore e migre para LANGUAGE_2", por exemplo, de Go para Python.
  2. Depois de migrar algum código, tente o seguinte:
    • Selecione partes menores e use /fix para chegar ao estado que você quer.
    • Tente as seguintes instruções:
      • "Há algo que pode ser melhorado?"
      • "Diga quais são os possíveis pontos problemáticos."
      • "Como você testaria esse código se a migração estiver correta?"
Como gerar documentação

Teste os seguintes comandos no chat do Gemini Code Assist:

  • "Resuma o código no pacote ou na pasta X e forneça documentação para os cinco métodos mais importantes."
  • "Gerar documentação para FUNCTION_OR_CLASS_NAME."
  • "Reduzir a documentação preservando as informações principais."
Geração de teste de unidade

Teste os seguintes comandos no chat do Gemini Code Assist:

  • "Generate unit tests for FILENAME".
  • "Adicione os casos de teste mais relevantes para a função FUNCTION_NAME."
  • "Remover casos de teste que você acha que não trazem muito valor".

Práticas recomendadas

  • Use nomes de variáveis e funções relevantes ou snippets de código. Isso orienta a personalização do código para os exemplos de código mais pertinentes.
  • Use os repositórios de índice que você quer dimensionar e evite adicionar funcionalidades descontinuadas. A personalização de código ajuda a dimensionar o estilo, padrões, semântica, conhecimento e implementações do código em toda a base de código. Exemplos ruins de repositórios para dimensionamento são funcionalidades descontinuadas, código gerado e implementações legadas.
  • Para casos de uso de recuperação de código, use a funcionalidade de geração de código em vez do preenchimento automático. Use uma linguagem como "Usando a definição de FUNCTION_NAME, gere a mesma função" ou "Gerencie a implementação exata de FUNCTION_NAME".
  • Inclua inclusões ou importações no arquivo do código que você quer extrair para melhorar a consciência contextual do Gemini.
  • Executar apenas uma ação para cada comando. Por exemplo, se você quiser extrair o código e implementá-lo em uma nova função, siga estas etapas em duas solicitações.
  • Para casos de uso em que você quer mais do que apenas o código (como explicação do código, plano de migração ou explicação de erro), use a personalização de código para chat, em que você conversa com o Gemini com sua base de código no contexto.
  • A geração de modelos de IA não é determinista. Se você não estiver satisfeito com a resposta, executar o mesmo comando novamente pode gerar um resultado melhor.
  • A geração de testes de unidade geralmente funciona melhor se você abrir o arquivo localmente e, no chat, solicitar a geração de testes de unidade para esse arquivo ou uma função específica.