Review

#1
by Novaciano - opened

It is difficult for me to make reviews, many times due to the huge number of models there are and especially the same format. However, this model is a particular case.

I have a cell phone that in the rest of the world could be considered low-end, with 3 Gb of RAM. I have tried many models that said "Spanish" in the title and one in particular from the QWEN 2 series entirely in Spanish.

Generally all of them gave me some problems, whether it was slowness or even inconsistencies... until I found this model that was able to generate a story and even in fluid ways using version 1.5B.

Great work. Thanks for creating this.

PS: I didn't know whether to write the review in Spanish.

Owner

Hola @Novaciano , muchas gracias, que le sirva a una persona ya me sirve, si te fijas tengo varios datasets en español, soy de Argentina y no veo mucha gente desarrollando LLMs en español. A este QWEN lo entrene con 50k ejemplos durante 3 épocas, aun me faltaba hacer un merge con el modelo original y un DPO para mejorar la calidad de las respuestas, lo había abandonado, pero tu comentario me dio ganas de seguir este proyecto, también sos de habla hispana vos?

Ya somos dos de Argentina, que loco che. El mundo es un pañuelo. Ahora que se esto te voy a seguir mas de cerca, no muchos hispanoparlantes se dedican a esto salvo contados con los dedos de una mano por lo que me alegra que un compatriota se haya transformado en una suerte de pionero en la materia ya que hasta no hace mucho conseguir modelos exclusivamente al español era algo raro, al menos en modelos pequeños desde la salida del Cerebras, Pythia y sobre todo el RWKV World.

Se está por cumplir dos años o mas que vengo analizando diversos LLM persiguiendo los modelos mas eficaces en este idioma, desde que salió la primer versión de Oogabooga para darte una idea, por lo que he visto (y sufrido) de todo.

Y te repito, en cuanto a modelos pequeños de calidad, este QWEN2 resultó ser el que mejor resultado me ha dado en diversos ambitos.

En ese caso, siempre desde mi ignorancia claro está, te voy a hacer el siguiente pedido:
Fijate si no podes lograr un modelo exclusivamente para roleplay y en español a partir de QWEN2 1.5b o Mamba 1.4b, sería bastante novedoso ya que para tal tarea solo existen modelos 7b en adelante que son mas pesados.

Nota: Este modelo que te reseñé de hecho lo logra a diferencia de otros modelos QWEN 2 que he probado, casi a la perfección porque creo que es mas abarcativo a nivel general que exclusivo a eso como podría serlo el Dungeon AI.

Desde ya te mando un afectuoso saludo y estare a tu disposición por si requerís de un testeador.

Owner

@Novaciano de los modelos pequeños el que mas me viene gustando es Gemma 2b, podría hacer algo como eso, si Tenes algún data set de roleplay para recomendarme podes pasarme por acá, tengo acceso a APIs de Claude y GPT para traducirlos al español en gran calidad y también podría generar datos sintéticos, no hice fine-tunings de RP aun, me interesa, siempre estoy haciendo cosas mas relacionadas a mi trabajo y por hobbies por lo general intento hacer modelos q manejen bien el español pero no para tareas en especifico, seria interesante

Owner

@Novaciano recien salido del horno, muchisimo mejor que qwen, unos poquitos mas de parametros,

image.png

tambien estoy traduciendo un dataset de roleplay para este modelo, creo que es mi mejor modelo pequeño en español, es mas merito de google y su modelo destilado que mio.

image.png

https://huggingface.co/Kukedlc/NeuralGemma-2B-Slerp-GGUF/

Kukedlc/NeuralGemma-2B-Slerp

Se autodenomina Aether, esta es la version GGUF, en un celular tendria que correr sin problemas,
image.png

image.png

image.png

