Downloads · 30 days
20
5% of all-time downloads
marcosremar2/orpheus-ptbr-v1
orpheus-ptbr-v1 is a text-to-speech model from marcosremar2. Use it when you need text read aloud. It is set up for transformers. The card lists the license as apache-2.0.
Modelo de Text-to-Speech (TTS) para Português Brasileiro, baseado no Orpheus TTS da Canopy Labs.
Downloads · 30 days
20
5% of all-time downloads
All-time downloads
384
Public
Parameters
3.3B
13.2 GB on disk
Likes
1
Public
Click a slice to open those files.
.safetensors6.6 GB · 100%
From the Hugging Face model README
Modelo de Text-to-Speech (TTS) para Português Brasileiro, baseado no Orpheus TTS da Canopy Labs.
| Voz | Gênero | Descrição |
|---|---|---|
erinome | Feminino | Voz feminina brasileira (nova) |
tara | Feminino | Voz original Orpheus |
leo | Masculino | Voz original Orpheus |
zoe | Feminino | Voz original Orpheus |
zac | Masculino | Voz original Orpheus |
jess | Feminino | Voz original Orpheus |
mia | Feminino | Voz original Orpheus |
julia | Feminino | Voz original Orpheus |
leah | Feminino | Voz original Orpheus |
O modelo suporta tags de emoção no início da frase:
"<laugh> Essa piada foi muito boa!"
"<chuckle> Isso me lembra uma história engraçada."
"<sigh> Que dia longo, estou precisando descansar."
"<whisper> Deixa eu te contar um segredo."
"<gasp> Nossa, que susto!"
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
from snac import SNAC
# Carregar modelo
model = AutoModelForCausalLM.from_pretrained(
"marcosremar2/orpheus-ptbr-v1",
torch_dtype=torch.bfloat16,
device_map="auto"
)
tokenizer = AutoTokenizer.from_pretrained("marcosremar2/orpheus-ptbr-v1")
# Tokens especiais
SOH, SOT, EOT, EOH = 128259, 128000, 128009, 128260
SOA, SOS, EOS = 128261, 128257, 128258
# Gerar áudio
voice = "erinome"
text = "Olá, meu nome é Erinome e eu falo português brasileiro."
prompt = f"{voice}: {text}"
text_tokens = tokenizer.encode(prompt, add_special_tokens=False)
input_ids = torch.tensor([[SOH, SOT] + text_tokens + [EOT, EOH, SOA, SOS]], device="cuda")
with torch.no_grad():
outputs = model.generate(
input_ids,
max_new_tokens=1200,
do_sample=True,
temperature=0.6,
top_p=0.8,
repetition_penalty=1.5,
eos_token_id=EOS,
pad_token_id=tokenizer.eos_token_id
)
# Decodificar tokens de áudio com SNAC
audio_tokens = outputs[0][input_ids.shape[1]:].tolist()
# ... (usar SNAC para converter tokens em áudio)
Este modelo foi treinado com os seguintes datasets:
| Propriedade | Valor |
|---|---|
| Dataset | marcosremar2/orpheus-tts-pt-br-v3 |
| Fonte Original | MLS (Multilingual LibriSpeech) - Portuguese |
| Tipo de Áudio | Audiobooks (áudio natural) |
| Amostras | ~1,000 |
| Idioma | Português Brasileiro |
| Descrição | Áudio de alta qualidade de audiobooks em português, usado para treinar o modelo base em PT-BR |
| Propriedade | Valor |
|---|---|
| Dataset | marcosremar2/orpheus-ptbr-dataset-tts-gemini |
| Fonte Original | Áudio sintético gerado pelo Google Gemini TTS |
| Tipo de Áudio | TTS Sintético |
| Amostras | 16,454 |
| Duração Total | 24.69 horas |
| Speaker | erinome (voz feminina) |
| Descrição | Voz feminina brasileira com diversos estilos e emoções, gerada sinteticamente para criar a nova voz "erinome" |
| Métrica | Valor |
|---|---|
| Total de Amostras | ~17,454 |
| Total de Horas | ~25+ horas |
| Idioma | Português Brasileiro |
| Vozes Treinadas | tara, leo, erinome |
| Parâmetro | Valor |
|---|---|
| Learning Rate | 5e-5 |
| LoRA Rank | 64 |
| LoRA Alpha | 128 |
| Batch Size | 2 |
| Gradient Accumulation | 4 |
| Epochs | 1 |
| Precision | bfloat16 |
Apache 2.0
@misc{orpheus-ptbr-v1,
author = {Marcos Remar},
title = {Orpheus TTS - Português Brasileiro},
year = {2025},
publisher = {HuggingFace},
url = {https://huggingface.co/marcosremar2/orpheus-ptbr-v1}
}