Alternativas Open Source GPT y ChatGPT
Hasta este punto GPT-3 y GPT-4 son los Large language models más populares que vienen por parte de OpenAI, y aunque otras empresas y organizaciones también están desarrollando sus propios modelos como lo seria PALM de Google o Chinchilla de DeepMind, Estas no son las únicas
De hecho hay un gráfico muy interesante que ha surgido solo esta ultima semana que viene por parte del Paper A Survey of Large Language Models donde se muestra el desarrollo de algunos de los modelos más populares que han venido desarrollándose desde hace años por empresas como Meta, Deepmind, Google y por supuesto OpenAI.
https://pbs.twimg.com/media/FswIzxsX0AEjNnI?format=jpg&name=medium
Ahora esto esta mucho más relaciona a empresas y organizaciones, pero el Open Source tambien no se quiere quedar atras y a pesar que no tienen mucha financiacion como si las tienen estas organismos grandes, aun asi estan surgiendo proyectos bastante interesantes, y sobre todo que estan accesibles a la mayoria.
Es decir que mientras que para usar modelos como GPT-3 o GPT-4 tienes que ir a su web y solicitar un key para acceder a su API, los modelos Open Source alternativos permiten ser descargados y ejecutarlos en tu propio computador.
Y aqui esta lo interesante porque para poder hacer esto, estan intentando optimizar mucho los pesos de los modelos para que puedas ejecutarlos en tu propia laptop, porque no todos tienen computadores con graficas muy potentes, que es requerido para ejecutar modelos de lenguajes Grandes.
Aunque eso sí, cabe aclarar que no esperes que estos modelos Open Source sean igual de utiles que GPT, pero a modo ver ideas nuevas, y sobretodo poder experimentar con algo similar a GPT, instalado en tu propia maquina, creo que vale la pena probarlos.
Y tambien relacionado esto, algo que llama la atencion es que todos estos modelos Open Source estan siendo llamados en su mayoria con nombres de animales en donde tenemos 4 actualmente que no llevan mucho tiempo de desarrollo, entre los que podemos encontrar a:
- Llama por parte de Meta AI
- Vicuna, que viene por parte de investigadores de distintas universidades
- Koala, que viene por parte de el equipo de investigacion de ia de berkley
- Dolly de la empresa Databrick
- Baize que viene por parte de Microsoft research Asia
He incluso ante tambien estaba Alpaca creado por Stantford, pero esta ya no esta siendo desarrollado, aunque si ha servidor de inspiracion para otros modelos.
De hecho todo esto de nombrar modelos como animales empezo porque cuando Meta, es decir Facebook, publico su modelo OPen Source lo llamó LLaMA , que viene de Large Language Model Meta AI, luego standforrd se baso en LLaMA para crear su propio modelo llamado Alpaca, y a partir de alli se ha seguido nombrando a los modelos con estos nombres curiosos.
LLaMa
Ahora, LLaMa es el modelo open source más importante de todos, porque como Facebook esta usando una licencia no comercial para este modelo , muchos han estado usandolo para crear sus propios modelos a partir de el, incluso la comunidad ha hecho un port del código a C++ que se puede encontrar en github como llama.cpp, en donde puedes descargar completamente el modelo y crear el tuyo propio a partir de alli. Es por esto tambien que estamos viendo varios nuevos modelos de golpe, porque al ya tener una base, simplemente estan modificandolos, optimizandolos o haciendo que consuman menos recursos, pero intentando que sea igual de util que GPT.
Es por esto que en poco tiempo Standford tambien habia creado su propio modela, llamado Alpaca aunque se dio de bajo al proyecto igual de rapido.
Y despues de esto solo hemos visto aparecer más y mas modelos, por ejemplo tenemos a:
- Dolly, que es otro modelo que ha venido por parte de DataBrick, una empresa que esta conforma por los desarrolladores el framework de Java, Spark, y que seria similar a GPT-3
- Koala, un chatbot que solo ha sido publicado hace dias, por los investigadores deThe Berkeley Artificial Intelligence Research o abreviado BAIR que han afinado el modelo para que tenga diálogos que se acerca a la calidad de ChatGPT, segun ellos
- Vicuna, un chatbot entrenado con 13 mil millones de parametros (13B) encima de LLaMA, y que ha usado conversaciones de ChatGPT como ejemplo
- GPT4ALL, que es una especie de ChatGPT que funciona desde terminal, y que en lugar de usar GPT-3 usa LLaMa y que puedes ejcutar en tu propia laptop, de hecho esto ya lo mostre en un tutorial anterior por si quieres ver como usarlo
- Baize, que es chatbot de código abierto ajustado con LoRA, una herramienta para preentrenar modelos de Microsoft, Aprovecha 100 000 diálogos generados a partir de ChatGPT y que ha sido mejorado chateando consigo mismo.
Como Probarlos
Ok, entonces ya sabes que son estos modelos, ahora como usarlos, bueno la forma tipica seria descrgarlos y ejecutarlos en tu computador, que si tienes experiencia ejecutando proyecos de Python, no tendra muchas complicaciones, pero otra forma mas simple, es entrado en sus demos de Huggingface, o en esta web llamada chat.llmsys.org que te permite seleccionar estos modelos nuevos y ir preguntando
Ademas tambien te dejo en la descicpion una lisa con el repositorio, demos y sus papers de cada uno de estos modelos por si los quieres conocer mas a fondo:
- Baize
- Koala
- Vicuna
- codigo: https://github.com/lm-sys/FastChat
- demo: https://vicuna.lmsys.org/
- Databricks
De hecho relacionado a esto tambien hay una web llamada nat.dev que permite que uses multiples models que han sido creados hasta ahora, y compararlos, aunque eso si debido a que lo han usado mucho ahora cobra 5$ al mes, pero aun asi es un precio razonable sobretodo para aquellos paises en donde aun no tienen acceso a ChatGPT o si no tienes acceso al GPT-4.
Otros LLMs
Ahora estos son los modelos que la mayoria esta probando justo ahora, pero no son los unicos en realidad. De hecho la idea de estos modelos que te he mencionado hasta ahora es que puedan responder cualquier tema en general, de nuevo similar a GPT-3 o GPT4, pero tambien hay otros modelos que estan creando y que estan más enfocados en un area en especifico, por ejemplo, entre estos tenemos a:
- BloombergGPT que es un LLM para finanzas, entrenado con 50 mil millones de parámetros entrenado en datos financieros, que provienen desde la web, noticias y bloomberg
- ChatDoctor un modelo de chat médico basado en LLaMA utilizando que utiliza conocimientos medicos. En donde usa datos recopilados alrededor de 700 enfermedades y usando más 5K conversaciones de médico-paciente de ajustar el LLM
- HuggingGPT, un sistema que aprovecha los LLM como ChatGPT para realizar la planificación de tareas, seleccionar modelos y actuar como controlador para ejecutar subtareas y resumir las respuestas de acuerdo con los resultados de la ejecución
https://pbs.twimg.com/media/FsgpjBNWIAcpnAR?format=jpg&name=large
Y la lista no para, pero si bien hay determinado tipo de profesional que puede usar estos modelos, la idea de un modelo es que pueda hacer de todo y no solo se enfoque en un area.
conclusión
En fin como pueden ver el Open Source no se esta quedandose atras y cada dia estan sacando ya no solo modelos sino también aplicaciones que son alternativas a ChatGPT, y solo vamos unos cuantos meses desde que se popularizaron asi que no se que es lo que podamos tener hasta fin de año. De hecho hasta el momento solo seguimos hablando principalmente de generacion de codigo e imagenes, pero esto puede cambiar mucho con la llegada de los Plugins de ChatGPT, que permite desde ejecutar codigo dentro del chat, hasta conectarlo con servicios para hacer busquedas, compras, y mucho más.
Pero como esto solo esta relacionado a OpenAI, en el Open Source tambien hay un nuevo Frameork que no solo permite usar OPenAI, sino tambien otros Modelos como los que les he mencionado para crear aplicaciones encima de estos, al mismo estilo de los plugins, siendo el más popular estos dias un proyecto llamado LangChain, pero eso se los comentaré en el siguiente video.
Más Recursos
https://nlpnews.substack.com/p/top-ml-papers-of-the-week-671 https://chat.lmsys.org/