Skip to main content

Sobre a memória de agentes para o GitHub Copilot

Descubra como Copilot pode armazenar detalhes que aprendeu sobre uma base de código e usar esse conhecimento para trabalhos futuros em um repositório.

Quem pode usar esse recurso?

  • Empresas e organizações com um plano Copilot Enterprise ou Copilot Business.
  • Usuários individuais com um plano Copilot Pro ou Copilot Pro+.
    Sign up for Copilot

Observação

Atualmente, esse recurso está em versão prévia pública e sujeito a alterações.

Introdução

Como desenvolvedor, quando você começa a trabalhar em uma base de código existente, talvez como um novo membro da equipe de desenvolvimento, pode ler o README do repositório, a documentação das convenções de codificação e outras informações para ajudá-lo a entender o repositório e como deve atuar ao atualizar ou adicionar código. Isso ajudará você a enviar pull requests de boa qualidade. No entanto, a qualidade do trabalho que você pode fornecer melhorará constantemente à medida que você trabalha na base de código e aprenderá mais sobre ela. Da mesma forma, ao permitir que Copilot desenvolva sua própria compreensão do seu repositório, ele pode se tornar cada vez mais eficaz ao longo do tempo.

Copilot pode desenvolver uma compreensão persistente de um repositório armazenando "memórias".

As memórias são informações com escopo específico sobre um repositório, deduzidas pelo Copilot durante sua operação no repositório. As memórias são:

  • Específico do repositório.
  • Criado apenas em resposta à atividade Copilot iniciada por usuários que tiveram Memória copilot habilitados.

As memórias criadas por uma parte do Copilot podem ser usadas por outra parte do Copilot. Portanto, por exemplo, se Agente de codificação do Copilot descobrir como seu repositório lida com conexões de banco de dados, Revisão de código do Copilot poderá aplicar esse conhecimento posteriormente para detectar padrões inconsistentes em uma solicitação de pull que está revisando. Da mesma forma, se Revisão de código do Copilot aprender sobre configurações que devem permanecer sincronizadas em dois arquivos separados, Agente de codificação do Copilot saberá que, se alterar as configurações em um desses arquivos, ele deverá atualizar o outro arquivo adequadamente.

Benefícios de utilizar Memória copilot

A IA sem estado, que não retém uma compreensão de uma base de código entre interações separadas entre humanos e IA, exige que você explique repetidamente as convenções de codificação e detalhes importantes sobre código específico em seus prompts ou crie arquivos de instruções personalizados e detalhados, que você deve então manter.

Memória copilot:

  • Reduz a carga de fornecer repetidamente os mesmos detalhes em seus prompts.
  • Reduz a necessidade de manutenção manual e regular de arquivos de instrução personalizados.

Ao criar e manter uma memória persistente no nível do repositório, Copilot desenvolve seu próprio conhecimento de sua base de código, adapta-se aos seus requisitos de codificação e aumenta o valor que pode fornecer ao longo do tempo.

Onde Memória copilot é usado?

Atualmente, Memória copilot é usado por Agente de codificação do Copilot, Revisão de código do Copilot quando esses recursos são utilizados para solicitações de pull no site GitHub e também por CLI do Copilot. As memórias só são criadas e usadas por Copilot quando Memória copilot é habilitado para o usuário que inicia a operação do Copilot.

A memória agente será estendida para outras partes do Copilote para escopos pessoais e organizacionais, em versões futuras.

Como as memórias são armazenadas, retidas e usadas

Cada memória que Copilot gera é armazenada com citações. Essas são referências a locais de código específicos que dão suporte à memória. Quando Copilot encontra uma memória relacionada ao trabalho que está fazendo, ele verifica as citações na base de código corrente para validar se as informações ainda são precisas e relevantes para o branch atual. A memória só será usada se for validada com êxito.

Para evitar que memórias obsoletas sejam retidas, resultando em informações desatualizadas que afetam negativamente a tomada de decisão do Copilot, as memórias são excluídas automaticamente após 28 dias.

Se uma memória for validada e usada por Copilot, uma nova memória com os mesmos detalhes poderá ser armazenada, o que aumenta a longevidade dessa memória.

As memórias podem ser criadas a partir do código em solicitações de pull que foram fechadas sem serem mescladas. No entanto, o mecanismo de validação garante que essas memórias não afetarão o comportamento do Copilot se não houver evidências fundamentadas na base de código atual.

Copilot só cria memórias em um repositório em resposta a ações realizadas dentro desse repositório por pessoas que têm permissão de gravação para o repositório e para as quais Memória copilot foi habilitado. As memórias têm escopo de repositório, não direcionadas ao usuário, portanto, todas as memórias que são armazenadas em um repositório estão disponíveis para serem usadas em Copilot, operações iniciadas por qualquer usuário que tenha acesso a Memória copilot para esse repositório. As memórias armazenadas para um repositório só podem ser usadas em operações Copilot nesse mesmo repositório. Dessa forma, o que Copilot aprende sobre um repositório permanece dentro desse repositório, garantindo privacidade e segurança.

Se você for o proprietário de um repositório em que Memória copilot estiver sendo usado, você poderá examinar e excluir manualmente as memórias desse repositório. Confira Habilitar e fazer a curadoria da Memória do Copilot.

Sobre como habilitar Memória copilot

Memória copilot está desativado por padrão e pode ser habilitado nas configurações corporativa, organizacional e pessoal.

A capacidade de usar Memória copilot é concedida aos usuários, em vez de ser habilitada para repositórios. Depois que Memória copilot tiver sido habilitado para um usuário, Copilot poderá usar memória agente em qualquer repositório no qual essa pessoa usa GitHub Copilot.

Quando habilitado no nível da empresa ou da organização, Memória copilot estará disponível para todos os membros da organização que recebem uma assinatura Copilot da mesma.

Os usuários que têm uma assinatura Copilot individual, de um plano Copilot Pro ou Copilot Pro+, devem habilitar Memória copilot em suas configurações pessoais Copilot no GitHub.

Para saber mais, confira Habilitar e fazer a curadoria da Memória do Copilot.