Cncharonly
The cncharonly
filter removes tokens that contain any non-Chinese characters. This filter is useful when you want to focus solely on Chinese text, filtering out any tokens that contain other scripts, numbers, or symbols.
Configuration
The cncharonly
filter is built into Milvus. To use it, simply specify its name in the filter
section within analyzer_params
.
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"
]
}'
The cncharonly
filter operates on the terms generated by the tokenizer, so it must be used in combination with a tokenizer. For a list of tokenizers available in Milvus, refer to Standard Tokenizer and its sibling pages.
After defining analyzer_params
, you can apply them to a VARCHAR
field when defining a collection schema. This allows Milvus to process the text in that field using the specified analyzer for efficient tokenization and filtering. For details, refer to Example use.
Examples
Before applying the analyzer configuration to your collection schema, verify its behavior using the run_analyzer
method.
Analyzer configuration
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
Verification using run_analyzer
# 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
Expected output
['是', '下的一个开源项目', '以', '许可发布']