Skip to main content

О агентной памяти для GitHub Copilot

Узнайте, как Copilot может хранить детали, которые он узнал о коде, и использовать эти знания для будущей работы в репозитории.

Кто может использовать эту функцию?

  • Предприятия и организации с планом Copilot Enterprise или Copilot Business.
  • Индивидуальные пользователи с планом Copilot Pro или Copilot Pro+.
    Sign up for Copilot

Примечание.

Эта функция в настоящее время находится в public preview и подлежит изменению.

Введение

Как разработчик, когда вы начинаете работать с существующей кодовой базой — возможно, как новый член команды разработчиков — вы можете прочитать README для репозитория, документацию по нормам кода и другую информацию, которая поможет вам понять репозиторий и понять, как следует работать при обновлении или добавлении кода. Это поможет вам отправлять качественные pull requests. Однако качество работы, которую вы сможете выполнять, будет постепенно улучшаться по мере работы над кодовой базой и изучения её больше. Аналогично, позволяя Copilot формировать собственное понимание вашего репозитория, вы можете сделать его более эффективным со временем.

Copilot может развить устойчивое понимание репозитория, сохраняя «воспоминания».

Воспоминания — это узкие фрагменты информации о репозитории, которые Copilot выведывает во время работы с репозиторием. Воспоминания:

  • Специфичный для репозитория.
  • Создано только в ответ на Copilot активность, инициированную пользователями, у которых включен Память второго пилота.

Память, созданные одной частью Copilot, могут использоваться другой частью Copilot. Например, если Агент кодирования Copilot обнаруживает, как ваш репозиторий обрабатывает соединения с базой данных, Обзор кода Copilot позже сможет применить эти знания для выявления несогласованных закономерностей в pull-request, который он проверяет. Аналогично, если Обзор кода Copilot узнаёт настройки, которые должны оставаться синхронизированными в двух отдельных файлах, то Агент кодирования Copilot будет знать, что при изменении настроек в одном из этих файлов необходимо соответственно обновить другой файл.

Преимущества использования Память второго пилота

ИИ, который не имеет состояния и не понимает кодовую базу между отдельными взаимодействиями человека и ИИ, требует от вас либо многократных объяснений правил кода и важных деталей конкретного кода в ваших подсказках, либо создания подробных пользовательских файлов инструкций, которые вы должны поддерживать.

Память второго пилота:

  • Это снижает нагрузку на повторное повторение одних и тех же деталей в ваших подсказках.
  • Снижает необходимость регулярного ручного обслуживания пользовательских файлов инструкций.

Создавая и поддерживая постоянную память на уровне репозитория, Copilot развивает собственные знания о вашей кодовой базе, адаптируется к вашим требованиям к программированию и со временем увеличивает ценность, которую она может обеспечивать.

Где используется Память второго пилота?

В настоящее время Память второго пилота используется Агент кодирования Copilot и Обзор кода Copilot, когда эти функции работают над pull request-запросами на сайте GitHub, а также Второй пилот CLI. Память создаётся и используется Copilot только тогда, когда Память второго пилота был активирован для пользователя, инициирующего операцию Copilot.

Агентная память будет расширена на другие части Copilot, а также для личных и организационных сфер в будущих релизах.

Как сохраняются, сохраняются и используются воспоминания

Каждая память, которую генерирует Copilot, хранится с цитатами. Это ссылки на конкретные кода, поддерживающие память. Когда Copilot находит память, относящуюся к выполняемой работе, он сверяет ссылки на текущую кодовую базу, чтобы убедиться, что информация всё ещё точна и релевантна для текущей ветки. Память используется только при успешной валидации.

Чтобы избежать сохранения устаревших воспоминаний, что приводит к негативному влиянию устаревшей информации на принятие решений Copilot, воспоминания автоматически удаляются через 28 дней.

Если память валидирована и используется Copilot, то может быть сохранена новая память с теми же деталями, что увеличивает срок службы этой памяти.

Память может быть создана из кода в pull requests, которые были закрыты без слияния. Однако механизм валидации гарантирует, что такие воспоминания не повлияют на поведение Copilot, если в текущей кодовой базе нет подтверждающих доказательств.

Copilot создаёт память в репозитории только в ответ на действия, предпринятые в этом репозитории людьми, имеющими разрешение на запись репозитория и для которых Память второго пилота был включён. Память имеет область действия репозитория, а не пользователя, поэтому все память, хранящиеся для репозитория, доступны для использования в операциях Copilot, инициированных любым пользователем, имеющим доступ к Память второго пилота для этого репозитория. Память, сохранённая для репозитория, может использоваться только для операций Copilot в этом же репозитории. Таким образом, то, что Copilot узнаёт о репозитории, остаётся внутри этого репозитория, обеспечивая конфиденциальность и безопасность.

Если вы владелец репозитория, где используется Память второго пилота, вы можете вручную просматривать и удалить воспоминания этого репозитория. См . раздел AUTOTITLE.

О включении Память второго пилота

Возможность использовать Память второго пилота предоставляется пользователям, а не включена для репозиториев. После того как Память второго пилота будет включено для пользователя, Copilot сможет использовать агентную память в любом репозитории, где этот человек использует GitHub Copilot.

Для пользователей, имеющих индивидуальную подписку Copilot на Copilot Pro или Copilot Pro+, Память второго пилота по умолчанию включена. Эти пользователи могут отключать Память второго пилота в своих личных настройках Copilot на GitHub.

Для корпоративных и организационных Copilot подписок Память второго пилота по умолчанию отключён и может быть активирован в настройках предприятия или организации. При включении на корпоративном или организационном уровне Память второго пилота будет доступен всем членам организации, получившим подписку Copilot от этой организации.

Дополнительные сведения см. в разделе Управление и курирование памяти Copilot.