File size: 8,513 Bytes
8ce0c5c 447d8ef 8ce0c5c 447d8ef 8c9d94a 49adfff 49218cf 8ce0c5c 447d8ef 924dc23 447d8ef 61f8f81 b44f9d2 61f8f81 b44f9d2 61f8f81 49218cf |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 |
---
language:
- es
license: cc-by-sa-4.0
tags:
- Paraguay
- Culture
- Custom Code
- Guaraní
- unsloth
datasets:
- somosnlp/dataset-cultura-guarani_corpus-it
pipeline_tag: text-generation
widget:
- text: Quién es Tupã?
---
<p align="center">
<img src="https://cdn-uploads.huggingface.co/production/uploads/65f4605f4c2a1312c4d0a4b2/rPUhxgAMZGNqDh4dF5ji3.webp" style="width: 60%; border-radius: 10px;">
</p>
# gua-a v0.2 GGUF
*En la mitología guarani: El padre de la sabiduria usaba un gua'a o loro para intentar comunicarse con su dios supremo Tupã. Haciendo la misma analogía creamos el modelo "gua-a" para difundir la cultura guarani a todos los hispanohablantes.*
<!--
Esta plantilla de Model Card es una adaptación de la de Hugging Face: https://github.com/huggingface/huggingface_hub/blob/main/src/huggingface_hub/templates/modelcard_template.md
¿Cómo utilizar esta plantilla? Copia el contenido en el README.md del repo de tu modelo en el Hub de Hugging Face y rellena cada sección.
Para más información sobre cómo rellenar cada sección ver las docs: https://huggingface.co/docs/hub/model-cards
-->
<!--
Nombre del modelo:
Suele haber un nombre corto ("pretty name") para las URLs, tablas y demás y uno largo más descriptivo. Para crear el pretty name podéis utilizar acrónimos.
Idioma:
La Model Card puede estar en español o en inglés. Recomendamos que sea en inglés para que la comunidad internacional pueda utilizar vuestro dataset. Teniendo en cuenta que somos una comunidad hispanohablante y no queremos que el idioma sea una barrera, la opción más inclusiva sería escribirla en un idioma y traducirla (automáticamente?) al otro. En el repo entonces habría un README.md (Model Card en inglés) que enlazaría a un README_ES.md (Model Card en español), o viceversa, README.md y README_EN.md. Si necesitáis apoyo con la traducción os podemos ayudar.
Qué incluir en esta sección:
Esta sección es como el abstract. Escribir un resumen del modelo y motivación del proyecto (inc. los ODS relacionados). Si el proyecto tiene un logo, incluidlo aquí.
Si queréis incluir una versión de la Model Card en español, enlazadla aquí al principio (e.g. "A Spanish version of this Model Card can be found under [`README_es.md`](URL)"). De manera análoga para el inglés.
-->
## 🦜 Model Details
**gua-a v0.2**: Esta es una versión mejorada del modelo de lenguaje desarrollado en [somosnlp/gua-a](https://huggingface.co/somosnlp/gua-a) para capturar y comprender instrucciones relacionadas con la cultura guaraní.
Fue ajustado mediante la técnica **Direct Preference Optimization** (DPO) con datos específicos de la cultura guaraní según el libro Ñande Ypykuéra de Narciso R. Colmán, contrastando las respuestas
generadas por **RAG + GPT-4 + Human Feedback** y **mistral-7b-bnb-4bit** para el entranamiento por DPO.
**gua-a v0.2** deriva de un modelo base **Mistral 7B** y se optimiza mediante la cuantización a 4 bits y el almacenamiento en el formato GGUF
para mejorar su eficiencia en términos de almacenamiento y cálculo.
Esto lo hace más adecuado para despliegues en entornos con recursos limitados,
sin comprometer significativamente su capacidad para comprender y generar texto de alta calidad.
### Model Description
<!-- Resumen del modelo. -->
- **Developed by:** Enrique Paiva <!-- Nombre de los miembros del equipo -->
- **Funded by:** Think Paraguayo <!-- Si contasteis con apoyo de otra entidad (e.g. vuestra universidad), añadidla aquí -->
- **Model type:** Language model, instruction tuned
- **Language(s):** `es-ES` <!-- Enumerar las lenguas en las que se ha entrenado el modelo, especificando el país de origen. Utilizar códigos ISO. Por ejemplo: Spanish (`es-CL`, `es-ES`, `es-MX`), Catalan (`ca`), Quechua (`qu`). -->
- **License:** cc-by-sa-4.0 <!-- Elegid una licencia lo más permisiva posible teniendo en cuenta la licencia del model pre-entrenado y los datasets utilizados -->
- **Fine-tuned from model:** [unsloth/mistral-7b-bnb-4bit](https://huggingface.co/unsloth/mistral-7b-bnb-4bit) <!-- Enlace al modelo pre-entrenado que habéis utilizado como base -->
- **Dataset used:** [somosnlp/dataset-cultura-guarani_corpus-it](https://huggingface.co/datasets/somosnlp/dataset-cultura-guarani_corpus-it) <!-- Enlace al dataset utilizado para el ajuste -->
### Provided files
| Name | Quant method | Bits | Size | Max RAM required | Use case |
| ---- | ---- | ---- | ---- | ---- | ----- |
| [gua-a_v0.2-dpo_mistral-7b_q4_K_M.gguf](https://huggingface.co/thinkPy/gua-a_v0.2-dpo_mistral-7b_GGUF/blob/main/gua-a_v0.2-dpo_mistral-7b_q4_K_M.gguf) | Q4_K_M | 4 | 4.37 GB| 4.16 GB | medium, balanced quality - recommended |
**Nota**: las cifras de RAM anteriores asumen que no se utiliza la GPU. Si las capas se descargan en la GPU, se reducirá el uso de RAM y se utilizará VRAM en su lugar.
# ⭐ Uses
<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
Este modelo está pensado para su uso exclusivamente educativo, permitiendo que las personas puedan adentrarse más al mundo de la cultura guaraní desde la Inteligencia Artificial.
<!-- README_GGUF.md-provided-files start -->
# 🤖 How to Get Started with the Model
## Download model ⬇️
Puedes descargar el modelo directamente por medio del siguiente enlace: [**DOWNLOAD GUA-A-V0.2-GGUF**](https://huggingface.co/thinkPy/gua-a_v0.2-dpo_mistral-7b_GGUF/resolve/main/gua-a_v0.2-dpo_mistral-7b_q4_K_M.gguf)
<!-- prompt-template start -->
## Prompt template: Alpaca 🧾
```
Responde a preguntas de forma clara, amable, concisa y solamente en el lenguaje español, sobre el libro Ñande Ypykuéra.
Contexto
-------------------------
{}
-------------------------
### Pregunta:
{}
### Respuesta:
{}
```
## Llamacpp 🦙
### Install dependencies
```shell
# Si vas a utilizar solo CPU
pip install llama-cpp-python
# Si tienes una GPU basada en NVidia CUDA acceleration
CMAKE_ARGS="-DLLAMA_CUBLAS=on" pip install llama-cpp-python
# O con OpenBLAS acceleration
CMAKE_ARGS="-DLLAMA_BLAS=ON -DLLAMA_BLAS_VENDOR=OpenBLAS" pip install llama-cpp-python
# O con CLBLast acceleration
CMAKE_ARGS="-DLLAMA_CLBLAST=on" pip install llama-cpp-python
# O con AMD ROCm GPU acceleration (Linux only)
CMAKE_ARGS="-DLLAMA_HIPBLAS=on" pip install llama-cpp-python
# O con Metal GPU acceleration for macOS systems only
CMAKE_ARGS="-DLLAMA_METAL=on" pip install llama-cpp-python
# En windows, ejemplo para NVidia CUDA:
$env:CMAKE_ARGS = "-DLLAMA_CUBLAS=on"
pip install llama-cpp-python
```
### Simple Inference
```
from llama_cpp import Llama
llm = Llama(
model_path="./gua-a_v0.2-dpo_mistral-7b_q4_K_M.gguf", # Primero debes descargar el modelo
n_ctx=512, # Máximo tamaño del contexto
n_threads=2, # Número de CPUs a usar
n_gpu_layers=0 # El número de capas usadas para la GPU, si es "-1" utilizará todas las capas en la GPU, si es "0" solo se utilizará la CPU.
)
prompt = f"""Responde a preguntas de forma clara, amable, concisa y solamente en el lenguaje español, sobre el libro Ñande Ypykuéra.
Contexto
-------------------------
{context}
-------------------------
### Pregunta:
{query}
### Respuesta:
"""
contexto = ""
pregunta = "Quién es gua'a?"
# Ejemplo Simple de Inferencia
output = llm(prompt.format(context=contexto, query=pregunta),
max_tokens=512,
stop=["</s>"],
echo=True
)
respuesta = output['choices'][0]['text'].split("### Respuesta:\n")[1]
print(respuesta)
```
## Bias, Risks, and Limitations
<!-- This section is meant to convey both technical and sociotechnical limitations. -->
El modelo **gua-a_v0.2-dpo_mistral-7b_GGUF** es un modelo experimental, las respuestas pueden ser imprecisas y de baja calidad. El dataset utilizado por el modelo solo refleja parte de la cultura guaraní, limitandose a la visión del autor del libro.
## More Information
<!-- Indicar aquí que el marco en el que se desarrolló el proyecto, en esta sección podéis incluir agradecimientos y más información sobre los miembros del equipo. Podéis adaptar el ejemplo a vuestro gusto. -->
Este proyecto fue desarrollado por **Think Paraguayo** 🇵🇾.
**Team:**
[Enrique Paiva](https://huggingface.co/enpaiva)
<!--
- [Name 1](Link to Hugging Face profile)
- [Name 2](Link to Hugging Face profile)
-->
## Contact
**mail**: [email protected]
<!-- Email de contacto para´posibles preguntas sobre el modelo. --> |