- Modelo de tradução de fala para fala em streaming em tempo real de alta fidelidade (High Fidelity)
- Diferente da tradução offline comum, ele gera voz traduzida em tempo real enquanto o usuário está falando
- Também fornece tradução em texto e inclui um recurso de conversão de voz que preserva o estilo da fala original
Arquitetura
- Um modelo decoder-only, projetado para tradução simultânea de fala
- Utiliza a arquitetura multistream do Moshi para modelar simultaneamente a fala original e a fala traduzida
- Gera um fluxo contínuo de saída com taxa de quadros fixa de 12,5 Hz por segundo, além de fornecer tradução em texto com timestamps
Método de treinamento
- São necessários dados alinhados entre fala e texto, tanto do original quanto da tradução, mas na prática esse tipo de dado é escasso
- Por isso, o treinamento é feito com dados sintéticos
- Usa o sistema de tradução automática MADLAD para alinhar fracamente os textos de origem e de tradução
- Aplica regras de alinhamento para que as palavras apareçam apenas no momento em que a tradução se torna previsível a partir do original
- Método 1: inserção de silêncio (silence insertion)
- Método 2: síntese de fala com consciência de alinhamento (alignment-aware TTS)
Inferência
- O Hibiki codifica a fala original em tempo real e gera a fala traduzida
- Sem usar métodos complexos de inferência, adota temperature sampling, compatível com processamento em lote
- É possível ajustar a similaridade da voz por meio do coeficiente de Classifier-Free Guidance
- Quanto maior o coeficiente, mais parecida com a original será a voz gerada, mas se for alto demais a qualidade da tradução pode cair
- Atualmente, o Hibiki suporta apenas tradução de francês para inglês
- O modelo leve Hibiki-M também pode rodar em smartphones
Como executar o modelo
- Pode ser executado em PyTorch, Rust, MLX (macOS) e MLX-Swift (iOS)
- O código do Hibiki é quase idêntico ao do projeto Moshi, e a implementação real pode ser vista no repositório kyutai-labs/moshi
- No momento, são fornecidos apenas dois modelos com suporte a tradução de francês para inglês (FR → EN)
- Hibiki 2B: estrutura Transformer mais profunda, 16 RVQ por stream
- Hibiki 1B: versão leve, 8 RVQ por stream, com execução on-device
2 comentários
Na distribuição em Rust, eles usam candle. (Cargo.toml)
Parece que a tradução em tempo real deve ser um pouco difícil para idiomas com ordem de palavras completamente diferente, então vou dar uma olhada no artigo.