Intelligenza artificiale
OpenVoice: Clonazione Vocale Istantanea Versatile

Nella sintesi di testo in voce (TTS), la clonazione vocale istantanea (IVC) consente al modello TTS di clonare la voce di qualsiasi speaker di riferimento utilizzando un breve campione audio, senza richiedere ulteriore formazione per lo speaker di riferimento. Questa tecnica è anche conosciuta come sintesi di testo in voce zero-shot. L’approccio di clonazione vocale istantanea consente una personalizzazione flessibile della voce generata e dimostra un valore significativo in una vasta gamma di situazioni del mondo reale, tra cui chatbot personalizzati, creazione di contenuti e interazioni tra esseri umani e Large Language Models (LLM).
Sebbene gli attuali framework di clonazione vocale facciano il loro lavoro bene, sono affetti da alcune sfide nel campo, tra cui Controllo flessibile dello stile vocale, ovvero i modelli mancano della capacità di manipolare gli stili vocali in modo flessibile dopo aver clonato la voce. Un altro grande ostacolo incontrato dagli attuali framework di clonazione istantanea è Clonazione vocale cross-linguistica zero-shot, ovvero per la formazione, gli attuali modelli richiedono l’accesso a un vasto set di dati multilingue di speaker multipli (MSML) indipendentemente dalla lingua.
Per affrontare queste sfide e contribuire al miglioramento dei modelli di clonazione vocale istantanea, gli sviluppatori hanno lavorato su OpenVoice, un framework di clonazione vocale istantanea versatile che replica la voce di qualsiasi utente e genera discorsi in più lingue utilizzando un breve clip audio dallo speaker di riferimento. OpenVoice dimostra che i modelli di clonazione vocale istantanea possono replicare il tono di colore dello speaker di riferimento e raggiungere un controllo granulare sugli stili vocali, tra cui accento, ritmo, intonazione, pause e persino emozioni. Ciò che è ancora più impressionante è che il framework OpenVoice dimostra anche capacità notevoli nel raggiungere la clonazione vocale cross-linguistica zero-shot per lingue esterne al set di dati MSML, consentendo a OpenVoice di clonare voci in nuove lingue senza una formazione estensiva per quella lingua. OpenVoice riesce a fornire risultati di clonazione vocale istantanea superiori mentre è computazionalmente fattibile con costi operativi fino a 10 volte inferiori rispetto alle API attualmente disponibili con prestazioni inferiori.
In questo articolo, parleremo del framework OpenVoice in profondità e scopriremo la sua architettura che gli consente di fornire prestazioni superiori nei compiti di clonazione vocale istantanea. Quindi, iniziamo.
OpenVoice: Abilitando la clonazione vocale istantanea versatile
Come menzionato in precedenza, la clonazione vocale istantanea, anche conosciuta come sintesi di testo in voce zero-shot, consente al modello TTS di clonare la voce di qualsiasi speaker di riferimento utilizzando un breve campione audio senza la necessità di ulteriore formazione per lo speaker di riferimento. La clonazione vocale istantanea è sempre stata un argomento di ricerca caldo con lavori esistenti che includono framework XTTS e VALLE che estraggono l’embedding dello speaker e/o token acustici dal riferimento audio che serve come condizione per il modello auto-regressivo. Il modello auto-regressivo genera quindi token acustici in sequenza e decodifica questi token in un’onda audio grezza.
Sebbene i modelli di clonazione vocale istantanea auto-regressivi clonino il tono di colore in modo notevole, essi falliscono nel manipolare altri parametri di stile, tra cui accento, emozione, pause e ritmo. Inoltre, i modelli auto-regressivi sperimentano anche una bassa velocità di inferenza e i loro costi operativi sono abbastanza alti. Approcci esistenti come il framework YourTTS impiegano un approccio non auto-regressivo che dimostra un’inferenza del discorso significativamente più veloce rispetto ai framework auto-regressivi, ma non sono ancora in grado di fornire ai loro utenti un controllo flessibile sui parametri di stile. Inoltre, sia i framework di clonazione vocale istantanea auto-regressivi che non auto-regressivi richiedono l’accesso a un vasto set di dati multilingue di speaker multipli (MSML) per la clonazione vocale cross-linguistica.
Per affrontare le sfide affrontate dagli attuali framework di clonazione vocale istantanea, gli sviluppatori hanno lavorato su OpenVoice, una libreria di clonazione vocale istantanea open source che mira a risolvere le seguenti sfide affrontate dai framework IVC attuali.
- La prima sfida è quella di abilitare i framework IVC a avere un controllo flessibile sui parametri di stile, oltre al tono di colore, tra cui accento, ritmo, intonazione e pause. I parametri di stile sono cruciali per generare conversazioni naturali e discorsi in contesto, piuttosto che narrare il testo di input in modo monotono.
- La seconda sfida è quella di abilitare i framework IVC a clonare voci cross-linguistiche in un’impostazione zero-shot.
- L’ultima sfida è quella di raggiungere alte velocità di inferenza in tempo reale senza deteriorare la qualità.
Per affrontare i primi due ostacoli, l’architettura del framework OpenVoice è progettata per scindere i componenti nella voce nel miglior modo possibile. Inoltre, OpenVoice genera il tono di colore, la lingua e altre caratteristiche vocali in modo indipendente, consentendo al framework di manipolare individualmente i tipi di lingua e gli stili vocali. Il framework OpenVoice affronta la terza sfida per impostazione predefinita, poiché la struttura scissa riduce la complessità computazionale e le esigenze di dimensione del modello.
OpenVoice: Metodologia e architettura
Il framework tecnico del framework OpenVoice è efficace e sorprendentemente semplice da implementare. Non è un segreto che clonare il tono di colore per qualsiasi speaker, aggiungere una nuova lingua e abilitare un controllo flessibile sui parametri vocali simultaneamente può essere sfidante. Ciò è dovuto al fatto che eseguire questi tre compiti simultaneamente richiede che i parametri controllati si intersechino utilizzando una grande quantità di dati combinatoriali. Inoltre, nella sintesi di testo in voce standard per un singolo speaker, per i compiti che non richiedono la clonazione vocale, è più facile aggiungere il controllo su altri parametri di stile. Sulla base di ciò, il framework OpenVoice mira a scindere i compiti di clonazione vocale istantanea in sottocompiti. Il modello propone di utilizzare un modello di sintesi di testo in voce per lo speaker di base per controllare la lingua e i parametri di stile e impiega un convertitore di tono di colore per includere il tono di colore di riferimento nella voce generata.

