Dia2 TTS: a evolução com streaming que torna a geração de diálogos quase instantânea
Transforme texto e gravações em obras que se ouvem
Dublagem, stems, covers e efeitos sonoros, tudo no navegador.
- Texto para fala, e também clonagem de voz
- Separe as faixas, ou gere um cover
- Cadastre-se para ouvir primeiro e decidir depois
O modelo Dia original provou que um sistema TTS de pesos abertos podia gerar conversas completas com vários falantes em uma única geração, mas ainda precisava esperar o roteiro inteiro antes de produzir qualquer som. O Dia2 elimina essa espera. Ele é o modelo de diálogo de próxima geração da Nari Labs, reconstruído do zero para streaming: o áudio começa a tocar enquanto o texto ainda está sendo escrito. Isso o torna a primeira opção realmente viável para aplicações de voz conversacionais ao vivo, e não apenas para clipes pré-renderizados.
Por que o Dia2 é uma evolução de verdade, não apenas uma nova versão
O Dia2 mantém tudo o que tornava o Dia original útil — diálogos com tags de falante, alternância natural e interpretação expressiva — e reconstrói o fluxo de geração em torno de uma mudança central: ele não precisa mais ter a transcrição completa antes de começar a falar. Assim que as primeiras palavras chegam, o Dia2 começa a gerar áudio. Essa é a diferença entre um modelo adequado para narração e um modelo adequado para conversas ao vivo.
Há dois tamanhos de checkpoint disponíveis — Dia2-1B e Dia2-2B — oferecendo uma escolha entre streaming mais rápido e leve ou uma saída de maior fidelidade, dependendo de você priorizar latência ou qualidade de voz. Ambos têm pesos abertos sob a licença Apache 2.0, com checkpoints no Hugging Face e código de inferência no GitHub.
Como funciona a geração de diálogos em streaming
O TTS tradicional, incluindo a primeira geração do Dia, é essencialmente um processo em lote: o texto entra e uma forma de onda completa sai. O Dia2 reorganiza isso em um fluxo incremental baseado em alguns mecanismos principais:
- Streaming de áudio token a token. Em vez de esperar um sinal de fim de sequência, o Dia2 emite áudio à medida que a geração avança, permitindo iniciar a reprodução uma fração de segundo depois do envio das primeiras palavras.
- Condicionamento de falantes por prefixo. Em vez do método de um único clipe de referência usado pelo Dia original, o Dia2 atribui um prefixo de voz independente a cada falante. Assim, você pode definir vozes distintas e estáveis para
[S1]e[S2]sem que elas se misturem durante uma conversa longa. - Uma janela de geração de aproximadamente dois minutos. Cada sessão de streaming aceita atualmente até dois minutos de diálogo contínuo em inglês — o suficiente para uma troca natural, uma resposta de agente de voz ou uma cena curta, mas não para um capítulo completo de audiolivro em uma única chamada.
É essa arquitetura que torna o Dia2 uma base para projetos realmente interativos — agentes de voz em tempo real, jogos narrados ao vivo e fluxos de voz para voz — nos quais a geração de uma só vez do Dia original não era rápida o suficiente.
Como executar o Dia2 localmente?
- Instale os pré-requisitos. O Dia2 é distribuído por meio do
uv, e a inferência exige CUDA 12.8 ou superior. Verifique a versão do driver antes da configuração para evitar o erro de instalação mais comum. - Baixe o modelo. Clone
nari-labs/dia2do GitHub ou carregue um checkpoint diretamente pelo nome do repositório:nari-labs/Dia2-2Bpara maior fidelidade ou a variante 1B para menor latência. - Escreva um roteiro com tags. Estruture a entrada com as tags de falante
[S1]/[S2], como você faria com o Dia original. O Dia2 usa a mesma convenção, então os roteiros existentes podem ser aproveitados com poucas alterações. - Ajuste os parâmetros de geração. A escala CFG e a temperatura controlam o quanto a saída segue o roteiro ou introduz variações naturais. Use uma temperatura menor para resultados previsíveis e prontos para produção; uma maior produz resultados mais expressivos e exploratórios.
- Prefira um servidor hospedado em produção. Como a saída de voz não fica vinculada por padrão a um único falante, projetos da comunidade, como o Dia-TTS-Server, permitem a troca dinâmica entre Dia 1.6B, Dia2-1B e Dia2-2B, além de oferecer um endpoint compatível com OpenAI. É um caminho mais rápido para a integração do que criar uma camada de inferência do zero.
Como aproveitar ao máximo o Dia2
- Fixe o prefixo de voz uma vez e reutilize-o em todos os lugares. Como o Dia2 não recebeu ajuste fino para uma única voz, a saída varia entre as execuções se você não fixar um prefixo ou uma semente. Configure isso uma vez por projeto e armazene o valor, em vez de gerar uma voz nova a cada sessão.
- Planeje levando em conta o limite de dois minutos. Para conteúdos mais longos, divida os roteiros em chamadas de streaming sequenciais em vez de forçar uma única solicitação grande demais. Isso também mantém a latência baixa em usos interativos.
- Não pule a verificação da versão do CUDA. A causa mais comum de falhas na configuração do Dia2 é a incompatibilidade do driver; confirme o CUDA 12.8 ou superior antes de investigar qualquer outra coisa.
- Escolha o tamanho do modelo de acordo com o uso. Escolha o Dia2-1B quando o tempo de resposta for mais importante que a qualidade final, como em agentes ao vivo e voz para chat em tempo real. Escolha o Dia2-2B quando a qualidade de saída for prioridade e uma latência um pouco maior for aceitável.
- Respeite a política de uso. A licença da Nari Labs proíbe explicitamente gerar áudio que imite pessoas reais sem a permissão delas. Inclua verificações de consentimento em qualquer produto que aceite prompts de voz fornecidos pelo usuário.
Dia2 vs. Dia 1.6B original
| Dia2 | Dia 1.6B (original) | |
|---|---|---|
| Modo de geração | Streaming, começa antes de receber o texto completo | Em lote, exige a transcrição completa primeiro |
| Tamanhos do modelo | Checkpoints de 1B e 2B | 1.6B, checkpoint único |
| Condicionamento de voz | Prefixo independente por falante | Um único áudio de referência compartilhado |
| Melhor uso | Agentes ao vivo, conversa em tempo real, voz para voz | Diálogo pré-renderizado, podcasts, audiolivros |
| Saída contínua máxima | Aproximadamente dois minutos por sessão | Sem o mesmo tipo de limite de tempo |
| Licença | Apache 2.0 | Apache 2.0 |
Se o seu projeto renderiza áudio com antecedência — um episódio de podcast ou diálogos pré-gravados de um jogo — o Dia 1.6B original continua sendo uma opção competente e um pouco mais simples. O Dia2 se destaca quando o áudio precisa responder a algo que está acontecendo agora.
Perguntas frequentes
O Dia2 é gratuito e de código aberto?
Sim. O Dia2 é distribuído sob a licença Apache 2.0, e os checkpoints 1B e 2B, assim como o código de inferência, estão disponíveis publicamente no GitHub e no Hugging Face.
Qual é a diferença prática entre o Dia2-1B e o Dia2-2B?
O Dia2-1B é a opção mais leve e de menor latência, adequada para interações em tempo real. O Dia2-2B troca um pouco de velocidade por maior fidelidade de áudio. Escolha de acordo com a importância do tempo de resposta ou da qualidade de saída no seu caso de uso.
O Dia2 pode gerar mais de dois minutos de áudio em uma chamada?
Não em uma única sessão de streaming. O limite atual é de aproximadamente dois minutos de fala contínua em inglês. Conteúdos mais longos devem ser divididos em chamadas sequenciais.
O Dia2 substitui o Dia 1.6B original?
Não totalmente. O Dia2 é a melhor escolha para aplicações em tempo real e interativas, mas o Dia 1.6B original continua sendo uma opção sólida e mais simples para projetos que renderizam diálogos offline e com antecedência.
Quais são os requisitos de hardware do Dia2?
O Dia2 exige um ambiente de GPU compatível com CUDA 12.8 ou superior. A VRAM exata varia entre os checkpoints 1B e 2B, e o modelo menor é a opção mais leve para hardware limitado.
Experimente uma funcionalidade de diálogo semelhante
O próprio Dia2 é executado por meio de sua implementação de código aberto. Se quiser prototipar áudio com vários falantes no navegador, experimente o Texto para diálogo como uma funcionalidade semelhante. Ele não é o Dia2 nem oferece seu mecanismo de streaming em tempo real, mas permite explorar uma cena com várias vozes antes de configurar o modelo localmente.