File size: 13,025 Bytes
a29256e
 
62de0d9
 
 
 
 
 
 
77631ca
 
 
 
 
f59b768
1407500
 
3c20c60
 
7671d59
1407500
3c20c60
 
1407500
 
3c20c60
 
a29256e
62de0d9
 
 
22a8c92
62de0d9
22a8c92
 
 
62de0d9
22a8c92
62de0d9
22a8c92
 
62de0d9
22a8c92
62de0d9
22a8c92
62de0d9
22a8c92
62de0d9
22a8c92
62de0d9
22a8c92
62de0d9
22a8c92
62de0d9
22a8c92
cd41d9d
22a8c92
cd41d9d
22a8c92
cd41d9d
 
 
7fc808c
 
 
cd41d9d
7fc808c
 
 
 
 
 
cd41d9d
 
 
 
 
 
 
22a8c92
 
cd41d9d
 
22a8c92
cd41d9d
22a8c92
 
cd41d9d
 
 
6f943db
 
 
22a8c92
cd41d9d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7fc808c
 
cd41d9d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2c7b003
 
cd41d9d
2c7b003
 
 
cd41d9d
 
 
 
 
 
 
 
22a8c92
cd41d9d
 
 
 
 
 
 
 
 
 
 
 
22a8c92
 
 
 
 
 
 
 
 
 
 
 
 
cd41d9d
 
 
 
 
 
 
 
 
 
 
7fc808c
cd41d9d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
22a8c92
7dee5d2
22a8c92
cd41d9d
 
 
 
 
 
7fc808c
 
cd41d9d
 
 
 
 
 
 
 
 
22a8c92
cd41d9d
 
 
 
 
22a8c92
 
 
 
 
 
 
 
cd41d9d
 
 
 
22a8c92
cd41d9d
 
 
 
22a8c92
 
 
 
 
 
 
 
 
cd41d9d
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7dee5d2
 
 
7fc808c
cd41d9d
22a8c92
cd41d9d
 
 
 
 
 
22a8c92
 
 
 
a2a2abe
cd41d9d
 
7fc808c
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
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
---
license: apache-2.0
library_name: peft
tags:
- generated_from_trainer
base_model: BioMistral/BioMistral-7B
model-index:
- name: spanish_medica_llm
  results: []
datasets:
- somosnlp/SMC
language:
- es
pipeline_tag: text-generation
widget:
- text: "En el contexto médico que es el Antígeno linfocitario cd73"
  example_title: "Pregunta sobre medicamento"
 # output:
 #     text: "Factor inmunológico"
- text: "En el contexto médico que es la Abdominopatía aguda"
  example_title: "Pregunta sobre síntomas"
  #output:
  #    text: "Signo o síntoma"
- text: "Diga el tramiento de un caso que Anamnesis Mujer de 68 años, conocida por el servicio desde septiembre de 2009, alérgica a betalactámicos y contrastes yodados, con antecedentes de: HTA, dislipidemia, depresión, incidentaloma hipofisiario, con déficit de GH e hipotiroidismo (2006), cefalea mixta (migrañosa y tensional), reflujo gastroesofágico y fracturas traumáticas D9, D11 por accidente de tráfico (1995). sometida en diciembre de 2010 a tumorectomía dirigida y mamoplastia oncoterapéutica bilateral...."
  example_title: "Tramiento médico"
  #output:
  #    text: "Neoplasia metastásica"
---

<!-- This model card has been generated automatically according to the information the Trainer had access to. You
should probably proofread and complete it, then remove this comment. -->
<!-- Email de contacto para´posibles preguntas sobre el modelo. -->

<!---  ############################################################################################################################### -----!>
<!--
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
-->

# Model Card for SpanishMedicaLLM

<!--

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.

-->

More than 600 million Spanish-speaking people need resources, such as LLMs, to obtain medical information freely and safely,
complying with the millennium objectives: Health and Wellbeing, Education and Quality, End of Poverty proposed by the UN.
There are few LLMs for the medical domain in the Spanish language.

