Cncharonly
cncharonly 過濾器會移除包含任何非中文字元的標記。當您只想專注於中文文字,濾除任何包含其他文字、數字或符號的標記時,此過濾器非常有用。
設定
cncharonly 過濾器內建於 Milvus。要使用它,只需在analyzer_params 內的filter 部分指定其名稱即可。
analyzer_params = {
"tokenizer": "standard",
"filter": ["cncharonly"],
}
Map<String, Object> analyzerParams = new HashMap<>();
analyzerParams.put("tokenizer", "standard");
analyzerParams.put("filter", Collections.singletonList("cncharonly"));
const analyzer_params = {
"tokenizer": "standard",
"filter": ["cncharonly"],
};
analyzerParams = map[string]any{"tokenizer": "standard", "filter": []any{"cncharonly"}}
# restful
analyzerParams='{
"tokenizer": "standard",
"filter": [
"cncharonly"
]
}'
cncharonly 過濾器會在 tokenizer 產生的詞彙上運作,因此必須與 tokenizer 結合使用。如需 Milvus 中可用的 tokenizer 清單,請參考Standard Tokenizer及其同屬頁面。
定義analyzer_params 之後,您可以在定義集合模式時,將它們套用到VARCHAR 欄位。這允許 Milvus 使用指定的分析器來處理該欄位中的文字,以進行有效的標記化和過濾。詳情請參閱範例使用。
範例
在應用分析器配置到您的收集模式之前,請使用run_analyzer 方法驗證其行為。
分析器配置
analyzer_params = {
"tokenizer": "standard",
"filter": ["cncharonly"],
}
Map<String, Object> analyzerParams = new HashMap<>();
analyzerParams.put("tokenizer", "standard");
analyzerParams.put("filter", Collections.singletonList("cncharonly"));
// javascript
analyzerParams = map[string]any{"tokenizer": "standard", "filter": []any{"cncharonly"}}
# restful
驗證使用run_analyzerCompatible with Milvus 2.5.11+
# Sample text to analyze
sample_text = "Milvus 是 LF AI & Data Foundation 下的一个开源项目,以 Apache 2.0 许可发布。"
# Run the standard analyzer with the defined configuration
result = MilvusClient.run_analyzer(sample_text, analyzer_params)
print(result)
// java
// javascript
// go
# restful
預期輸出
['是', '下的一个开源项目', '以', '许可发布']