メインコンテンツまでスキップ
バージョン: User Guides (Cloud)

Standard Analyzer

standard アナライザーは、Zilliz Cloud のデフォルトアナライザーであり、アナライザーが指定されていない場合にテキストフィールドに自動的に適用されます。文法ベースのトークナイズを使用しているため、ほとんどの言語に効果的です。

📘注意

standard アナライザーは、単語境界に区切り文字(スペース、句読点など)に依存する言語に適しています。しかし、中国語、日本語、韓国語などの言語では辞書ベースのトークナイズが必要です。このような場合、chinese のような言語固有のアナライザーまたは特殊なトークナイザー(linderaicu など)とフィルター付きのカスタムアナライザーを使用することが、正確なトークナイズとより良い検索結果を確実にするために強く推奨されます。

定義

standard アナライザーは以下の要素で構成されます:

  • Tokenizer: standard トークナイザーを使用して、文法ルールに基づいてテキストを離散的な単語単位に分割します。詳細については、Standard Tokenizer を参照してください。

  • Filter: lowercase フィルターを使用して、すべてのトークンを小文字に変換し、大文字小文字を区別しない検索を可能にします。詳細については、Lowercase を参照してください。

standard アナライザーの機能性は、以下のカスタムアナライザー設定と同等です:

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

設定

standard アナライザーをフィールドに適用するには、analyzer_paramstypestandard に設定し、必要に応じてオプションパラメータを含めてください。

analyzer_params = {
"type": "standard", # 標準アナライザーの種類を指定
}

standard アナライザーは以下のオプションパラメータを受け入れます:

パラメータ

説明

stop_words

トークナイズから削除されるストップワードのリストを含む配列。

カスタムストップワードの設定例:

analyzer_params = {
"type": "standard", # 標準アナライザーの種類を指定
"stop_words", ["of"] # オプション: トークナイズから除外する単語リスト
}

analyzer_params を定義した後、コレクションスキーマを定義する際に VARCHAR フィールドに適用できます。これにより、Zilliz Cloud は指定されたアナライザーを使用して、そのフィールド内のテキストを効率的なトークナイズおよびフィルタリングのために処理できます。詳細については、使用例を参照してください。

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

アナライザー設定

analyzer_params = {
"type": "standard", # 標準アナライザーの設定
"stop_words": ["for"] # オプション: カスタムストップワードパラメータ
}

run_analyzer を使用した検証

from pymilvus import (
MilvusClient,
)

client = MilvusClient(
uri="YOUR_CLUSTER_ENDPOINT",
token="YOUR_CLUSTER_TOKEN"
)

# アナライズするサンプルテキスト
sample_text = "The Milvus vector database is built for scale!"

# 定義された設定で標準アナライザーを実行
result = client.run_analyzer(sample_text, analyzer_params)
print("Standard analyzer output:", result)

期待される出力

Standard analyzer output: ['the', 'milvus', 'vector', 'database', 'is', 'built', 'scale']