Nota:
GitHub Models para organizaciones y repositorios se encuentra en versión preliminar pública y sujeto a cambios.
GitHub Models permite a los desarrolladores crear aplicaciones con tecnología de inteligencia artificial a escala mientras la empresa mantiene el control, el cumplimiento y la eficiencia de los costes.
¿Por qué GitHub Models?
-
**Administración centralizada de modelos:** controla qué modelos y proveedores de inteligencia artificial están disponibles para los desarrolladores de toda la organización. -
**Desarrollo de inteligencia artificial a toda velocidad:** crea prototipos, evalúa y optimiza indicaciones y modelos. -
**Acceso a la API** usa la API de REST de GitHub Models para automatizar e integrar con flujos de trabajo empresariales. -
**Integración de modelos personalizados:** trae tus propias claves de API de LLM para conectar modelos externos o personalizados, lo que proporciona a tu organización mayor flexibilidad y control sobre qué modelos están disponibles en GitHub Models, a la vez que te mantienes alineado con los métodos de pago, créditos y proveedores existentes. -
**Controles de gobernanza y cumplimiento:** aplica los estándares de la organización y supervisa el uso del modelo. -
**Optimización de costes:** evita costes inesperados de modelos de alto precio. -
**Colaboración:** Comparte sugerencias y resultados usando las prácticas de desarrollo estándar de GitHub. -
**Arquitectura centrada en la seguridad:** ten la seguridad de que los datos permanecen dentro de GitHub y Azure y no se comparten con proveedores de modelos. -
**Interfaz visual:** permite que los miembros del equipo no técnico contribuyan junto con los desarrolladores. -
**Control de versiones:** todos los cambios de prompt y modelo pasan por un flujo de confirmación y pull request estándar de GitHub para que sepas cuándo y por qué se cambió un prompt.
Consulta Acerca de los modelos de GitHub.
Procedimientos recomendados para usar GitHub Models a escala
Los siguientes procedimientos recomendados pueden ayudarte a usar eficazmente GitHub Models en toda la organización.
Comparación y evaluación de modelos de IA para la gobernanza y el cumplimiento
Revisa y compara los modelos de inteligencia artificial disponibles con los requisitos de gobernanza, seguridad de datos y cumplimiento de tu empresa. Puedes hacerlo en cualquier repositorio de GitHub con Modelos habilitados o en el catálogo de GitHub Models desde el GitHub Marketplace en https://github.com/marketplace?type=models. Las consideraciones pueden incluir:
-
**Gobernanza y seguridad:** examina el cumplimiento de los estándares y reglamentos de cada modelo, como RGPD, SOC 2 e ISO 27001, y asegúrate de que los datos no se conservan fuera de la organización a menos que se registren explícitamente con consentimiento. -
**Rendimiento del modelo:** Ejecuta evaluaciones de referencia en los conjuntos de datos internos para evaluar las tasas de razonamiento, retención de contexto y alucinación. -
**Control y visibilidad de API:** requiere controles específicos sobre cuotas de uso, inspección rápida y límites de velocidad en un nivel de equipo u organización. -
**Optimización de costes:** incluye precios de token, velocidad de inferencia y disponibilidad de variantes de modelo para uso por niveles. Por ejemplo, puedes usar modelos más baratos para la generación de casos de prueba en comparación con modelos avanzados para discusiones de arquitectura.
Una vez que hayas decidido qué modelos deseas usar, puedes limitar el acceso de tu organización solo a esos modelos, consulta Administración del uso de modelos del equipo.
Optimización y uso compartido de indicaciones en todos los equipos
Los desarrolladores pueden usar el editor de indicaciones en GitHub Models para crear y refinar las indicaciones. Los equipos pueden experimentar con diferentes variaciones de indicaciones y modelos en un entorno estable que no es de producción, que se integra con los flujos de trabajo de desarrollo de GitHub. La interfaz visual permite que las partes interesadas no técnicas contribuyan junto con los desarrolladores. Consulta Uso del editor de solicitudes.
Las herramientas de evaluación ligeras permiten al equipo comparar los resultados en métricas comunes, como latencia, relevancia y base, o bien puedes crear evaluadores personalizados. Compara el rendimiento de la indicación y del modelo para tus casos de uso específicos de IA generativa, como crear código, pruebas, documentación o sugerencias para la revisión del código.
A medida que el equipo crea indicaciones efectivas, pueden guardarlas como archivos YAML y compartirlas para su revisión mediante los pull requests de GitHub. Las indicaciones confirmadas son accesibles para otros equipos y flujos de trabajo y se pueden mantener coherentes con los estándares de tu empresa. Este enfoque centralizado y colaborativo para la gestión de instrucciones acelera el desarrollo y puede ayudarte a aplicar las mejores prácticas en toda la organización.
Evaluación y optimización de los costes de uso del modelo
A medida que crece la adopción de la aplicación con tecnología de inteligencia artificial y mejoran los modelos de IA, usa GitHub Models para evaluar el costo y el rendimiento de diferentes modelos y actualizaciones de modelos. Selecciona las opciones más rentables para las necesidades de tu organización y administra los gastos a medida que el uso se escala en varios equipos.
Uso de la API de REST o extensiones de GitHub Models para la administración mediante programación
Para administrar recursos de forma más eficaz en todos los equipos, puedes aprovechar la API de REST de GitHub Models para:
-
**Administrar y actualizar la configuración de la organización:** actualiza mediante programación los permisos de acceso del modelo y la configuración de gobernanza en varios equipos a la vez para garantizar la coherencia y el cumplimiento. -
**Enumerar y recuperar indicaciones:** enumera, recupera y audita indicaciones usadas por diferentes equipos, para supervisar el uso, compartir indicaciones correctas y mantener un repositorio central de procedimientos recomendados. -
**Ejecutar solicitudes de inferencia del modelo:** ejecuta solicitudes de inferencia para modelos y parámetros específicos, como la penalización de frecuencia, los tokens máximos, el formato de respuesta y la penalización de presencia.
También puedes usar estas extensiones para ejecutar solicitudes de inferencia y administrar mensajes:
- Extensión de GitHub Models para GitHub CLI
- Extensión de GitHub Models para Chat de GitHub Copilot
- Extensión de GitHub Models para VS Code
Supervisión, iteración e integración
Con las características de gobernanza integradas, puedes supervisar el uso del modelo y garantizar el cumplimiento continuo con las directivas de la empresa. Los registros de auditoría proporcionan visibilidad sobre quién ha accedido o modificado modelos y avisos. La integración del repositorio de GitHub Models permite a todas las partes interesadas colaborar e iterar continuamente en aplicaciones con tecnología de IA.
Ejemplo: Usa GitHub Models con GitHub Actions para resumir los problemas
Los proyectos de desarrollo de software de gran tamaño suelen contener propuestas llenas de detalles técnicos. Puedes implementar resúmenes de incidencias impulsados por inteligencia artificial mediante GitHub Models y GitHub Actions.
**Requisito previo:** habilita GitHub Models en tu organización y establece los modelos y publicadores que deseas que estén disponibles para repositorios individuales.
1. Creación de una indicación en un repositorio
En la pestaña "Modelos" de un repositorio, crea un mensaje mediante el editor de mensajes.
Ejemplo de solicitud del sistema:
Eres un resumidor de incidencias de GitHub. Resalta los puntos técnicos clave o las preguntas importantes.
Indicación de usuario de ejemplo:
Resuma este problema: {{input}}
-
**Ejecuta e itera con el comando**Ejecute la indicación. Proporciona contenido de problemas de ejemplo en el panel "Variables" como valor de
{{input}}.Prueba diferentes modelos (por ejemplo, OpenAI GPT-4o) y compara los resultados. Ajusta los parámetros, como los tokens máximos y la temperatura. Itera hasta que estés satisfecho con los resultados.
-
**Opcionalmente, ejecuta pruebas más extensas**La vista "Comparar" permite ejecutar varias de las indicaciones en diferentes modelos simultáneamente y ver cómo se comparan los resultados en una vista de cuadrícula. También puedes definir y usar evaluadores para asegurarte de que los resultados contienen determinadas palabras clave o cumplen otros estándares.
-
**Confirmar la indicación**Asigna un nombre a la indicación y confirma los cambios para pasar por el flujo de solicitud de incorporación de cambios. Por ejemplo, si asignas un nombre
summarizea la indicación, obtendrás un archivosummarize.prompt.yamlen el nivel raíz del repositorio que tiene un aspecto similar al siguiente:messages: - role: system content: >- You are a summarizer of GitHub issues. Emphasize key technical points or important questions. - role: user content: 'Summarize this issue, please - {{input}}' model: openai/gpt-4o modelParameters: max_tokens: 4096Una vez que se revise y fusione la solicitud de extracción, la indicación estará disponible para su uso en el repositorio.
-
**Invocar su solicitud en un flujo de trabajo**Para obtener información sobre cómo crear flujos de trabajo, consulta Escritura de flujos de trabajo.
Debes establecer el permiso
models: readpara permitir que se llame a una indicación en un flujo de trabajo.Este es un flujo de trabajo de ejemplo que agrega un resumen generado por IA como comentario sobre cualquier propuesta recién creada:
YAML name: Summarize New Issue on: issues: types: [opened] permissions: issues: write contents: read models: read jobs: summarize_issue: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v5 - name: Install gh-models extension run: gh extension install https://github.com/github/gh-models env: GH_TOKEN: ${{ github.token }} - name: Create issue body file run: | cat > issue_body.txt << 'EOT' ${{ github.event.issue.body }} EOT - name: Summarize new issue run: | cat issue_body.txt | gh models run --file summarize.prompt.yml > summary.txt env: GH_TOKEN: ${{ github.token }} - name: Update issue with summary run: | SUMMARY=$(cat summary.txt) gh issue comment ${{ github.event.issue.number }} --body "### Issue Summary ${SUMMARY}" env: GH_TOKEN: ${{ github.token }}name: Summarize New Issue on: issues: types: [opened] permissions: issues: write contents: read models: read jobs: summarize_issue: runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@v5 - name: Install gh-models extension run: gh extension install https://github.com/github/gh-models env: GH_TOKEN: ${{ github.token }} - name: Create issue body file run: | cat > issue_body.txt << 'EOT' ${{ github.event.issue.body }} EOT - name: Summarize new issue run: | cat issue_body.txt | gh models run --file summarize.prompt.yml > summary.txt env: GH_TOKEN: ${{ github.token }} - name: Update issue with summary run: | SUMMARY=$(cat summary.txt) gh issue comment ${{ github.event.issue.number }} --body "### Issue Summary ${SUMMARY}" env: GH_TOKEN: ${{ github.token }} -
**Supervisión e iteración**Puedes supervisar el rendimiento de la acción e iterar en la indicación y la selección del modelo mediante el editor de indicaciones de GitHub Models. También puedes usar la extensión de la CLI para probar localmente o usar la API de REST de GitHub Models para actualizar mediante programación la configuración de la indicación y el modelo.
También puedes considerar la posibilidad de guardar la respuesta del modelo como un archivo en el repositorio para que puedas revisar e iterar el rendimiento del modelo a lo largo del tiempo. Esto te permite mejorar continuamente la calidad de los resúmenes y asegurarte de que satisfacen las necesidades de tu equipo.