Nur alphanumerische Begriffe

Der Filter alphanumonly entfernt Token, die Nicht-ASCII-Zeichen enthalten, und behält nur alphanumerische Begriffe bei. Dieser Filter ist nützlich für die Verarbeitung von Text, bei dem nur einfache Buchstaben und Zahlen relevant sind und keine Sonderzeichen oder Symbole enthalten sind.

Konfiguration

Der Filter alphanumonly ist in Milvus integriert. Um ihn zu verwenden, geben Sie einfach seinen Namen im Abschnitt filter innerhalb von analyzer_params an.

analyzer_params = {
    "tokenizer": "standard",
    "filter": ["alphanumonly"],
}
Map<String, Object> analyzerParams = new HashMap<>();
analyzerParams.put("tokenizer", "standard");
analyzerParams.put("filter", Collections.singletonList("alphanumonly"));
const analyzer_params = {
    "tokenizer": "standard",
    "filter": ["alphanumonly"],
};
analyzerParams = map[string]any{"tokenizer": "standard", "filter": []any{"alphanumonly"}}
# restful
analyzerParams='{
  "tokenizer": "standard",
  "filter": [
    "alphanumonly"
  ]
}'

Der alphanumonly -Filter arbeitet mit den vom Tokenizer erzeugten Begriffen, so dass er in Kombination mit einem Tokenizer verwendet werden muss. Eine Liste der in Milvus verfügbaren Tokenizer finden Sie unter Standard Tokenizer und den zugehörigen Seiten.

Nachdem Sie analyzer_params definiert haben, können Sie sie auf ein VARCHAR Feld anwenden, wenn Sie ein Sammelschema definieren. Dies ermöglicht es Milvus, den Text in diesem Feld mit dem angegebenen Analyzer für eine effiziente Tokenisierung und Filterung zu verarbeiten. Einzelheiten finden Sie unter Beispielanwendung.

Beispiele

Bevor Sie die Analyzer-Konfiguration auf Ihr Sammelschema anwenden, überprüfen Sie das Verhalten mit der Methode run_analyzer.

Analyzer-Konfiguration

analyzer_params = {
    "tokenizer": "standard",
    "filter": ["alphanumonly"],
}
Map<String, Object> analyzerParams = new HashMap<>();
analyzerParams.put("tokenizer", "standard");
analyzerParams.put("filter", Collections.singletonList("alphanumonly"));
// javascript
analyzerParams = map[string]any{"tokenizer": "standard", "filter": []any{"alphanumonly"}}
# restful

Überprüfung mit run_analyzerCompatible with Milvus 2.5.11+

from pymilvus import (
    MilvusClient,
)

client = MilvusClient(uri="http://localhost:19530")

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

# Run the standard analyzer with the defined configuration
result = client.run_analyzer(sample_text, analyzer_params)
print("Standard analyzer output:", result)
import io.milvus.v2.client.ConnectConfig;
import io.milvus.v2.client.MilvusClientV2;
import io.milvus.v2.service.vector.request.RunAnalyzerReq;
import io.milvus.v2.service.vector.response.RunAnalyzerResp;

ConnectConfig config = ConnectConfig.builder()
        .uri("http://localhost:19530")
        .build();
MilvusClientV2 client = new MilvusClientV2(config);

List<String> texts = new ArrayList<>();
texts.add("Milvus 2.0 @ Scale! #AI #Vector_Databasé");

RunAnalyzerResp resp = client.runAnalyzer(RunAnalyzerReq.builder()
        .texts(texts)
        .analyzerParams(analyzerParams)
        .build());
List<RunAnalyzerResp.AnalyzerResult> results = resp.getResults();
// javascript
import (
    "context"
    "encoding/json"
    "fmt"

    "github.com/milvus-io/milvus/client/v2/milvusclient"
)

client, err := milvusclient.New(ctx, &milvusclient.ClientConfig{
    Address: "localhost:19530",
    APIKey:  "root:Milvus",
})
if err != nil {
    fmt.Println(err.Error())
    // handle error
}

bs, _ := json.Marshal(analyzerParams)
texts := []string{"Milvus 2.0 @ Scale! #AI #Vector_Databasé"}
option := milvusclient.NewRunAnalyzerOption(texts).
    WithAnalyzerParams(string(bs))

result, err := client.RunAnalyzer(ctx, option)
if err != nil {
    fmt.Println(err.Error())
    // handle error
}
# restful

Erwartete Ausgabe

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

Try Managed Milvus for Free

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

Get Started
Feedback

War diese Seite hilfreich?