Esta publicación está coescrita por Mike Koźmiński de Beekeeper.
Los modelos de lenguajes grandes (LLM) están evolucionando rápidamente, lo que dificulta que las organizaciones seleccionen el mejor modelo para cada caso de uso específico, optimicen las solicitudes de calidad y costo, se adapten a las capacidades cambiantes del modelo y personalicen las respuestas para diferentes usuarios.
Elegir el LLM y el programa "correcto" no es una decisión que se toma una sola vez: cambia a medida que cambian los modelos, los precios y los requisitos. Los avisos del sistema son cada vez más grandes (por ejemplo, aviso del sistema antrópico) y más complejos. Muchas empresas medianas no tienen recursos para evaluarlas y mejorarlas rápidamente. Para abordar este problema, Beekeeper creó un sistema basado en Amazon Bedrock que evalúa continuamente candidatos modelo+solicitud, los clasifica en una tabla de clasificación en vivo y dirige cada solicitud a la mejor opción actual para ese caso de uso.
Apicultor: conectando y empoderando a la fuerza laboral de primera línea
Beekeeper ofrece un sistema integral de lugar de trabajo digital diseñado específicamente para operaciones de fuerza laboral de primera línea. La empresa ofrece una solución de productividad y comunicación basada en dispositivos móviles que conecta a los trabajadores que no trabajan en escritorios entre sí y con la sede, lo que permite a las organizaciones optimizar las operaciones, impulsar el compromiso de los empleados y gestionar las tareas de manera eficiente. Su sistema presenta sólidas capacidades de integración con los sistemas comerciales existentes (recursos humanos, programación, nómina), mientras se dirige a industrias con grandes fuerzas laborales sin escritorio, como hotelería, manufactura, comercio minorista, atención médica y transporte. Básicamente, Beekeeper aborda la desconexión tradicional entre los empleados de primera línea y sus organizaciones proporcionando herramientas digitales accesibles que mejoran la comunicación, la eficiencia operativa y la retención de la fuerza laboral, todo ello entregado a través de un sistema SaaS basado en la nube con aplicaciones móviles, paneles administrativos y funciones de seguridad de nivel empresarial.
La solución del apicultor: un sistema de evaluación dinámico
Beekeeper resolvió este desafío con un sistema automatizado que prueba continuamente diferentes modelos y combinaciones de indicaciones, clasifica las opciones según la calidad, el costo y la velocidad, incorpora comentarios de los usuarios para personalizar las respuestas y dirige automáticamente las solicitudes a la mejor opción actual. La calidad se califica con un pequeño conjunto de pruebas sintéticas y se valida en producción con comentarios de los usuarios (aprobados/aprobados y comentarios). Al incorporar una mutación rápida, Beekeeper creó un sistema orgánico que evoluciona con el tiempo. El resultado es una configuración en constante optimización que equilibra la calidad, la latencia y el costo y se adapta automáticamente cuando cambia el panorama.
Ejemplo del mundo real: resumen de chat
La plataforma Frontline Success Platform de Beekeeper unifica la comunicación para los trabajadores sin escritorio en todas las industrias. Una aplicación práctica de su sistema LLM es el resumen de chat. Cuando un usuario regresa al turno, puede encontrar un chat con muchos mensajes sin leer; en lugar de leer todo, puede solicitar un resumen. El sistema genera una descripción general concisa con elementos de acción adaptados a las necesidades del usuario. Luego, los usuarios pueden proporcionar comentarios para mejorar resúmenes futuros. Esta característica aparentemente simple se basa en tecnología sofisticada detrás de escena. El sistema debe comprender el contexto de la conversación, identificar puntos importantes, reconocer elementos de acción y presentar información de manera concisa, todo mientras se adapta a las preferencias del usuario.
Descripción general de la solución
La solución de Beekeeper consta de dos fases principales: crear una tabla de clasificación básica y personalizarla con los comentarios de los usuarios.
El sistema utiliza varios componentes de AWS, incluido Amazon EventBridge para la programación, Amazon Elastic Kubernetes Service (EKS) para la orquestación, AWS Lambda para las funciones de evaluación, Amazon Relational Database Service (RDS) para el almacenamiento de datos y Amazon Mechanical Turk para la validación manual.
El flujo de trabajo comienza con un creador de rangos sintético que establece el rendimiento de referencia. Un programador activa el coordinador, que recupera datos de prueba y los envía a los evaluadores. Estos evaluadores prueban cada par de modelo/solicitud y devuelven resultados, y una parte se envía para validación manual. El sistema muta indicaciones prometedoras para crear variaciones, las evalúa nuevamente y guarda a los mejores. Cuando llega el feedback de los usuarios, el sistema lo incorpora a través de una segunda fase. El coordinador recupera pares clasificados de modelo/indicaciones y los envía con comentarios del usuario a un mutador, que devuelve indicaciones personalizadas. Un detector de deriva garantiza que estas versiones personalizadas no se desvíen demasiado de los estándares de calidad y se guardan indicaciones validadas para usuarios específicos.
Construyendo la tabla de clasificación de referencia
Para iniciar el viaje de optimización, los ingenieros de Beekeeper seleccionaron varios modelos y les proporcionaron indicaciones escritas por humanos específicas del dominio. El equipo técnico probó estas indicaciones utilizando ejemplos generados por LLM para asegurarse de que no tuvieran errores. Una base sólida es crucial aquí. Esta base les ayuda a perfeccionar su enfoque al incorporar comentarios de usuarios reales.
En las siguientes secciones, profundizamos en sus métricas de éxito, lo que guía el refinamiento de las indicaciones y ayuda a crear una experiencia de usuario óptima.
Criterios de evaluación para la línea de base
La calidad de los resúmenes generados por pares de modelo/solicitud se mide utilizando métricas tanto cuantitativas como cualitativas, incluidas las siguientes:
Relación de compresión: mide la longitud del resumen en relación con el texto original, premiando el cumplimiento de la longitud objetivo y penalizando la extensión excesiva. Presencia de elementos de acción: garantiza que los elementos de acción específicos del usuario estén claramente identificados. Falta de alucinaciones: valida la precisión y coherencia de los hechos. Comparación de vectores: evalúa la similitud semántica con resultados perfectos generados por humanos.
En las siguientes secciones, analizamos cada uno de los criterios de evaluación y cómo se implementan.
Relación de compresión
El índice de compresión evalúa la longitud del texto resumido en comparación con el original y su cumplimiento de una longitud objetivo (premia los índices de compresión cercanos al objetivo y penaliza los textos que se desvían de la longitud objetivo). La puntuación correspondiente, entre 0 y 100, se calcula mediante programación con el siguiente código Python:
Presencia de elementos de acción relacionados con el usuario.
Para comprobar si el resumen contiene todos los elementos de acción relacionados con los usuarios, Beekeeper se basa en la comparación con la verdad sobre el terreno. Para la comparación de la verdad sobre el terreno, el formato de salida esperado requiere una sección denominada "Elementos de acción:" seguida de viñetas, que utiliza expresiones regulares para extraer la lista de elementos de acción como en el siguiente código Python:
Incluyen este paso de extracción adicional para garantizar que los datos estén formateados de manera que el LLM pueda procesarlos fácilmente. La lista extraída se envía a un LLM con la solicitud de verificar si es correcta o no. Se asigna una puntuación de +1 a cada elemento de acción asignado correctamente y se utiliza un -1 en caso de falso positivo. Después de eso, las puntuaciones se normalizan para no penalizar/gratificar los resúmenes con más o menos elementos de acción.
Falta de alucinaciones
Para evaluar las alucinaciones, Beekeeper utiliza dos enfoques: evaluación cruzada de LLM y validación manual.
En la evaluación cruzada entre LLM, un resumen creado por LLM A (por ejemplo, Mistral Large) se pasa al componente evaluador, junto con la indicación y la entrada inicial. El evaluador envía este texto a LLM B (por ejemplo, Claude de Anthropic), preguntando si los hechos del resumen coinciden con el contexto original. Para esta evaluación se utiliza un LLM de una familia diferente. Amazon Bedrock hace que este ejercicio sea particularmente simple a través de la API de Converse: los usuarios pueden seleccionar diferentes LLM cambiando la cadena de identificador del modelo.
Otro punto importante es la presencia de verificación manual en un pequeño conjunto de evaluaciones en Beekeeper, para evitar casos de doble alucinación. Asignan una puntuación de 1 si no se detectó ninguna alucinación y -1 si se detecta alguna. Para todo el proceso, utilizan la misma heurística de evaluación manual del 7% (los detalles se analizan más adelante en esta publicación).
Comparación de vectores
Como método de evaluación adicional, se utiliza la similitud semántica para datos con información de verdad disponible. Los modelos de incrustación se eligen entre la tabla de clasificación MTEB (comparación de modelos de incrustación multitarea y en varios idiomas), considerando una dimensionalidad de vector grande para maximizar la cantidad de información almacenada dentro del vector. Beekeeper utiliza como base Qwen3, un modelo que proporciona una dimensionalidad 4096 y admite cuantificación de 16 bits para un cálculo rápido. También se utilizan otros modelos de integración directamente desde Amazon Bedrock. Después de calcular los vectores de incrustación tanto para la respuesta de verdad fundamental como para la generada por un par de modelo/indicador determinado, se utiliza la similitud del coseno para calcular la similitud, como se muestra en el siguiente código de Python:
Línea base de evaluación
La línea de base de evaluación de cada par de modelo/solicitud se realiza recopilando el resultado generado de un conjunto de consultas fijas y predefinidas que se anotan manualmente con resultados reales que contienen las "respuestas verdaderas" (en este caso, los resúmenes ideales de conjuntos de datos internos y públicos). Este conjunto, como se mencionó anteriormente, se crea a partir de un conjunto de datos públicos, así como de ejemplos hechos a mano que representan mejor el dominio de un cliente. Las puntuaciones se evalúan automáticamente en función de las métricas descritas anteriormente: compresión, falta de alucinaciones, presencia de elementos de acción y comparación de vectores, para crear una versión básica de la tabla de clasificación.
Evaluaciones manuales
Para una validación adicional, Beekeeper revisa manualmente una muestra de evaluaciones determinada científicamente utilizando Amazon Mechanical Turk. Este tamaño de muestra se calcula utilizando la fórmula de Cochran para respaldar la significación estadística.
Amazon Mechanical Turk permite a las empresas aprovechar la inteligencia humana para tareas que las computadoras no pueden realizar de manera efectiva. Este mercado de crowdsourcing conecta a los usuarios con una fuerza laboral global bajo demanda para completar microtareas como etiquetado de datos, moderación de contenido y validación de investigaciones, lo que ayuda a escalar las operaciones sin sacrificar la calidad ni aumentar los gastos generales. Como se mencionó anteriormente, Beekeeper emplea comentarios humanos para verificar que el sistema de calificación automático basado en LLM esté funcionando correctamente. Según sus suposiciones previas, saben qué porcentaje de respuestas deberían clasificarse como que contienen alucinaciones. Si el número detectado por la verificación humana difiere en más de dos puntos porcentuales de sus estimaciones, saben que el proceso automatizado no está funcionando correctamente y necesita revisión. Ahora que Beekeeper ha establecido su base, puede ofrecer los mejores resultados a sus clientes. Al actualizar constantemente sus modelos, pueden aportar nuevo valor de forma automatizada. Siempre que sus ingenieros tengan ideas para una nueva optimización rápida, pueden dejar que el proceso las evalúe con respecto a las anteriores utilizando resultados de referencia. Beekeeper puede ir más allá e incorporar comentarios de los usuarios, lo que permite obtener resultados más personalizables. Sin embargo, no quieren que los comentarios de los usuarios cambien completamente el comportamiento de su modelo mediante la inyección rápida de comentarios. En la siguiente sección, examinamos la parte orgánica del proceso de Beekeeper que incorpora las preferencias de los usuarios en las respuestas sin afectar a otros usuarios.
Evaluación de los comentarios de los usuarios.
Ahora que Beekeeper ha establecido su punto de referencia utilizando un conjunto de datos reales, puede comenzar a incorporar comentarios humanos. Esto funciona según los mismos principios que el proceso de detección de alucinaciones descrito anteriormente. Los comentarios de los usuarios se combinan con las aportaciones y la respuesta del LLM. Pasan preguntas al LLM en el siguiente formato:
Usan esto para verificar si los comentarios proporcionados siguen siendo aplicables después de que se actualizó el par de modelo de solicitud. Esto funciona como base para incorporar los comentarios de los usuarios. Ahora están listos para comenzar a mutar el mensaje. Esto se hace para evitar que la retroalimentación se aplique varias veces. Si el cambio o mutación del modelo ya resolvió el problema, no es necesario volver a aplicarlo.
El proceso de mutación consiste en reevaluar el conjunto de datos generado por el usuario después de una rápida mutación hasta que el resultado incorpore los comentarios del usuario, luego utilizamos la línea de base para comprender las diferencias y descartar los cambios en caso de que socaven el trabajo del modelo.
Los cuatro pares de modelo/indicaciones de mejor rendimiento elegidos en la evaluación inicial (para indicaciones mutadas) se procesan adicionalmente a través de un proceso de mutación rápida, para verificar la mejora residual de los resultados. Esto es esencial en un entorno donde incluso pequeñas modificaciones en un mensaje pueden generar resultados dramáticamente diferentes cuando se usan junto con los comentarios de los usuarios.
El mensaje inicial se enriquece con una mutación del mensaje, los comentarios recibidos del usuario, un estilo de pensamiento (un enfoque cognitivo específico como "Hazlo creativo" o "Pensar en pasos" que guía cómo el LLM aborda la tarea de mutación), el contexto del usuario y se envía al LLM para producir un mensaje mutado. Las indicaciones mutadas se agregan a la lista, se evalúan y las puntuaciones correspondientes se incorporan a la tabla de clasificación. Las indicaciones de mutación también pueden incluir comentarios de los usuarios cuando estén presentes.
Ejemplos de indicaciones de mutaciones generadas incluyen:
Ejemplo de solución
El proceso de evaluación de referencia comienza con ocho pares de indicaciones y modelos asociados (Amazon Nova, Anthropic Claude 4 Sonnet, Meta Llama 3 y Mistral 8x7B). El apicultor suele utilizar cuatro indicaciones básicas y dos modelos para empezar. Estas indicaciones se utilizan en todos los modelos, pero los resultados se consideran en pares de modelos de indicaciones. Los modelos se actualizan automáticamente a medida que hay versiones más nuevas disponibles a través de Amazon Bedrock.
El apicultor comienza evaluando los ocho pares existentes:
Cada evaluación requiere generar 20 resúmenes por par (8 x 20 = 160) Cada resumen se verifica mediante tres comprobaciones estáticas y dos comprobaciones LLM (160 x 2 = 320)
En total, esto genera 480 convocatorias de LLM. Se comparan las puntuaciones, se crea una tabla de clasificación y se seleccionan dos pares de modelo de sugerencia. Estas dos indicaciones se modifican utilizando los comentarios de los usuarios, creando 10 nuevas indicaciones, que se evalúan nuevamente, creando 600 llamadas al LLM (10 x 20 + 10 x 20 x 2 = 600).
Este proceso se puede ejecutar n veces para realizar mutaciones más creativas; El apicultor suele realizar dos ciclos.
En total, este ejercicio realiza pruebas en (8 + 10 + 10) x 2 pares de modelo/indicaciones. En promedio, todo el proceso requiere alrededor de 8.352.000 tokens de entrada y alrededor de 1.620.000 tokens de salida, lo que cuesta alrededor de $ 48. Los pares de modelo/indicador recién seleccionados se utilizan en producción con proporciones 1.º: 50%, 2.º: 30% y 3.º: 20%. Después de implementar los nuevos pares de modelo/indicador, Beekeeper recopila comentarios de los usuarios. Esta retroalimentación se utiliza para alimentar al mutador para crear tres nuevas indicaciones. Estas indicaciones se envían para la detección de deriva, que las compara con la línea de base. En total, crean cuatro convocatorias de LLM, que cuestan alrededor de 4800 tokens de entrada y 500 tokens de salida.
Beneficios
El beneficio clave de la solución de Beekeeper es su capacidad para evolucionar y adaptarse rápidamente a las necesidades de los usuarios. Con este enfoque, pueden hacer estimaciones iniciales de qué pares de modelo/indicaciones serían candidatos óptimos para cada tarea, mientras controlan tanto el costo como la calidad de los resultados. Al combinar los beneficios de los datos sintéticos con los comentarios de los usuarios, la solución es adecuada incluso para equipos de ingeniería más pequeños. En lugar de centrarse en indicaciones genéricas, Beekeeper prioriza adaptar el proceso de mejora de las indicaciones para satisfacer las necesidades únicas de cada inquilino. Al hacerlo, pueden perfeccionar las indicaciones para que sean muy relevantes y fáciles de usar. Este enfoque permite a los usuarios desarrollar su propio estilo, lo que a su vez mejora su experiencia a medida que brindan comentarios y ven su impacto. Uno de los efectos secundarios que observaron es que ciertos grupos de personas prefieren diferentes estilos de comunicación. Al relacionar estos resultados con las interacciones con los clientes, su objetivo es presentar una experiencia más personalizada. Esto garantiza que los comentarios proporcionados por un usuario no afecten a otro. Sus resultados preliminares sugieren calificaciones entre un 13% y un 24% mejores en respuesta cuando se agregan por inquilino. En resumen, la solución propuesta ofrece varios beneficios notables. Reduce el trabajo manual al automatizar el LLM y el proceso de selección rápida, acorta el ciclo de retroalimentación, permite la creación de mejoras específicas para el usuario o inquilino y proporciona la capacidad de integrar y estimar sin problemas el rendimiento de nuevos modelos de la misma manera que los anteriores.
Conclusión
El enfoque de tabla de clasificación automatizada de Beekeeper y el sistema de circuito de retroalimentación humana para un LLM dinámico y una selección rápida de pares aborda los desafíos clave que enfrentan las organizaciones al navegar por el panorama de modelos lingüísticos en rápida evolución. Al evaluar y optimizar continuamente la calidad, el tamaño, la velocidad y el costo, la solución ayuda a los clientes a utilizar las combinaciones de modelo/indicador de mejor rendimiento para sus casos de uso específicos. De cara al futuro, Beekeeper planea perfeccionar y ampliar aún más las capacidades de este sistema, incorporando técnicas más avanzadas para una ingeniería y evaluación rápidas. Además, el equipo está explorando formas de capacitar a los usuarios para que desarrollen sus propios mensajes personalizados, fomentando una experiencia más personalizada y atractiva. Si su organización está explorando formas de optimizar la selección de LLM y la ingeniería rápida, no es necesario empezar desde cero. Utilizando servicios de AWS como Amazon Bedrock para acceso a modelos, AWS Lambda para evaluación ligera, Amazon EKS para orquestación y Amazon Mechanical Turk para validación humana, se puede crear una canalización que evalúe, clasifique y evolucione automáticamente sus indicaciones. En lugar de actualizar manualmente las indicaciones o volver a comparar los modelos, concéntrese en crear un sistema basado en comentarios que mejore continuamente los resultados para sus usuarios. Comience con un pequeño conjunto de modelos e indicaciones, defina sus métricas de evaluación y deje que el sistema escale a medida que surjan nuevos modelos y casos de uso.
Sobre los autores
Mike (Michał) Koźmiński es ingeniero principal en Beekeeper by LumApps con sede en Zúrich, donde sienta las bases que hacen de la IA una parte de primera clase del producto. Con más de 10 años abarcando startups y empresas, se enfoca en traducir nuevas tecnologías en sistemas confiables y con un impacto real en el cliente.
Magdalena Gargas es una Arquitecta de Soluciones apasionada por la tecnología y resolver los desafíos de los clientes. En AWS, trabaja principalmente con empresas de software, ayudándolas a innovar en la nube.
Luca Perrozzi es arquitecto de soluciones en Amazon Web Services (AWS), con sede en Suiza. Se enfoca en temas de innovación en AWS, especialmente en el área de Inteligencia Artificial. Luca tiene un doctorado en física de partículas y 15 años de experiencia práctica como científico investigador e ingeniero de software.
Simone Pomata es arquitecta principal de soluciones en AWS. Ha trabajado con entusiasmo en la industria tecnológica durante más de 10 años. En AWS, ayuda a los clientes a tener éxito en la creación de nuevas tecnologías todos los días.