The objective of this project is to create a large language model (LLM) for the medical context in Spanish, allowing the creation of solutions
and health information services in LATAM. The model will have information on conventional, natural and traditional medicines.
An output of the project is a public dataset from the medical domain that pools resources from other sources that allows LLM to be created or fine-tuned.
The performance results of the LLM are compared with other state-of-the-art models such as BioMistral, Meditron, MedPalm.

[**Dataset Card in Spanish**](README_es.md)

## Model Details

### Model Description

<!-- Resumen del modelo. -->

- **Developed by:** [Dionis López Ramos](https://www.linkedin.com/in/dionis-lopez-ramos/), [Alvaro Garcia Barragan](https://huggingface.co/Alvaro8gb), [Dylan Montoya](https://huggingface.co/dylanmontoya22), [Daniel Bermúdez](https://huggingface.co/Danielbrdz)   <!-- Nombre de los miembros del equipo -->
 <!-- Nombre de los miembros del equipo -->
- **Funded by:** SomosNLP, HuggingFace <!-- Si contasteis con apoyo de otra entidad (e.g. vuestra universidad), añadidla aquí -->
- **Model type:** Language model, instruction tuned
- **Language(s):** Spanish (`es-ES`, `es-CL`)  <!-- 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:** apache-2.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:** [BioMistral/BioMistral-7B](https://huggingface.co/BioMistral/BioMistral-7B) <!-- Enlace al modelo pre-entrenado que habéis utilizado como base -->
- **Dataset used:** [somosnlp/SMC/](https://huggingface.co/datasets/somosnlp/SMC/) <!-- Enlace al dataset utilizado para el ajuste -->

### Model Sources

- **Repository:** [spaces/somosnlp/SpanishMedicaLLM/](https://huggingface.co/spaces/somosnlp/SpanishMedicaLLM/tree/main) <!-- Enlace al `main` del repo donde tengáis los scripts, i.e.: o del mismo repo del modelo en HuggingFace o a GitHub. -->
- **Paper:** "Comming soon!" <!-- Si vais a presentarlo a NAACL poned "WIP", "Comming soon!" o similar. Si no tenéis intención de presentarlo a ninguna conferencia ni escribir un preprint, eliminar. -->
- **Demo:** [spaces/somosnlp/SpanishMedicaLLM](https://huggingface.co/spaces/somosnlp/SpanishMedicaLLM) <!-- Enlace a la demo -->
- **Video presentation:** [SpanishMedicaLLM | Proyecto Hackathon #SomosNLP ](https://www.youtube.com/watch?v=tVe_MC7Da6k) <!-- Enlace a vuestro vídeo de presentación en YouTube (están todos subidos aquí: https://www.youtube.com/playlist?list=PLTA-KAy8nxaASMwEUWkkTfMaDxWBxn-8J) -->


## 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. -->

### Direct Use

<!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->

[More Information Needed]

### Out-of-Scope Use

<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->

The creators of LOL are not responsible for any harmful results they may generate. A rigorous evaluation process with specialists is suggested
of the results generated.

## Bias, Risks, and Limitations

<!-- This section is meant to convey both technical and sociotechnical limitations. -->

[More Information Needed]

### Recommendations

<!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->

<!-- Example: Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations. -->

## How to Get Started with the Model

Use the code below to get started with the model.

```
from peft import PeftModel, PeftConfig
from transformers import AutoModelForCausalLM

config = PeftConfig.from_pretrained("somosnlp/spanish_medica_llm")
model = AutoModelForCausalLM.from_pretrained("BioMistral/BioMistral-7B")
model = PeftModel.from_pretrained(model, "somosnlp/spanish_medica_llm")
```

## Training Details

### Training Data

<!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->

Dataset used was [somosnlp/SMC/](https://huggingface.co/datasets/somosnlp/SMC/)

### Training Procedure

<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->

<!-- Detallar la técnica de entrenamiento utilizada y enlazar los scripts/notebooks. -->


#### Training Hyperparameters

<!-- Enumerar los valores de los hiperparámetros de entrenamiento. -->

**Training regime:**
- learning_rate: 2.5e-05
- train_batch_size: 16
- eval_batch_size: 1
- seed: 42
- gradient_accumulation_steps: 4
- total_train_batch_size: 64
- optimizer: Adam with betas=(0.9,0.999) and epsilon=1e-08
- lr_scheduler_type: linear
- lr_scheduler_warmup_steps: 5
- training_steps: 2
- mixed_precision_training: Native AMP
- <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->

## Evaluation

<!-- This section describes the evaluation protocols and provides the results. -->

### Testing Data, Factors & Metrics

#### Testing Data

<!-- This should link to a Dataset Card. -->

The corpus used was 20% [somosnlp/SMC/](https://huggingface.co/datasets/somosnlp/SMC/)

#### Factors

<!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->

[More Information Needed]

#### Metrics

<!-- These are the evaluation metrics being used, ideally with a description of why. -->

[More Information Needed]

### Results

<!-- Enlazar aquí los scripts/notebooks de evaluación y especificar los resultados. -->

[More Information Needed]

## Environmental Impact

<!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly. -->

<!-- Rellenar la información de la lista y calcular las emisiones con la página mencionada. -->

Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).

- **Hardware Type:** GPU
- **Hours used:** 4 Horas
- **Cloud Provider:** [Hugginface](https://huggingface.co)
- **Compute Region:** [More Information Needed]
- **Carbon Emitted:** [More Information Needed]


### Model Architecture and Objective

The architecture of [BioMistral/BioMistral-7B](https://huggingface.co/BioMistral/BioMistral-7B)because it is a foundational model
trained with a medical domain dataset.

### Compute Infrastructure

[More Information Needed]

#### Hardware

<!-- Indicar el hardware utilizado, podéis agradecer aquí a quien lo patrocinó. -->

Nvidia T4 Small 4 vCPU 15 GB RAM 16 GB VRAM

#### Software

<!-- Enumerar las librerías utilizadas (e.g. transformers, distilabel). -->

- transformers==4.38.0
- torch>=2.1.1+cu113
- trl @ git+https://github.com/huggingface/trl
- peft
- wandb
- accelerate
- datasets

## License

<!-- Indicar bajo qué licencia se libera el modelo explicando, si no es apache 2.0, a qué se debe la licencia más restrictiva (i.e. herencia de las licencias del modelo pre-entrenado o de los datos utilizados). -->

Apache License 2.0
## Citation

**BibTeX:**

```
@software{lopez2024spanishmedicallm,
  author = {Lopez Dionis, Garcia Alvaro, Montoya Dylan, Bermúdez Daniel},
  title = {SpanishMedicaLLM},
  month = February,
  year = 2024,
  url = {https://huggingface.co/datasets/HuggingFaceTB/cosmopedia}
}
```
<!--

Aquí tenéis un ejemplo de cita de un dataset que podéis adaptar:

```
@software{benallal2024cosmopedia,
  author = {Ben Allal, Loubna and Lozhkov, Anton and Penedo, Guilherme and Wolf, Thomas and von Werra, Leandro},
  title = {Cosmopedia},
  month = February,
  year = 2024,
  url = {https://huggingface.co/datasets/HuggingFaceTB/cosmopedia}
}
```

- benallal2024cosmopedia -> nombre + año + nombre del modelo
- author: lista de miembros del equipo
- title: nombre del modelo
- year: año
- url: enlace al modelo

-->


## 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. -->


    This project was developed during the [Hackathon #Somos600M](https://somosnlp.org/hackathon) organized by SomosNLP. 
    The model was trained using GPUs sponsored by HuggingFace.


**Team:**

<!--
- [Name 1](Link to Hugging Face profile)
- [Name 2](Link to Hugging Face profile)
-->

 - [Dionis López Ramos](https://huggingface.co/inoid)
 - [Alvaro Garcia Barragan](https://huggingface.co/Alvaro8gb)
 - [Dylan Montoya](https://huggingface.co/dylanmontoya22)
 - [Daniel Bermúdez](https://huggingface.co/Danielbrdz) 
## Contact

<!-- Email de contacto para´posibles preguntas sobre el modelo. -->
 For any doubt or suggestion contact to: PhD Dionis López (inoid2007@gmail.com)