Bark: o modelo que trata a fala como apenas um tipo de som
Transforme textos e gravações em áudio pronto para ouvir
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
Peça uma risada à maioria dos modelos TTS e você receberá silêncio ou algo que parece ter sido inserido de modo grosseiro a partir de uma biblioteca de efeitos sonoros. Bark, o modelo open source da Suno, lida com isso de outro jeito porque nunca foi criado para ser apenas um mecanismo limitado de texto para fala: ele é um modelo generativo de texto para áudio, e a fala é somente uma das coisas que por acaso faz bem. Coloque [laughs] em uma frase e o Bark interpreta a própria risada, dentro do contexto, da mesma forma que gera as palavras ao redor dela.
O que é Bark?
Bark é um modelo generativo de áudio baseado em Transformer, criado pela Suno e lançado sob a licença MIT. Em vez de seguir o pipeline tradicional de TTS — texto para fonemas, depois características acústicas e, por fim, forma de onda —, Bark funciona mais como um modelo de linguagem que produz tokens de áudio em vez de tokens de texto. Ele converte prompts escritos diretamente em uma forma de onda de 24kHz por meio de um pipeline autorregressivo de três estágios: primeiro gera tokens semânticos que representam o conteúdo pretendido, depois tokens acústicos grosseiros e, por fim, tokens acústicos refinados, usando o EnCodec da Meta para a tokenização de áudio subjacente. Não há etapa de conversão para fonemas em nenhum momento: o texto entra e representações de áudio cada vez mais detalhadas saem, de ponta a ponta.
Etiquetas entre colchetes: como risadas e suspiros realmente funcionam
Esse é o recurso que define o Bark, e ele é realmente simples de usar. Sons não verbais e indicações emocionais são acionados inserindo etiquetas diretamente no texto de entrada: [laughter], [sighs], [gasps] e marcadores semelhantes fazem o modelo gerar aquele som no ponto exato da frase, interpretado pela voz que estiver falando naquele momento, em vez de ser acrescentado como um clipe de áudio separado. Além das etiquetas entre colchetes, Bark também interpreta a formatação comum como indicação de interpretação: escrever uma palavra EM MAIÚSCULAS leva o modelo a enfatizá-la, e terminar uma frase com "..." produz uma hesitação natural na fala, sem exigir um parâmetro específico para nenhum dos dois efeitos.
Mais do que fala
Como Bark gera áudio como uma categoria geral, e não apenas fala, ele também pode produzir música simples, ambiência de fundo e efeitos sonoros básicos diretamente a partir de um prompt de texto, capacidades que ficam totalmente fora daquilo para que um modelo TTS dedicado é criado. Ele oferece suporte a mais de uma dúzia de idiomas com alternância natural entre eles, o que significa que um roteiro que muda de idioma no meio de uma frase não exige chamadas de geração separadas. Também vem com vários presets de locutor que abrangem diferentes estilos vocais, em vez de uma única voz padrão.
O que Bark não faz (leia antes de começar)
Vale conhecer antecipadamente algumas limitações honestas, porque elas determinam para que Bark realmente é bom:
Ele não é principalmente um modelo de clonagem de voz. Ao contrário da maioria dos sistemas focados em clonagem, o fluxo de trabalho padrão do Bark gira em torno de seus presets de locutor integrados, em vez de reproduzir qualquer voz de referência a partir de um clipe curto. Se clonar a voz de uma pessoa específica for seu requisito central, um modelo criado especificamente para isso será mais adequado.
A saída pode realmente surpreender. Como Bark é um modelo totalmente generativo, e não um sistema TTS restrito, às vezes pode se desviar do prompt de entrada de maneiras inesperadas: pular uma frase, adicionar um som que não foi solicitado ou simplesmente não dizer exatamente o que você digitou. Essa é uma propriedade estrutural da arquitetura, não um bug que pode ser eliminado por configuração.
Ele é lento e a duração de cada geração é limitada. O pipeline autorregressivo do Bark faz com que uma única frase normalmente leve de 5 a 15 segundos para ser gerada em GPU, e cada chamada de geração fica limitada a aproximadamente 13-14 segundos de áudio. Conteúdos mais longos precisam ser divididos em várias chamadas, em vez de gerados de uma só vez.
Como começar com Bark
- Instale via pip ou clone o repositório.
pip install git+https://github.com/suno-ai/bark.gitpermite começar rapidamente; você também pode clonar o repositório diretamente se quiser inspecionar ou modificar o código. - Confira as versões do PyTorch e do CUDA. Bark requer PyTorch 2.0 ou mais recente, com suporte a CUDA 11.7 ou 12.0 se você estiver usando GPU.
- Use a variante pequena do modelo quando a VRAM for limitada. Definir a variável de ambiente
SUNO_USE_SMALL_MODELS=Trueantes de carregar o modelo permite que Bark rode com aproximadamente 8GB de VRAM, ao custo de alguma qualidade de saída. - Escreva o prompt com as etiquetas no próprio texto. Uma geração básica exige poucas linhas: carregue o modelo, passe uma string de texto que contenha as etiquetas entre colchetes desejadas e grave a forma de onda resultante. As indicações não verbais não precisam de uma etapa de configuração separada.
- Divida roteiros longos em várias gerações. Considerando o limite aproximado de 13-14 segundos por chamada, separe narrações longas em partes do tamanho de uma frase ou parágrafo e concatene o áudio resultante, em vez de esperar que uma única chamada processe um parágrafo inteiro.
- Experimente a integração com Hugging Face Transformers se preferir evitar o repositório independente. Bark tem suporte no Transformers desde a versão 4.31.0, o que pode simplificar a integração se o seu projeto já depende dessa biblioteca.
Dicas para obter melhores resultados
- Use as etiquetas com moderação e dentro do contexto. Uma etiqueta
[laughs]soa natural logo depois de algo realmente engraçado no roteiro; espalhar etiquetas não verbais por toda parte dilui o efeito e pode fazer a interpretação parecer ensaiada, em vez de reativa. - Teste um locutor predefinido antes de concluir que precisa de uma voz personalizada. Como Bark não foi criado em torno de clonagem zero-shot, explorar primeiro seus presets de locutor integrados costuma ser mais rápido do que tentar forçar qualquer voz de referência no pipeline.
- Gere novamente em vez de lutar contra uma saída imprevisível. Dada a natureza generativa do Bark, quando surge um resultado estranho costuma ser mais rápido gerar de novo com o mesmo prompt do que tentar evitá-lo somente por meio de engenharia de prompts.
- Planeje desde o início o limite de duração por chamada. Estruturar antecipadamente o roteiro em trechos naturais evita mais retrabalho do que escrever uma passagem longa e descobrir o limite de duração no meio do projeto.
- Use-o especificamente onde a expressividade importa mais do que a precisão. Interpretação de vozes de personagens, conteúdo animado e projetos criativos de áudio são os casos em que a variedade não verbal do Bark realmente se destaca. Para uma narração precisa e previsível, um modelo TTS mais convencional pode ser a melhor opção.
Bark versus outros modelos TTS expressivos
| Bark | Chatterbox | CosyVoice3 | |
|---|---|---|---|
| Objetivo principal | Texto para áudio generativo | Clonagem de voz com controle emocional | Clonagem multilíngue com dialetos |
| Sons não verbais | Etiquetas nativas entre colchetes, além de música/efeitos | Etiquetas paralinguísticas (variante Turbo) | Não é um recurso dedicado |
| Clonagem de voz | Não é o fluxo de trabalho principal | Sim, zero-shot | Sim, zero-shot |
| Previsibilidade da saída | Pode se desviar do prompt | Mais consistente | Mais consistente |
| Idiomas | 13+ | Inglês (Multilingual: 23) | 9 + 18 dialetos chineses |
| Licença | MIT | MIT | Aberta, com API hospedada disponível |
O nicho específico do Bark é o áudio expressivo e centrado em personagens, no qual risadas, suspiros e mudanças de tom importam mais do que reproduzir a voz exata de uma pessoa. Para esse trabalho específico, poucos modelos open source geram sons não verbais de forma tão natural.
Perguntas frequentes
Como faço o Bark gerar risadas ou suspiros?
Insira etiquetas entre colchetes, como [laughter] ou [sighs], diretamente no texto de entrada, no ponto em que deseja que o som apareça. Bark o interpreta com a voz do locutor atual, sem exigir um efeito de áudio separado.
Bark consegue clonar a voz de uma pessoa específica?
Não como objetivo principal de seu projeto. Bark se baseia em um conjunto de vozes predefinidas, e não em clonagem zero-shot a partir de um clipe de referência. Para clonar uma voz real específica, um modelo dedicado à clonagem é mais adequado.
Bark é gratuito para uso comercial?
Sim. Bark é lançado sob a licença MIT, que permite uso comercial sem royalties ou contratos de licenciamento separados.
Por que Bark às vezes gera algo diferente do que eu digitei?
Bark é um modelo de áudio totalmente generativo, e não um sistema TTS restrito, portanto às vezes pode se desviar do prompt exato. Essa é uma característica conhecida de sua arquitetura, não um problema de configuração.
Qual pode ser a duração de uma única geração do Bark?
Cada chamada de geração fica limitada a aproximadamente 13-14 segundos de áudio; conteúdos mais longos precisam ser divididos em várias partes e gerados separadamente.
Transforme texto em voz com a Echora
Para um fluxo no navegador com um objetivo semelhante, use o Texto para fala da Echora. Insira até 5.000 caracteres, escolha uma voz integrada ou uma voz personalizada salva, adicione tags de interpretação compatíveis quando necessário e ajuste a estabilidade. Depois, você pode ouvir o resultado e baixar o MP3 final.