メインコンテンツまでスキップ

ICU

icu tokenizer は、ソフトウェアの国際化に不可欠なツールを提供する Internationalization Components of Unicode (ICU) オープンソースプロジェクト上に構築されています。ICU の単語分割アルゴリズムを使用することで、この tokenizer は世界の大半の言語においてテキストを正確に単語へ分割できます。

📘注意

icu tokenizer は、句読点とスペースを出力内で個別の token として保持します。たとえば、"Привет! Как дела?"["Привет", "!", " ", "Как", " ", "дела", "?"] になります。こうした単独の句読点 token を削除するには、removepunct filter を使用してください。

Configuration

icu tokenizer を使用して analyzer を設定するには、analyzer_params 内で tokenizericu に設定します。

python
analyzer_params = {
"tokenizer": "icu",
}

icu tokenizer は、1 つ以上の filter と組み合わせて使用できます。たとえば、次のコードは icu tokenizer と remove punct filter を使用する analyzer を定義しています。

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

analyzer_params を定義した後、collection schema を定義する際にそれらを VARCHAR フィールドへ適用できます。これにより、Zilliz Cloud は効率的な tokenization と filtering のために、指定された analyzer を使用してそのフィールド内のテキストを処理できます。詳細は、使用例 を参照してください。

Examples

analyzer 設定を collection schema に適用する前に、run_analyzer メソッドを使用してその動作を確認してください。

Analyzer configuration

python
analyzer_params = {
"tokenizer": "icu",
}

run_analyzer を使用した検証

python
from pymilvus import (
MilvusClient,
)

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

# Sample text to analyze
sample_text = "Привет! Как дела?"

# Run the standard analyzer with the defined configuration
result = client.run_analyzer(sample_text, analyzer_params)
print("Standard analyzer output:", result)

Expected output

sql
['Привет', '!', ' ', 'Как', ' ', 'дела', '?']
Ctrl I