Que buena noticia! Impresionantes avances. Tengo un dataset descargado que lo descargué pensando que podría hacer mi propio LLM en algún momento incluso usando Google Cloud pero desde entonces no logré encontrar la forma, incluso tenía pensado realizar la traducción a pulso tal cual como lo venis haciendo vos pero desde que se me quemó la pantalla de la notebook me resultó imposible.

Respecto Gemma, te aviso que es una serie un tanto particular que en modelos pequeños podría llevar a la confusión respecto a rendimiento. A simple vista uno puede pensar que al tener cantidad de parametros similares a las versiones pequeñas de modelos como TinyLlama, RWKV, Mamba y QWEN2 van a funcionar igual de rápido, pero la realidad es que sucede todo lo contrario debido a su arquitectura la cual sacrifica rendimiento por performance y en una PC de 8 Gb de RAM para para arriba esto podría resultar imperceptible. Lo mismo pasa con la serie PHI de Microsoft, son modelos pequeños y robustos ideales para ocupar poco espacio... pero que requieren mas RAM en comparación a sus homólogos.

Acá te paso el listado de la serie Gemma con sus características incluyendo la cantidad de VRAM minima requerida para funcionar con fluidez:
https://llm.extractum.io/list/?mtr=google

Owner

@Novaciano Estoy usando la api de Claude y la de HF para las traducciones, ya tengo unos 4k de ejemplos de roleplay para el fine tuning, es verdad lo que decis de Gemma, notaba que me consumia mucha VRAM en los entrenamientos, para la cantidad de paramentros, pero bueno es un modelo con mejor performance que los otros, lo de la serie mamba tienen otra arquitectura, no se como se entrenan, calculo que debe haber alguna informacion por ahi.
En breves subo los modelos, intente crear unos espacios pero no ayuda mucho la arquitectura de HF para los deploys, antes era mas chebere, hoy tiene muchos problemas de dependencias,

Owner

@Novaciano
Aca subi el dataset con 4500 registros:

Spanish Roleplay 4.5K

Y aca estoy entrenando un QWEN 1.5 asi podes usarlo:

image.png

Espectacular, te agradezco mucho. Esto incluso va a repercutir en la comunidad de KoboldAI en la cual me encuentro ya que lo mas parecido a esto que tenía la gente de habla hispana, al menos en cuanto LLM's pequeños, era el DungeonAI en inglés y que de tratarse de una antigua IA su rendimiento era lentisimo.

Por otra parte, recordá que vivimos en Argentina, somos la meca bizarra de la... "libertad", así que sería bueno desarrollar tambien modelos abliterados. La abliteración es mejor que la sintonización sin censura... porque esta última tiende a estar demasiado ansiosa por inyectar contenidos previamente censurados, mientras que la abliteración simplemente evita los rechazos sin cambiar el comportamiento general.

Ignoro si los modelos que hasta ahora sacaste estén abliterados y por otra parte si estés empapado en el tema, pero de lograrlo van a ser menos propensos al rechazo de dar... ciertas respuestas.

Te mando un fuerte abrazo y nos mantenemos en contacto.

@Novaciano Como estas che, si estoy al tanto, de hecho anoche quería abliterarlos para que respondan únicamente en español, estoy con los papers probando, porque se me ocurrio en lugar de aplicarle refusal a esas neuronas entrenarlas, y sacarle3 idiomas como chino mandarin, japones, arabe, que no nos sirven, justo estudiaba eso. los que saque hasta ahora, no son solo fine tuning de modelos base o instruction, y casi siempre entrene el modelo base y lo mergeo con el intruction como hice con gemma

