Segnalare contenuti nocivi utilizzando il rilevamento di tossicità di Amazon Comprehend

Identificare contenuti dannosi utilizzando la funzione di rilevamento di tossicità di Amazon Comprehend

Le comunità online stanno guidando l’interazione degli utenti in settori come il gaming, i social media, il commercio elettronico, gli appuntamenti e l’e-learning. I membri di queste comunità online si fidano dei proprietari delle piattaforme per fornire un ambiente sicuro e inclusivo in cui possono liberamente consumare contenuti e contribuire. Spesso si assumono moderatori dei contenuti per controllare i contenuti generati dagli utenti e verificare che siano sicuri e conformi ai termini di utilizzo. Tuttavia, la crescente scala, complessità e varietà dei contenuti inappropriati rende i flussi di lavoro di moderazione umana non scalabili ed costosi. Il risultato sono comunità scarsamente gestite, dannose e non inclusive che allontanano gli utenti e influiscono negativamente sulla comunità e sul business.

Insieme ai contenuti generati dagli utenti, i contenuti generati da macchine hanno rappresentato una nuova sfida per la moderazione dei contenuti. Questi creano automaticamente contenuti estremamente realistici che possono essere inappropriati o dannosi su larga scala. Il settore si trova ad affrontare la nuova sfida di moderare automaticamente i contenuti generati dall’intelligenza artificiale per proteggere gli utenti da materiale dannoso.

In questo post, presentiamo la rilevazione della tossicità, una nuova funzionalità di Amazon Comprehend che ti aiuta a rilevare automaticamente contenuti dannosi nel testo generato dagli utenti o dalle macchine. Questo include testo normale, testo estratto da immagini e testo trascritto da contenuti audio o video.

Rilevare la tossicità nei contenuti di testo con Amazon Comprehend

Amazon Comprehend è un servizio di elaborazione del linguaggio naturale (NLP) che utilizza il machine learning (ML) per scoprire informazioni di valore e connessioni nel testo. Offre una serie di modelli ML che possono essere pre-addestrati o personalizzati tramite interfacce di API. Amazon Comprehend fornisce ora una soluzione diretta basata su NLP per la rilevazione di contenuti tossici nel testo.

La API di rilevamento della tossicità di Amazon Comprehend assegna un punteggio complessivo di tossicità al contenuto di testo, che varia da 0 a 1, indicando la probabilità che sia tossico. Inoltre, categorizza il testo nelle seguenti sette categorie e fornisce un punteggio di affidabilità per ciascuna:

  • HATE_SPEECH – Discorsi che criticano, insultano, denunciano o deumanizzano una persona o un gruppo sulla base di una identità, che sia razza, etnia, identità di genere, religione, orientamento sessuale, abilità, origine nazionale o un’altra categoria di identità.
  • GRAPHIC – Discorsi che utilizzano descrizioni visivamente descriptive, dettagliate e vivide. Linguaggio spesso prolisso, amplificando un insulto o causando disagio o danno al destinatario.
  • HARASSMENT_OR_ABUSE – Discorsi che impongono dinamiche di potere disruptive tra il parlante e l’ascoltatore (indipendentemente dall’intento), cercano di influenzare il benessere psicologico del destinatario o oggettificano una persona.
  • SEXUAL – Discorsi che indicano interesse sessuale, attività o eccitazione sessuale utilizzando riferimenti diretti o indiretti a parti del corpo, caratteristiche fisiche o sesso.
  • VIOLENCE_OR_THREAT – Discorsi che includono minacce volte a infliggere dolore, lesioni o ostilità verso una persona o un gruppo.
  • INSULT – Discorsi che includono linguaggio denigrante, umiliante, ironico, insultante o sminuente.
  • PROFANITY – Discorsi che includono parole, frasi o acronimi maleducati, volgari o offensivi.

Puoi accedere alla API di rilevamento della tossicità chiamandola direttamente usando l’interfaccia riga di comando di AWS Command Line Interface (AWS CLI) e gli SDK di AWS. Attualmente, il rilevamento della tossicità in Amazon Comprehend è supportato solo nella lingua inglese.

Possibili utilizzi

La moderazione del testo svolge un ruolo cruciale nella gestione dei contenuti generati dagli utenti in diversi formati, come post sui social media, messaggi di chat online, discussioni nei forum, commenti sui siti Web e altro ancora. Inoltre, le piattaforme che accettano contenuti video e audio possono utilizzare questa funzione per moderare i contenuti audio trascritti.

L’emergere dell’IA generativa e dei modelli di linguaggio di grandi dimensioni rappresenta l’ultima tendenza nel campo dell’IA. Di conseguenza, c’è una crescente necessità di soluzioni reattive per moderare i contenuti generati da LLM. La API di rilevamento della tossicità di Amazon Comprehend è perfettamente adatta per affrontare questa esigenza.

Richiesta API di rilevamento della tossicità di Amazon Comprehend

Puoi inviare fino a 10 segmenti di testo alla API di rilevamento della tossicità, ognuno con un limite di dimensione di 1 KB. Ogni segmento di testo nella richiesta è gestito indipendentemente. Nell’esempio seguente generiamo un file JSON chiamato toxicity_api_input.json contenente il contenuto di testo, inclusi tre segmenti di testo di esempio per la moderazione. Nota che nell’esempio le parole volgari sono oscurate come XXXX.

