Instructions to use mangaba-ai/Mangaba-Base-91M with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use mangaba-ai/Mangaba-Base-91M with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="mangaba-ai/Mangaba-Base-91M")# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("mangaba-ai/Mangaba-Base-91M") model = AutoModelForCausalLM.from_pretrained("mangaba-ai/Mangaba-Base-91M", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use mangaba-ai/Mangaba-Base-91M with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf mangaba-ai/Mangaba-Base-91M:F16 # Run inference directly in the terminal: llama cli -hf mangaba-ai/Mangaba-Base-91M:F16
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf mangaba-ai/Mangaba-Base-91M:F16 # Run inference directly in the terminal: llama cli -hf mangaba-ai/Mangaba-Base-91M:F16
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf mangaba-ai/Mangaba-Base-91M:F16 # Run inference directly in the terminal: ./llama-cli -hf mangaba-ai/Mangaba-Base-91M:F16
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf mangaba-ai/Mangaba-Base-91M:F16 # Run inference directly in the terminal: ./build/bin/llama-cli -hf mangaba-ai/Mangaba-Base-91M:F16
Use Docker
docker model run hf.co/mangaba-ai/Mangaba-Base-91M:F16
- LM Studio
- Jan
- vLLM
How to use mangaba-ai/Mangaba-Base-91M with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "mangaba-ai/Mangaba-Base-91M" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mangaba-ai/Mangaba-Base-91M", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker
docker model run hf.co/mangaba-ai/Mangaba-Base-91M:F16
- SGLang
How to use mangaba-ai/Mangaba-Base-91M with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "mangaba-ai/Mangaba-Base-91M" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mangaba-ai/Mangaba-Base-91M", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "mangaba-ai/Mangaba-Base-91M" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "mangaba-ai/Mangaba-Base-91M", "prompt": "Once upon a time,", "max_tokens": 512, "temperature": 0.5 }' - Ollama
How to use mangaba-ai/Mangaba-Base-91M with Ollama:
ollama run hf.co/mangaba-ai/Mangaba-Base-91M:F16
- Unsloth Desktop
- Docker Model Runner
How to use mangaba-ai/Mangaba-Base-91M with Docker Model Runner:
docker model run hf.co/mangaba-ai/Mangaba-Base-91M:F16
- Lemonade
How to use mangaba-ai/Mangaba-Base-91M with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull mangaba-ai/Mangaba-Base-91M:F16
Run and chat with the model
lemonade run user.Mangaba-Base-91M-F16
List all available models
lemonade list
- Atomic Chat
Mangaba-Base-91M
Um modelo de linguagem de 91 milhões de parâmetros treinado do zero em português do Brasil pela Mangaba AI.
Pesos e tokenizer próprios: o treino começou de pesos aleatórios, sem modelo base de terceiros. Ele foi treinado em uma NVIDIA L40S da Mangaba, em datacenter no Brasil, e serve de professor para a destilação do Mangaba-Nano-1M.
📄 Relatório técnico: https://huggingface.co/spaces/mangaba-ai/mangaba-base-91m-artigo
Resultados
Mesma suíte do Mangaba-Nano (bench.py), rodada em CPU com float32.
| Modelo | Parâmetros | Tokens de treino | BPB GigaVerbo ↓ | BPB Wikipédia PT ↓ | CALAME-PT ↑ | Story Cloze PT ↑ |
|---|---|---|---|---|---|---|
| Mangaba-Base-91M | 91M | 2,5B | 0,886 | 1,091 | 45,7% | 57,8% |
| Tucano-160m | 162M | — | 0,929 | 0,955 | 45,6% | 61,7% |
| Mangaba-Nano-1M | 1,41M | 2,85B | 1,282 | 1,593 | 17,1% | 56,2% |
- BPB (bits por byte) independe do tokenizer. GigaVerbo é a validação separada do corpus de treino; Wikipédia PT são 400 artigos fora desse domínio.
- O Mangaba-Base-91M supera o Tucano-160m (1,8× maior) no domínio de treino e empata no CALAME-PT. Na Wikipédia e no Story Cloze fica atrás: viu só 2,5B tokens, e de menos fontes.
Arquitetura
Decoder no desenho padrão atual (o mesmo de Qwen3 e Llama), carregado com Qwen3ForCausalLM do Transformers. A classe é só a implementação desse desenho: nenhum peso da Qwen foi usado (por isso o config.json mostra model_type: qwen3).
| Camadas | 14 |
| Dimensão oculta | 768 |
| FFN (SwiGLU) | 2.048 |
| Atenção | 12 cabeças de query, 4 de key/value (GQA), head_dim 64, QK-norm |
| Posição | RoPE (θ = 10.000), contexto de 512 tokens |
| Normalização | RMSNorm pré-camada |
| Embeddings | amarrados entre entrada e saída |
| Vocabulário | 4.096 tokens (BPE byte-level treinado do zero; o mesmo do Mangaba-Nano) |
| Parâmetros | 91.250.176 (3.145.728 de embedding) |
Treino
- Otimizador: Muon (Newton-Schulz, momentum de Nesterov) com LR 0,02 nas matrizes internas, e AdamW com LR 0,006 em embeddings e normas.
- Agenda: Warmup-Stable-Decay com resfriamento 1−√t nos últimos 25%. O número de passos foi ajustado à janela de GPU disponível.
- Lote e duração: 262.144 tokens por passo, 9.621 passos, 2,52 bilhões de tokens.
- Hardware: 4h52 em uma L40S (~145 mil tokens/s), bf16 com
torch.compile. - Dados: GigaVerbo-v2
edu_highe GigaVerbo-v2-synth, com amostragem proporcional ao tamanho de cada arquivo (~24% sintético). A validação é separada e nunca entrou no treino. - Código:
train2.pyneste repositório.
Uso
from transformers import AutoModelForCausalLM, AutoTokenizer
tok = AutoTokenizer.from_pretrained("mangaba-ai/Mangaba-Base-91M")
model = AutoModelForCausalLM.from_pretrained("mangaba-ai/Mangaba-Base-91M")
ids = tok("A fotossíntese é o processo", return_tensors="pt").input_ids
out = model.generate(ids, max_new_tokens=60, do_sample=True, temperature=0.7, top_p=0.9, repetition_penalty=1.15)
print(tok.decode(out[0], skip_special_tokens=True))
Também há arquivos GGUF (F16 e Q8_0) para o llama.cpp.
Exemplos (amostragem, temperatura 0,7)
A fotossíntese é o processo pelo qual a planta realiza sua respiração, através da luz que recebe do sol.
Esse processo acontece na presença de elementos químicos como enxofre e nitrogênio.
Para fazer um bolo de cenoura, você pode usar pedaços pequenos e então cozinhe-os em água quente.
Isso ajudará a evitar que eles se tornem grumosos demais para serem ingeridos.
O texto é fluente e mantém o tema, mas os fatos não são confiáveis: o primeiro exemplo erra a química da fotossíntese.
Limitações
- É um modelo base: sem ajuste de instrução nem alinhamento. Não use para responder perguntas factuais.
- Contexto máximo de 512 tokens, com vocabulário pequeno (4.096 tokens, ≈3,5 caracteres por token).
- Herda os vieses do texto da web em português.
Licença
Pesos, tokenizer e código sob Apache-2.0. Os dados seguem as licenças das fontes listadas nos cartões do GigaVerbo-v2.
Feito pela Mangaba AI.
- Downloads last month
- -
Datasets used to train mangaba-ai/Mangaba-Base-91M
Polygl0t/gigaverbo-v2-synth
Evaluation results
- bits_per_byte on GigaVerbo-v2 (validação separada)self-reported0.886
- accuracy on CALAME-PTself-reported0.457