Transformers
Safetensors
Inference Endpoints
File size: 4,362 Bytes
e5f2f79
 
 
 
 
 
 
 
e722f79
98b8d2f
e722f79
98b8d2f
e722f79
98b8d2f
e722f79
98b8d2f
 
 
 
 
 
 
 
e722f79
98b8d2f
e722f79
98b8d2f
 
 
 
 
 
 
 
e722f79
98b8d2f
e722f79
98b8d2f
 
 
 
 
 
 
 
 
 
 
 
e722f79
98b8d2f
e722f79
98b8d2f
e722f79
98b8d2f
 
e722f79
98b8d2f
e722f79
98b8d2f
e722f79
98b8d2f
e722f79
98b8d2f
e722f79
98b8d2f
 
e722f79
98b8d2f
 
77da60c
e722f79
98b8d2f
 
 
 
 
 
 
e722f79
98b8d2f
 
 
e722f79
98b8d2f
 
e722f79
98b8d2f
 
 
77da60c
e722f79
98b8d2f
 
 
e722f79
 
98b8d2f
 
 
e722f79
 
98b8d2f
662c265
ef7c7b4
662c265
 
 
 
 
 
 
 
 
 
 
ef7c7b4
662c265
 
 
 
 
 
 
 
 
 
ef7c7b4
662c265
 
ef7c7b4
c52bec3
662c265
 
 
 
 
 
 
 
 
c52bec3
662c265
ef7c7b4
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
---
library_name: transformers
license: mit
datasets:
- microsoft/ms_marco
base_model:
- meta-llama/Llama-3.2-1B
---

# llama-3.2-1B-MS-MARCO-QLoRA-v3

Este modelo es una versión afinada del modelo [meta-llama/Llama-3.2-1B](https://huggingface.co/meta-llama/Llama-3.2-1B) utilizando el conjunto de datos MS MARCO para tareas de generación de respuestas.

## Descripción del Modelo

- **Modelo Base:** meta-llama/Llama-3.2-1B
- **Técnicas Utilizadas:**
  - Quantization con QLoRA
  - Afinación con LoRA y PEFT
- **Arquitectura:**
  - Parámetros entrenables: Solo los adaptadores LoRA
  - Parámetros totales: 771819520
  - Parámetros entrenables: 22544384

## Conjunto de Datos

- **Nombre del Conjunto de Datos:** MS MARCO
- **Descripción:** Conjunto de datos de comprensión lectora a gran escala que incluye preguntas y respuestas reales de usuarios.
- **Tamaño del Conjunto de Entrenamiento:** 56588
- **Tamaño del Conjunto de Validación:** 14148
- **Preprocesamiento:**
  - Limpieza de texto
  - Tokenización
  - Creación de prompts combinando contexto, pregunta y respuesta

## Entrenamiento

- **Hiperparámetros:**
  - Número de épocas: 7
  - Tamaño de lote de entrenamiento: 8
  - Tamaño de lote de evaluación: 8
  - Tasa de aprendizaje: 0.0002
- **Configuración de LoRA:**
  - r (rango): 32
  - lora_alpha: 32
  - lora_dropout: 0.05
- **Recursos Computacionales:**
  - Dispositivo: cuda
  - Memoria GPU utilizada: A100(40gb)

## Resultados

### Métricas

- **Pérdida de Entrenamiento Final:** 1.8747
- **Pérdida de Validación Final:** 2.0278

### Gráficas

![Curva de Pérdida](./loss_curve.png)

## Uso del Modelo

Para utilizar este modelo, puedes cargarlo de la siguiente manera:

```python
from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained('TheBug95/llama-3.2-1B-MS-MARCO-QLoRA-v3')
tokenizer = AutoTokenizer.from_pretrained('TheBug95/llama-3.2-1B-MS-MARCO-QLoRA-v3')
```

#Ejemplo de Generación
```python
def generate_answer(prompt):
    inputs = tokenizer(prompt, return_tensors='pt').to(device)
    outputs = model.generate(**inputs, max_length=512, do_sample=True, temperature=0.7)
    answer = tokenizer.decode(outputs[0], skip_special_tokens=True)
    return answer

# Ejemplo de uso
prompt = 'Context:
[Tu contexto aquí]

Question:
[Tu pregunta aquí]

Answer:'
respuesta = generate_answer(prompt)
print(respuesta)
```

# Consideraciones Éticas y Licencia
- Licencia: MIT
- Consideraciones Éticas: El modelo puede generar respuestas basadas en datos entrenados. Se debe usar con precaución y verificar la exactitud de las respuestas.


# Limitaciones
- El modelo fue entrenado en un conjunto de datos específico y puede no generalizar bien a otros dominios.
- Puede generar respuestas incorrectas o sesgadas.


# Referencias
1- **MS MARCO Dataset:**

@misc{bajaj2018msmarcohumangenerated,
      title={MS MARCO: A Human Generated MAchine Reading COmprehension Dataset}, 
      author={Payal Bajaj and Daniel Campos and Nick Craswell and Li Deng and Jianfeng Gao and Xiaodong Liu and Rangan Majumder and Andrew McNamara and Bhaskar Mitra and Tri Nguyen and Mir Rosenberg and Xia Song and Alina Stoica and Saurabh Tiwary and Tong Wang},
      year={2018},
      eprint={1611.09268},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/1611.09268}, 
}

2- **QLoRA Paper:** 

@misc{dettmers2023qloraefficientfinetuningquantized,
      title={QLoRA: Efficient Finetuning of Quantized LLMs}, 
      author={Tim Dettmers and Artidoro Pagnoni and Ari Holtzman and Luke Zettlemoyer},
      year={2023},
      eprint={2305.14314},
      archivePrefix={arXiv},
      primaryClass={cs.LG},
      url={https://arxiv.org/abs/2305.14314}, 
}

3- [**PEFT Library**](https://huggingface.co/docs/peft/index)

4- **LoRA Paper:** 

```bibtex
@misc{hu2021loralowrankadaptationlarge,
      title={LoRA: Low-Rank Adaptation of Large Language Models}, 
      author={Edward J. Hu and Yelong Shen and Phillip Wallis and Zeyuan Allen-Zhu and Yuanzhi Li and Shean Wang and Lu Wang and Weizhu Chen},
      year={2021},
      eprint={2106.09685},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2106.09685}, 
}
```

5- [**BitsAndBytes Library** ](https://github.com/bitsandbytes-foundation/bitsandbytes)