Nemotron 3 Diarization com Parakeet localmente: quem falou e quando
Autoria: Fahd Mirza · Assistir no YouTube
Vídeo de autoria do canal indicado, não da IANIA; todos os direitos pertencem ao criador. Transcrição, resumo e tradução gerados automaticamente; o conteúdo no idioma original é preservado na versão em idioma original.
Idioma original: inglês
Vídeo original: Nemotron 3 Diarization with Parakeet Locally: Who Spoke When · Canal: Fahd Mirza · 08:18 · Assistir no YouTube
Tópicos: Modelos de IA, Modelos locais e open source, Modelos multimodais
O vídeo instala e testa localmente o Nemotron 3 Diarization, modelo aberto da NVIDIA que identifica quando cada pessoa fala, inclusive em áudio com falas sobrepostas. O apresentador compara os modos offline e ao vivo, mede desempenho e consumo de VRAM e mostra resultados em diferentes idiomas e em áudio de baixa qualidade. Por fim, combina o modelo com o Parakeet para gerar uma transcrição com timestamps e rótulos de falantes.
Pontos-chave
Seção intitulada “Pontos-chave”- O Nemotron 3 Diarization identifica quem falou em cada trecho, usando rótulos genéricos como speaker 0 e speaker 1.
- O modelo pode ser executado em CPU ou GPU e é instalado junto ao extra ASR do NVIDIA NeMo toolkit.
- O modo offline processa blocos maiores de áudio, enquanto o modo ao vivo prioriza baixa latência.
- O teste de desempenho apresentado indica que o modo offline processou um arquivo de 11 minutos em menos de dois segundos; o modo ao vivo levou 79 segundos.
- O apresentador relata consumo de VRAM pouco acima de 1 GB durante o teste.
- O vídeo mostra testes com fala sobreposta, áudio de baixa qualidade e clipes em vários idiomas.
- A combinação de Parakeet e Nemotron 3 produz uma transcrição com timestamps e rótulos de falantes.
Capítulos
Seção intitulada “Capítulos”| Início | Capítulo | Resumo |
|---|---|---|
| 00:01 | Instalação e primeiro teste | O apresentador instala o toolkit NeMo e testa a diarização do Nemotron 3 em um áudio com dois falantes. |
| 02:20 | Modos de execução e benchmarks | Compara os modos offline e ao vivo, observa o consumo de VRAM e comenta benchmarks de diarização. |
| 04:29 | Resultados de desempenho e teste multilíngue | Apresenta métricas do teste com um áudio de 11 minutos e avalia clipes curtos em diferentes idiomas. |
| 06:38 | Transcrição com Parakeet e encerramento | Combina Parakeet com Nemotron 3 para produzir uma transcrição com timestamps e rótulos de falantes. |
Citações
Seção intitulada “Citações”Ele responde quem falou e quando em uma gravação de áudio. — 00:01
Ele nos diz quem falou e quando, não quem são essas pessoas. — 02:20
Você consegue executá-lo facilmente na CPU. — 03:54
O Parakeet vai escrever as palavras com timestamps, e o Nemotron diz quem estava falando em cada momento. — 07:13
Conceitos e entidades
Seção intitulada “Conceitos e entidades”- Nemotron 3 Diarization (modelo): Modelo da NVIDIA demonstrado no vídeo para identificar quando cada falante aparece em uma gravação.
- NVIDIA (empresa): Empresa responsável pelo modelo Nemotron 3 Diarization e pelo toolkit NeMo citado no vídeo.
- NVIDIA NeMo toolkit ASR (ferramenta): Biblioteca de IA de fala da NVIDIA instalada para disponibilizar modelos de reconhecimento de fala, incluindo o de diarização.
- Parakeet (modelo): Modelo usado junto ao Nemotron 3 para gerar as palavras da transcrição com timestamps.
- Hugging Face (empresa): Plataforma de onde o script apresentado carrega o modelo Nemotron 3 Diarization.
Tradução completa (pt-BR)
Seção intitulada “Tradução completa (pt-BR)”00:01 Hoje, a Nvidia lançou o muito aguardado Nemotron 3 Diarization, um modelo de pesos abertos com 100 milhões de parâmetros. Ele identifica quem falou e quando em uma gravação de áudio com até oito pessoas. Funciona ao vivo ou com áudio gravado, lida com falas sobrepostas e pode começar em cerca de 320 milissegundos. Vamos instalá-lo e testá-lo localmente. Também vou explicar a arquitetura. Mas, por
00:32 enquanto isso, deixe-me instalá-lo no meu sistema Ubuntu. Este modelo pode rodar facilmente na CPU, mas também vou mostrar como executá-lo na GPU. Como podem ver, estou instalando o toolkit NeMo ASR. Esta é a biblioteca de IA de voz open source da Nvidia, e o extra ASR adiciona os modelos de fala, incluindo o de diarização. Agora o toolkit NeMo está instalado. Para o primeiro teste, vou usar
01:02 este script, que carrega o modelo Nemotron 3 de diarização do Hugging Face. Em seguida, ele define as configurações de streaming para o modo offline, que usa um buffer grande de 30 segundos para obter a melhor precisão. Por fim, executa o modelo em um clipe em hindi com duas pessoas falando e imprime cada segmento com o horário de início, o horário de fim e o número do speaker. Primeiro, vou reproduzir esse clipe em hindi.
01:46 Atendimento ao cliente. Então, este é um clipe com duas pessoas falando. Ele tem cerca de um minuto. Vou reproduzi-lo, e o modelo já foi baixado e está processando o clipe. Vou explicar essa saída daqui a pouco. Vamos esperar terminar e depois continuamos. Podem ignorar estes números. São apenas ruído de inicialização do modelo Nemotron 3, da arquitetura e de outras coisas. Esta é a saída real, que começa aqui. Como podem ver, cada linha tem um horário de início e de fim
02:20 e um rótulo de speaker, e o modelo encontrou dois speakers: speaker 0 e speaker 1. Os rótulos são genéricos. Então, ele nos diz quem falou e quando, não quem são as pessoas. O speaker zero começou primeiro, depois eles se revezam. Em um trecho, os dois falam ao mesmo tempo, o que é muito bom. Agora, vamos testá-lo com mais alguns áudios e fazer outros testes. Certo, o próximo teste é mais realista. Vamos executar um arquivo de áudio de 11 minutos no modelo em
02:53 dois modos, como podem ver na tela. Também estou fazendo um benchmark. Há o modo offline, que aguarda blocos grandes de áudio e leva mais tempo para processar o arquivo inteiro; e há o modo ao vivo, para chamadas ao vivo com baixa latência. Ele responde a cada bloco minúsculo de 0,3 segundo. Como podem ver, este é o modo de baixa latência e este é o modo offline. Então, se vocês estiverem usando-o para diarização no seu caso de uso, se o caso de uso for uma chamada ao vivo com baixa latência,
03:23 use esta configuração; caso contrário, use a segunda, como em uma chamada real. Agora, vamos ao terminal para executar este benchmark. Ele vai carregar o modelo e executá-lo nos dois modos, e depois veremos os tempos. Enquanto ele roda, também vou mostrar o consumo de VRAM. É só isso que está usando no momento.
03:54 Não é muita coisa, só um pouco mais de 1 GB. Dá para executá-lo facilmente na CPU. Certo. Como podem ver, o modo offline está rodando no momento. Enquanto ele faz o benchmark, vou mostrar alguns dos benchmarks e outras informações sobre este modelo. Este é o ranking do Voice Arena; barras mais baixas são melhores, e o Nemotron 3 Diarization tem a barra mais curta, à esquerda. Ou seja, comete menos erros. Também dá para notar que o próximo melhor modelo open
04:29 é o modelo anterior da própria Nvidia, e o novo modelo claramente o supera. Grandes nomes como 11 Labs, Meta e Assembly AI aparecem bem mais acima. Vejam esta tabela. Ela mostra o quadro completo. O Nemotron fica em primeiro lugar e é open source, algo raro entre os primeiros colocados. As colunas dividem os erros por tipo, como falas não detectadas, falsos alarmes e mistura de speakers. Observem também as colunas de contagem de speakers. Elas mostram com que frequência cada modelo acertou o número de speakers
04:59 correto. Por fim, eles também compartilharam isto. O gráfico mostra os tipos de erros que cada modelo comete. Laranja representa falas não detectadas, azul representa falsos alarmes e verde representa confusão entre speakers. Muitos serviços de transcrição aparecem principalmente em laranja, o que significa que deixam passar muitas falas porque a diarização é um recurso secundário para eles. O Nemotron tem muito pouco laranja e muito pouco verde. Ou seja, raramente deixa passar falas e raramente confunde quem está falando. Então, esta afirmação do gráfico 3
05:31 é bastante ousada. Mas também vamos testá-lo com alguns áudios de baixa qualidade. E aqui está o resultado. Também acabei de remover o ruído e executei o teste de novo; vocês podem ver o resultado. Este é um arquivo de 11 minutos executado nos dois modos. RTFX indica quantas vezes mais rápido do que em tempo real o modelo roda. O modo offline marcou 390 e terminou em menos de 2 segundos. O modo ao vivo marcou 8 e levou 79 segundos, mas ainda acompanha a chamada ao vivo, já que
06:03 qualquer valor acima de um é tempo real. Os números da própria Nvidia são maiores, mas acho que usaram uma GPU diferente nas configurações. Então, o padrão é o mesmo, mesmo que os números exatos sejam diferentes. Agora vamos testar o suporte a vários idiomas com muitos clipes curtos em vários idiomas, como podem ver no meu diretório local. Para cada clipe, vou usar este script, que percorre todos os clipes neste loop e nos diz quantos speakers encontrou e quantos segmentos de fala há. Então, deve ser
06:38 divertido, porque há muitos idiomas, do urdu e hindi a idiomas europeus e africanos, além de alguns outros, incluindo árabe. E pronto. Ele entendeu todos os idiomas, e cada clipe retornou um speaker em todos eles, como esperávamos, já que cada clipe tem uma pessoa falando. E isso é muito bom, porque ele não só identificou o speaker, como também nos forneceu os segmentos em cada um desses idiomas.
07:13 E aqui está o teste final e mais interessante. Vou combinar dois modelos: o Parakeet da Nvidia com este novo modelo de diarização 3, que seria o caso de uso no mundo real. O Parakeet vai transcrever as palavras com marcas de tempo, e o Nemotron vai dizer quem estava falando em cada momento. Este é o resultado. Já executei o teste. Como podem ver, o resultado é uma transcrição com rótulos de speaker. É um áudio em espanhol com duas pessoas. Vou reproduzir rapidamente o clipe e vocês também podem
07:47 conferir um pouco. É assim que vocês podem usar este modelo nos seus próprios casos de uso no mundo real.
08:18 Então é isso sobre este novo modelo. Também comecei recentemente esta newsletter semanal gratuita sobre IA, na qual vocês podem se inscrever em bajmeza.ubstack.com. E, se quiserem ajudar o canal, tornem-se membros. Obrigado por todo o
Transcrição original
[00:01] Today Nvidia released much anticipated Neotron 3 diization an openweight model with 100 million parameters. It answers who spoke when in an audio recording for up to eight speakers. It works live or on recorded audio, handles overlapping speech and can start in about 320 millisecond. We are going to install it and test it out locally. I will also delve into its architecture. But for
[00:32] now, let me get it installed on my Ubuntu system. This model can run easily on CPU, but I will also show you how to run it on GPU. So, you can see that I’m installing Nemo toolkit ASR. This is Nvidia’s open-source speech AI library, and the ASR extra adds the speech models, including the diization one. Now our Nemo toolkit is installed. For the first test, I’m going to use
[01:02] this script which is loading the Neotron 3 dorization model from hugging face. Then it is setting the streaming settings to the offline mode which uses a big 30-cond buffer for best accuracy. Finally, it runs the model on a two speakeraker Hindi clip and prints each segment as start time, end time, and speaker number. Let me first play that Hindi script.
[01:46] customer service. So this is a two speaker one. It is around a minute long. So let me play that script and the model has been downloaded and it is working through that script. I will explain this output in a short bit. Let it finish and then we will go from there. So you can ignore these numbers. These are just startup noise of Neotron 3 model, its architecture and all that stuff. This is a real output which starts from here. So you can see that each line here has a start time and end
[02:20] time and a speaker label and it has found two speakers, speaker 0 and speaker 1. And the labels are generic. So it tells us who spoke when not who they are. Speaker zero started first then they take turns in one spot both talk at once which is quite good. Now um let’s check it against a few more audio and let’s do a few more tests. Okay, next test is more realistic. This is where we are going to run a one 11 minute audio file through the model in
[02:53] two modes as you can see on your screen. So I’m also benchmarking it. There is offline offline mode which waits for big chunks of audio and it is going to finish the whole file uh in longer time and then we have a live mode which is for low latency live calls. It answers after every tiny.3 second chunk. As you can see here this is for the low latency this is for the offline. So if you are using it uh for diorization for your use case if your use case is for low latency
[03:23] live call use this setting otherwise use this second like a real call. Now let me take you my terminal and run this benchmark. It is going to load the model and run it in both modes and we will check out the timings afterwards. So let’s while it runs let me also show you the VRAM consumption. So this is all it is using at the moment.
[03:54] So it’s not much really just over 1 gig. You can easily run it on your CPU. Okay. So you see it is uh the offline mode which is running at the moment. And while it does this benchmarking, let me show you few of the benchmarks and other information about this model. So this one is voice arena leaderboard lower bars are better and neotron 3 diorization is the shortest bar on the bar left. So it makes the fewer mistakes and you can also notice next best open
[04:29] model is Nvidia’s own previous one and the new model clearly beats it. Big names like 11 Labs, Meta and Assembly AI sit much much higher. Look at this one. This table shows the full picture. Neotron takes first place and it is open source which is rare at the top. The column breaks the errors into types like missing speech, false alarms and mixing of speakers. Look at the speaker count columns too. They show how often each model guessed the numbers of speaker
[04:59] right. Finally, they have also shared this. This one shows what kind of mistakes each model makes. Orange is missed speech, blue is false alarm and green is speaker confusion. Many transcription services are mostly orange, meaning they skip a lot of speech because diization is a side feature for them. Neotron has very little orange and very little green. So it rarely misses speech and rarely mixes up who is talking. So this chart 3 claim
[05:31] um is quite high. But we are also going to test it out on some of the low quality audio. And here is the result. I have also just minus the noise and reran this and you can see the result. So this is an 11 minute file in two modes. RTFX means how many times faster than real time the model runs. Offline mode scored 390 finishing in under 2 seconds. Live mode scored 8 taking 79 seconds but that still keeps up with the live call since
[06:03] anything above one is real time. Nvidia’s own numbers are higher but I think they used a different GPU in settings so the pattern matches even if the exact numbers differ here and now let’s test out multilinguality with one uh with many short clips in many languages as you can see on my directory on the local system for each clip what I’m going to do to use this script it is going to go with every script in this loop and then going to tell us how many speaker it found and how any speech segments. So should be
[06:38] fun as it contains many languages from Udu, Hindi to European languages, African languages and few others including Arabic etc. And there you go. It understood every language and every clip came back as one speaker across all languages which is what we expected if each clip is one person talking. And this is actually uh quite good because not only the speaker, it has also given us the segments and each and every language out there.
[07:13] And here is the final and most interesting test. I’m going to combine two models. Nvidia’s parakeet with this new three dorization which would be the real world use case. So parakeet is going to write the words with timestamps and Neotron says who was talking at each moment. And this is the result. I already have just run it. You can see the result is a transcript with speaker labels. It is a twoerson uh audio in Spanish. So let me quickly now play that clip and you can also
[07:47] check it out a little bit. You see this is how you can use this model in your own real world use cases.
[08:18] So that’s it about this new model. I also have recently started this free weekly AI newsletter which you can subscribe at bajmeza.ubstack.com. And if you want to help out the channel, please become a member. Thank you for all the