Python için dil algılama kılavuzu

MediaPipe Dil Dedektörü görevi, bir metin parçasının dilini tanımlamanızı sağlar. Bu talimatlarda, Dil Detektörü'nün Python ile nasıl kullanılacağı gösterilmektedir. Bu talimatlarda açıklanan kod örneğini GitHub'da bulabilirsiniz.

Demoyu izleyerek bu görevi çalışırken görebilirsiniz. Bu görevin özellikleri, modelleri ve yapılandırma seçenekleri hakkında daha fazla bilgi için Genel Bakış'a bakın.

Kod örneği

Dil Algılayıcı için örnek kod, size referans olması açısından bu görevin Python'da eksiksiz uygulamasını sunmaktadır. Bu kod, bu görevi test etmenize ve kendi dil algılama özelliğinizi oluşturmaya başlamanıza yardımcı olur. Dil Algılayıcı örnek kodunu yalnızca web tarayıcınızı kullanarak görüntüleyebilir, çalıştırabilir ve düzenleyebilirsiniz.

Kurulum

Bu bölümde geliştirme ortamınızı kurmanın temel adımları açıklanmaktadır. Projelerinizi özel olarak Dil Detektörü'nü kullanacak şekilde kodlayın. Platform sürümü gereksinimleri de dahil olmak üzere, MediaPipe görevlerini kullanmak amacıyla geliştirme ortamınızı ayarlama hakkında genel bilgileri Python için kurulum kılavuzu bölümünde bulabilirsiniz.

Paketler

Dil Algılayıcı, mediapipe pip paketini kullanır. Bağımlılığı aşağıdaki komut dosyalarıyla yükleyebilirsiniz:

$ python -m pip install mediapipe

İçe Aktarımlar

Dil Detektörü görev işlevlerine erişmek için aşağıdaki sınıfları içe aktarın:

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

Model

MediaPipe Dil Dedektörü görevi, bu görevle uyumlu, eğitilmiş bir model gerektirir. Dil Dedektörü için eğitilmiş modeller hakkında daha fazla bilgi almak isterseniz göreve genel bakış Modeller bölümüne bakın.

Modeli seçip indirin ve ardından proje dizininizde depolayın:

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

Modelin yolunu, aşağıda gösterildiği gibi BaseOptions nesnesi model_asset_path parametresiyle belirtin:

base_options = BaseOptions(model_asset_path=model_path)

Görevi oluşturma

MediaPipe Dil Dedektörü görevi, görevi ayarlamak için create_from_options işlevini kullanır. create_from_options işlevi, algılayıcı seçeneklerini ayarlamak için kullanılan yapılandırma seçeneklerinin değerlerini kabul eder. Görevi, create_from_model_path fabrika işlevini kullanarak da başlatabilirsiniz. create_from_model_path işlevi, eğitilen model dosyasına giden göreli veya mutlak yolu kabul eder. Görevleri yapılandırma hakkında daha fazla bilgi edinmek için Yapılandırma seçenekleri bölümüne bakın.

Aşağıdaki kod bu görevin nasıl oluşturulacağını ve yapılandırılacağını gösterir.

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

Yapılandırma seçenekleri

Bu görev, Python uygulamaları için aşağıdaki yapılandırma seçeneklerine sahiptir:

Seçenek Adı Açıklama Değer Aralığı Varsayılan Değer
max_results İsteğe bağlı olarak, döndürülecek en yüksek puanlı dil tahmininin maksimum sayısını ayarlar. Bu değer sıfırdan küçükse mevcut tüm sonuçlar döndürülür. Pozitif sayılar -1
score_threshold Model meta verilerinde belirtilen eşiği (varsa) geçersiz kılan tahmin puanı eşiğini ayarlar. Bu değerin altındaki sonuçlar reddedilir. Tüm kayan Belirlenmedi
category_allowlist İzin verilen dil kodlarının isteğe bağlı listesini ayarlar. Boş değilse, dil kodu bu grupta yer almayan dil tahminleri filtrelenir. Bu seçenek category_denylist ile birlikte kullanılamaz ve her iki sonucun da kullanılması hataya neden olur. Herhangi bir dize Belirlenmedi
category_denylist İzin verilmeyen dil kodlarının isteğe bağlı listesini ayarlar. Boş değilse dil kodu bu kümede yer alan dil tahminleri filtrelenir. Bu seçenek, category_allowlist ile birlikte kullanılamaz ve her iki sonucun da kullanılması hataya neden olur. Herhangi bir dize Belirlenmedi

Verileri hazırlama

Dil Algılayıcı, metin (str) verileriyle çalışır. Görev, tokenizasyon ve tensör ön işlemesi dahil olmak üzere veri girişi ön işlemesini yürütür. Tüm ön işlemeler detect işlevi içinde gerçekleştirilir. Giriş metninin önceden işlenmesine gerek yoktur.

input_text = 'The input text to be classified.'

Görevi çalıştırma

Dil Algılayıcı, çıkarımları tetiklemek için detect işlevini kullanır. Dil algılama için bu, giriş metni için olası dilleri döndürmek anlamına gelir.

Aşağıdaki kod, işlemenin görev modeliyle nasıl yürütüleceğini gösterir.

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

Sonuçları işleme ve görüntüleme

Dil Algılayıcı, dil tahminlerinin ve bu tahminlerin olasılıklarının listesini içeren bir LanguageDetectorResult üretir. Aşağıda, bu görevden alınan çıkış verilerinin bir örneği gösterilmektedir:

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

Bu sonuç, model şu giriş metninde çalıştırılarak elde edildi: "Il y a beaucoup de bouches qui parlent et fort peu de têtes qui pensent.".

Bu görevin sonuçlarını işlemek ve görselleştirmek için gereken kodun bir örneğini Python örnek uygulamasına göz atın.