IBM Cloud Docs
Comprendere la sintonia con l'esempio

Comprendere la sintonia con l'esempio

La funzione Tune by Example è una funzionalità beta supportata solo per i modelli e le voci personalizzate in inglese americano.

La funzione Tune by Example consente di controllare esattamente il modo in cui il testo specificato viene pronunciato dal servizio. Questa funzione consente di dettare l'intonazione, lo stress, il tempo, la cadenza, il ritmo e le pause del testo sintetizzato. Questi aspetti del discorso vengono chiamati collettivamente prosodia.

L'utente crea un prompt personalizzato fornendo un esempio di registrazione che riproduce il testo nel modo in cui desidera sentirlo, e il servizio duplica le qualità del discorso registrato con le sue voci. Il prompt parlato può enfatizzare sillabe o parole diverse, introdurre pause e, in generale, rendere l'audio sintetizzato più naturale e appropriato al contesto in cui viene utilizzato.

Questa funzione fornisce un meccanismo più semplice rispetto all'SSML standard per modificare il modo in cui il parlato viene sintetizzato. Ad esempio, l'uso degli attributi dell'elemento SSML <prosody> può essere difficile. Tune by Example elimina la necessità di questo tipo di SSML, consentendo all'utente di registrare il testo così come vuole che sia pronunciato dal servizio, invece di richiedere l'emulazione della prosodia prevista con elementi e attributi SSML.

È possibile migliorare ulteriormente la qualità di un prompt creando un modello di altoparlante opzionale che contiene informazioni sulla voce dell'oratore. Si crea un modello di altoparlante fornendo un campione audio della voce di un utente. Il servizio estrae le informazioni dall'audio di esempio per addestrarsi alla voce, in modo da produrre messaggi di qualità superiore per quell'interlocutore.

Per una panoramica della funzione Tune by Example, compresa una demo con script di esempio, consultare il blog Tune by Example: How to Tune Watson Text to Speech for Better Intonations.

Stato e supporto

Le seguenti informazioni sullo stato e sull'assistenza si applicano a Tune by Example:

  • Tune by Example è una funzionalità beta disponibile solo per l'inglese americano. È possibile aggiungere richieste solo ai modelli personalizzati la cui lingua è en-US. È possibile utilizzare un prompt personalizzato solo con le voci in inglese americano.
  • I modelli personalizzati, i prompt personalizzati e i modelli di altoparlante sono di proprietà dell'istanza del servizio le cui credenziali sono utilizzate per crearli. La registrazione delle richieste e la riservatezza dei dati sono supportate per tutti i componenti di personalizzazione. Per ulteriori informazioni su questi argomenti, vedere Note d'uso per la personalizzazione.
  • IBM Cloud Per utilizzare Tune by Example è necessario disporre del piano tariffario Standard o Premium. La funzione fa parte della personalizzazione, che è limitata a questi piani. Per ulteriori informazioni, vedere il servizio Text to Speech nel IBM Cloud® Nel catalogoIBM Cloud®.

Come funziona Tune by Example

Durante il test di un'applicazione, potreste scoprire che il servizio non sintetizza adeguatamente alcuni aspetti del vostro testo. In alcuni casi, ad esempio, è possibile modificare aspetti specifici dell'audio, come le parole enfatizzate e la posizione o la durata delle pause. In altri casi, si potrebbero modificare aspetti più sottili della sintesi. Ad esempio, si potrebbe pensare che l'audio sintetizzato abbia un suono robotico, innaturale o che il tono sia insoddisfacente. Questi sono i tipi di problemi che Tune by Example può risolvere.

Per utilizzare la funzione Tune by Example, si registra un utente che legge il testo come si vorrebbe sentirlo pronunciare da una delle voci del servizio. Si aggiungono quindi il testo e l'audio a un modello personalizzato sotto forma di prompt personalizzato. Il servizio apprende la prosodia preferita del testo dal campione audio. Quando si include il prompt in una richiesta di sintesi vocale utilizzando l'estensione SSML <ibm:prompt id="{prompt_id}"/>, la voce che pronuncia il testo del prompt emula la prosodia del prompt.

