Usa OCI Speech per trascrivere il linguaggio naturale

Oracle Cloud Infrastructure (OCI) Speech è uno dei numerosi servizi di AI cloud nativi. È possibile utilizzare il servizio di sintesi vocale per convertire i file audio in testo leggibile memorizzato in formato JSON.

Speech sfrutta la potenza del linguaggio parlato consentendo di convertire facilmente i file audio contenenti il linguaggio umano in trascrizioni di testo altamente accurate. Il servizio è un'applicazione nativa OCI a cui è possibile accedere utilizzando un'applicazione Web, un'API REST, un SDK, un'interfaccia CLI o una console.

Speech utilizza la tecnologia di riconoscimento vocale automatico (ASR) per fornire una trascrizione grammaticalmente corretta dei file video e audio. Speech gestisce registrazioni audio a bassa fedeltà e trascrive registrazioni impegnative come riunioni o chiamate al call center. Con Speech, puoi trasformare i file memorizzati nello storage degli oggetti OCI o in un asset di dati in testo accurato, normalizzato, con indicatore orario e filtrato in termini di volgarità. Questa funzionalità è disponibile con i servizi a valle. Ad esempio, puoi utilizzare servizi aggiuntivi come la lingua e le previsioni per analizzare il sentiment delle chiamate, indirizzare i contenuti per la pubblicità, indicizzare le tue cartelle multimediali e creare un motore di ricerca multimediale utilizzando Oracle Cloud Infrastructure Lakehouse.

Architettura

Questa architettura dimostra la relazione tra i vari componenti di un sistema tipico che ha OCI Speech al centro.

Questa architettura può applicarsi a molti tipi di applicazioni. Ad esempio, un'applicazione Web può registrare la conversazione di un rappresentante dell'help desk con un cliente che segnala un problema. Il file audio della conversazione viene salvato in OCI Object Storage, che emette eventi per nuovi file audio. Eventi OCI attiva un'applicazione OCI Functions che crea una richiesta di trascrizione utilizzando una chiamata API REST al servizio OCI Speech. Speech esegue il job, recupera il file audio da OCI Object Storage, inserisce il file nei modelli acustici e linguistici pre-addestrati e trasferisce l'output in un file di testo JSON. Il file JSON viene memorizzato in OCI Object Storage. OCI Object Storage rileva il nuovo file di testo ed emette un evento. OCI Events attiva OCI Functions per estrarre il file di testo e caricare il testo e i metadati in un database MySQL. Eventi OCI attiva inoltre Notifiche OCI per pubblicare un messaggio quando la trascrizione è pronta e invia una notifica all'applicazione Web che esegue la sottoscrizione all'evento. L'applicazione Web visualizza la trascrizione nel ticket creato dal rappresentante dell'help desk.

Facoltativamente, l'applicazione Web può recuperare i metadati dei file audio, ad esempio la durata, la dimensione, la data e l'ora di inizio e salvarli nel ticket dell'help desk.

I file audio e di testo memorizzati in OCI Object Storage possono essere inseriti negli strumenti di analisi a valle utilizzando Oracle Cloud Infrastructure Lakehouse (non mostrato nel diagramma).

Il seguente diagramma illustra questa architettura di riferimento.

Descrizione dell'architettura-ai-speech.png
Descrizione dell'illustrazione architecture-ai-speech.png

architettura-ai-speech-oracle.zip

