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

Remove Punct

removepunctフィルターは、トークンストリームから独立した句読点トークンを削除します。句読点マークではなく意味のある内容語に焦点を当てた、よりクリーンなテキスト処理をしたい場合に使用します。

📘注意

このフィルターは、句読点を独立したトークンとして保持するjiebalindera、およびicuトークナイザーで最も効果的です(例:"Hello!"["Hello", "!"])。standardwhitespaceなどの他のトークナイザーは、トークナイズ時に句読点を破棄するため、removepunctはこれらには効果がありません。

構成

removepunctフィルターはZilliz Cloudに組み込まれています。使用するには、analyzer_params内のfilterセクションにその名前を指定するだけです。

analyzer_params = {
"tokenizer": "jieba",
"filter": ["removepunct"]
}

removepunctフィルターは、トークナイザーによって生成された用語に対して操作を行うため、トークナイザーと組み合わせて使用する必要があります。

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

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

アナライザー構成

analyzer_params = {
"tokenizer": "icu",
"filter": ["removepunct"]
}

run_analyzerを使用した検証

from pymilvus import (
MilvusClient,
)

client = MilvusClient(uri="YOUR_CLUSTER_ENDPOINT")

# 解析するサンプルテキスト
sample_text = "Привет! Как дела?"

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

期待される出力

['Привет', 'Как', 'дела']