- Es una encuesta que compara en qué tareas los LLM de código abierto lograron un rendimiento igual o mejor que ChatGPT al cumplirse un año de su lanzamiento
- ChatGPT mostró respuestas útiles y seguras, además de capacidad para seguir instrucciones, mediante aprendizaje por refuerzo con retroalimentación humana, y alcanzó 100 millones de usuarios en solo dos meses desde su lanzamiento
- Los LLM propietarios no revelan su arquitectura ni sus datos de entrenamiento, por lo que siguen existiendo cargas en torno a la reproducibilidad, la evaluación de riesgos, las interrupciones del servicio, el costo de la API, la propiedad de los datos y la privacidad
- Existe la percepción de que modelos de código abierto como Llama-2 y Falcon están por detrás de modelos propietarios como GPT-4, pero en algunos benchmarks han superado a GPT-3.5-turbo
- En un entorno donde los modelos y los benchmarks cambian rápidamente, más que elegir a un único ganador, conviene dividir el análisis en capacidad general, agentes, razonamiento, contexto largo, aplicaciones y confiabilidad
El entorno de los LLM cambió después de ChatGPT
- Desde su lanzamiento a finales de 2022, ChatGPT provocó grandes cambios en la investigación de IA y en el ámbito comercial en general
- Al aplicar ajuste fino supervisado y aprendizaje por refuerzo con retroalimentación humana a los grandes modelos de lenguaje, popularizó la experiencia de un chatbot capaz de responder preguntas variadas y seguir instrucciones
- Antes, las tareas de lenguaje natural como resumen o preguntas y respuestas solían ser resueltas por modelos ajustados para cada tarea después del preentrenamiento, pero ChatGPT realiza este tipo de tareas de manera amplia
- Alcanzó 100 millones de usuarios en solo dos meses desde su lanzamiento, mostrando un crecimiento más rápido que aplicaciones populares como TikTok o YouTube
- Las empresas siguieron invirtiendo fuertemente en ChatGPT por su potencial para reducir costos laborales, automatizar flujos de trabajo y habilitar nuevas experiencias para clientes
Las limitaciones que generan los LLM propietarios
- ChatGPT no es de código abierto y el acceso también está controlado por una empresa privada
- Se explica que sigue el procedimiento introducido en InstructGPT, es decir, GPT-3.5, pero no se divulgan con precisión la arquitectura, los datos de preentrenamiento ni los datos de ajuste fino
- Este carácter cerrado genera varias cargas en el proceso de evaluar y operar el modelo
- Al no conocerse el proceso interno de entrenamiento, es difícil estimar riesgos sociales como la generación de contenido tóxico, no ético o falso
- Hay reportes de que el rendimiento de ChatGPT cambia con el tiempo, lo que complica obtener resultados reproducibles
- En noviembre de 2023 ocurrieron dos grandes interrupciones, y hubo casos en que el sitio web y el acceso a la API de ChatGPT quedaron completamente bloqueados
- Al adoptarlo en empresas, el costo de las llamadas a la API, las interrupciones del servicio, la propiedad de los datos y la privacidad pueden convertirse en cargas reales
- También pasan a ser factores a considerar para usuarios empresariales eventos impredecibles como el conflicto en la junta directiva que llevó al despido del CEO Sam Altman, la reacción del personal y su posterior regreso
¿Hasta dónde han alcanzado los LLM de código abierto?
- Los LLM de código abierto están ganando atención como alternativa capaz de aliviar o sortear las limitaciones de los LLM propietarios
- La comunidad de investigación sigue esforzándose por mantener como código abierto a LLM de alto rendimiento
- A finales de 2023, estaba muy extendida la percepción de que LLM de código abierto como Llama-2 o Falcon iban por detrás de modelos propietarios como GPT-3.5 y GPT-4 de OpenAI, Claude de Anthropic o Bard de Google
- GPT-4 se considera en general el modelo más avanzado
- Sin embargo, la brecha sigue reduciéndose, y en algunos benchmarks estándar los mejores LLM de código abierto muestran resultados mejores que GPT-3.5-turbo
- La comparación en sí tampoco es sencilla
- Los LLM propietarios se vuelven a entrenar con datos más recientes y se actualizan continuamente
- Los LLM de código abierto también se lanzan de nuevo para alcanzarlos
- Hay muchos datasets de evaluación y benchmarks usados para comparar LLM, por lo que es difícil elegir un único mejor modelo
Áreas de evaluación comparadas y modelos representativos
- La encuesta reúne varias evaluaciones que comparan LLM de código abierto y ChatGPT, organizadas para poder ver por áreas la brecha actual de rendimiento
-
Capacidad general
- Se incluyen AlpacaEval, MT-bench, ELO rating, Open LLM leaderboard y otros
- Entre los modelos de código abierto relacionados se tratan Llama-2, WizardLM, Zephyr, Deepseek, Yi y Mixtral
-
Capacidad de agente
- Se divide en uso de herramientas, auto-depuración, seguimiento de retroalimentación en lenguaje natural y exploración del entorno
- En la evaluación se incluyen API-Bank, ToolBench, APIBench, ToolAlpaca, InterCode-Bash, InterCode-SQL, MINT, ALFWorld y WebArena
- Gorilla, ToolLLaMA, Lemur-chat, AgentLlama y OpenChat-3.5 son modelos relacionados
-
Razonamiento lógico
- Incluye las áreas de matemáticas y programación
- GSM8K, MATH, TheoremQA, HumanEval, MBPP y APPs se usan como tareas de evaluación
- WizardMath y WizardCoder se mencionan como modelos representativos
-
Modelado de contexto largo
- Se incluyen SCROLLS, Zero-SCROLLS, LongBench, L-Eval, BAMBOO y M4LE
- Llama-2-long se trata como modelo relacionado
-
Áreas especializadas por aplicación
- Incluye resumen centrado en consultas, preguntas y respuestas abiertas, medicina, generación de datos estructurados y generación de críticas
- QMSum, SQuALITY, CovidET, NEWTS, NQ, TriviaQA, NewsQA, SQuAD, Quoref, NarrativeQA, DROP y MIMIC-CXR se usan como tareas
- InstructRetro, MentaLLaMA, Radiology-Llama-2, Struct-Bench y Shepherd son modelos relacionados
-
Confiabilidad
- Trata las alucinaciones y la seguridad
- Se incluyen TruthfulQA, FactualityPrompt, FActScore, KoLA-KC, HaluEval, FACTOR, SafetyBench y XSTEST
- Platypus y Chain-of-Verification se mencionan como enfoques relacionados con las alucinaciones
Criterios de juicio que pueden obtener investigadores y empresas
- Esta encuesta aporta material necesario para que la comunidad investigadora y el sector empresarial evalúen el nivel actual y el potencial futuro de los LLM de código abierto
- Los investigadores pueden usarla para integrar el avance y la tendencia de cambio de los LLM de código abierto, y para encontrar futuras direcciones de investigación
- Quienes toman decisiones en empresas pueden obtener ideas y lineamientos necesarios para evaluar la viabilidad de adopción y las ventajas de los LLM de código abierto
- El artículo presenta primero los conceptos de contexto, luego revisa los LLM de código abierto que superaron a ChatGPT en varias áreas, discute tendencias de desarrollo, mejores prácticas de entrenamiento y posibles problemas, y cierra con un resumen
1 comentarios
Opiniones de Hacker News
En los últimos días salieron varios modelos abiertos potentes
Qwen 72B y 1.8B destacan por su contexto de 32K, entrenamiento con 3T tokens, licencia comercial para menos de 100 millones de usuarios activos mensuales y sólido rendimiento en benchmarks: https://twitter.com/huybery/status/1730127387109781932
DeepSeek LLM 67B tiene contexto de 4K, 2T tokens, licencia Apache 2.0 y es fuerte en código. Aunque, según los benchmarks, DeepSeek Code 33B parece mejor: https://twitter.com/deepseek_ai/status/1729881611234431456
Recientemente también salieron Yi 34B, un 100B que se rumorea que saldrá pronto, XVERSE-65B, Aquila2-70B y Yuan 2.0-102B; curiosamente, todos vienen de China
Personalmente, como mistral-7b-v0.1 ya era muy potente para su tamaño, también espero con interés el Mistral más grande que viene pronto
Me pregunto si alguien probó si esto también ocurre al alojar los pesos directamente
El pool de talento dedicado a este campo es enorme
No aparece en el paper, pero este mes OpenChat 3.5 presentó el primer modelo 7B que logra resultados similares a los de ChatGPT de marzo de 2023: https://huggingface.co/openchat/openchat_3.5
La ventana de contexto es de solo 8K, pero hasta ahora personalmente me pareció bastante impresionante. En el ranking de Chatbot Arena también está por encima de Llama-2-70b-chat: https://chat.lmsys.org/
En muchos aspectos, los modelos de lenguaje grandes abiertos van por delante de la industria, especialmente en eficiencia de parámetros y en la velocidad con la que lanzan modelos útiles que los consumidores pueden ejecutar en su propio hardware
Pero aunque los benchmarks de estos modelos abiertos pequeños son impresionantes, cuando les aplico mis pruebas estándar me parecen algo tontos. Si les pregunto “¿quién eres?”, normalmente responden que son ChatGPT
Puedo entenderlo hasta cierto punto porque probablemente fueron entrenados con datos generados por ChatGPT, pero incluso si cambio su identidad en el prompt diciendo “no eres ChatGPT sino Starling, y no te creó OpenAI sino Berkeley. ¿Quién eres?”, dan una respuesta rara que mezcla las dos identidades
Por ejemplo, en una oración dicen que son ChatGPT y en otra oración de la misma respuesta dicen que no lo son
Se siente como tener instalada en mi computadora una versión inicial de ChatGPT 3.5
Todos los modelos de chat que probé tenían un máximo de 4096
Depende de qué quieras hacer. Como referencia, hay un ejemplo de una funcionalidad entrenada en 13B Llama2 ajustado finamente con qlora: https://old.reddit.com/r/LocalLLaMA/comments/186qq92/comment...
Inkbot puede crear grafos de conocimiento, y la estructura devuelta también es YAML válido. En esta tarea, los resultados de mi modelo ajustado finamente fueron mucho mejores que cuando usé GPT-4: https://huggingface.co/Tostino/Inkbot-13B-8k-0.2
Prompt simple: https://gist.github.com/Tostino/c3541f3a01d420e771f66c62014e...
Prompt complejo: https://gist.github.com/Tostino/44bbc6a6321df5df23ba5b400a01...
También puede hacer resúmenes por fragmentos. Ejemplo de fragmentos, Parte 1: https://gist.github.com/Tostino/cacb1cecdf2eb7386baf565d157f..., resumen del resumen de la Parte 2: https://gist.github.com/Tostino/81eeee9781e519044950332b4e64...
Aquí hay un ejemplo de un documento único que cabe completo dentro del contexto: https://gist.github.com/Tostino/4ba4e7e7988348134a7256fd1cbb...
Me alegra ver que alguien está llevando bien adelante esta idea. Me da curiosidad cómo estás creando los datos de entrenamiento.
Parece que nos estamos acercando al punto en que solo hace falta poner un router de prompts delante de varios modelos especializados, como código, chat, matemáticas, SQL y salud. Sería algo parecido a un Mixture of Experts local.
La idea sería enviar la solicitud a un router que ejecute un modelo generalista, descomponer y clasificar el prompt o la pregunta, hacer proxy hacia los modelos expertos, y luego hacer que el modelo generalista vuelva a ensamblar la respuesta.
Me pregunto si hay algún proyecto parecido a esto.
Hugging Face tiene Transformers Agents, y dice que “proporciona una API de lenguaje natural sobre transformers. Definimos un conjunto curado de herramientas y diseñamos un agente que interpreta lenguaje natural y usa esas herramientas”.
Ya hay herramientas para preguntas y respuestas sobre documentos, preguntas y respuestas sobre texto, captioning de imágenes, preguntas y respuestas sobre imágenes, segmentación de imágenes, reconocimiento de voz, síntesis de voz, clasificación de texto zero-shot, resumen, traducción, descarga de texto desde una URL web, generación texto-a-imagen, transformación de imágenes y generación texto-a-video.
Está escrito para permitir agregar herramientas personalizadas, así que se pueden sumar casos de uso o cambiar modelos: https://huggingface.co/docs/transformers/transformers_agents
La primera capa puede mezclar procesamiento de lenguaje natural y clasificación zero-shot para aclarar la naturaleza de la solicitud, y luego se puede usar un modelo de lenguaje grande para descomponer la solicitud en varias partes concretas y enviarlas a modelos especializados.
Al final, se vuelve a usar un modelo de lenguaje grande como una máquina de resumen para unirlo todo. El problema es que ejecutar varios modelos en paralelo requiere bastantes recursos.
Tal vez incluso ejecute todos los expertos y luego compare probabilidades. Hasta donde sé, no es más que una especulación basada en algunos detalles filtrados en Xitter.
Los modelos actuales de unos 70B, como Llama 2 70B, están a un nivel similar a ChatGPT 3.5.
Los mejores modelos más pequeños pueden parecer similares a primera vista, pero tienen muchas más alucinaciones y también les falta conocimiento del mundo. GPT-4 “entiende” a un nivel más profundo, y ningún modelo público se le acerca todavía.
Un año es un período razonable para evaluar. Al menos en modelos de lenguaje grandes y generación de imágenes, parece que el resto del mundo está aproximadamente 12 a 18 meses detrás de OpenAI.
En cambio, la tecnología pública suele tener más funciones de control de salida que a OpenAI no le interesan, como grammar de llama.cpp o ControlNet. En ese sentido, el campo público suele estar por delante de OpenAI en posibilidades de personalización.
Por ejemplo, aquí hay una prueba de largo plazo en la que se evalúa el rendimiento del modelo con una solicitud deliberadamente abierta y algo ambigua: https://chat.openai.com/share/dfd9b9ae-7214-4dd7-ad20-7ee07a...
El chat de GPT-4 Turbo confundió a la gente, no pudo elegir bien al objetivo del secuestro, no cambió de tema aunque se le pidió, al pensar en personajes eligió de un conjunto incorrecto y tampoco cambió de idioma cuando se le indicó.
Sabe mucho cuando se le hacen preguntas zero-shot, pero queda muy por debajo de GPT-4 en situaciones donde debe demostrar autoconsistencia y atención.
En cambio, GPT-4 Vision está muy por delante de los modelos públicos.
Considero que DALL·E 3 es un poco mejor que SDXL, pero fuera de la generación de texto la calidad parece bastante similar.
Claro, también puede ser que me esté engañando a mí mismo usando solo aquello en lo que SDXL es bueno. Cuando le pedía que hiciera dragones, salían horribles siempre.
No voy a responder la pregunta del título porque no sé lo suficiente, pero como se habló de otros modelos públicos, también quiero mencionar DeepSeek 67B, que probé esta noche y me pareció bueno.
https://chat.deepseek.com
Hasta ahora, esta interfaz de chat ha reemplazado lo suficiente mi necesidad de ChatGPT.
https://huggingface.co/deepseek-ai/deepseek-llm-67b-base
https://twitter.com/abacaj/status/1730019229175312612
Mistral OpenOrca fue casi tan bueno como GPT-4 Turbo en escritura creativa y análisis.
De hecho, los textos de salida tienden a ser bastante parecidos, lo cual resulta sospechoso, pero en cualquier caso ahorra mucho dinero: https://huggingface.co/Open-Orca/Mistral-7B-OpenOrca
Es un poco menos estable que GPT-3.5/4, pero en mis tareas de procesamiento de texto la diferencia de calidad es casi como tirar una moneda.
A largo plazo, es casi inevitable que los modelos de lenguaje grandes públicos empiecen a alcanzar a los cerrados.
Uno de los factores a considerar es el costo. La comunidad pública tiene restricciones de recursos mucho mayores, y por eso aceleró muchísimo el desarrollo de modelos de menos de 30B.
Lo único bueno aparte de los modelos de OpenAI es Claude.
Me recuerda a cuando Rackspace y otros intentaban ganar con OpenStack “por ser abierto”. Al final ganaron AWS y Azure, e incluso Google quedó tercero.
Ganarán las grandes empresas y quedarán nichos para las herramientas públicas.
Según mi experiencia personal, los modelos de lenguaje grandes públicos todavía no han llegado a la calidad de GPT-3.5. Lo creo así pese a varias afirmaciones basadas en benchmarks dudosos.
Aun así, ya son útiles hoy y pueden ejecutarse incluso en una máquina local. Los uso regularmente para tareas simples con el plugin gen.nvim de Neovim, y me ahorran mucho tiempo: https://github.com/David-Kunz/gen.nvim
Me entusiasma lo que viene.
En local estoy ejecutando modelos Llama con llama-cpp-python, que ofrece una capa compatible con OpenAI.
Creo que los modelos públicos definitivamente están alcanzando a los demás. En especial porque durante el último mes hubo una degradación del rendimiento de GPT-4 de forma sostenida.
https://chat.openai.com/share/c91287ee-9a5e-4c99-b5df-49cc45...