アラビア語の正規化Compatible with Milvus 3.0.0+

arabic_normalization フィルターは、アラビア語テキスト用の組み込みトークンフィルターです。このフィルターは、アラビア語特有の文字の異形を正規化し、テキスト分析の際に同義のアラビア語用語が異なって見える原因となる不要な記号を削除します。

設定

アラビア語テキストの場合は、ほとんどの場合、組み込みの arabic アナライザーを使用してください。この組み込みアナライザーには、標準的なトークン化、小文字化、小数点桁の正規化、アラビア語のステミング、アラビア語のストップワード除去に加え、このフィルターも含まれています。arabic_normalization を直接使用するのは、カスタムアナライザーパイプラインを構築する必要がある場合に限ってください。

カスタムアナライザーでarabic_normalization フィルターを使用するには、analyzer_paramsfilter セクションに追加します:

analyzer_params = {
    "tokenizer": "standard",
    "filter": ["arabic_normalization"],
}

arabic_normalization フィルターには設定可能なパラメータはありません。

このフィルタは、以下の変換を適用します:

変換

変換後

ハムザ+アレフの異形

آأإ

ا

テ・マルブタ

ة

ه

アレフ・マクスラ

ى

ي

ハラカート

U+064BU+065F

削除済み

タトゥイール/カシダ

ـ

削除済み

このフィルターは、トークナイザーによって生成されたトークンを処理します。上記の設定は、意図的にカスタムアナライザーの例として示されたものであり、アラビア語処理パイプラインの完全な構成は含まれていません。

アナライザーの設定をコレクションスキーマに適用する前に、run_analyzer メソッドを使用してその動作を確認してください。

アナライザーの設定

analyzer_params = {
    "tokenizer": "standard",
    "filter": ["arabic_normalization"],
}

xml-ph-0000@deepl.internal を使用した検証run_analyzer

from pymilvus import MilvusClient

client = MilvusClient(uri="http://localhost:19530")

sample_text = "آدم أحمد إسلام مدرسة كبرى كِتَابٌ عـــربي"

result = client.run_analyzer(sample_text, analyzer_params)
print(result)

期待される出力

['ادم', 'احمد', 'اسلام', 'مدرسه', 'كبري', 'كتاب', 'عربي']

翻訳DeepL

マネージド Milvus を無料で試す

Zilliz Cloud は手間いらず、Milvus を基盤に 10 倍高速です。

始める
フィードバック

このページは役に立ちましたか ?