1.1K 1.4K 9

Mambarim-110M

Mambarim-110M é o primeiro modelo de linguagem em português baseado em uma arquitetura de modelo de espaço de estados (Mamba), não em um Transformer.

Mambarim-110M

Camarim Logo


Introdução

Mambarim-110M é o primeiro modelo de linguagem em português baseado em uma arquitetura de modelo de espaço de estados (Mamba), não em um Transformer.

Detalhes

  • Architecture: a Mamba model pre-trained via causal language modeling
  • Size: 119,930,880 parameters
  • Context length: 2048 tokens
  • Dataset: Pt-Corpus Instruct (6.2B tokens)
  • Language: Portuguese
  • Number of steps: 758,423

Neste repositório você encontra o código-fonte utilizado para treinar o modelo.

Utilização Básica

Você precisa instalar transformers a partir do main até que transformers=4.39.0 seja disponibilizado.

pip install git+https://github.com/huggingface/transformers@main

Também é recomendável instalar causal_conv_1d e mamba-ssm usando:

pip install causal-conv1d>=1.2.0
pip install mamba-ssm

Você pode usar a API clássica generate:

from transformers import MambaConfig, MambaForCausalLM, AutoTokenizer
import torch
tokenizer = AutoTokenizer.from_pretrained("dominguesm/mambarim-110m")
model = MambaForCausalLM.from_pretrained("dominguesm/mambarim-110m")
input_ids = tokenizer("O Natal é uma", return_tensors="pt")["input_ids"]
out = model.generate(
    input_ids,
    repetition_penalty=1.2,
    temperature=0.8,
    top_k=50,
    top_p=0.85,
    do_sample=True,
    max_new_tokens=10
)
print(tokenizer.batch_decode(out))
# ["<s> O Natal é uma data em que as pessoas passam horas de lazer e"]

Métricas

As métricas de avaliação foram realizadas utilizando a implementação do EleutherAI LM Evaluation Harness (criada por Eduardo Garcia).

ASSIN2 RTEASSIN2 STSBLUEXENEMFAQUAD NLIHateBROAB ExamsAverage
Qwen-1.8B64.8319.5326.1530.2343.9733.3327.2035.03
TinyLlama-1.1B58.9313.5722.8122.2543.9736.9223.6431.72
TTL-460m53.9312.6622.8119.8749.0133.5927.0631.27
XGLM-564m49.6122.9119.6119.3843.9733.9923.4230.41
Bloom-1b753.604.8121.4218.9643.9734.8923.0528.67
TTL-160m53.362.5821.8418.7543.9736.8822.6028.56
OPT-125m39.772.0021.8417.4243.9747.0422.7827.83
Pythia-16033.3312.8116.1316.6650.3641.0922.8227.60
OLMo-1b34.129.2818.9220.2943.9741.3322.9627.26
Bloom-560m33.338.4818.9219.0343.9737.0723.0526.26
Pythia-410m33.334.8019.4719.4543.9733.3323.0125.33
OPT-350m33.333.6520.7217.3544.7133.3323.0125.15
GPT-2 small33.260.0010.4311.2043.5233.6813.1220.74
GPorTuguese33.333.8514.743.0128.8133.3321.2319.75
Mambarim-110M40.643.1113.9014.7600.1549.0020.2717.72
Samba-1.1B33.331.308.0710.2217.7235.7915.0317.35