Al suo nucleo, il framework OpenVoice impiega due componenti: un convertitore di tono di colore e un modello di sintesi di testo in voce per lo speaker di base. Il modello di sintesi di testo in voce per lo speaker di base è un modello per un singolo speaker o un modello per più speaker che consente un controllo preciso sui parametri di stile, lingua e accento. Il modello genera una voce che viene poi passata al convertitore di tono di colore, che cambia il tono di colore dello speaker di base nel tono di colore dello speaker di riferimento.
Il framework OpenVoice offre molta flessibilità quando si tratta del modello di sintesi di testo in voce per lo speaker di base, poiché può impiegare il modello VITS con leggere modifiche che gli consentono di accettare embedding di lingua e stile nel suo predittore di durata e codificatore di testo. Il framework può anche impiegare modelli come Microsoft TTS che sono commercialmente economici o può distribuire modelli come InstructTTS che sono in grado di accettare prompt di stile. Al momento, il framework OpenVoice impiega il modello VITS, anche se gli altri modelli sono anch’essi una scelta fattibile.
Passando al secondo componente, il convertitore di tono di colore è un componente encoder-decoder che ospita un flusso di normalizzazione invertibile al centro. Il componente encoder nel convertitore di tono di colore è una CNN unidimensionale che accetta lo spettro di Fourier a tempo breve della sintesi di testo in voce per lo speaker di base come input. L’encoder genera quindi mappe di caratteristiche come output. L’estraiettore di tono di colore è una semplice CNN bidimensionale che opera sul mel-spettrogramma della voce di input e genera un vettore di caratteristiche singolo come output che codifica le informazioni del tono di colore. Le layer di flusso di normalizzazione accettano le mappe di caratteristiche generate dall’encoder come input e generano una rappresentazione di caratteristiche che preserva tutte le proprietà di stile ma elimina le informazioni del tono di colore. Il framework OpenVoice applica quindi le layer di flusso di normalizzazione nella direzione inversa e prende le rappresentazioni di caratteristiche come input e output delle layer di flusso di normalizzazione. Il framework decodifica quindi le layer di flusso di normalizzazione in onde audio grezze utilizzando uno stack di convoluzioni unidimensionali trasposte.
L’intera architettura del framework OpenVoice è feed forward senza l’uso di alcun componente auto-regressivo. Il componente convertitore di tono di colore è simile alla conversione vocale a livello concettuale, ma differisce in termini di funzionalità, obiettivi di formazione e bias induttivo nella struttura del modello. Le layer di flusso di normalizzazione condividono la stessa struttura dei modelli di sintesi di testo in voce basati su flusso, ma differiscono in termini di funzionalità e obiettivi di formazione.
Inoltre, esiste un approccio diverso per estrarre rappresentazioni di caratteristiche, il metodo implementato dal framework OpenVoice fornisce una migliore qualità audio. È anche degno di nota che il framework OpenVoice non ha intenzione di inventare componenti nella struttura del modello, ma entrambi i componenti principali, ovvero il convertitore di tono di colore e il modello di sintesi di testo in voce per lo speaker di base, sono entrambi tratti da lavori esistenti. L’obiettivo principale del framework OpenVoice è quello di formare un framework scisso che separa il controllo della lingua e dello stile vocale dalla clonazione del tono di colore. Sebbene l’approccio sia abbastanza semplice, è molto efficace, specialmente per i compiti che controllano gli stili e gli accenti o le nuove generalizzazioni linguistiche. Raggiungere lo stesso controllo utilizzando un framework accoppiato richiede una grande quantità di calcolo e dati e non si generalizza bene alle nuove lingue.
Al suo nucleo, la filosofia principale del framework OpenVoice è quella di scindere la generazione della lingua e degli stili vocali dalla generazione del tono di colore. Una delle principali forze del framework OpenVoice è che la voce clonata è fluente e di alta qualità, a condizione che il modello di sintesi di testo in voce per un singolo speaker parli in modo fluente.
OpenVoice: Esperimento e risultati
Valutare i compiti di clonazione vocale è un compito difficile a causa di numerosi motivi. Innanzitutto, i lavori esistenti spesso impiegano dati di formazione e test diversi, il che rende la comparazione di questi lavori intrinsecamente ingiusta. Sebbene il crowdsourcing possa essere utilizzato per valutare metriche come il punteggio di opinione medio, la difficoltà e la diversità dei dati di test influenzeranno il risultato complessivo in modo significativo. In secondo luogo, i diversi metodi di clonazione vocale hanno diversi dati di formazione e la diversità e la scala di questi dati influenzeranno i risultati in modo significativo. Infine, l’obiettivo principale dei lavori esistenti spesso differisce l’uno dall’altro, quindi differiscono nella loro funzionalità.
A causa dei tre motivi menzionati sopra, è ingiusto confrontare i framework di clonazione vocale esistenti in modo numerico. Invece, ha più senso confrontare questi metodi in modo qualitativo.
Clonazione del tono di colore accurata
Per analizzare le sue prestazioni, gli sviluppatori costruiscono un set di test con individui anonimi, personaggi di gioco e celebrità che formano la base dello speaker di riferimento e ha una vasta distribuzione vocale, tra cui campioni neutri e voci espressive uniche. Il framework OpenVoice è in grado di clonare il tono di colore di riferimento e generare discorsi in più lingue e accenti per qualsiasi speaker di riferimento e i 4 speaker di base.

Controllo flessibile sugli stili vocali
Uno degli obiettivi del framework OpenVoice è controllare gli stili vocali in modo flessibile utilizzando il convertitore di tono di colore che può modificare il colore del tono preservando tutte le altre caratteristiche vocali e proprietà.
Gli esperimenti indicano che il modello preserva gli stili vocali dopo la conversione nel tono di colore di riferimento. In alcuni casi, tuttavia, il modello neutralizza leggermente le emozioni, un problema che può essere risolto passando meno informazioni alle layer di flusso in modo che non possano eliminare l’emozione. Il framework OpenVoice è in grado di preservare gli stili dalla voce di base grazie all’uso di un convertitore di tono di colore. Ciò consente al framework OpenVoice di manipolare il modello di sintesi di testo in voce per lo speaker di base per controllare facilmente gli stili vocali.

Clonazione vocale cross-linguistica
Il framework OpenVoice non include alcun dato di massa per una lingua non vista, eppure è in grado di raggiungere una clonazione vocale cross-linguistica quasi zero-shot. Le capacità di clonazione vocale cross-linguistica del framework OpenVoice sono due:
- Il modello è in grado di clonare il tono di colore dello speaker di riferimento in modo accurato quando la lingua dello speaker di riferimento non è vista nel set di dati multilingue di speaker multipli (MSML).
- Inoltre, nello stesso evento in cui la lingua dello speaker di riferimento non è vista, il framework OpenVoice è in grado di clonare la voce dello speaker di riferimento e parlare nella lingua a condizione che il modello di sintesi di testo in voce per lo speaker di base supporti la lingua.
Pensieri finali
In questo articolo, abbiamo parlato di OpenVoice, un framework di clonazione vocale istantanea versatile che replica la voce di qualsiasi utente e genera discorsi in più lingue utilizzando un breve clip audio dallo speaker di riferimento. L’intuizione principale dietro OpenVoice è che, fintanto che un modello non deve eseguire la clonazione del tono di colore dello speaker di riferimento, un framework può impiegare un modello di sintesi di testo in voce per lo speaker di base per controllare la lingua e gli stili vocali.
OpenVoice dimostra che i modelli di clonazione vocale istantanea possono replicare il tono di colore dello speaker di riferimento e raggiungere un controllo granulare sugli stili vocali, tra cui accento, ritmo, intonazione, pause e persino emozioni. OpenVoice riesce a fornire risultati di clonazione vocale istantanea superiori mentre è computazionalmente fattibile con costi operativi fino a 10 volte inferiori rispetto alle API attualmente disponibili con prestazioni inferiori.












