跳到主要内容
版本:v2.5.x

Alphanumonly

alphanumonly 过滤器删除包含非 ASCII 字符的标记,只保留字母数字术语。该过滤器适用于处理只有基本字母和数字的文本,不包括任何特殊字符或符号。

配置

alphanumonly 过滤器内置在 Milvus 中。要使用它,只需在 analyzer_params 中的 filter 部分指定其名称即可。

Python
analyzer_params = {
"tokenizer": "standard",
"filter": ["alphanumonly"],
}

alphanumonly 过滤器对 Tokenizer(分词器)生成的 Token(词元)进行操作,因此必须与 Tokenizer 结合使用。有关 Milvus 中可用的 Tokenizer(分词器)列表,请参阅 Standard Tokenizer及其同类页面。

定义 analyzer_params 后,可以在定义 Collection Schema 时将其应用到 VARCHAR 字段。这样,Milvus 就可以使用指定的分析器对该字段中的文本进行处理,从而实现高效的标记化和过滤。有关详情,请参阅 示例使用

示例

在将分析器配置应用到 Collection Schema 之前,请使用 run_analyzer 方法验证其行为。

Analyzer 配置

Python
analyzer_params = {
"tokenizer": "standard",
"filter": ["alphanumonly"],
}

验证使用 run_analyzer

Python
# Sample text to analyze
sample_text = "Milvus 2.0 @ Scale! #AI #Vector_Databasé"

# Run the standard analyzer with the defined configuration
result = MilvusClient.run_analyzer(sample_text, analyzer_params)
print(result)

预期输出

Python
['Milvus', '2', '0', 'Scale', 'AI', 'Vector']