L'architettura presenta i seguenti componenti:

  • Area

    Un'area geografica Oracle Cloud Infrastructure è un'area geografica localizzata che contiene uno o più data center, denominati domini di disponibilità. Le regioni sono indipendenti da altre regioni e grandi distanze possono separarle (tra paesi o addirittura continenti).

  • Domini di disponibilità

    I domini di disponibilità sono data center standalone e indipendenti all'interno di un'area geografica. Le risorse fisiche in ciascun dominio di disponibilità sono isolate dalle risorse negli altri domini di disponibilità, il che fornisce tolleranza agli errori. I domini di disponibilità non condividono l'infrastruttura, ad esempio alimentazione o raffreddamento, o la rete interna del dominio di disponibilità. Pertanto, un errore in un dominio di disponibilità non dovrebbe influire sugli altri domini di disponibilità nell'area.

  • Domini di errore

    Un dominio di errore consiste in un gruppo di hardware e infrastruttura all'interno di un dominio di disponibilità. Ogni dominio di disponibilità dispone di tre domini di errore con alimentazione e hardware indipendenti. Quando distribuisci le risorse su più domini di errore, le tue applicazioni possono tollerare errori fisici del server, manutenzione del sistema e errori di alimentazione all'interno di un dominio di errore.

  • Rete cloud virtuale (VCN) e subnet

    Una VCN è una rete personalizzabile e definita dal software configurata in un'area Oracle Cloud Infrastructure. Come le tradizionali reti di data center, le reti VCN consentono di controllare l'ambiente di rete. Una VCN può avere più blocchi CIDR non sovrapposti che è possibile modificare dopo aver creato la VCN. Puoi segmentare una VCN in subnet, che possono essere definite in un'area o in un dominio di disponibilità. Ogni subnet è costituita da un intervallo contiguo di indirizzi che non si sovrappongono alle altre subnet nella VCN. È possibile modificare le dimensioni di una subnet dopo la creazione. Una subnet può essere pubblica o privata.

  • Compartimento

    I compartimenti sono partizioni logiche tra più aree all'interno di una tenancy Oracle Cloud Infrastructure. Usare i compartimenti per organizzare le risorse in Oracle Cloud, controllare l'accesso alle risorse e impostare le quote d'uso. Per controllare l'accesso alle risorse in un determinato compartimento, definire criteri che specificano chi può accedere alle risorse e quali azioni possono eseguire.

  • Load balancer

    Il servizio Oracle Cloud Infrastructure Load Balancing fornisce la distribuzione automatica del traffico da un unico punto di accesso a più server nel back-end.

  • Lista di sicurezza

    Per ogni subnet, puoi creare regole di sicurezza che specificano l'origine, la destinazione e il tipo di traffico che devono essere consentiti all'interno e all'esterno della subnet.

  • Identity and Access Management (IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM) è il piano di controllo dell'accesso per Oracle Cloud Infrastructure (OCI) e Oracle Cloud Applications. L'API IAM e l'interfaccia utente consentono di gestire i domini di Identity e le risorse all'interno del dominio di Identity. Ogni dominio di Identity IAM OCI rappresenta una soluzione standalone per la gestione delle identità e degli accessi o una popolazione di utenti diversa.

  • Storage degli oggetti

    Lo storage degli oggetti offre un accesso rapido a grandi quantità di dati strutturati e non strutturati di qualsiasi tipo di contenuto, inclusi backup del database, dati analitici e contenuti avanzati come immagini e video. Puoi memorizzare e quindi recuperare i dati direttamente da Internet o dall'interno della piattaforma cloud. Puoi ridimensionare lo storage senza alcun deterioramento delle prestazioni o dell'affidabilità del servizio. Utilizza lo storage standard per lo storage "caldo" a cui è necessario accedere rapidamente, immediatamente e frequentemente. Utilizza lo storage di archivio per lo storage "freddo" che conservi per lunghi periodi di tempo e a cui accedi raramente o raramente.

  • Funzioni

    Oracle Cloud Infrastructure Functions è una piattaforma completamente gestita, multi-tenant, altamente scalabile, on-demand e Functions-as-a-Service (FaaS). È alimentato dal motore open source Fn Project. Le funzioni consentono di distribuire il codice e di chiamarlo direttamente o di attivarlo in risposta agli eventi. Oracle Functions utilizza i container Docker ospitati in Oracle Cloud Infrastructure Registry.

  • Eventi

    I servizi Oracle Cloud Infrastructure emettono eventi, ovvero messaggi strutturati che descrivono le modifiche alle risorse. Gli eventi vengono emessi per le operazioni di creazione, lettura, aggiornamento o eliminazione (CRUD), le modifiche allo stato del ciclo di vita delle risorse e gli eventi di sistema che influiscono sulle risorse cloud.

  • Monitoraggio

    Il servizio Oracle Cloud Infrastructure Monitoring monitora attivamente e passivamente le tue risorse cloud utilizzando le metriche per monitorare le risorse e gli allarmi per avvisarti quando queste metriche soddisfano i trigger specificati dall'allarme.

  • Audit

    Il servizio Oracle Cloud Infrastructure Audit registra automaticamente le chiamate a tutti gli endpoint API (Application Programming Interface) pubblici Oracle Cloud Infrastructure supportati come eventi di log. Al momento, tutti i servizi supportano la registrazione da parte di Oracle Cloud Infrastructure Audit.

  • Notifiche

    Il servizio Oracle Cloud Infrastructure Notifications trasmette messaggi ai componenti distribuiti tramite un pattern di pubblicazione/sottoscrizione, offrendo messaggi sicuri, altamente affidabili, a bassa latenza e duraturi per le applicazioni ospitate su Oracle Cloud Infrastructure.

  • Oracle Cloud Infrastructure Speech

    Oracle Cloud Infrastructure Speech è un nuovo servizio AI che utilizza l'Automatic Speech Recognition (ASR) per convertire la sintesi vocale in testo.

  • Oracle MySQL Database Service

    Oracle MySQL Database Service è un servizio di database Oracle Cloud Infrastructure (OCI) completamente gestito che consente agli sviluppatori di sviluppare e distribuire rapidamente applicazioni cloud native sicure. Ottimizzato ed esclusivamente disponibile in OCI, Oracle MySQL Database Service è stato creato, gestito e supportato al 100% dai team di progettazione OCI e MySQL.

    Oracle MySQL Database Service dispone di un motore di analitica integrato e ad alte prestazioni (HeatWave) per eseguire sofisticate analisi in tempo reale direttamente su un database MySQL operativo.

Suggerimenti

