Przewodnik po wykrywaniu języka w Pythonie

Zadanie MediaPipe Language Detector pozwala określić język tekstu. Te te instrukcje pokażą Ci, jak korzystać z narzędzia do wykrywania języka w Pythonie. Przykładowy kod opisanych w tych instrukcjach jest dostępna na GitHub

Aby zobaczyć, jak działa to zadanie, wyświetl demo. Więcej informacji o funkcjach, modelach i opcjach konfiguracji zapoznaj się z Przeglądem.

Przykładowy kod

Przykładowy kod Wykrywanie języka zapewnia pełną implementację tego w Pythonie. Ten kod pomoże Ci przetestować to zadanie i uzyskać rozpoczął tworzenie własnej funkcji wykrywania języka. Możesz wyświetlać, uruchamiać edytuj Wykrywacz języka przykładowy kod za pomocą przeglądarki.

Konfiguracja

W tej sekcji opisujemy najważniejsze czynności związane z konfigurowaniem środowiska programistycznego oraz w projektach kodu służących do wykrywania języka. Ogólne informacje na temat: skonfigurować środowisko programistyczne do korzystania z zadań MediaPipe, w tym wymagań wersji platformy, patrz Przewodnik po konfiguracji Pythona

Pakiety

Detektor języka używa pakietu pip mediapipe. Możesz zainstalować zależność z następującymi wartościami:

$ python -m pip install mediapipe

Importy

Importuj te klasy, aby uzyskać dostęp do funkcji zadania Wykrywacz języka:

import mediapipe as mp
from mediapipe.tasks import python
from mediapipe.tasks.python import text

Model

Zadanie wykrywania języka MediaPipe wymaga wytrenowanego modelu zgodnego z tym zadanie. Więcej informacji o dostępnych wytrenowanych modelach z Wykrywaczem języka znajdziesz w sekcji artykułu zapoznaj się z omówieniem zadania Modele.

Wybierz i pobierz model, a następnie zapisz go w katalogu projektu:

model_path = '/absolute/path/to/language_detector.tflite'

Określ ścieżkę modelu za pomocą obiektu BaseOptions model_asset_path Jak poniżej:

base_options = BaseOptions(model_asset_path=model_path)

Tworzenie zadania

Zadanie Wykrywacz języka MediaPipe używa funkcji create_from_options do skonfigurowania zadanie. Funkcja create_from_options akceptuje wartości konfiguracji ustaw opcje wykrywania. Możesz też zainicjować zadanie za pomocą polecenia funkcji fabrycznej create_from_model_path. create_from_model_path przyjmuje ścieżkę względną lub bezwzględną do pliku wytrenowanego modelu. Więcej informacji o konfigurowaniu zadań znajdziesz w artykule Opcje konfiguracji:

Poniższy kod pokazuje, jak skompilować i skonfigurować to zadanie.

base_options = python.BaseOptions(model_asset_path=model_path)
options = text.LanguageDetectorOptions(base_options=base_options)

Opcje konfiguracji

To zadanie zawiera te opcje konfiguracji aplikacji w Pythonie:

Nazwa opcji Opis Zakres wartości Wartość domyślna
max_results Ustawia opcjonalną maksymalną liczbę prognoz dotyczących najlepiej ocenianych języków na . Jeśli ta wartość jest mniejsza niż 0, zwracane są wszystkie dostępne wyniki. Dowolne liczby dodatnie -1
score_threshold Ustawia próg wyniku prognozy, który zastępuje próg podany w polu metadane modelu (jeśli występują). Wyniki poniżej tej wartości zostały odrzucone. Dowolna liczba zmiennoprzecinkowa Nie ustawiono
category_allowlist Ustawia opcjonalną listę dozwolonych kodów języków. Jeśli pole nie jest puste, prognozy dotyczące języka, których kod języka nie znajduje się w tym zestawie, zostaną zostały odfiltrowane. Ta opcja wyklucza się wzajemnie z: category_denylist i użycie obu spowoduje błąd. Dowolne ciągi Nie ustawiono
category_denylist Ustawia opcjonalną listę niedozwolonych kodów języków. Jeśli niepuste, prognozy dotyczące języka, których kod języka znajduje się w tym zestawie, zostaną odfiltrowane na zewnątrz. Ta opcja nie działa z: category_allowlist i użycie obydwu spowoduje błąd. Dowolne ciągi Nie ustawiono

Przygotuj dane

Wykrywanie języka obsługuje dane tekstowe (str). Zadanie obsługuje wprowadzanie danych w tym wstępnego przetwarzania danych, w tym tokenizacji i tensorów. Wszystkie wstępne przetwarzanie jest obsługiwane w ramach funkcji detect. Nie ma potrzeby dodatkowego wstępnego przetwarzania tekstu wejściowego.

input_text = 'The input text to be classified.'

Uruchamianie zadania

Wykrywanie języka używa funkcji detect do aktywowania wniosków. Język oznacza zwrócenie możliwych języków do wprowadzania tekstu.

Ten kod pokazuje, jak wykonać przetwarzanie za pomocą zadania model atrybucji.

with python.text.LanguageDetector.create_from_options(options) as detector:
  detection_result = detector.detect(input_text)

Obsługa i wyświetlanie wyników

Wykrywanie języka zwraca wynik LanguageDetectorResult składający się z listy z prognozami językowymi oraz prawdopodobieństwo ich uzyskania. Poniżej znajdziesz przykładowe dane wyjściowe tego zadania:

LanguageDetectorResult:
  LanguagePrediction #0:
    language_code: "fr"
    probability: 0.999781

Ten wynik uzyskano przez uruchomienie modelu na tekście wejściowym: "Il y a beaucoup de bouches qui parlent et fort peu de têtes qui pensent."

Przykład kodu wymaganego do przetwarzania i wizualizacji wyników zapoznaj się z Przykładowa aplikacja w Pythonie.