Note
GitHub Copilot Extensions se encuentra en versión preliminar pública y está sujeto a cambios.
Este artículo está diseñado para ayudarte a crear una GitHub Copilot Extension completamente nueva. Si lo que quieres es aprender cómo crear y probar de forma rápida una Copilot Extension de demostración creada por GitHub, consulta Inicio rápido para extensiones de GitHub Copilot usando agentes.
Los conjuntos de aptitudes y los agentes son las dos maneras de ampliar las capacidades de Copilot y el contexto mediante la Copilot Extensibility Platform. Permiten integrar servicios externos y API en Copilot Chat, pero cada uno atiende diferentes casos de uso y ofrece distintos niveles de control y complejidad:
- Los conjuntos de aptitudes son ligeros y funcionales y están diseñados para desarrolladores que necesitan que Copilot lleve a cabo tareas específicas (por ejemplo, recuperación de datos u operaciones simples) con una configuración mínima. Controlan el enrutamiento, la creación de indicaciones, la evaluación de funciones y la generación de respuestas automáticamente, lo que hace que sean perfectos para integraciones rápidas y sencillas. Para obtener más información sobre los conjuntos de aptitudes, consulta Acerca de los conjuntos de aptitudes de Copilot.
- Los agentes son para integraciones complejas que necesitan un control total sobre cómo se procesan las solicitudes y se generan respuestas. Permiten implementar lógica personalizada, integrarla con otros modelos LLM o la API de Copilot, administrar el contexto de conversación y controlar todos los aspectos de la interacción del usuario. Aunque los agentes requieren más tareas de ingeniería y mantenimiento, ofrecen máxima flexibilidad para flujos de trabajo sofisticados. Para más información sobre los agentes, consulta "Acerca de los agentes de Copilot".
1. Más información sobre Copilot agents
Copilot agents contienen el código personalizado de su Copilot Extension, y cuentan con la integración de GitHub App para formar Copilot Extension en sí. Para más información, consulta Acerca de los agentes de Copilot.
Para compilar correctamente un Copilot agent, debe comprender cómo se comunica el agente con:
- La plataforma Copilot mediante eventos enviados por el servidor. Consulta Configuración del agente de Copilot para comunicarse con la plataforma de Copilot.
- La API GitHub. Consulta Configuración del agente de Copilot para comunicarse con GitHub.
2. Revise el ejemplo Copilot agents y el SDK de Copilot Extensions.
Para ver los conceptos anteriores en la práctica y obtener información sobre las implementaciones del agente, revise los siguientes agentes de ejemplo y el kit de desarrollo de software (SDK), todos los cuales están disponibles en la organización copilot-extensions
:
- Blackbeard (mejor punto de partida): un agente simple que responde a solicitudes como un pirata mediante la API y los avisos especiales del sistema del modelo de lenguaje grande Copilot.
- GitHub Models: un agente más complejo que le permite preguntar e interactuar con varios LLM enumerados en GitHub Marketplace a través de Copilot Chat. El agente de GitHub Models usa la llamada a funciones.
- Llamada a funciones: un agente de ejemplo escrito en Go que muestra la llamada de función y los cuadros de diálogo de confirmación.
- Extensión de RAG: un agente de ejemplo escrito en Go que muestra una implementación sencilla de la generación aumentada de recuperación.
- SDK de versión preliminar: un SDK que simplifica el desarrollo de Copilot Extensions mediante el control automático de la comprobación de solicitudes, el análisis de carga y el formato de respuesta. Este SDK permite a los generadores de extensiones centrarse más en la creación de funciones básicas y menos en código reutilizable.
3. Compilar un Copilot agent
Con el material de referencia de los pasos anteriores, planee y compile Copilot agent. Puede elegir desplegar cualquiera de las siguientes opciones:
- Para evitar compilar y administrar su propia implementación de LLM, el agente puede llamar a la implementación de LLM de Copilot. Consulta Uso de LLM de Copilot para el agente.
- Para interpretar rápidamente la entrada del usuario y elegir entre una variedad de funciones predefinidas que se van a ejecutar, puede desplegar llamadas a funciones en el agente. Para más información, consulte Cómo utilizar la llamada a funciones con Azure OpenAI Service en la documentación de Azure OpenAI y Llamada a funciones en la documentación de OpenAI.
4. Despliegue Copilot agent
Para que Copilot agent sean accesible para la plataforma Copilot y GitHub, debe implementarlos en un servidor al que pueda acceder la solicitud HTTP. Consulta Configuración del servidor para hospedar la extensión de Copilot.
5. Cree GitHub App e integre la aplicación con Copilot agent
Para crear un Copilot Extension, debe crear y configurar un GitHub App, e integrar la aplicación con Copilot agent. Consulta Creación de una aplicación de GitHub para la extensión de Copilot y Configuración de la aplicación de GitHub para el agente de Copilot.
6. Elija la disponibilidad de Copilot Extension
Elija uno de los dos niveles de visibilidad para Copilot Extension:
- Público: cualquier cuenta de usuario u organización con el vínculo de la página de instalación de la extensión puede instalarla.
- Privado: solo la cuenta de usuario u organización que creó la extensión puede instalarla.
Si Copilot Extension es pública, puedes elegir publicarla en GitHub Marketplace.
Para obtener información sobre cómo cambiar la visibilidad de Copilot Extension y publicarlo en GitHub Marketplace, consulta Administración de la disponibilidad de la extensión de Copilot.
Pasos siguientes
Para obtener información sobre cómo usar Copilot Extension, consulta Uso de extensiones para integrar herramientas externas con Copilot Chat.
1. Acerca de Github Copilot skillsets
Los Github Copilot skillsets contienen el código personalizado de tu Copilot Extension y se integran con una GitHub App para formar la Copilot Extension en sí.
A diferencia de los Copilot agents, los Copilot skillsets controlan la lógica subyacente de la creación de indicaciones, la evaluación de funciones y la generación de respuestas, lo que los convierte en la opción ideal para los desarrolladores que buscan integraciones rápidas y eficientes con un esfuerzo mínimo. Para más información, consulta Acerca de los conjuntos de aptitudes de Copilot.
2. Compilación de un Copilot skillset
Para explorar un ejemplo de una implementación de conjunto de aptitudes, consulta el repositorio skillset-example en la organización copilot-extensions
.
Para crear un conjunto de aptitudes, consulta Creación de conjuntos de aptitudes de Copilot.
3. Despliegue del Copilot skillset
Para que el Copilot skillset sea accesible para la plataforma de Copilot y GitHub, debes desplegarlo en un servidor al que pueda acceder la solicitud HTTP. Consulta Configuración del servidor para hospedar la extensión de Copilot.
4. Creación de una GitHub App e integración con el Copilot skillset
Para crear una Copilot Extension, debes crear y configurar una GitHub App y, a continuación, integrarla con tu Copilot skillset. Consulta Creación de una aplicación de GitHub para la extensión de Copilot y Configuración de la aplicación de GitHub para el agente de Copilot.
5. Elección de la disponibilidad de tu Copilot skillset
Elija uno de los dos niveles de visibilidad para Copilot Extension:
- Público: cualquier cuenta de usuario u organización con el vínculo de la página de instalación de la extensión puede instalarla.
- Privado: solo la cuenta de usuario u organización que creó la extensión puede instalarla.
Si Copilot Extension es pública, puedes elegir publicarla en GitHub Marketplace.
Para obtener información sobre cómo cambiar la visibilidad de Copilot Extension y publicarlo en GitHub Marketplace, consulta Administración de la disponibilidad de la extensión de Copilot.
Pasos siguientes
Para obtener información sobre cómo usar Copilot Extension, consulta Uso de extensiones para integrar herramientas externas con Copilot Chat.