La diarizzazione del relatore, un processo essenziale nell'analisi audio, segmenta un file audio in base all'identità del relatore. Questo post approfondisce l'integrazione di PyAnnote di Hugging Face per la diarizzazione degli oratori Amazon Sage Maker endpoint asincroni.
Forniamo una guida completa su come distribuire soluzioni di segmentazione e clustering degli altoparlanti utilizzando SageMaker sul cloud AWS. È possibile utilizzare questa soluzione per applicazioni che gestiscono registrazioni audio con più altoparlanti (oltre 100).
Panoramica della soluzione
Amazon Transcribe è il servizio di riferimento per la diarizzazione degli oratori in AWS. Tuttavia, per le lingue non supportate, puoi utilizzare altri modelli (nel nostro caso, PyAnnote) che verranno distribuiti in SageMaker per l'inferenza. Per file audio brevi in cui l'inferenza richiede fino a 60 secondi, è possibile utilizzare inferenza in tempo reale. Per più di 60 secondi, asincrono si dovrebbe usare l'inferenza. Il vantaggio aggiuntivo dell'inferenza asincrona è il risparmio sui costi grazie al ridimensionamento automatico del conteggio delle istanze fino a zero quando non ci sono richieste da elaborare.
Abbracciare il viso è un popolare hub open source per modelli di machine learning (ML). AWS e Hugging Face hanno un associazione che consente un'integrazione perfetta tramite SageMaker con una serie di AWS Deep Learning Containers (DLC) per l'addestramento e l'inferenza in PyTorch o TensorFlow e stimatori e predittori Hugging Face per SageMaker Python SDK. Le funzionalità e le funzionalità di SageMaker aiutano gli sviluppatori e i data scientist a iniziare facilmente con l'elaborazione del linguaggio naturale (NLP) su AWS.
L'integrazione di questa soluzione prevede l'utilizzo del modello di diarizzazione degli oratori preaddestrato di Hugging Face utilizzando il file Libreria PyAnnote. PyAnnote è un toolkit open source scritto in Python per la diarizzazione degli oratori. Questo modello, addestrato sul set di dati audio di esempio, consente un efficace partizionamento degli oratori nei file audio. Il modello viene distribuito su SageMaker come configurazione di endpoint asincrono, fornendo un'elaborazione efficiente e scalabile delle attività di diarizzazione.
Il diagramma seguente illustra l'architettura della soluzione.
Per questo post utilizziamo il seguente file audio.
I file audio stereo o multicanale vengono automaticamente downmixati in mono calcolando la media dei canali. I file audio campionati a una frequenza diversa vengono ricampionati automaticamente a 16kHz al momento del caricamento.
Prerequisiti
Completa i seguenti prerequisiti:
- Crea un dominio SageMaker.
- Assicurati che il tuo Gestione dell'identità e dell'accesso di AWS (IAM) dispone delle autorizzazioni di accesso necessarie per creare un file Ruolo SageMaker.
- Assicurati che l'account AWS disponga di una quota di servizio per ospitare un endpoint SageMaker per un'istanza ml.g5.2xlarge.
Crea una funzione modello per accedere alla diarizzazione dell'altoparlante PyAnnote da Hugging Face
È possibile utilizzare Hugging Face Hub per accedere al pre-addestrato desiderato Modello di diarizzazione degli altoparlanti PyAnnote. Utilizzi lo stesso script per scaricare il file del modello durante la creazione dell'endpoint SageMaker.
Vedi il seguente codice:
Imballa il codice del modello
Prepara file essenziali come inference.py, che contiene il codice di inferenza:
Preparare un requirements.txt
file, che contiene le librerie Python necessarie per eseguire l'inferenza:
Infine, comprimi il file inference.py
erequirements.txt e salvarlo con nome model.tar.gz
:
Configura un modello SageMaker
Definire una risorsa del modello SageMaker specificando l'URI dell'immagine e la posizione dei dati del modello in Servizio di archiviazione semplice Amazon (S3) e ruolo SageMaker:
Carica il modello su Amazon S3
Carica il file compresso del modello PyAnnote Hugging Face in un bucket S3:
Crea un endpoint asincrono SageMaker
Configura un endpoint asincrono per la distribuzione del modello su SageMaker utilizzando la configurazione di inferenza asincrona fornita:
Testare l'endpoint
Valuta la funzionalità dell'endpoint inviando un file audio per la diarizzazione e recuperando l'output JSON archiviato nel percorso di output S3 specificato:
Per implementare questa soluzione su larga scala, suggeriamo di utilizzare AWS Lambda, Servizio di notifica semplice Amazon (Amazon SNS), o Servizio Amazon Simple Queue (Amazon SQS). Questi servizi sono progettati per garantire scalabilità, architetture basate sugli eventi e un utilizzo efficiente delle risorse. Possono aiutare a disaccoppiare il processo di inferenza asincrona dall'elaborazione dei risultati, consentendo di ridimensionare ciascun componente in modo indipendente e gestire i picchi di richieste di inferenza in modo più efficace.
Risultati
L'output del modello è archiviato in s3://sagemaker-xxxx /async_inference/output/.
L'output mostra che la registrazione audio è stata segmentata in tre colonne:
- Inizio (ora di inizio in secondi)
- Fine (ora di fine in secondi)
- Altoparlante (etichetta dell'altoparlante)
Il codice seguente mostra un esempio dei nostri risultati:
ripulire
È possibile impostare una policy di dimensionamento su zero impostando MinCapacity su 0; inferenza asincrona ti consente di ridimensionare automaticamente fino a zero senza richieste. Non è necessario eliminare l'endpoint, it bilancia da zero quando necessario, riducendo i costi quando non in uso. Vedere il seguente codice:
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- PlatoData.Network Generativo verticale Ai. Potenzia te stesso. Accedi qui.
- PlatoAiStream. Intelligenza Web3. Conoscenza amplificata. Accedi qui.
- PlatoneESG. Carbonio, Tecnologia pulita, Energia, Ambiente, Solare, Gestione dei rifiuti. Accedi qui.
- Platone Salute. Intelligence sulle biotecnologie e sulle sperimentazioni cliniche. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/deploy-a-hugging-face-pyannote-speaker-diarization-model-on-amazon-sagemaker-as-an-asynchronous-endpoint/
- :ha
- :È
- :non
- :Dove
- $ SU
- 1
- 10
- 100
- 11
- 118
- 12
- 13
- 14
- 16
- 17
- 23
- 25
- 26%
- 27
- 28
- 31
- 60
- 7
- 8
- 9
- a
- Chi siamo
- accesso
- Accedendo
- accomodante
- Il mio account
- operanti in
- aggiungere
- aggiunto
- Regola
- Avanzate
- ancora
- AI
- Servizi di intelligenza artificiale
- AI / ML
- Consentire
- consente
- anche
- Amazon
- Amazon Sage Maker
- Amazon Web Services
- an
- .
- analitica
- ed
- in qualsiasi
- Applicazioni
- applicazioni
- approccio
- architettura
- architetture
- SONO
- in giro
- AS
- At
- Tentativi
- Audio
- auto
- automaticamente
- media
- AWS
- basato
- BE
- stato
- beneficio
- vantaggi
- fra
- affari
- aziende
- by
- Materiale
- funzionalità
- Custodie
- casi
- Modifiche
- canali
- classe
- cliente
- Cloud
- il clustering
- codice
- colonne
- Commenti
- Uncommon
- componente
- globale
- concetto
- concorrente
- Configurazione
- Tecnologie Container
- contiene
- controlli
- Costo
- risparmi
- Costi
- contare
- creare
- Creazione
- Clienti
- dati
- trattare
- deep
- apprendimento profondo
- definire
- consegnare
- scava
- dimostrazione
- schierare
- schierato
- distribuzione
- Design
- progettato
- desiderato
- sviluppato
- Costruttori
- sviluppatori
- Mercato
- diagramma
- diverso
- digitale
- DIGITAL TRANSFORMATION
- elenco
- documenti
- Dont
- il download
- dinamicamente
- ogni
- alleviare
- Efficace
- in maniera efficace
- efficiente
- in modo efficiente
- Abilita
- fine
- endpoint
- errore
- essential
- esempio
- Tranne
- esperienza
- esplora
- Faccia
- Caratteristiche
- Compila il
- File
- i seguenti
- Nel
- formato
- da
- function
- funzionalità
- generativo
- ottenere
- ottenere
- GitHub
- guida
- maniglia
- Avere
- he
- Aiuto
- aiutato
- aiuta
- il suo
- di hosting
- Come
- Tutorial
- Tuttavia
- HTML
- http
- HTTPS
- Hub
- abbracciare il viso
- centinaia
- Identità
- if
- illustra
- Immagine
- implementato
- importare
- in
- indipendentemente
- India
- esempio
- Integrazione
- integrazione
- ai miglioramenti
- comporta
- IT
- viaggio
- jpg
- json
- Le
- Discografica
- Lingua
- Le Lingue
- grandi
- lanciare
- apprendimento
- Consente di
- biblioteche
- piace
- caricare
- Caricamento in corso
- località
- più a lungo
- macchina
- machine learning
- si intende
- ML
- modello
- modelli
- Scopri di più
- multiplo
- Naturale
- Elaborazione del linguaggio naturale
- necessaria
- Bisogno
- di applicazione
- nlp
- no
- Nessuna
- notifica
- numero
- oggetto
- of
- Offerte
- on
- aprire
- open source
- Ottimizza
- or
- OS
- Altro
- nostro
- su
- produzione
- ancora
- complessivo
- proprio
- panda
- parte
- sentiero
- permessi
- conduttura
- piattaforma
- Platone
- Platone Data Intelligence
- PlatoneDati
- politica
- Popolare
- Post
- alimentato
- Previsioni
- prerequisiti
- processi
- lavorazione
- progetti
- prove
- fornire
- purché
- fornisce
- fornitura
- la percezione
- metti
- Python
- pytorch
- Domande
- tasso
- raggiungere
- tempo reale
- registrazione
- riduce
- riducendo
- Riferimenti
- regione
- registro
- affidabile
- sostituire
- che rappresenta
- richieste
- necessario
- Requisiti
- risorsa
- Risorse
- risposta
- colpevole
- Risultati
- ritorno
- Ruolo
- Correre
- running
- sagemaker
- vendite
- stesso
- campione
- Risparmi
- Risparmio
- Scalabilità
- scalabile
- Scala
- scala
- scienziati
- copione
- script
- sdk
- senza soluzione di continuità
- senza soluzione di continuità
- secondo
- settore
- vedere
- segmentazione
- segmenti
- invio
- separazione
- servizio
- Servizi
- Sessione
- sessioni
- set
- regolazione
- flessibile.
- alcuni
- Forma
- Corti
- dovrebbero
- Spettacoli
- Un'espansione
- singolo
- Software
- lo sviluppo del software
- soluzione
- Soluzioni
- Fonte
- Speaker
- specialista
- specifico
- specificato
- specificando
- spende
- dividere
- inizia a
- iniziato
- conservazione
- memorizzati
- lineare
- Strategico
- il successo
- suggerire
- sicuro
- sistema
- prende
- task
- Tech
- tensorflow
- di
- che
- I
- Là.
- Strumenti Bowman per analizzare le seguenti finiture:
- di
- questo
- migliaia
- tre
- Attraverso
- tempo
- a
- oggi
- toolkit
- argomento
- torcia
- allenato
- Training
- Trasformazione
- trasformatori
- prova
- TURNO
- su
- uso
- utilizzato
- Utente
- usa
- utilizzando
- Variante
- versione
- Video
- W
- aspettare
- volere
- we
- sito web
- servizi web
- quando
- quale
- OMS
- volere
- con
- lavoro
- scritto
- anni
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro
- zero