Update README.md
Browse files
README.md
CHANGED
@@ -3,200 +3,113 @@ library_name: peft
|
|
3 |
base_model: recogna-nlp/internlm-chatbode-7b
|
4 |
---
|
5 |
|
6 |
-
#
|
7 |
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
## Model Details
|
13 |
-
|
14 |
-
### Model Description
|
15 |
-
|
16 |
-
<!-- Provide a longer summary of what this model is. -->
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
- **Developed by:** [More Information Needed]
|
21 |
-
- **Funded by [optional]:** [More Information Needed]
|
22 |
-
- **Shared by [optional]:** [More Information Needed]
|
23 |
-
- **Model type:** [More Information Needed]
|
24 |
-
- **Language(s) (NLP):** [More Information Needed]
|
25 |
-
- **License:** [More Information Needed]
|
26 |
-
- **Finetuned from model [optional]:** [More Information Needed]
|
27 |
-
|
28 |
-
### Model Sources [optional]
|
29 |
-
|
30 |
-
<!-- Provide the basic links for the model. -->
|
31 |
-
|
32 |
-
- **Repository:** [More Information Needed]
|
33 |
-
- **Paper [optional]:** [More Information Needed]
|
34 |
-
- **Demo [optional]:** [More Information Needed]
|
35 |
-
|
36 |
-
## Uses
|
37 |
-
|
38 |
-
<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
|
39 |
-
|
40 |
-
### Direct Use
|
41 |
-
|
42 |
-
<!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
|
43 |
-
|
44 |
-
[More Information Needed]
|
45 |
-
|
46 |
-
### Downstream Use [optional]
|
47 |
-
|
48 |
-
<!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
|
49 |
-
|
50 |
-
[More Information Needed]
|
51 |
-
|
52 |
-
### Out-of-Scope Use
|
53 |
-
|
54 |
-
<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
|
55 |
-
|
56 |
-
[More Information Needed]
|
57 |
-
|
58 |
-
## Bias, Risks, and Limitations
|
59 |
-
|
60 |
-
<!-- This section is meant to convey both technical and sociotechnical limitations. -->
|
61 |
-
|
62 |
-
[More Information Needed]
|
63 |
-
|
64 |
-
### Recommendations
|
65 |
|
66 |
-
<!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
|
67 |
|
68 |
-
|
69 |
|
70 |
-
|
71 |
|
72 |
-
Use the code below to get started with the model.
|
73 |
|
74 |
-
|
75 |
-
|
76 |
-
## Training Details
|
77 |
-
|
78 |
-
### Training Data
|
79 |
-
|
80 |
-
<!-- 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. -->
|
81 |
-
|
82 |
-
[More Information Needed]
|
83 |
-
|
84 |
-
### Training Procedure
|
85 |
-
|
86 |
-
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
|
87 |
-
|
88 |
-
#### Preprocessing [optional]
|
89 |
-
|
90 |
-
[More Information Needed]
|
91 |
-
|
92 |
-
|
93 |
-
#### Training Hyperparameters
|
94 |
-
|
95 |
-
- **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
|
96 |
-
|
97 |
-
#### Speeds, Sizes, Times [optional]
|
98 |
-
|
99 |
-
<!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
|
100 |
-
|
101 |
-
[More Information Needed]
|
102 |
-
|
103 |
-
## Evaluation
|
104 |
-
|
105 |
-
<!-- This section describes the evaluation protocols and provides the results. -->
|
106 |
-
|
107 |
-
### Testing Data, Factors & Metrics
|
108 |
-
|
109 |
-
#### Testing Data
|
110 |
-
|
111 |
-
<!-- This should link to a Dataset Card if possible. -->
|
112 |
-
|
113 |
-
[More Information Needed]
|
114 |
-
|
115 |
-
#### Factors
|
116 |
-
|
117 |
-
<!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
|
118 |
-
|
119 |
-
[More Information Needed]
|
120 |
-
|
121 |
-
#### Metrics
|
122 |
-
|
123 |
-
<!-- These are the evaluation metrics being used, ideally with a description of why. -->
|
124 |
-
|
125 |
-
[More Information Needed]
|
126 |
|
127 |
-
### Results
|
128 |
|
129 |
-
[More Information Needed]
|
130 |
|
131 |
-
|
132 |
|
|
|
|
|
|
|
133 |
|
|
|
|
|
|
|
134 |
|
135 |
-
|
136 |
|
137 |
-
|
138 |
|
139 |
-
|
140 |
|
141 |
-
|
142 |
|
143 |
-
|
|
|
144 |
|
145 |
-
|
146 |
|
147 |
-
|
148 |
-
- **Hours used:** [More Information Needed]
|
149 |
-
- **Cloud Provider:** [More Information Needed]
|
150 |
-
- **Compute Region:** [More Information Needed]
|
151 |
-
- **Carbon Emitted:** [More Information Needed]
|
152 |
|
153 |
-
## Technical Specifications [optional]
|
154 |
|
155 |
-
|
156 |
|
157 |
-
|
158 |
|
159 |
-
|
160 |
|
161 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
162 |
|
163 |
-
|
164 |
|
165 |
-
|
166 |
|
167 |
-
|
168 |
|
169 |
-
[More Information Needed]
|
170 |
|
171 |
-
##
|
172 |
|
173 |
-
|
174 |
|
175 |
-
|
176 |
|
177 |
-
|
178 |
|
179 |
-
**
|
|
|
|
|
180 |
|
181 |
-
[More Information Needed]
|
182 |
|
183 |
-
##
|
184 |
|
185 |
-
|
186 |
|
187 |
-
|
|
|
188 |
|
189 |
-
|
|
|
190 |
|
191 |
-
|
|
|
|
|
192 |
|
193 |
-
|
|
|
194 |
|
195 |
-
|
196 |
|
197 |
-
|
198 |
|
199 |
-
|
200 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
201 |
|
202 |
-
- PEFT 0.10.0
|
|
|
3 |
base_model: recogna-nlp/internlm-chatbode-7b
|
4 |
---
|
5 |
|
6 |
+
# DrBode 240: Assistente Virtual Médico em Português Brasileiro
|
7 |
|
8 |
+
<p align="center">
|
9 |
+
<img src="https://huggingface.co/recogna-nlp/doutor-bode-7b-240k/resolve/main/Logo_DrBode.jpg" alt="Bode Logo" width="400" style="margin-left:'auto' margin-right:'auto' display:'block'"/>
|
10 |
+
</p>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11 |
|
|
|
12 |
|
13 |
+
## Visão Geral
|
14 |
|
15 |
+
**DrBode 240** é um modelo de linguagem de pequeno porte (SLM) ajustado para responder a perguntas médicas em português brasileiro. Este modelo foi treinado com **240 mil** amostras, sendo parte delas dados médicos e outra parte composta por dados de instruções gerais. O objetivo do DrBode 240 é oferecer respostas confiáveis e relevantes para questões médicas, auxiliando tanto profissionais de saúde quanto usuários finais em suas dúvidas sobre saúde.
|
16 |
|
|
|
17 |
|
18 |
+
<!-- Provide a quick summary of what the model is/does. -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
19 |
|
|
|
20 |
|
|
|
21 |
|
22 |
+
## Descrição do Modelo
|
23 |
|
24 |
+
O **DrBode 240** foi desenvolvido a partir do modelo [ChatBode](https://huggingface.co/recogna-nlp/internlm-chatbode-7b), uma versão ajustada do [InternLM2](https://huggingface.co/internlm/internlm2-chat-7b) adaptada para seguir instruções em português. O **DrBode 240** foi ajustado com **33% de dados médicos** e **67% de dados de instruções gerais**, buscando encontrar um equilíbrio entre a especialização médica e a capacidade de lidar com diferentes tipos de perguntas.
|
25 |
+
|
26 |
+
Atributos principais:
|
27 |
|
28 |
+
- **Modelo Base:** InternLM2, especializado em seguir instruções em português brasileiro.
|
29 |
+
- **Ajuste Fino:** Usou 240 mil amostras, com uma combinação de dados médicos e de instruções gerais.
|
30 |
+
- **Domínio de Foco:** Respostas a perguntas relacionadas à saúde, sintomas médicos e orientações gerais.
|
31 |
|
32 |
+
Este modelo foi ajustado para ser mais versátil em cenários não médicos, ao mesmo tempo em que manteve uma capacidade razoável de responder a perguntas do domínio médico.
|
33 |
|
34 |
+
O ajuste fino foi feito com **33% de dados médicos** e **67% de dados de instruções gerais**, permitindo que o modelo mantenha um equilíbrio entre especialização médica e versatilidade em outros domínios.
|
35 |
|
36 |
+
## Dados de Treinamento
|
37 |
|
38 |
+
O **DrBode 240** foi treinado com uma combinação de dois principais conjuntos de dados traduzidos para o português:
|
39 |
|
40 |
+
- **HealthCareMagic-100k-en:** Um conjunto de 100.000 amostras de interações médico-paciente, traduzidas do inglês para o português utilizando o modelo GPT-3.5.
|
41 |
+
- **MedQuAD:** Contém aproximadamente 9.500 pares de perguntas e respostas relacionados à área médica, também traduzidos.
|
42 |
|
43 |
+
Esses conjuntos de dados fornecem uma base sólida para o modelo responder a perguntas clínicas comuns, mas ainda há a necessidade de dados nativos que abordem condições e nuances culturais específicas do Brasil, como doenças endêmicas.
|
44 |
|
45 |
+
Além disso, o modelo foi treinado com uma grande quantidade de dados de instruções gerais (67%), retirados de outros domínios, para melhorar sua capacidade de seguir comandos em contextos mais amplos e diversos.
|
|
|
|
|
|
|
|
|
46 |
|
|
|
47 |
|
48 |
+
<!-- Provide a longer summary of what this model is. -->
|
49 |
|
50 |
+
## Desempenho do Modelo
|
51 |
|
52 |
+
O desempenho do **DrBode 240** foi avaliado com base em seis critérios principais:
|
53 |
|
54 |
+
- **Precisão:** 3.4/5
|
55 |
+
- **Completude:** 3.4/5
|
56 |
+
- **Adequação:** 3.5/5
|
57 |
+
- **Segurança:** 3.2/5
|
58 |
+
- **Gramaticalidade:** 3.8/5
|
59 |
+
- **Coerência:** 4.2/5
|
60 |
+
-
|
61 |
+
O modelo **DrBode 240** mostrou-se eficaz em fornecer respostas bem estruturadas e coerentes, com um desempenho confiável em termos de clareza e gramática. No entanto, a precisão médica e a segurança das respostas precisam de mais atenção, já que o modelo é menos especializado em dados médicos do que o **DrBode 360.**
|
62 |
|
63 |
+
## Avaliação Qualitativa
|
64 |
|
65 |
+
As respostas geradas pelo **DrBode 240** foram avaliadas por profissionais médicos, que analisaram sua capacidade de fornecer informações corretas e seguras. Durante a avaliação, foi observado que o modelo, embora bastante eficaz na construção de respostas coerentes, apresentou algumas limitações em termos de precisão médica, o que reflete o fato de que a maior parte de seu ajuste fino envolveu dados de instruções gerais.
|
66 |
|
67 |
+
A utilização de mais dados de instruções gerais (67%) fez com que o modelo se saísse melhor em contextos não médicos, mas limitou sua especialização na área da saúde. Isso fez com que o **DrBode 240** fosse uma boa escolha para perguntas mais gerais, mas com algumas restrições em contextos clínicos mais críticos.
|
68 |
|
|
|
69 |
|
70 |
+
## Riscos e Considerações
|
71 |
|
72 |
+
Embora o **DrBode 240** seja uma ferramenta útil para fornecer orientações gerais sobre saúde, ele deve ser usado com cautela, especialmente em situações médicas delicadas. O modelo não substitui o aconselhamento médico profissional, e erros podem ocorrer ao sugerir tratamentos, especialmente para condições específicas de regiões, como o Brasil.
|
73 |
|
74 |
+
Além disso, o uso de dados traduzidos pode fazer com que o modelo perca algumas nuances culturais e regionais importantes para a prática médica no Brasil.
|
75 |
|
76 |
+
## Direções futuras
|
77 |
|
78 |
+
- **Conjuntos de dados nativos:** há uma necessidade urgente de desenvolver conjuntos de dados nativos em português brasileiro para refletir melhor os desafios regionais de saúde.
|
79 |
+
- **Ajuste fino aprimorado:** o trabalho futuro envolverá o ajuste fino diretamente no InternLM2 com conjuntos de dados otimizados para mitigar os efeitos do esquecimento catastrófico.
|
80 |
+
- **Avaliação robusta:** estruturas de avaliação mais estruturadas e consistentes são necessárias para avaliar melhor a qualidade e a segurança das respostas do modelo em cenários do mundo real.
|
81 |
|
|
|
82 |
|
83 |
+
## Como Usar
|
84 |
|
85 |
+
Aqui está um exemplo de como usar o modelo **DrBode 240:**
|
86 |
|
87 |
+
```python
|
88 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
89 |
|
90 |
+
tokenizer = AutoTokenizer.from_pretrained("recogna-nlp/doutor-bode-7b-240k")
|
91 |
+
model = AutoModelForCausalLM.from_pretrained("recogna-nlp/doutor-bode-7b-240k")
|
92 |
|
93 |
+
input_text = "Quais são os sintomas da dengue?"
|
94 |
+
inputs = tokenizer(input_text, return_tensors="pt")
|
95 |
+
outputs = model.generate(**inputs)
|
96 |
|
97 |
+
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
|
98 |
+
```
|
99 |
|
100 |
+
## Referência
|
101 |
|
102 |
+
Se você utilizar o **DrBode 240** em sua pesquisa ou aplicativo, por favor, cite o seguinte trabalho:
|
103 |
|
104 |
+
```
|
105 |
+
@misc{paiola2024adaptingllmsmedicaldomain,
|
106 |
+
title={Adapting LLMs for the Medical Domain in Portuguese: A Study on Fine-Tuning and Model Evaluation},
|
107 |
+
author={Pedro Henrique Paiola and Gabriel Lino Garcia and João Renato Ribeiro Manesco and Mateus Roder and Douglas Rodrigues and João Paulo Papa},
|
108 |
+
year={2024},
|
109 |
+
eprint={2410.00163},
|
110 |
+
archivePrefix={arXiv},
|
111 |
+
primaryClass={cs.CL},
|
112 |
+
url={https://arxiv.org/abs/2410.00163},
|
113 |
+
}
|
114 |
+
```
|
115 |
|
|