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

Stop

stopフィルターは、指定されたストップワードをトークン化されたテキストから削除し、一般的で意味の薄い単語を排除するのに役立ちます。stop_wordsパラメータを使用してストップワードのリストを構成できます。

構成

stopフィルターはZilliz Cloudのカスタムフィルターです。使用するには、フィルター構成で"type": "stop"を指定し、ストップワードのリストを提供するstop_wordsパラメータを指定してください。

analyzer_params = {
"tokenizer": "standard",
"filter":[{
"type": "stop", # フィルターの種類をstopとして指定します
"stop_words": ["of", "to", "_english_"], # カスタムストップワードを定義し、英語のストップワードリストを含めます
}],
}

stopフィルターは、以下の設定可能なパラメータを受け入れます。

パラメータ

説明

stop_words

トークン化から削除する単語のリスト。デフォルトでは、フィルターは組み込みの english 辞書を使用します。以下の3つの方法で上書きまたは拡張できます:

  • 組み込み辞書 – あらかじめ定義された辞書を使用するには、以下の言語エイリアスのいずれかを指定してください:

    "english", "danish", "dutch", "finnish", "french", "german", "hungarian", "italian", "norwegian", "portuguese", "russian", "spanish", "swedish"

  • カスタムリスト – 自分の用語の配列を渡してください。例:["foo", "bar", "baz"]

  • 混合リスト – エイリアスとカスタム用語を組み合わせてください。例:["of", "to", "english"]

    各事前定義された辞書の正確な内容については、stop_wordsを参照してください。

stopフィルターは、トークナイザーによって生成された用語に対して操作を行うため、トークナイザーと組み合わせて使用する必要があります。Zilliz Cloudで利用可能なトークナイザーのリストについては、トークナイザー参照を参照してください。

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

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

アナライザー構成

analyzer_params = {
"tokenizer": "standard",
"filter":[{
"type": "stop", # フィルターの種類をstopとして指定します
"stop_words": ["of", "to", "_english_"], # カスタムストップワードを定義し、英語のストップワードリストを含めます
}],
}

run_analyzerを使用した検証

from pymilvus import (
MilvusClient,
)

client = MilvusClient(uri="YOUR_CLUSTER_ENDPOINT")

# 解析するサンプルテキスト
sample_text = "The stop filter allows control over common stop words for text processing."

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

期待される出力

['The', 'stop', 'filter', 'allows', 'control', 'over', 'common', 'stop', 'words', 'text', 'processing']