Views
No views yet
Aviso: Este é um modelo de teste experimental, desenvolvido como parte de um Trabalho de Conclusão de Curso (TCC) universitário. Não deve ser utilizado em produção ou em contextos clínicos reais.
| Parâmetro | Valor |
|---|---|
| Modelo base | Qwen/Qwen3.5-0.8B |
| Dataset | AKCIT/MedPT (top-10 especialidades, dataset completo) |
| Exemplos de treino | 145.321 |
| Exemplos de validação | 18.165 |
| Exemplos de teste | 18.166 |
| Método | QLoRA (NF4 4-bit) |
| LoRA r / alpha | 16 / 32 |
| Steps totais | 13.626 |
| Batch efetivo | 32 |
| Framework | Unsloth + TRL SFTTrainer |
| ID | Especialidade |
|---|---|
| 0 | Dentista |
| 1 | Dermatologista |
| 2 | Ginecologista |
| 3 | Oftalmologista |
| 4 | Ortopedista / Traumatologista |
| 5 | Otorrino |
| 6 | Psicólogo |
| 7 | Psicólogo / Psicanalista |
| 8 | Psiquiatra |
| 9 | Urologista |
enable_thinking=False (o Qwen3.5-0.8B entra em loop no thinking mode).1from transformers import AutoTokenizer, AutoModelForCausalLM
2from peft import PeftModel
3
4base_model_id = "Qwen/Qwen3.5-0.8B"
5adapter_id = "MatheusMarquesEiras/qwen35-medpt-top10"
6
7tokenizer = AutoTokenizer.from_pretrained(base_model_id)
8model = AutoModelForCausalLM.from_pretrained(base_model_id, device_map="auto")
9model = PeftModel.from_pretrained(model, adapter_id)
10
11system_prompt = (
12 "Você é um assistente de triagem médica. Dado o relato do paciente, "
13 "indique a especialidade médica mais adequada para o atendimento. "
14 "Responda apenas com o nome da especialidade."
15)
16
17messages = [
18 {"role": "system", "content": system_prompt},
19 {"role": "user", "content": "Tenho sentido dor nos olhos e visão embaçada há uma semana."}
20]
21
22text = tokenizer.apply_chat_template(
23 messages,
24 tokenize=False,
25 add_generation_prompt=True,
26 enable_thinking=False # OBRIGATÓRIO para Qwen3.5-0.8B
27)
28inputs = tokenizer(text, return_tensors="pt").to(model.device)
29output = model.generate(**inputs, max_new_tokens=64)
30print(tokenizer.decode(output[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))enable_thinking=False