L'attività MediaPipe Language Detector ti consente di identificare la lingua di una porzione di testo. Questi istruzioni mostrano come utilizzare Language Detector per le app web e JavaScript. L'esempio di codice descritto in queste istruzioni è disponibile su GitHub.
Puoi vedere questa attività in azione visualizzando la demo. Per ulteriori informazioni su funzionalità, modelli e opzioni di configurazione di questa attività, consulta la Panoramica.
Esempio di codice
Il codice di esempio per Language Detector fornisce un'implementazione completa in JavaScript come riferimento. Questo codice è utile per testare l'attività a creare la tua funzionalità di rilevamento della lingua. Puoi visualizzare, eseguire e modificare il Codice di esempio del rilevatore di lingua usando solo il browser web.
Configurazione
Questa sezione descrive i passaggi chiave per configurare l'ambiente di sviluppo e per i progetti di codice specificatamente per l'uso di Language Detector. Per informazioni generali su configurare l'ambiente di sviluppo per l'utilizzo delle attività di MediaPipe, tra cui: i requisiti di versione della piattaforma, consulta Guida alla configurazione per il web.
Pacchetti JavaScript
Il codice del rilevatore della lingua è disponibile tramite
@mediapipe/tasks-text
pacchetto. Puoi trovare e scaricare queste librerie dai link forniti nei
piattaforma
Guida alla configurazione.
Puoi installare i pacchetti richiesti con il seguente codice per la gestione temporanea locale utilizzando il seguente comando:
npm install @mediapipe/tasks-text
Se vuoi eseguire il deployment su un server, puoi usare una distribuzione dei contenuti da un servizio di rete (CDN), come jsDelivr, per Aggiungi il codice direttamente alla pagina HTML, nel seguente modo:
<head>
<script src="https://cdn.jsdelivr.net/npm/@mediapipe/tasks-text@latest/index.js"
crossorigin="anonymous"></script>
</head>
Modello
L'attività di rilevamento del linguaggio MediaPipe richiede un modello addestrato che sia compatibile con dell'attività. Per ulteriori informazioni sui modelli addestrati disponibili per Language Detector, vedi la panoramica delle attività nella sezione Modelli.
Seleziona e scarica un modello, quindi archivialo nella directory del progetto:
<dev-project-root>/app/shared/models
Specifica il percorso del modello con l'oggetto baseOptions
modelAssetPath
come mostrato di seguito:
baseOptions: {
modelAssetPath: `/app/shared/models/language_detector.tflite`
}
Crea l'attività
Usa una delle funzioni LanguageDetector.createFrom...()
del rilevatore della lingua per
per preparare l'attività per l'esecuzione delle inferenze. Puoi usare createFromModelPath()
con un percorso relativo o assoluto al file del modello addestrato. Il codice
l'esempio seguente mostra l'utilizzo della funzione createFromOptions()
. Per ulteriori informazioni
informazioni sulla configurazione delle attività, consulta
Opzioni di configurazione.
Il codice seguente illustra come creare e configurare questa attività.
async function createDetector() {
const textFiles = await FilesetResolver.forTextTasks(
"https://cdn.jsdelivr.net/npm/@mediapipe/tasks-text@latest/wasm/");
languageDetector = await languageDetector.createFromOptions(
textFiles,
{
baseOptions: {
modelAssetPath: `https://storage.googleapis.com/mediapipe-models/language_detector/language_detector/float32/1/language_detector.tflite`
},
}
);
}
createDetector();
Opzioni di configurazione
Questa attività include le seguenti opzioni di configurazione per web e JavaScript applicazioni:
Nome opzione | Descrizione | Intervallo di valori | Valore predefinito |
---|---|---|---|
maxResults |
Imposta il numero massimo facoltativo di previsioni per lingua con il punteggio più alto su per tornare indietro. Se questo valore è inferiore a zero, vengono restituiti tutti i risultati disponibili. | Qualsiasi numero positivo | -1 |
scoreThreshold |
Imposta la soglia del punteggio di previsione che sostituisce quella fornita in gli eventuali metadati del modello. I risultati al di sotto di questo valore vengono rifiutati. | Qualsiasi numero in virgola mobile | Non impostato |
categoryAllowlist |
Consente di impostare l'elenco facoltativo dei codici lingua consentiti. Se il campo non è vuoto,
le previsioni linguistiche il cui codice lingua non è in questo set saranno
esclusi. Questa opzione si esclude a vicenda con
categoryDenylist e l'utilizzo di entrambi generano un errore. |
Qualsiasi stringa | Non impostato |
categoryDenylist |
Consente di impostare un elenco facoltativo di codici lingua non consentiti. Se
non vuote, le previsioni del linguaggio il cui codice lingua è incluso in questo set verranno filtrate
fuori. Questa opzione si esclude a vicenda con categoryAllowlist e
se utilizzi entrambi, genera un errore. |
Qualsiasi stringa | Non impostato |
Preparazione dei dati
Language Detector funziona con i dati di testo (string
). L'attività gestisce
la pre-elaborazione dell'input di dati, inclusa la tokenizzazione e la pre-elaborazione dei tensori.
Tutte le pre-elaborazioni vengono gestite all'interno della funzione detect
. Non è necessario
per un'ulteriore pre-elaborazione del testo di input in anticipo.
const inputText = "The input text for the detector.";
Esegui l'attività
Il rilevatore della lingua utilizza la funzione detect
per attivare le inferenze. Per la lingua
di input, ciò significa che vengono restituite le possibili lingue per il testo di input.
Il codice seguente mostra come eseguire l'elaborazione con l'attività modello:
// Wait to run the function until inner text is set
const detectionResult = languageDetector.detect(inputText);
Gestire e visualizzare i risultati
L'attività Language Detector restituisce un LanguageDetectorResult
composto da un elenco
delle previsioni linguistiche insieme alle probabilità di queste previsioni. La
seguente mostra un esempio dei dati di output di questa attività:
LanguageDetectorResult:
LanguagePrediction #0:
language_code: "fr"
probability: 0.999781
Questo risultato è stato ottenuto eseguendo il modello sul testo di input:
"Il y a beaucoup de bouches qui parlent et fort peu de têtes qui pensent."
.
Per un esempio del codice necessario per elaborare e visualizzare i risultati questa attività, consulta le App di esempio sul web.