Nota:
Esta característica se encuentra actualmente en versión preliminar pública y está sujeta a cambios.
Introducción
Como desarrollador/a, al empezar a trabajar en un código base existente (quizás como nuevo miembro del equipo de desarrollo), puede leer el README del repositorio, la documentación de convenciones de codificación y otra información que le ayude a comprender el repositorio y cómo se debe trabajar al actualizar o agregar código. Esto le ayudará a enviar pull requests de buena calidad. Sin embargo, la calidad del trabajo que puede ofrecer mejorará constantemente a medida que trabaje en el código base y obtenga más información sobre él. Del mismo modo, al permitir que Copilot construya su propia comprensión de su repositorio, puede habilitarlo para que sea cada vez más eficaz con el tiempo.
Copilot puede desarrollar una comprensión persistente de un repositorio almacenando "recuerdos".
Los recuerdos son fragmentos de información cuidadosamente delimitados sobre un repositorio, que Copilot deduce mientras trabaja en el repositorio. Los recuerdos son:
- Específico del repositorio.
- Solo se creó en respuesta a la actividad de Copilot iniciada por usuarios que han tenido Memoria de Copilot habilitada.
Las memorias creadas por una parte de Copilot pueden utilizarlas otra parte de Copilot. De este modo, por ejemplo, si Agente de codificación de Copilot descubre cómo gestiona su repositorio las conexiones a la base de datos, Revisión del código de Copilot puede aplicar posteriormente ese conocimiento para detectar patrones incoherentes en una solicitud de incorporación de cambios que esté revisando. Del mismo modo, si Revisión del código de Copilot aprende sobre la configuración que debe permanecer sincronizada en dos archivos independientes, Agente de codificación de Copilot sabrá que si modifica la configuración en uno de esos archivos, debe actualizar el otro archivo en consecuencia.
Ventajas de usar Memoria de Copilot
La IA que no tiene estado y no conserva el conocimiento de un código base entre interacciones separadas entre humanos e IA requiere que explique repetidamente las convenciones de codificación y los detalles importantes sobre el código específico en sus solicitudes, o que cree archivos de instrucciones personalizados detallados, que luego deberá mantener.
Memoria de Copilot:
- Reduce la carga de proporcionar repetidamente los mismos detalles en las solicitudes.
- Reduce la necesidad de mantenimiento normal y manual de archivos de instrucciones personalizados.
Al compilar y mantener una memoria persistente de nivel de repositorio, Copilot desarrolla su propio conocimiento de su código base, se adapta a los requisitos de codificación y aumenta el valor que puede ofrecer con el tiempo.
¿Dónde se usa Memoria de Copilot?
Actualmente es usado por Agente de codificación de Copilot y Revisión del código de Copilot cuando estas funciones están trabajando en solicitudes de incorporación de cambios en el sitio web de GitHub, y por CLI de Copilot. Los memorias las crea y usa Copilot cuando Memoria de Copilot se ha habilitado para el usuario que inicia la operación Copilot.
La memoria de agente se ampliará a otras partes de Copilot, y para ámbitos personales y organizativos, en futuras versiones.
Cómo se almacenan, conservan y usan los recuerdos
Cada memoria que Copilot genera se almacena con citas. Estas son referencias a ubicaciones de código específicas que soportan la memoria. Cuando Copilot encuentra una memoria relacionada con el trabajo que está realizando, comprueba las citas con el código base actual para validar que la información sigue siendo precisa y es relevante para la rama actual. La memoria solo se usa si se valida correctamente.
Para evitar que se conserven recuerdos anticuados, lo que ocasiona que la información desactualizada afecte negativamente la toma de decisiones de Copilot, los recuerdos se eliminan automáticamente después de 28 días.
Si una memoria es validada y utilizada por Copilot, entonces se puede almacenar una nueva memoria con los mismos detalles, lo que aumenta la longevidad de esa memoria.
Las memorias se pueden crear a partir del código de las solicitudes de incorporación de cambios que se cerraron sin mezclarse. Sin embargo, el mecanismo de validación garantiza que tales memorias no afectarán el comportamiento de Copilot si no hay ninguna evidencia probatoria en el código base actual.
Copilot solo crea memorias en un repositorio en respuesta a las acciones realizadas en ese repositorio por personas que tienen permiso de escritura para el repositorio y para quién Memoria de Copilot se ha habilitado. Las memorias tienen un ámbito de repositorio, no de usuario, por lo que todas las memorias almacenadas para un repositorio están disponibles para su uso en Copilot operaciones iniciadas por cualquier usuario que tenga acceso a Memoria de Copilot para ese repositorio. Las memorias almacenadas para un repositorio solo se pueden usar en operaciones de Copilot en ese mismo repositorio. De este modo, lo que Copilot aprende sobre un repositorio permanece dentro de ese repositorio, lo que garantiza la privacidad y la seguridad.
Si es el propietario de un repositorio donde se usa Memoria de Copilot , puede revisar y eliminar manualmente las memorias de ese repositorio. Consulta AUTOTITLE.
Acerca de la habilitación de Memoria de Copilot
La capacidad de usar Memoria de Copilot se concede a los usuarios, en lugar de habilitarse para los repositorios. Una vez que Memoria de Copilot se haya habilitado para un usuario, Copilot podrá usar la memoria de agente en cualquier repositorio en el que esa persona use GitHub Copilot.
Para los usuarios que tienen una suscripción individual a Copilot con un plan de Copilot Pro o Copilot Pro+, Memoria de Copilot está habilitado de forma predeterminada. Estos usuarios pueden deshabilitar Memoria de Copilot en su configuración personal de Copilot en GitHub.
En el caso de las suscripciones a Copilot administradas por la empresa y la organización, Memoria de Copilot está desactivado de forma predeterminada y se puede habilitar en la configuración de la empresa u organización. Cuando se habilita a nivel de empresa u organización, Memoria de Copilot estará disponible para todos los miembros de la organización que reciban una suscripción de Copilot de esa organización.
Para más información, consulta AUTOTITLE.