Um modelo de voz local pode ficar mais lento com a deteção da palavra de ativação ativa, porque o detetor sempre ligado acrescenta trabalho de pré-processamento, armazenamento temporário, agendamento e transferência de áudio.
Sem uma palavra de ativação, o utilizador pode premir um botão e enviar uma gravação limpa diretamente para o reconhecimento de voz. Com a ativação por palavra de ativação, o servidor doméstico captura continuamente pequenos segmentos de áudio, extrai funcionalidades, avalia um modelo de ativação, conserva o áudio anterior ao disparo e decide quando transferir o controlo para a deteção de atividade vocal e a transcrição. Se essas etapas partilharem núcleos de CPU, dispositivos de áudio, filas ou memória, essa camada adicional pode tornar mais lento um modelo local que, de outro modo, seria rápido, embora o próprio modelo de voz não tenha mudado.
A deteção da palavra de ativação acrescenta um ciclo de inferência sempre ativo
Um motor de palavras de ativação tem de inspecionar o áudio continuamente, em vez de apenas depois de o utilizador iniciar uma gravação. Divide repetidamente o sinal em segmentos, calcula funcionalidades acústicas e avalia um classificador compacto.
O guia de palavras de ativação da Picovoice descreve o detetor como a camada de ativação persistente que funciona antes do pipeline de voz maior.
Mesmo um modelo pequeno consome tempo de CPU agendado e largura de banda de memória. Num servidor doméstico com recursos limitados, essa carga contínua pode apropriar-se dos breves períodos de processamento necessários para o VAD, o Whisper ou a conversão de texto em voz.
As palavras de ativação e o reconhecimento de voz podem duplicar o pré-processamento de áudio
O detetor e o modelo de voz podem reamostrar o áudio, normalizar a amplitude, calcular espectrogramas ou converter canais de forma independente. Contentores separados podem dificultar a observação dessa duplicação.
Um pipeline prático baseado no Whisper concluiu que as etapas de pré-processamento de áudio acumulam latência quando são encadeadas sem uma arquitetura de transmissão partilhada.
O pipeline fica mais lento mesmo quando cada componente apresenta bons resultados nos testes individuais. Reutilizar um único fluxo de áudio descodificado e uma única taxa de amostragem compatível elimina conversões que não acrescentam valor ao reconhecimento.
Meça a extração de funcionalidades e a reamostragem separadamente da inferência do modelo, para que o detetor não seja responsabilizado por trabalho realizado por um adaptador de áudio.
Os buffers de pré-ativação podem atrasar a transferência após a deteção
Um sistema de voz costuma conservar o áudio imediatamente anterior à palavra de ativação, para que o início do comando não se perca. Após a deteção, esse buffer tem de ser reproduzido ou copiado para o fluxo do reconhecedor.
Os utilizadores do Rhasspy descrevem a latência do buffer de reprodução entre a deteção do disparo e o momento em que o ASR começa a receber o comando.
Um pré-ativação demasiado grande, uma cópia bloqueante ou a descarga completa do buffer podem fazer com que o reconhecedor pareça lento, embora a sua primeira inferência só comece mais tarde.
Registe o instante do disparo, o primeiro segmento ASR, a decisão de fim da fala e a primeira transcrição. O maior intervalo indica se o atraso ocorre antes do reconhecimento ou dentro dele.
Núcleos de CPU e filas de áudio partilhados criam contenção
A deteção da palavra de ativação, o VAD, o cancelamento de eco, a transcrição e a conversão de texto em voz podem funcionar na mesma CPU. Uma etapa pode atrasar outra através do agendamento de threads ou de uma fila de áudio cheia.
Uma implementação de assistente de voz local indica que a latência de voz de ponta a ponta depende do pipeline completo, e não apenas do modelo de linguagem ou de voz.
A explicação da ZimaSpace sobre a saturação oculta do servidor aplica-se aqui: uma utilização média baixa da CPU pode esconder um núcleo sobrecarregado ou uma thread de áudio serializada.
Fixar cada componente a núcleos separados nem sempre é necessário, mas a profundidade das filas, o uso de CPU por thread e o tempo de processamento por segmento de áudio devem permanecer abaixo do intervalo real entre segmentos.
Os falsos disparos podem iniciar repetidamente trabalho dispendioso
Uma falsa correspondência da palavra de ativação pode iniciar o VAD, carregar ou despertar o modelo de voz, reproduzir o áudio armazenado e aguardar um comando que nunca chega.
Um artigo sobre a arquitetura de palavras de ativação explica a necessidade de equilibrar os falsos positivos com os disparos não detetados e o atraso da deteção.
Correspondências próximas frequentes podem manter o pipeline de voz ativo ou ocupado, fazendo com que o comando real chegue depois de sessões abandonadas.
Registe a confiança do disparo, a frequência dos disparos, a duração da sessão e se foi detetada fala utilizável. Aumentar o limiar só ajuda quando não provoca um número inaceitável de falsos negativos.
Avalie o detetor e a transferência como etapas de latência separadas
Compare o modo de premir para falar, a palavra de ativação ativa, a palavra de ativação ativa com o ASR parado e a palavra de ativação ativa sob a carga normal em segundo plano. Utilize o mesmo microfone, comando e modelo de voz.
Uma visão geral de engenharia descreve os sistemas de palavras de ativação como sistemas de transmissão em cascata, cujas etapas têm orçamentos próprios de computação e latência.
Registe o atraso dos segmentos de áudio, o tempo do detetor, a espera na fila, a reprodução do buffer, o despertar do modelo, o pré-preenchimento do ASR e a descodificação. Em seguida, otimize a etapa que muda quando a palavra de ativação é ativada.
A solução prática pode ser um detetor mais pequeno, pré-processamento de áudio partilhado, um pré-ativação mais curto, filas limitadas, threads dedicadas ou manter o modelo de voz ativo. Substituir o modelo de voz é desnecessário quando o atraso ocorre antes de este receber áudio.
Centro de Tecnologia e IA
Mais para Ler

Que funcionalidades permitem criar um limite de confiança de IA doméstico em torno de ficheiros sensíveis?
Uma fronteira de confiança para IA doméstica combina encriptação em repouso, permissões de privilégio mínimo, sandboxing em tempo de execução e recuperação com âmbito...

O que faz com que os resultados de pesquisa privada favoreçam ficheiros editados com frequência?
Os ficheiros editados frequentemente obtêm vantagens no posicionamento quando cada atualização acrescenta sinais de atualidade, fragmentos, versões ou interação, sem normalização por fonte.

O que faz com que os modelos de presença de casas inteligentes confundam visitantes com residentes?
Os visitantes podem parecer residentes quando o sistema observa padrões de atividade doméstica, mas não dispõe de um sinal de identidade estável da pessoa...

