MediaPipe Metin Yerleştirme görevi, kullanıcılara metin verilerinin sayısal bir temsilini anlamlarını yakalamaya çalışın. Bu talimatlarda, Python ile Metin Yerleştirme.
Özellikler, modeller ve yapılandırma seçenekleri hakkında daha fazla bilgi Bu görev hakkında daha fazla bilgi için Genel Bakış'ı inceleyin.
Kod örneği
Metin Yerleştirme örnek kodu, görevi görebilir. Bu kod, görevi test etmenize ve kendi metin yerleştirdiğinizi oluşturmaya başladı. Verileri görüntüleyebilir, çalıştırabilir ve Metin Yerleştirme örneği kod Google Colab ile yalnızca web tarayıcınızı kullanarak. Şu öğenin kaynak kodunu görüntüleyebilirsiniz: bu örneği şurada bulabilirsiniz: GitHub'a gidin.
Kurulum
Bu bölümde, geliştirme ortamınızı ve ayarlarınızı yönetmeyle ilgili Metin Yerleştirme Aracı'nı kullanmak için özel olarak projeleri kodlayın. Şu konularda genel bilgi için: dahil olmak üzere MediaPipe görevlerini kullanmak için geliştirme ortamınızı platform sürümü gereksinimleri hakkında daha fazla bilgi için Python'da kullanılabilir.
Paketler
Metin Yerleştirme aracı, mediapipe pip paketini kullanır. Bağımlılığı yükleyebilirsiniz şunlar:
$ python -m pip install mediapipe
İçe aktarılanlar
Metin Yerleştirme görev işlevlerine erişmek için şu sınıfları içe aktarın:
import mediapipe as mp
from mediapipe.tasks import python
from mediapipe.tasks.python import text
Model
MediaPipe Metin Yerleştirme görevi bu görevi görebilir. Metin Yerleştirme aracı için eğitilen modeller hakkında daha fazla bilgi için bkz. göreve genel bakış Modeller bölümü.
Bir model seçip indirin, ardından bu modeli yerel bir dizinde depolayın. Tekliflerinizi otomatikleştirmek ve optimize etmek için önerilen UniversalSentenceEncoder modeli.
model_path = '/absolute/path/to/universal_sentence_encoder.tflite'
Aşağıda gösterildiği gibi, model_asset_path
parametresi içinde modelin yolunu belirtin:
base_options = BaseOptions(model_asset_path=model_path)
Görevi oluşturma
MediaPipe Metin Yerleştirme görevi,create_from_options
görevi görebilir. create_from_options
işlevi, yapılandırma için değerleri kabul eder
seçeneklerini ayarlayın. Görevi başlatmak için
create_from_model_path
fabrika işlevi. create_from_model_path
işlevi
eğitilen model dosyasının göreli veya mutlak yolunu kabul eder. Daha fazla
daha fazla bilgi için bkz.
Yapılandırma seçenekleri.
Aşağıdaki kod, bu görevin nasıl oluşturulacağını ve yapılandırılacağını gösterir.
import mediapipe as mp
BaseOptions = mp.tasks.BaseOptions
TextEmbedder = mp.tasks.text.TextEmbedder
TextEmbedderOptions = mp.tasks.text.TextEmbedderOptions
# For creating a text embedder instance:
options = TextEmbedderOptions(
base_options=BaseOptions(model_asset_path=model_path),
quantize=True)
text_embedder = TextEmbedder.create_from_options(options)
Yapılandırma seçenekleri
Bu görev, Python uygulamaları için aşağıdaki yapılandırma seçeneklerini içerir:
Seçenek Adı | Açıklama | Değer Aralığı | Varsayılan Değer |
---|---|---|---|
l2_normalize |
Döndürülen özellik vektörünün L2 normuyla normalleştirilip normalleştirilmeyeceği. Bu seçeneği yalnızca model zaten yerel bir öğe içermiyorsa kullanın L2_NORMALIZATION TFLite Op. Çoğu durumda bu zaten böyledir Böylece L2 normalleştirmesi, herhangi bir gerek kalmadan TFLite çıkarımıyla gerçekleştirilir bu seçeneği belirleyin. | Boolean |
False |
quantize |
Döndürülen yerleştirmenin skaler nicelemedir. Yerleştirmelerin dolaylı olarak birim normları Bu nedenle, tüm boyutların [-1,0, 1,0] aralığında bir değere sahip olması garanti edilir. Tekliflerinizi otomatikleştirmek ve optimize etmek için l2_normalize seçeneğini kullanın. | Boolean |
False |
Verileri hazırlama
Metin Yerleştirme aracı, metin (str
) verileriyle çalışır. Görev, veri girişini işler
ön işleme dahil edilir.
Tüm ön işlemler, embed
işlevi içinde gerçekleştirilir. Gerek yok
ek ön işleme yöntemini kullanabilirsiniz.
input_text = "The input text to be embedded."
Görevi çalıştırma
Metin Yerleştirme aracı, çıkarımları tetiklemek için embed
işlevini kullanır. Metin için
yerleştirme, giriş metni için yerleştirme vektörlerinin döndürülmesi anlamına gelir.
Aşağıdaki kod, işlemin görev modeliyle nasıl yürütüldüğünü gösterir.
# Perform text embedding on the provided input text.
embedding_result = text_embedder.embed(input_text)
Sonuçları işleme ve görüntüleme
Metin Yerleştirme aracı, şunların listesini içeren bir TextEmbedderResult
verir:
giriş metni için yerleştirme (kayan nokta veya skaler miktarlı)
Aşağıda, bu görevdeki çıkış verilerinin bir örneği gösterilmektedir:
TextEmbedderResult:
Embedding #0 (sole embedding head):
float_embedding: {0.2345f, 0.1234f, ..., 0.6789f}
head_index: 0
İki yerleştirmenin anlamsal benzerliğini
TextEmbedder.cosine_similarity
işlevi. Aşağıdaki kodu inceleyerek
örneğine bakalım.
# Compute cosine similarity.
similarity = TextEmbedder.cosine_similarity(
embedding_result.embeddings[0],
other_embedding_result.embeddings[0])