{ "TextSegments": [ {"Text": "e passa attraverso la porta e passa attraverso la porta è a destra"}, {"Text": "è a destra XXXXX lui"}, {"Text": "cosa cavolo stai facendo uomo è per questo che non volevo giocare"} ], "LanguageCode": "it"}

Puoi utilizzare AWS CLI per richiamare l’API di rilevamento della tossicità utilizzando il file JSON precedente contenente il contenuto del testo:

aws comprehend detect-toxic-content --cli-input-json file://toxicity_api_input.json

Risposta API di rilevamento tossicità di Amazon Comprehend

La risposta JSON di output dell’API di rilevamento tossicità includerà il risultato dell’analisi di tossicità nel campo ResultList. ResultList elenca gli elementi di segmento di testo e la sequenza rappresenta l’ordine in cui sono stati ricevuti i segmenti di testo nella richiesta API. La tossicità rappresenta il punteggio di confidenza complessivo del rilevamento (compreso tra 0 e 1). Le etichette includono un elenco di etichette di tossicità con punteggi di confidenza, categorizzate per tipo di tossicità.

Il codice seguente mostra la risposta JSON dall’API di rilevamento della tossicità in base all’esempio di richiesta nella sezione precedente:

{ "ResultList": [ { "Toxicity": 0.009200000204145908, "Labels": [ { "Name": "PROFANITY", "Score": 0.0007999999797903001}, { "Name": "HATE_SPEECH", "Score": 0.0017999999690800905}, { "Name": "INSULT", "Score": 0.003000000026077032}, { "Name": "GRAPHIC", "Score": 0.0010000000474974513}, { "Name": "HARASSMENT_OR_ABUSE", "Score": 0.0013000000035390258}, { "Name": "SEXUAL", "Score": 0.0017000000225380063}, { "Name": "VIOLENCE_OR_THREAT", "Score": 0.004999999888241291} ] }, { "Toxicity": 0.7358999848365784, "Labels": [ { "Name": "PROFANITY", "Score": 0.011900000274181366}, { "Name": "HATE_SPEECH", "Score": 0.019500000402331352}, { "Name": "INSULT", "Score": 0.0714000016450882}, { "Name": "GRAPHIC", "Score": 0.006099999882280827}, { "Name": "HARASSMENT_OR_ABUSE", "Score": 0.018200000748038292}, { "Name": "SEXUAL", "Score": 0.0027000000700354576}, { "Name": "VIOLENCE_OR_THREAT", "Score": 0.8145999908447266} ] }, { "Toxicity": 0.9843000173568726, "Labels": [ { "Name": "PROFANITY", "Score": 0.9369999766349792 }, { "Name": "HATE_SPEECH", "Score": 0.30880001187324524 }, { "Name": "INSULT", "Score": 0.42100000381469727 }, { "Name": "GRAPHIC", "Score": 0.12630000710487366 }, { "Name": "HARASSMENT_OR_ABUSE", "Score": 0.25519999861717224 }, { "Name": "SEXUAL", "Score": 0.19169999659061432 }, { "Name": "VIOLENCE_OR_THREAT", "Score": 0.19539999961853027 } ] } ]}

Nel JSON precedente, il primo segmento di testo è considerato sicuro con un punteggio di tossicità basso. Tuttavia, il secondo e il terzo segmento di testo hanno ottenuto punteggi di tossicità del 73% e del 98%, rispettivamente. Per il secondo segmento, Amazon Comprehend rileva un punteggio di tossicità elevato per VIOLENCE_OR_THREAT; per il terzo segmento, rileva PROFANITY con un punteggio di tossicità elevato.

Richiesta di esempio utilizzando lo SDK di Python

Il seguente frammento di codice dimostra come utilizzare il Python SDK per invocare l’API di rilevamento della tossicità. Questo codice riceve la stessa risposta JSON del comando AWS CLI dimostrato in precedenza.

import boto3 import base64# Inizializza un oggetto client boto3 Comprehendcomprehend_client = session.client('comprehend')# Chiama l'API di rilevamento del contenuto tossicocomprehend_client.detect_toxic_content(    TextSegments=[        {"Text": "e vai attraverso la porta, vai attraverso la porta è sulla destra"},        {"Text": "è sulla destra XXXXX lo stesso"},        {"Text": "cosa stai facendo XXXX, questo è il motivo per cui non volevo giocare"}    ],    LanguageCode='en')

Sommario

In questo post, abbiamo fornito una panoramica della nuova Amazon Comprehend Toxicity Detection API. Abbiamo anche descritto come è possibile analizzare la risposta JSON dell’API. Per ulteriori informazioni, consulta il documento dell’API di Comprehend.

La rilevazione della tossicità di Amazon Comprehend è ora disponibile in quattro regioni: us-east-1, us-west-2, eu-west-1 e ap-southeast-2.

Per saperne di più sulla moderazione dei contenuti, consulta la Guida per la moderazione dei contenuti su AWS. Fai il primo passo verso snellire le operazioni di moderazione dei contenuti con AWS.