En efecto, volatea todos los idiomas extras. A no ser que sea un modelo destinado a dar códigos de programación ni el inglés sirve de nada; solo ocupan bytes de información que se podrían utilizar para reforzar la calidad del modelo en español. Algo me dice que el mayor logro de hacer eso se dará en modelos pequeños como en las ultimas versiones de TinyLlama 1.1b, QWEN2 0.5b o el Mamba 1.4b... no se si incluso Pythia... y no lo digo desde un punto de interes personal, sino que de lograrlo marcarías un hito... no se si de calidad incluso. Modelos de estos en español hay pero son multilingües... salvo solo dos... QWEN2 LeniaChat y TinyLlama: ElChato... y da la coincidencia que por algún motivo ambos suelen ser lentos a la hora de generar texto comparado a sus homólogos, por un motivo que desconozco. Quizas rompas por fin la mala racha de modelos exclusivos pero lentos en español y logres un modelo de buen rendimiento con respuestas rapidas.

Te deseo lo mejor en esta tarea.

@Novaciano

image.png

image.png

Acá cree un espacio que genera personalidades al azar, me esta costando crear una versión con QWEN, muy probablemente por algún error en el train, pero no responden bien, cuando tenga novedades te comparto por acá, usas LinkedIn?

https://huggingface.co/spaces/Kukedlc/Gemma-2b-RolePlay

Vaya, se me hace curioso que no responda bien... visto y considerando que en esta misma versión reseñada he podido generar roleplay mas o menos perfecto. Es un tema de estudio ...interesante. A veces estos modelos pueden desde sorprenderte hasta frustrarte... por eso es bueno ...recabar toda la información posible.

Te voy a confesar algo relacionado a esto, yo suelo descargar conversiones .gguf ...y antes de descargar la conversión de este mismo modelo, descargué una conversión anterior... la primera que se había hecho. Fue muy mala, la calidad de la conversión dejaba mucho que desear... y uno a veces piensa que es el modelo en si y en realidad es la conversión cuantificada. Luego apareció otra conversión y quedé asombrado.

Supongo que tambien juega un papel predominante la suerte.

Toma, este es mi LinkedIn, aunque no suelo usarlo muy seguido: https://www.linkedin.com/in/gabriel-bisson-383361217?trk=contact-info

https://huggingface.co/Kukedlc/Qwen2-1.5B-Spanish-1.0-DPO-GGUF
Vi que estás por liberar el modelo DPO, interesante sorpresa, estoy deseoso por probar este nuevo modelo liberado.

Owner

@Novaciano
Como estas, anoche deje el modelo convirtiendose a GGUF y fallo, je, ahi lo subi:

Kukedlc/Qwen2-1.5B-Spanish-1.0-DPO-GGUF

En LMStudio me funciona ridículamente rápido, algo que note, que no vi documentado es que la inferencia en los LLMs suele ser mas rapida en ingles que en español, como si le costara mas el español, en este modelo actualmente funciona a la par que la version en ingles.


Acá no tiene prompt de sistema (es mas libre y aleatorio):
En LM la version GGUF de 4bit q4_K_M:

Con prompt de sistema:

Owner

@Novaciano
En resumen esta fue una pruba con muy pocos ejemplos, ahora viendo que pude entrenar decentemente a QWEN planeo hacerlo con 10 veces los datos que use en este, y mejores ejemplos.
Te aviso cuando este listo!

Increible avance hiciste, y me parece curioso lo que decis respecto al español, quizás la existencia de la ñ ausente en el anglosajón tenga algo que ver... desde la especulación, claro está.

Fijate que tal te va inyectar el database que hiciste ya sea este o el de rolplay en un modelo distinto como TinyLlama; no digo Mamba porque no vi ninguna versión modificada. Sería curioso ver el resultado, pero mas que nada sería para ver si ocurren los mismos errores.

Por cierto, he notado que desde hoy muchos están resubiendo nuevamente conversiones GGUF de QWEN2 en su versión nativa... como si hubiesen liberado una nueva versión actualizada, fijate.

Ahí descargo la nueva versión subida y la testeo.

Un fuerte abrazo!

Creo que esto podría llegar a interesarte. He probado modelos con esto, de los chicos y podrías sorprenderte no solo por la calidad de respuestas sino velocidad. Quizás puedas integrarlo a tus próximos modelos:
https://lm-kit.com/

Sign up or log in to comment