🚀 Try Zilliz Cloud, the fully managed Milvus, for free—experience 10x faster performance! Try Now>>

Milvus
Zilliz
Home
  • User Guide
  • Home
  • Docs
  • User Guide

  • Schema & Data Fields

  • Analyzer

  • Filters

  • Cncharonly

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

['是', '下的一个开源项目', '以', '许可发布']

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
Feedback

Was this page helpful?