spanish_medica_llm / README.md
inoid's picture
Update README.md
77631ca verified
|
raw
history blame
12.4 kB
---
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
---
<!-- 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.
-->
Más de 600 millones de personas hablantes del idioma español necesitan recursos, como los LLMs, para la obtención de información médica de forma libre y segura,
cumpliendo con los objetivo del milenio: Salud y Bienestar, Educación y Calidad, Fin de la Pobreza propuestos por la ONU.
Existen pocos LLM para el dominio médico en idioma español.
El objetivo de este proyecto es crear un gran modelo de lenguaje (LLM; siglas en inglés) para el contexto médico en español permitiendo crear soluciones
y servicios de información de salud en LATAM. El modelo contará con información de medicinas convencionales, naturales y tradicionales.
Un resultado del proyecto es un conjunto de datos público del dominio médico que agrupa recursos de otras fuentes que permite crear o ajustar LLM.
Los resultados del desempeño del LLM se comparan con otros modelos del state-of-the-art como BioMistral, Meditron, MedPalm.
## 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. -->
Los creadores del LLM no se hacen responsable de resultados nocivos que puedan generar. Se sugiere un proceso de evaluación riguroso con especialistas
de los resultados generados.
## 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.
```
HUB_MODEL_ID = '/somosnlp/spanish_medica_llm'
config = PeftConfig.from_pretrained(HUB_MODEL_ID)
model = AutoModelForCausalLM.from_pretrained(HUB_MODEL_ID, return_dict=True, load_in_8bit=True, device_map={"":0})
```
## 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. -->
El corpus usado fue un 20% de [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
Se utilizó la arquitectura de [BioMistral/BioMistral-7B](https://huggingface.co/BioMistral/BioMistral-7B) porque es un modelo fundacional
entrenado con un conjunto de datos de dominio médico.
### 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
[More Information Needed]
## 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. -->
Este proyecto fue desarrollado durante el [Hackathon #Somos600M](https://somosnlp.org/hackathon) organizado por SomosNLP.
El modelo fue entrenado usando GPU patrocinado por HuggingFace.
<!--
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) -->
Para cualquier duda contactar a: Dr.C Dionis López (inoid2007@gmail.com)