È possibile creare un modello di altoparlante opzionale ma consigliato per un utente che registra i messaggi vocali. Si associa quindi il modello di altoparlante ai messaggi pronunciati da quell'utente. L'aggiunta di un modello di altoparlante può fare una differenza apprezzabile nella qualità di un messaggio sintetizzato. Ad esempio, il servizio può produrre brevi messaggi con maggiore sicurezza se conosce l'intonazione regolare dell'interlocutore. Poiché la mancanza di un altoparlante definito può potenzialmente compromettere la qualità di un prompt, si consiglia vivamente di associare un modello di altoparlante a ogni prompt personalizzato.

Poiché i prompt personalizzati vengono aggiunti ai modelli personalizzati, per utilizzarli è necessario specificare il modello personalizzato di un prompt con una richiesta di sintesi vocale. I modelli di diffusori, tuttavia, sono indipendenti dai modelli personalizzati. La relazione tra i modelli di diffusori e i modelli personalizzati e i prompt personalizzati è uno-a-molti. Lo stesso modello di altoparlante può essere associato a più richieste definite in diversi modelli personalizzati. Inoltre, non è possibile specificare un modello di diffusore con una richiesta di sintesi.

Sintonia per esempio e pronuncia delle parole

Le regole di pronuncia e tokenizzazione predefinite del servizio potrebbero far sì che una parola insolita che compare in un prompt venga pronunciata in modo insoddisfacente. Tuttavia, Tune by Example non intende modificare la pronuncia di una parola. Ad esempio, il servizio pronuncia la parola "catastrofico" come ci si aspetta di sentirla. È possibile utilizzare Tune by Example per modificare le sillabe della parola enfatizzate (ad esempio, "cataSTROPHic") o il tempo della parola (ad esempio, "cat-a-strophic"). Ma non è possibile utilizzare Tune by Example per modificare la pronuncia predefinita di una parola.

Per modificare la pronuncia di una parola, si utilizza l'interfaccia di personalizzazione del servizio per definire una pronuncia alternativa per la parola. Si aggiunge una parola personalizzata con la pronuncia modificata allo stesso modello personalizzato del prompt. Il servizio applica quindi la pronuncia della parola personalizzata quando si presenta in un prompt. Per ulteriori informazioni, vedi Informazioni sulla personalizzazione.

Se si aggiunge o si modifica una parola personalizzata che fa parte di un prompt esistente, il servizio continua a rispettare la pronuncia della parola esistente al momento della creazione del prompt. Questo accade perché il servizio crea un prompt in un determinato momento e utilizza le regole di pronuncia in vigore in quel momento. È necessario ricreare un prompt per sfruttare una parola personalizzata nuova o aggiornata.

Quando si crea nuovamente un prompt, il servizio sostituisce il prompt esistente. Il nuovo prompt riflette tutte le modifiche apportate al testo o all'audio del prompt, oltre a tutte le pronunce personalizzate delle parole definite dopo la prima creazione del prompt. È sempre possibile passare lo stesso testo e lo stesso audio utilizzati per creare il prompt originale se si sta registrando nuovamente il prompt dopo aver aggiunto una parola personalizzata.

Messaggi personalizzati

Un prompt personalizzato è definito da un testo e da un audio che riproduce il testo con la prosodia che si desidera far riprodurre alle voci del servizio. Il servizio estrae e analizza la prosodia dall'audio del messaggio. Poi applica queste informazioni prosodiche quando pronuncia il testo del prompt con una delle sue voci.

È importante capire che quando si utilizza un prompt durante la sintesi vocale, il servizio non utilizza l'audio del prompt stesso. Utilizza invece la voce specificata con la richiesta di sintesi. La voce adotta la prosodia dell'audio parlato del prompt.