Le vostre esigenze potrebbero differire dall'architettura descritta qui. Utilizzare i seguenti suggerimenti come punto di partenza.

  • VCN

    Quando crei una VCN, determina il numero di blocchi CIDR necessari e la dimensione di ciascun blocco in base al numero di risorse che intendi collegare alle subnet nella VCN. Utilizzare i blocchi CIDR all'interno dello spazio di indirizzi IP privati standard.

    Selezionare i blocchi CIDR che non si sovrappongono a qualsiasi altra rete (in Oracle Cloud Infrastructure, nel data center on premise o in un altro provider cloud) a cui si intende impostare connessioni private.

    Dopo aver creato una VCN, puoi modificarne, aggiungerne e rimuoverne i blocchi CIDR.

    Quando si progettano le subnet, considerare il flusso di traffico e i requisiti di sicurezza. Collega tutte le risorse all'interno di un livello o ruolo specifico alla stessa subnet, che può fungere da limite di sicurezza.

  • Sicurezza

    Utilizza Oracle Cloud Guard per monitorare e mantenere la sicurezza delle tue risorse in Oracle Cloud Infrastructure in modo proattivo. Cloud Guard utilizza ricette del rilevatore che è possibile definire per esaminare le risorse alla ricerca di punti deboli nella sicurezza e per monitorare operatori e utenti per attività rischiose. Quando viene rilevata qualsiasi attività di configurazione errata o non sicura, Cloud Guard consiglia azioni correttive e aiuta a eseguire tali azioni, in base alle ricette del rispondente che è possibile definire.

    Per le risorse che richiedono una maggiore sicurezza, Oracle consiglia di utilizzare le zone di sicurezza. Una zona di sicurezza è un compartimento associato a una ricetta definita da Oracle dei criteri di sicurezza che si basano sulle best practice. Ad esempio, le risorse in una zona di sicurezza non devono essere accessibili dalla rete Internet pubblica e devono essere cifrate utilizzando chiavi gestite dal cliente. Quando crei e aggiorni le risorse in una zona di sicurezza, Oracle Cloud Infrastructure convalida le operazioni in base ai criteri nella ricetta della zona di sicurezza e nega le operazioni che violano uno qualsiasi dei criteri.

  • Cloud Guard

    Duplica e personalizza le ricette predefinite fornite da Oracle per creare ricette personalizzate del rilevatore e del rispondente. Queste ricette consentono di specificare il tipo di violazione della sicurezza che genera un'avvertenza e le azioni consentite per l'esecuzione. Ad esempio, potresti voler rilevare i bucket di storage degli oggetti con visibilità impostata su Pubblico.

    Applica Cloud Guard a livello di tenancy per coprire l'ambito più ampio e ridurre l'onere amministrativo legato alla gestione di più configurazioni.

    È inoltre possibile utilizzare la funzione Lista gestita per applicare determinate configurazioni ai rilevatori.

  • Security Zones

    Duplica e personalizza le ricette predefinite fornite da Oracle per creare ricette personalizzate del rilevatore e del rispondente. Queste ricette consentono di specificare il tipo di violazione della sicurezza che genera un'avvertenza e le azioni consentite per l'esecuzione. Ad esempio, potresti voler rilevare i bucket di storage degli oggetti con visibilità impostata su Pubblico.

    Applica Cloud Guard a livello di tenancy per coprire l'ambito più ampio e ridurre l'onere amministrativo legato alla gestione di più configurazioni.

    È inoltre possibile utilizzare la funzione Lista gestita per applicare determinate configurazioni ai rilevatori.

  • Larghezza di banda del load balancer

    Durante la creazione del load balancer, puoi selezionare una forma predefinita che fornisca una larghezza di banda fissa oppure specificare una forma flessibile personalizzata in cui impostare un intervallo di larghezza di banda e consentire al servizio di ridimensionare automaticamente la larghezza di banda in base ai pattern di traffico. Con entrambi gli approcci, puoi modificare la forma in qualsiasi momento dopo aver creato il load balancer.

Considerazioni

  • Prestazioni

    Utilizza i servizi cloud nativi Oracle - Eventi, Funzioni, Notifiche e AI Speech per distribuire applicazioni serverless che si ridimensionano automaticamente in base al carico di lavoro. I servizi sono gestiti da Oracle.

    Il processo di sintesi vocale AI viene elaborato in modo rigoroso, "first-in first-out". È possibile creare una coda di job con un massimo di 10.000 task a livello di tenant. Se si sottomette un job che supera il numero massimo di task, tale job non riesce. I job vengono conservati per 90 giorni.

  • Accesso

    OCI Speech supporta l'accesso tramite la console OCI, il client SDK Java e Python e l'interfaccia CLI OCI. Durante il test si consiglia di utilizzare lo strumento CLI o la console.

  • Disponibilità

    In questo esempio il database non è ad alta disponibilità. Per le applicazioni strategiche, è possibile eseguire MySQL Database Service in modalità HA con 3 repliche.

  • Costo

    Utilizza i servizi cloud nativi di Oracle - Eventi, Funzioni, Notifiche e AI Speech per distribuire l'applicazione serverless che non comporta costi fissi. La richiesta di servizio viene pagata solo quando viene utilizzata.

conferme

  • Autori: Wei Han, Zaid Al Qaddoumi
  • Collaboratori: Sreya Dutta

Log modifiche

Questo log elenca le modifiche significative: