Downloads · 30 days
6
8% of all-time downloads
Assaoka/Tucano2-qwen-0.5b-Merge-FinBERT
Tucano2-qwen-0.5b-Merge-FinBERT is a text generation model from Assaoka. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
Este é um modelo especialista em análise de sentimento em língua portuguesa, construído usando a estratégia Knowledge Accumulation (Prior). O modelo foi inicialmente pre-mesclado (merged) com outros especialistas usan…
Downloads · 30 days
6
8% of all-time downloads
All-time downloads
80
Public
Parameters
491M
982 MB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors982 MB · 99%
From the Hugging Face model README
Este é um modelo especialista em análise de sentimento em língua portuguesa, construído usando a estratégia Knowledge Accumulation (Prior). O modelo foi inicialmente pre-mesclado (merged) com outros especialistas usando TIES Merge e, em seguida, sofreu ajuste fino (fine-tuning) no conjunto de dados lucas-leme/Sentiments-FinBERT-PT-BR.
Este desenvolvimento faz parte do artigo científico submetido ao ENIAC 2026: "United Experts: Merging Small Language Models for Multi-Domain Sentiment Analysis in Portuguese".
Assaoka/Tucano2-qwen-0.5B-ReLiSAAssaoka/Tucano2-qwen-0.5B-BrighterAssaoka/Tucano2-qwen-0.5B-PhrasebankAssaoka/Tucano2-qwen-0.5B-GoEmotionsMétricas padronizadas (Macro F1 · Micro F1 · Accuracy · Hamming Loss) calculadas sobre o conjunto de teste completo de cada domínio. A coluna Baseline corresponde ao modelo base Polygl0t/Tucano2-qwen-0.5B-Instruct sem fine-tuning.
| Dataset / Tarefa | Métrica | Valor | Baseline |
|---|---|---|---|
| RELI-SA | Macro F1<br>Micro F1<br>Accuracy<br>Hamming Loss | 40.23%<br>56.30%<br>56.30%<br>0.4370 | 30.66%<br>37.07%<br>37.07%<br>0.6293 |
| BRIGHTER | Macro F1<br>Micro F1<br>Accuracy<br>Hamming Loss | 39.47%<br>54.66%<br>39.11%<br>0.1445 | 33.47%<br>38.07%<br>24.66%<br>0.2731 |
| FINBERT-PT-BR | Macro F1<br>Micro F1<br>Accuracy<br>Hamming Loss | 79.72%<br>81.19%<br>81.19%<br>0.1881 | 54.77%<br>66.34%<br>66.34%<br>0.3366 |
| FINANCIAL-PHRASEBANK | Macro F1<br>Micro F1<br>Accuracy<br>Hamming Loss | 66.10%<br>65.12%<br>65.12%<br>0.3488 | 38.13%<br>39.32%<br>39.32%<br>0.6068 |
| GO-EMOTIONS | Macro F1<br>Micro F1<br>Accuracy<br>Hamming Loss | 21.48%<br>32.59%<br>27.95%<br>0.0528 | 7.59%<br>10.31%<br>6.08%<br>0.0720 |
O modelo responde a prompts estruturados com instruções do sistema em português. Exemplo real de inferência estruturada:
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "Assaoka/Tucano2-qwen-0.5b-Merge-FinBERT"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, device_map="auto")
messages = [
{"role": "system", "content": "Você é um analista financeiro. Classifique o sentimento da frase sobre finanças em português fornecida em uma das seguintes opções: 'positivo', 'negativo', 'neutro'. Sua tarefa é retornar um JSON válido no seguinte formato: {"sentimento": "positivo/negativo/neutro"}. Responda APENAS com o JSON válido."},
{"role": "user", "content": "Frase: O lucro da empresa cresceu 15% neste trimestre, superando as expectativas do mercado."}
]
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(prompt, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=100)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
# Resposta esperada: {"sentimento": "positivo"}