Quando si aggiunge un prompt a un modello personalizzato, si definisce il prompt fornendo il testo da pronunciare, l'audio registrato per quel testo, un identificatore unico specificato dall'utente per il prompt e un modello di altoparlante opzionale. Il servizio genera e memorizza i dati prosodici per il prompt e li utilizza per produrre audio sintetizzato su richiesta. Per aggiungere un prompt a un modello personalizzato, è necessario utilizzare le credenziali dell'istanza del servizio che lo possiede.

Assegnare sempre un nome significativo come valore dell'ID del prompt. Ad esempio, utilizzate un nome come goodbye per indicare un prompt che pronuncia un messaggio di addio standard. Gli ID dei prompt devono essere unici all'interno di un determinato modello personalizzato, pertanto non è possibile definire due prompt con lo stesso ID per lo stesso modello. Se si fornisce l'ID di un prompt esistente, il prompt caricato in precedenza viene sostituito dalle nuove informazioni. Il servizio rielabora il prompt esistente utilizzando il nuovo testo e l'audio e aggiorna i dati prosodici associati al prompt.

Quando elabora una richiesta di aggiunta di un prompt, il servizio tenta di allineare il testo e l'audio forniti per il prompt. Il testo trasmesso con un prompt deve corrispondere il più possibile all'audio parlato. In modo ottimale, il testo e l'audio corrispondono esattamente. Il servizio fa del suo meglio per allineare il testo specificato con l'audio e spesso può compensare le discrepanze tra i due. Ma se il servizio non è in grado di allineare efficacemente il testo e l'audio perché l'entità delle differenze tra i due è troppo grande, l'elaborazione del prompt fallisce.

I prompt sono supportati solo per l'uso di modelli e voci personalizzate in inglese americano. La qualità di un prompt è indefinita se la lingua di un prompt non corrisponde alla lingua del suo modello personalizzato. Questo è coerente con qualsiasi testo specificato per una richiesta di sintesi vocale. Il servizio fa un tentativo al meglio per rendere il testo specificato per la richiesta. Non convalida che la lingua del testo corrisponda a quella del modello.

Modelli di altoparlanti

Un modello di altoparlante è definito da un campione audio della voce di un utente da cui il servizio estrae informazioni per addestrarsi alle caratteristiche della voce. Quando il modello del parlante è associato a un prompt personalizzato pronunciato dallo stesso utente, il servizio sfrutta la sua comprensione della voce del parlante per identificare il modo in cui la prosodia del prompt si confronta con i normali modelli di discorso del parlante. Il modello del parlante serve come base per distinguere le caratteristiche prosodiche nell'audio del messaggio.

Quando si crea un modello di altoparlante, si forniscono l'audio di iscrizione e un nome per il modello che sia unico nel contesto dell'istanza del servizio proprietario:

  • L'audio di registrazione deve includere il parlato dell'utente associato al modello. Il servizio estrae le informazioni sulla voce dell'oratore dal campione audio fornito dall'utente.
  • Il nome fornisce un handle leggibile per il modello. Il servizio restituisce un ID altoparlante, che è un identificatore univoco globale (GUID) (ad esempio, 823068b2-ed4e-11ea-b6e0-7b6456aa95cc) che viene utilizzato per identificare l'altoparlante nelle richieste successive al servizio.

Il servizio utilizza le informazioni estratte dall'audio per addestrarsi all'intonazione, alla cadenza e al tono dell'oratore. Questa informazione può fare una differenza significativa nella qualità dei prompt associati al modello, soprattutto quelli brevi e con un audio relativamente ridotto.

Si crea un modello di diffusore per una determinata istanza del servizio. Un singolo modello di altoparlante può essere associato a più richieste definite per più modelli personalizzati all'interno di quell'istanza di servizio. Il genere del parlante che crea un modello di parlante non deve necessariamente corrispondere al genere della voce utilizzata con i prompt associati a quel modello di parlante. Ad esempio, un modello di parlante creato da un parlante maschio può essere associato a messaggi pronunciati da voci femminili.