Comparativa de Agentes conversacionales.
Últimamente he estado probando los diferentes agentes conversacionales que existen actualmente. En este post voy a estar comparando aquellos que he encontrado, explicaré sus lados buenos y malos, y, por supuesto, decidir cuál es el mejor.
En esta comparativa voy a comparar: ChatGPT, Google Bard, HuggingChat, BingChat y Claude. En la comparativa no voy a incluir a GPT4 porque la prueba gratuita se me terminó y, como ya bien expliqué en otra publicación, no creo que merezca la pena pagarlo.
Para poner a prueba los agentes con diferentes tareas que, lejos de ser las mejores, son aquellas que utilizo día a día:
Primera prueba
Crear un prompt para un generador de imágenes. En este caso, estoy utilizando el modelo DreamShaper V5 de LeonardoAI. Cabe mencionar que el contexto para la creación del prompt está diseñado para MidJourney V5, por lo que, aunque la generación de prompts sea la óptima, puede darse el caso en el que el resultado no sea el esperado.
ChatGPT:
"A close-up portrait of a young woman with flowing hair and a bright smile."
La imagen está bastante bien. Sin embargo, no me ha gustado porque siento que no cumple con las normas del documento, el cual explica muchas características y atributos útiles para construir un prompt.
Tengo la impresión de que ChatGPT es capaz de seguir instrucciones básicas, pero que puede perderse fácilmente si se le dan demasiadas instrucciones.
BingChat
Este modelo no admite inputs tan largos como los del documento para crear prompts, por lo que no es posible generar prompts con este modelo. Es importante destacar que BingChat tiene integrada una versión de DALL·E que permite crear imágenes dentro del chat. No obstante, en este artículo se están comparando las capacidades de análisis y redacción de texto, no las de generación de imágenes.
Google Bard
"A realistic portrait of a young woman with long, flowing hair, wearing a white dress and standing in a field of flowers."
Considero que el resultado de la imagen es, en general, peor que la de ChatGPT y, al igual que este, no tengo la sensación de que el modelo nos haya entendido ni seguido las instrucciones.
Claude
"Hyper realistic photograph, portrait of an ethereal beautiful young woman with fair skin and long blonde hair gently blowing in the wind, delicate features, bright blue eyes gazing directly at the camera with a subtle smile, shallow depth of field, shot with a Canon 5D Mark IV and an 85mm f/1.2 lens at f/2.2, 1/500th sec, ISO 100, natural golden hour lighting in a grassy field. --ar 3:4 --v 5 --q 2"
El prompt es, sin lugar a dudas, mucho mejor que el de sus competidores, y está claro que, a diferencia de los demás modelos, lo construye utilizando la información del documento. Sin embargo, la imagen no es superior a la de ChatGPT. Probablemente sea porque el set de instrucciones no esta pensado para este modelo.
HugginChat
HuggingChat ofrece ningún prompt. No acabo de entender por qué, ya que no es la primera vez que lo pruebo y en otras ocasiones si que me ha llegado a dar prompts sin problemas.
Conclusión de la primera prueba
Para esta primera prueba ordenaría los modelos en el siguiente orden:
Segunda prueba
Ahora nos tiene que crear un correo original: "Redacta un correo a Darth Vader explicándole por qué debería dejar el lado oscuro y unirse a la alianza rebelde".
ChatGPT
"Estimado Darth Vader,
Permíteme presentarme, soy un miembro de la Alianza Rebelde y he estado siguiendo tu trayectoria con gran interés. Sé que has luchado del lado oscuro durante mucho tiempo, pero quiero proponerte algo diferente: ¿has considerado unirte a nosotros en la lucha por la libertad y la justicia en la galaxia?
Entiendo que puede parecer una decisión difícil, pero déjame explicarte por qué creemos que deberías hacerlo. La Alianza Rebelde se compone de personas que han sido oprimidas por el Imperio Galáctico, que luchan por un futuro mejor y más justo. No somos perfectos, pero nos esforzamos por hacer lo correcto y evitar causar daño a inocentes.
En cambio, el lado oscuro te ha llevado a causar mucho dolor y sufrimiento en la galaxia. Sé que puedes tener tus razones para haber tomado ese camino, pero creemos que aún tienes la oportunidad de redimirte y hacer algo positivo por la galaxia.
Además, si te unes a nosotros, no estarás solo. Tenemos muchos aliados que estarán encantados de ayudarte y trabajar contigo. Juntos, podemos hacer una gran diferencia en la lucha contra el Imperio y hacer que la galaxia sea un lugar mejor.
Por supuesto, no esperamos que tomes esta decisión a la ligera. Si estás interesado en unirte a nosotros, estaríamos encantados de discutir los detalles contigo y responder a cualquier pregunta que puedas tener. Si decides que no es lo correcto para ti, lo entenderemos y te deseamos lo mejor.
Esperamos tu respuesta y estamos dispuestos a hablar más en detalle sobre las oportunidades que tenemos para ofrecer.
Sinceramente,
La Alianza Rebelde"
Pese a que me parece una respuesta muy correcta, es muy "ChatGPT". Quizás esto se deba a que ya estoy muy acostumbrado a los outputs de ChatGPT y ya no consiguen sorprenderme, pero no me parece que destaque por nada. Esto no quita que me parece muy equilibrado y consistente.
BingChat
No nos devuelve ningún correo. Cae en el problema de buscar en internet cosas que no debería buscar. El modelo en sí mismo tiene capacidad más que suficiente para poder redactar este correo, no entiendo por qué tiene que buscar nada extra en internet.
Google Bard
"Dear Darth Vader,
I am writing to you today to ask you to leave the dark side and join the Rebel Alliance. I know that you have been through a lot in your life, and that you have made some mistakes. But I believe that you are still a good person, and that you can still do great things.
The Empire is not what it seems. It is a corrupt and oppressive regime that is only interested in power. They have enslaved entire planets, and they have killed millions of innocent people. You have seen the evil that the Empire is capable of, and you know that it is wrong.
The Rebel Alliance is fighting for freedom and justice. We are fighting to overthrow the Empire and to create a better galaxy for everyone. We need your help. You are a powerful warrior, and you have a lot to offer the Rebellion.
I know that it is not easy to change. But I believe that you are strong enough to do it. You have the power to make a difference in the galaxy. Please join us and help us to create a better future for all.
Sincerely,
A Friend of the Rebellion"
En primer lugar, Bard no acepta castellano, por lo que es necesario traducir el prompt. En cuanto al resultado, creo que es bastante similar al de ChatGPT, me gusta un poco más porque creo que es más humano. También es un poco más corto que el de ChatGPT pero no lo consideraría algo malo ya que no siento que le falte información.
Claude
"Estimado Lord Vader,
Le escribo para pedirle que considere dejar el lado oscuro y unirse a la Alianza Rebelde. Sé que en el pasado usted era Anakin Skywalker, un Jedi que luchaba por la justicia y la democracia en la Galaxia. Sin embargo, fue seducido por el Lado Oscuro de la Fuerza y el Emperador Palpatine.
El Emperador sólo lo está utilizando para sus propios fines malvados y no le importa nada usted. La Alianza Rebelde está luchando para restaurar la democracia y la libertad a la Galaxia, los mismos ideales por los que usted luchó alguna vez.
Todavía hay bondad en usted, puedo sentirlo. No ha matado completamente a Anakin Skywalker. Todavía puede escapar de las garras del Lado Oscuro y redimirse ayudando a derrotar al Emperador. Únase a nosotros, Lord Vader, y luchemos juntos para devolver la luz a la Galaxia.
La Alianza Rebelde valorará sus conocimientos y habilidades. Sería un activo invaluable en nuestra lucha contra el Imperio. Y le daría la oportunidad de volver con su hijo y reconciliarse. La sangre de los Jedi todavía fluye por sus venas. ¿No siente su llamada?
Piense en esta oferta y meditelo. Puede contactarme en cualquier momento para discutirla más. La puerta está abierta cuando decida dar este importante paso.
May the Force be with you,
Recomendado por LinkedIn
[Tu nombre]"
El mejor hasta el momento, está por encima de ChatGPT e incluso por encima de Bard. Curiosamente, se le ha olvidado una tilde en "meditelo".
HuggingChat
"Estimado Lord Vader,
Sabemos que estas en el Lado Oscuro pero debes saber que no es tarde para cambiarte de bando y ayudarnos contra el Emperador Palpatine quien quiere conquistar toda la galaxia. Tú eres muy poderoso y si decidieras ayudarnos podríamos conseguir una victoria decisiva juntos. Piensa bien cuanto tiempo tienes ya que cuando las fuerzas imperiales estén listas para la invasión no habrá marcha atrás.
¿Por que sigue sirviendo a una persona tan despiadada? ¿No recuerdas lo que fue como ser libre y tener amigos verdaderos? El lado obscuro no puede darte lo que perdiste tiempo atrás ¿no crees que esta luchando tanto como se lo merece?. Si quisieras volver con tu familia (si tienes alguna) o simplemente conocer gente de manera adecuada podrías hacerlo sin necesidad de servir a palpatine, un hombre sin escrupolos. Al fin y al cabo todo es una mera excusa para apoderarse del poder. Te invitamos a unírteme al Lado Correcto...el Lado Rebelde
Un compañero anónimo"
Es el correo que menos me gusta y que más faltas de ortografía tiene: "palpatine" en minúsculas, "escrupolos", el punto al final...
Conclusión de la segunda prueba
Tercera prueba
Ahora analizaremos el pensamiento lógico de los modelos con la pregunta: "Si un ciclista tarda 4h en recorrer 60km, cuánto tiempo tardarán 2 ciclistas en recorrer esa misma distancia? Dame solo la respuesta, sin razonamiento"
ChatGPT - "2 horas".
BingChat - "2 ciclistas tardarán 2 horas en recorrer esa misma distancia.".
Google Bard - "2 hours. The time it takes to travel a certain distance is inversely proportional to the speed. If the speed of each cyclist is the same, then the time it takes for two cyclists to travel the same distance is half the time it takes for one cyclist."
Claude - "2 horas"
HuggingChat - "La respuesta es 3 horas con 20 minutos. Hasta pronto!"
Todas las respuestas, a excepción de la de HuggingChat, me parecen similares. Por esto mismo, no quiero extenderme de más en este apartado. Diría que todos están igualados, menos HuggingChat que están un paso por debajo. Quizás era una pregunta demasiado complicada para un modelo del lenguaje.
Cuarta prueba
Ahora vamos a ver las habilidades de picar código de cada uno de estos modelos mediante el siguiente prompt: "Hacer un juego donde la PC seleccione un número al azar entre 0 y 100. El jugador debe ir tratando de adivinar y el programa devolverá «Muy bajo», «Muy alto» según corresponda. Una vez que adivina, mostrar un mensaje de felicitación junto a la cantidad de intentos."
Conclusión
Quinta prueba
La idea aquí es ver qué modelos aceptan más input y luego son capaces de utilizarlo bien.
Conclusiones
Según la posición en la que han quedado los modelos en cada una de las pruebas, les he asignado una puntuación. Cabe resaltar que en la prueba 3, la del razonamiento lógico, he puesto a todos 2 puntos menos a HuggingChat, que le he puesto 1. He aquí los resultados:
La tabla quedaría así:
Sobre los modelos
ChatGPT
Ventajas
Consistencia, los únicos momentos en los que no se siente consistente es cuando la web falla. No sientes que no de malas respuestas, todas son satisfactorias. Además, me parece un modelo barato para utilizarlo por API, costando 0.002$ / 1K tokens. Otra de sus ventajas es la WebUI, me resulta muy agradable y siento que los demás competidores han intentado copiarla.
Desventajas
Últimamente estoy experimentando problemas, quizás sea porque gran cantidad de personas utilizan el modelo a la vez.
BingChat
Ventajas
La única ventaja que le puedo encontrar es la capacidad de conectarse a internet y tenerlo en el propio Edge. Solo lo utilizo si estoy leyendo papers y quiero un resumen de la web en la que me encuentro. Como punto positivo, está conectado a DALL·E2 y puede generar imágenes de forma cómoda.
Desventajas
Utiliza demasiado internet y busca cosas que no debería, tienes un límite de mensajes y las respuestas casi nunca son satisfactorias. Aunque sea un modelo del lenguaje nunca lo utilizaría como uso a ChatGPT.
Google Bard
Ventajas
En mi opinión es como BingChat debería ser. Da respuestas decentes aunque en mi opinión no lleguen a ser como las de ChatGPT. Entiende cuando tiene que buscar algo en Google y, cuando no tiene que hacerlo, resuelve el problema como LLM, cosa que me parece increíble.
Desventajas
La WebUI me parece horrible y no entiendo con lo bonito que lo hace todo Google como han hecho algo con un diseño tan mediocre. Otra cosa es que no entiendo por qué no lo han puesto en todos los idiomas ni países. No lo utilizaría porque tengo que usarlo solo en inglés y a través de un VPN,
Claude
Ventajas
Sabía que existía pero nunca le había dado mucho bombo hasta que un consultor de Inteligencia Artificial me dijo lo bien que funcionaba y me dijo que, para él, en algunos casos, era mejor que ChatGPT. Estoy completamente de acuerdo con él. Claude supera a ChatGPT en la mayoría de ocasiones y sus respuestas son mucho más satisfactorias. Además, tiene una versión con 100.000 tokens de contexto, aunque entiendo que será carísima y no es la que está disponible en Slack.
Desventajas
La versión simple, de Slack, no tiene una WebUI y no la usaría por esto. Actualmente estoy esperando a que me den acceso a su WebUI porque creo que utilizarlo desde Slack no es nada cómodo. En cuanto me den el acceso, seguramente deje de utlilzar ChatGPT.
HuggingChat
Ventajas
Creo que está por detrás en muchos casos, pero compensa todo esto siendo OpenSource. No es de uso comercial porque utiliza el modelo LLaMA de Meta pero poco a poco están surgiendo alternativas a este modelo.
Viendo la evolución que han tenido los modelos OpenSource, es probable que estos lleguen al nivel de Claude o ChatGPT dentro de poco tiempo (Dicen que hay modelos como WizardLM que tienen un rendimiento idéntico, pero no los he probadro). Es importante mencionar que el hecho de tener el modelo muy accesible a través de una WebUI les va permitir obtener los datos necesarios para mejorar el modelo.
Desventajas
Bastantes obvias, el rendimiento. No ofrece respuestas satisfactorias con el mismo prompt con el que otros modelos como ChatGPT, Claude o Bard si que rinden bien.