Come facciamo ad Unbabel a scalare qualità e velocità di traduzione?

6 min read

Costruire il “translation layer” del mondo è una missione fantastica. Per noi questo significa diventare un servizio trasversale e pervasivo in grado di eliminare ovunque e in ogni momento le barriere a livello comunicativo, utilizzando una combinazione di tecnologie di intelligenza artificiale (traduzione automatica e svariate procedure di apprendimento automatico, e una comunità globale di persone bilingui in costante crescita. 

Ciò significa anche acquisire, trattare e distribuire enormi quantità di dati al secondo, il tutto con la garanzia di rispettare gli standard di qualità e velocità dei nostri clienti. 

Se non sai come funziona Unbabel, puoi approfondire l’argomento qui, ma eccoti un riassunto: 

translation pipeline

  1. Una traduzione viene richiesta tramite la nostra API o tramite integrazioni con piattaforme come Salesforce e Zendesk);
  2. La nostra pipeline di traduzione basata su intelligenza artificiale (AI) prende in carico il lavoro e lo invia per la traduzione automatica ad un motore adattato per tipologia di contenuto e talvolta in funzione del cliente;
  3. Non appena il sistema di traduzione automatica finisce, il sistema di valutazione della qualità (QE) valuta se la qualità dell’output è buona, in tal caso viene subito rispedito al sistema richiedente dal quale proviene;
  4. Quando il QE ritiene necessario l’intervento umano per gli aggiustamenti finali, il testo viene suddiviso in più parti e inviato alla nostra comunità;
  5. Quando la comunità termina gli ultimi aggiustamenti, il testo finale viene messo di nuovo insieme e quindi inviato.

Per quanto semplificato, il flusso si compone di molti elementi che interagiscono dall’inizio alla fine del processo. Come facciamo a mantenere qualità e velocità su larga scala con un tale flusso di lavoro? 

Scalare la qualità

L’intelligenza artificiale di Unbabel è in continua evoluzione, non solo perché i nostri team di AI lavorano quotidianamente al miglioramento degli algoritmi che costituiscono il cuore del sistema, ma anche perché quest’ultimo continua ad imparare dai propri risultati e dai dati proprietari che raccogliamo.

Una tipologia di dati a cui abbiamo accesso sono le annotazioni linguistiche fatte sul lavoro che abbiamo tradotto. Un team globale di esperti linguisti lavora senza sosta per commentare le nostre traduzioni con informazioni qualitative e quantitative, cosa che ci permette di individuare ciò che già funziona e ciò che può essere migliorato, aumentando ulteriormente la capacità della nostra pipeline di produrre risultati di qualità superiore, in modo consistente. 

Possiamo inoltre rivedere i nostri modelli originari di apprendimento automatico e aggiornarli regolarmente. Più dati significa modelli migliori, che a loro volta comportano una migliore qualità della traduzione automatica. 

Automazione dell’apprendimento AI 

L’elemento chiave per avere una sana pipeline di sviluppo consiste nell’apportare piccoli miglioramenti e applicarli spesso. Si tratta di una buona pratica generale che si trova in qualsiasi libro di DevOps. Questo mantra lo spingiamo ancora più avanti e lo applichiamo anche all’addestramento della nostra AI.

Abbiamo automatizzato l’intero processo con una pipeline di pianificazione autonoma che:

  1. Esegue una procedura ETL dall’archivio dei dati grezzi;
  2. Sottopone i dati ad un processo di anonimizzazione in modo che le informazioni personali e qualunque dato riservato vengano rimossi; non vogliamo né abbiamo bisogno di questi dati, e in questo modo eliminiamo il rischio che finiscano in altre mani;
  3. Trasforma e carica i dati nei sistemi di addestramento di Unbabel, attivando sistemi di addestramento basati su GPU in parallelo;
  4. Recupera e testa i risultati dei modelli di addestramento sulla base di una suite di test di sanità;
  5. Aggiorna i server AI coi nuovi modelli.

Poiché forniamo adattamenti di dominio basati sul cliente e su categorie, questo processo viene eseguito per tutti i modelli, in modo da mantenere i motori della nostra traduzione automatica sempre aggiornati con i dati più recenti che abbiamo a disposizione.

developers deploy systems

Consegna 

L’architettura della nostra ingegneria software è stata progettata per essere scalata senza problemi, verticalmente e orizzontalmente. Tramite un modello a microservizi, siamo in grado di scalare specifiche aree della pipeline di traduzione, aumentando l’efficienza complessiva. 

La maggior parte dei nostri server sono basati su tecnologie container e, come tale, l’aggiornamento di un server AI è altrettanto semplice come qualsiasi altra parte del sistema. Microservizi e container vanno di pari passo con il concetto di un’architettura immutabile in cui tutte le parti senza stato sono monouso, sostituibili e aggiornabili in tempo reale e, con le metodologie appropriate, prive di tempi morti.

Scalare la velocità

Per quanto riguarda tutto ciò che abbiamo trattato finora, i nostri tempi di risposta sono sostanzialmente in tempo reale. Tuttavia, dal momento in cui l’output viene distribuito alla nostra comunità di post-editor bilingui, la quantità di lavoro da portare a termine per raggiungere la qualità che i nostri clienti si aspettano e ci richiedono può essere ancora notevole. 

Non è tanto che gli esseri umani siano lenti nel tradurre anzi, molte ricerche mostrano che sono molto più veloci nel post-editing di una traduzione automatica che nel tradurre da zero, ma capire il contesto, i potenziali dettagli tecnici, le ambiguità linguistiche e le altre peculiarità culturali richiede sempre del tempo per garantire un risultato accettabile. 

Miglioramento dell’interfaccia utente per gli editor di Unbabel  

Che si tratti della nostra interfaccia basata sul web o delle app mobili sulle due piattaforme principali, l’esperienza utente che offriamo alla nostra comunità globale di oltre 50.000 bilingui è uno dei più importanti tasselli di tutto il mosaico. 

Se vogliamo continuare a scalare un livello di qualità elevato nel più breve tempo possibile, allora occorre assolutamente migliorare gli strumenti, in modo tale che gli editor possano lavorare alle traduzioni, ovunque e in ogni momento. 

Siamo costantemente in contatto con la nostra incredibile e impegnata comunità, e siamo orgogliosi di ascoltarli e agire sulla base dei loro feedback. Effettuando test delle nostre interfacce utente, sia quelle esistenti sia quelle che stiamo pensando di implementare. Misurando le loro interazioni sulla piattaforma per trovare nuovi metodi per migliorare ulteriormente. Tutto ciò che elimina l’attrito e permette alla nostra comunità di lavorare meglio, più velocemente e con maggiore soddisfazione è assolutamente cruciale per la nostra missione. 

AI +H uman= qualità e velocità su larga scala

Qualità e velocità sono talvolta percepite come scelte contraddittorie, e scalarle entrambe rappresenta una sfida tecnologica immensa, tuttavia costituisce la chiave del nostro successo come azienda. 

Ci chiedono spesso, “la traduzione non sarà fatta dalla sola AI?” ma decenni e miliardi spesi nella ricerca hanno dimostrato che vi sarà sempre una lacuna nel cogliere appieno le ambiguità, le peculiarità e i paradossi del linguaggio umano. 
Solo favorendo la relazione simbiotica tra intelligenza artificiale e umana possiamo costruire il “translation layer” del mondo. 

ArtboardFacebook iconInstagram iconLinkedIn iconUnbabel BlogTwitter iconYouTube icon