Skip to main content

Evaluación de modelos de IA

Prueba y compara las salidas del modelo de IA mediante evaluadores y métricas de puntuación en GitHub Models.

Información general

GitHub Models proporciona un flujo de trabajo de evaluación sencillo que ayuda a los desarrolladores a comparar modelos de lenguaje grandes (LLM), refinar los mensaje y tomar decisiones controladas por datos dentro de la plataforma de GitHub. Puedes usar GitHub Models para experimentar con nuevas características o validar los cambios del modelo mediante el análisis del rendimiento, la precisión y el costo con herramientas de evaluación estructuradas.

Sugerencia

Puedes ejecutar evaluaciones directamente desde la línea de comandos mediante el comando gh models eval. Usa los mismos evaluadores que la interfaz de usuario: coincidencia de cadena, similitud, evaluadores de LLM como juez personalizados, etc., por lo que puedes probar el archivo .prompt.yml localmente o en CI.

Casos de uso de GitHub Models

El comportamiento del modelo puede variar ampliamente en función del mensaje, la entrada o la configuración. GitHub Models te ayuda a lo siguiente:

  • Probar y comparar varios LLM con casos de uso realistas.
  • Optimizar la expresión del mensaje, la temperatura y otros parámetros.
  • Evaluar las salidas del modelo mediante métricas estructuradas repetibles.
  • Integrar el desarrollo de inteligencia artificial en el flujo de trabajo de desarrollo.

Escenario de ejemplo

Considera un escenario en el que vas a crear una característica para resumir los comentarios de los clientes enviados mediante incidencias de soporte técnico. Estos resúmenes se usarán para generar informes y vales internos, por lo que la salida debe ser clara, relevante y concisa.

Queremos:

  • Experimenta con diferentes modelos y configuraciones de mensajes.
  • Evalúa la configuración de mejor rendimiento en función de la calidad, la coherencia y la eficacia.
  • Guarda la configuración en el repositorio para reutilizarla y colaborar.

Pruebas de mensajes en el área de juegos

Para familiarizarte con cómo crear y administrar mensajes en GitHub Models, consulta Prueba de mensajes en el área de juegos.

El área de juegos te permite comparar modelos en paralelo, ajustar sus parámetros y probar variaciones de mensajes.

En este paso, configurarás un modelo a fin de generar resúmenes para los comentarios de atención al cliente. Definirás un mensaje del sistema, lo probarás con una entrada de ejemplo y lo refinarás para asegurarte de que la salida es concisa y relevante.

Definición del mensaje del sistema

Define el comportamiento del modelo para el objetivo actual. En este caso, el objetivo es resumir los comentarios de los clientes. En Parameters, escribe el mensaje del sistema siguiente:

You are a helpful assistant that summarizes support ticket responses into concise summaries.

Deja las opciones restantes en sus valores predeterminados.

Captura de pantalla del mensaje del sistema. El mensaje del sistema está resaltado.

Escribir un mensaje de usuario

Ahora que el modelo está configurado, escribe los siguientes comentarios del cliente en el cuadro de diálogo Prompt:

The app crashes every time I try to upload a PDF from my phone. It works on desktop but not on mobile.

El modelo puede generar una respuesta similar a la siguiente:

The user experiences consistent app crashes when attempting to upload a PDF from their phone. Uploading PDFs works normally on desktop. They request an investigation into the issue.

Definición de la variable de entrada

En este momento, la configuración genera un resumen claro y conciso. En la parte inferior del valor Parameters, haz clic en Create prompt.yml file para abrir la vista Prompt. El mensaje del sistema se rellenará automáticamente.

En el campo User prompt, escribe el siguiente mensaje:

Summarize the following: {{input}}

La variable {{input}} actúa como marcador de posición que permite probar entradas diferentes (comentarios del cliente) sin modificar el mensaje cada vez. Cada entrada de prueba que agregas reemplazará {{input}} cuando se ejecute la comparación.

Adición de entradas de prueba

En la parte superior de la vista Prompts, selecciona Compare para alternar la vista Comparisons. Esta vista te permite ejecutar comparaciones estructuradas en varios mensajes o modelos, y aplicar evaluadores para medir el rendimiento.

Captura de pantalla del botón de alternancia Compare. El botón de alternancia Compare está resaltado.

En la vista Comparisons, cada fila de la tabla representa un único caso de prueba, con una entrada específica y una salida esperada. Cada columna presenta una configuración de mensaje diferente para comparar el rendimiento de varios modelos o estilos de mensaje mediante evaluadores.

Haz clic en Add rows para escribir los datos de prueba. La entrada simula un mensaje de soporte técnico real y la salida esperada representa el resumen ideal que debe devolver el modelo. En la tabla siguiente se proporcionan entradas de prueba de ejemplo y sus salidas esperadas correspondientes para la evaluación.

RowEntradaSalida prevista
1La aplicación se bloquea cada vez que intento cargar un PDF desde mi teléfono. Funciona en el escritorio, pero no en dispositivos móviles.El usuario informa de que la aplicación móvil se bloquea cada vez que intenta cargar un PDF, mientras que la versión de escritorio funciona sin problemas.
2Me he puesto en contacto con el soporte técnico hace dos días y no he recibido ninguna respuesta. Necesito ayuda para recuperar mi cuenta lo antes posible.El usuario espera la respuesta del soporte técnico y necesita urgentemente asistencia para la recuperación de la cuenta.
3Agreguen el modo oscuro. Es muy difícil de usar por la noche. Me duelen los ojos después de un uso prolongado.El usuario solicita el modo oscuro debido a la tensión ocular que sufre durante el uso por la noche.

Ajuste de los parámetros del modelo

A la derecha de la tabla, haz clic en para agregar una nueva configuración de mensaje.

Dentro de la nueva configuración de mensaje, puedes actualizar el modelo y ajustar su comportamiento mediante la configuración de parámetros disponibles. Esta configuración controla cómo el modelo genera texto, incluida su longitud, aleatoriedad y repetición.

Configuración del modelo

En la lista desplegable Model, elige PHI-4 para crear una configuración distinta para la comparación.

Puedes ajustar los parámetros siguientes para influir en la salida del modelo’:

  • Max Tokens: establece el número máximo de tokens que puede devolver el modelo. Los valores más altos permiten salidas más largas.
  • Temperature: controla la aleatoriedad de la respuesta. Los valores más bajos (0,2–0,4) producen salidas más concretas y deterministas. Los valores más altos (0,8–1,0) presentan más variación y creatividad.
  • Top P: controla la diversidad de resultados seleccionando en un grupo de las palabras siguientes más probables. Los valores más bajos reducen la variabilidad, de forma similar a la reducción de la temperatura.
  • Presence Penalty: desaconseja al modelo introducir nuevos temas. Los valores más altos aplican una penalización mayor. Normalmente, un valor de 0 es adecuado para el resumen.
  • Frequency Penalty: reduce la probabilidad de repetir palabras. Los valores más altos aplican una penalización mayor. Un valor entre 0 y 0,5 ayuda a mantener resúmenes claros y libres de redundancia.
  • Stop: especifica una o varias cadenas que, cuando se generan, cortarán la respuesta del modelo. Lo puedes usar para evitar salidas demasiado largas o aplicar reglas de formato.

En la tabla siguiente se proporciona una configuración de parámetros para generar resúmenes concisos durante la comparación de modelos.

ParámetroValorMotivo
Max Tokens128Mantiene las respuestas cortas y centradas en el tema
Temperatura0,3Garantiza salidas deterministas y centradas
P superior1,0Permite vocabulario completo, pero mantiene la selección guiada
Presence Penalty0No penalty: los resúmenes no necesitan variación de temas
Frequency Penalty0,3Reduce las expresiones repetidas en resúmenes compactos
Detener(opcional).Lo puedes usar si quieres finalizar la salida después de una palabra clave o un símbolo

Después de aplicar los parámetros, puedes agregar columnas adicionales para comparar más modelos o configuraciones de mensajes en paralelo.

Evaluación de salidas

Una vez que se configura el mensaje, ejecuta una evaluación estructurada para comparar las salidas del modelo mediante datos reales y métricas repetibles.

La evaluación del modelo te ayuda a comprender cómo funcionan los diferentes modelos y las configuraciones de mensajes en entradas reales. En la vista Prompt, puedes aplicar evaluadores a varios modelos en paralelo y revisar métricas como las de similitud, relevancia y base.

Están disponibles los siguientes evaluadores:

  • Similarity: mide la coincidencia de la salida de un modelo con una respuesta esperada o de referencia. Esto resulta útil cuando quieres confirmar que el modelo devuelve respuestas coherentes y precisas alineadas con un resultado conocido. La puntuación oscila entre 0 y 1, y los valores más altos indican una mayor similitud.
  • Relevance: hace referencia a la forma en que una respuesta aborda una pregunta de forma eficaz. Evalúa la precisión, integridad y relevancia directa de la respuesta basándose únicamente en la información dada. La puntuación oscila entre 0 y 1, y los valores más altos indican una alineación más fuerte con la intención de la entrada.
  • Groundedness: mide cómo se ancla una respuesta en el contexto proporcionado, evaluando su relevancia, precisión e integridad exclusivamente en función de ese contexto. Evalúa la medida en que la respuesta aborda totalmente la pregunta sin introducir información no relacionada o incorrecta. La puntuación oscila entre 0 y 1, y los valores más altos indican una mayor exactitud.
  • Custom prompt: te permite definir criterios de evaluación propios para que un LLM evalúe la salida de otro. Esto te permite puntuar las salidas del modelo en función de tus propias directrices. Puedes elegir entre las evaluaciones superadas o no superadas, o con puntuación, lo que lo convierte en ideal para escenarios en los que las métricas estándar no capturan las expectativas de las pruebas.

Cuando quieras realizar la evaluación, haz clic en Run para generar y comparar las salidas en todas las configuraciones de mensajes. Una vez que se complete la ejecución, GitHub Models muestra la salida de cada configuración de mensaje, junto con las puntuaciones del evaluador.

Captura de pantalla del conjunto de datos después de ejecutar el evaluador.

Caso de prueba: bloqueo de carga de PDF

Entrada: The app crashes every time I try to upload a PDF from my phone. It works on desktop but not on mobile.

En las tablas siguientes se muestran la salida de cada modelo y las puntuaciones de su evaluador:

ModeloResultados
GPT-4.1El usuario informa de que la aplicación se bloquea al cargar un PDF desde dispositivos móviles, aunque la carga funciona en el escritorio.
DeepSeek-R1 Entendido, el usuario tiene problemas con la aplicación que se bloquea cuando intenta cargar un PDF desde su teléfono. Funciona en el escritorio, pero no en dispositivos móviles. Vamos a analizar esto más detalladamente. En primer lugar, el problema principal es que la aplicación se bloquea específicamente durante las cargas de PDF en dispositivos móviles. El hecho de que funcione en el escritorio sugiere que es un problema específico para dispositivos móviles. Las posibles causas podrían estar relacionadas con la versión de la aplicación móvil, el sistema operativo del teléfono, los límites de tamaño de archivo en los dispositivos móviles o problemas de compatibilidad con determinados formatos PDF en dispositivos móviles. Necesito asegurarme de que el resumen menciona el bloqueo durante las cargas de PDF en dispositivos móviles, que funciona en el escritorio y que
Phi-4La aplicación se bloquea al intentar cargar un PDF desde el dispositivo móvil, aunque funciona correctamente en la versión de escritorio.
ModeloSimilitudRelevanciaBaseTokens de entradaTokens de salidaLatencia
GPT-4.1100%50 %100%6120918ms
DeepSeek-R150 %50 %75 %521282285ms
Phi-4El 75 %100 %100 %61661117ms

Usa las puntuaciones del evaluador para evaluar y comparar las respuestas más allá de las expresiones superficiales.

Similitud

Evalúa cómo se alinea la salida de cada modelo con el resumen esperado. En la tabla siguiente se muestran las puntuaciones de relevancia de cada modelo.

ModeloPuntuación de similitud
GPT-4.1100%
DeepSeek-R150 %
Phi-4El 75 %

Aunque todos los modelos incluían el contenido clave de la entrada, la puntuación de similitud de DeepSeek-R1 es significativamente menor debido a su comentario interno detallado, que se desvía del formato de resumen conciso esperado. Por el contrario, la respuesta de GPT-4.1 coincide con la expresión y la estructura de la salida de referencia.

Relevancia

Evalúa cómo captura cada modelo la intención principal de la entrada. En la tabla siguiente se muestran las puntuaciones de relevancia de cada modelo.

ModeloPuntuación de relevancia
GPT-4.150 %
DeepSeek-R150 %
Phi-4100%

Los tres modelos han reconocido el problema clave de bloqueo de la aplicación durante las cargas de PDF en dispositivos móviles. Phi-4 ha obtenido una puntuación de relevancia más alta para reflejar la perspectiva del usuario de forma más completa. DeepSeek-R1 ha perdido puntos por introducir causas técnicas especulativas no mencionadas en la entrada original.

Base

Evalúa si la salida de cada modelo sigue coincidiendo con la entrada sin introducir información no admitida. En la tabla siguiente se muestran las puntuaciones de relevancia de cada modelo.

ModeloPuntuación de base
GPT-4.1100%
DeepSeek-R1El 75 %
Phi-4100%

Aunque DeepSeek-R1 agrega comentarios internos, no presenta hechos ficticios. Su frase de resumen final refleja correctamente la entrada original.

Caso de prueba: solicitud del modo oscuro

Entrada: Please add dark mode. It's very hard to use at night. My eyes hurt after prolonged use.

En las tablas siguientes se muestran la salida de cada modelo y las puntuaciones de su evaluador:

ModeloResultados
GPT-4.1El usuario solicita la adición de una característica de modo oscuro debido a molestias y tensión ocular al usar la aplicación por la noche.
DeepSeek-R1 Entendido, el usuario quiere agregar el modo oscuro por la dificultad de usarlo por la noche y porque le duelen los ojos. Necesito hacer un resumen conciso. Empezaré con la solicitud principal: agregar el modo oscuro. Después, mencionaré la razón: tensión ocular debido al uso prolongado por la noche. Lo reduciré a una oración. Tal vez lo pueda estructurar como "Solicitud para implementar el modo oscuro para reducir la tensión ocular durante el uso nocturno". Esto cubre los puntos clave sin detalles adicionales. Comprueba si está debajo del límite de caracteres. Sí, tiene buen aspecto. Resumen: Solicitud para implementar el modo oscuro para reducir la tensión ocular durante el uso nocturno.
Phi-4El cliente solicita la adición de una característica de modo oscuro para reducir la tensión ocular al usar el producto por la noche.
ModeloSimilitudRelevanciaBaseTokens de entradaTokens de salidaLatencia
GPT-4.1100%El 75 %100%57181286ms
DeepSeek-R150 %0%25%491281946ms
Phi-4100%El 75 %100%5820899ms

Similitud

Evalúa cómo se alinea la salida de cada modelo con el resumen esperado. En la tabla siguiente se muestran las puntuaciones de relevancia de cada modelo.

ModeloPuntuación de similitud
GPT-4.1100%
DeepSeek-R150 %
Phi-4100%

Aunque todos los modelos han incluido el contenido clave de la entrada, la puntuación de similitud de DeepSeek-R1 vuelve a ser significativamente menor debido a su comentario interno detallado.

Relevancia

Evalúa cómo captura cada modelo la intención principal de la entrada. En la tabla siguiente se muestran las puntuaciones de relevancia de cada modelo.

ModeloPuntuación de relevancia
GPT-4.1El 75 %
DeepSeek-R10%
Phi-4El 75 %

GPT-4.1 y Phi-4 han capturado la intención principal de la solicitud del usuario: la necesidad del modo oscuro para reducir la tensión ocular y mejorar la facilidad de uso por la noche. DeepSeek-R1 ha obtenido una puntuación de 0 % en relevancia debido a su comentario interno detallado que se aleja de la salida real.

Base

Evalúa si la salida de cada modelo sigue coincidiendo con la entrada sin introducir información no admitida. En la tabla siguiente se muestran las puntuaciones de relevancia de cada modelo.

ModeloPuntuación de base
GPT-4.1100%
DeepSeek-R125 %
Phi-4100%

DeepSeek-R1 ha puntuado más bajo debido a su bloque <think> detallado, que incluía razonamiento especulativo no presente en la entrada original.

Guardado de la configuración

Después de completar las evaluaciones, el paso final es elegir el modelo que mejor se adapte al caso de uso específico. En los ejemplos anteriores, Phi-4 y GPT-4.1 han ofrecido resultados sólidos y coherentes en todos los evaluadores. DeepSeek-R1 ha puntuado más bajo debido a su razonamiento detallado y salidas menos centradas.

Una vez que hayas seleccionado el modelo preferido y la configuración de mensaje, agrega un nombre descriptivo al archivo del mensaje y, después, haz clic en Commit changes. Esto guardará el modelo, el mensaje, la configuración de parámetros y el conjunto de datos asociado como un archivo de configuración reutilizable en el repositorio.

Captura de pantalla del botón Confirmar cambios El botón Commit changes está resaltado.

Confirmar la configuración del mensaje facilita la reutilización, colaboración e iteración entre configuraciones del modelo. Facilita la repetición de las evaluaciones y el seguimiento del rendimiento de la configuración del mensaje en el tiempo.

Información adicional