ThaïCompatible with Milvus 3.0.0+

L'analyseur « thai » est un analyseur intégré destiné au texte thaï. Utilisez cet analyseur lorsque vous avez besoin que Milvus segmente un texte thaï en mots, normalise les chiffres thaïs, mette en minuscules le texte latin mélangé et supprime les mots vides thaïs.

Configuration

Les analyseurs intégrés sont des modèles d’analyse fournis par Milvus. Pour utiliser un analyseur intégré, définissez type sur le nom d’un analyseur prédéfini dans analyzer_params.

Pour utiliser l’analyseur thaï intégré, définissez ` type ` sur ` thai` :

analyzer_params = {
    "type": "thai",
}

L'analyseur thai accepte le paramètre facultatif suivant :

Paramètre

Type

Valeur par défaut

Description

stop_words

list[str]

_thai_

Liste des mots vides supplémentaires à exclure de la tokenisation. Par défaut, l'analyseur « thai » utilise le dictionnaire intégré « _thai_ ». Pour consulter le dictionnaire par défaut, reportez-vous à la liste des mots vides thaï de Milvus. Cette liste provient du fichier « Apache Lucene Thai stopwords ».

Pour ajouter des mots vides personnalisés, incluez stop_words:

analyzer_params = {
    "type": "thai",
    "stop_words": ["มิลวัส"],
}

Milvus applique les mots vides personnalisés en plus du dictionnaire intégré « _thai_ ».

L'analyseur intégré « thai » équivaut à la configuration d'analyseur personnalisée suivante :

analyzer_params = {
    "tokenizer": "thai",
    "filter": [
        "lowercase",
        "decimaldigit",
        {
            "type": "stop",
            "stop_words": ["_thai_"],
        },
    ],
}

Cet analyseur applique les étapes de traitement suivantes :

  • Tokenisation: utilise le thai tokeniseur pour segmenter le texte thaï en tokens de mots sans s’appuyer sur les espaces. Le tokeniseur filtre les espaces et les segments composés uniquement de signes de ponctuation.
  • Normalisation de la casse: utilise le filtre « lowercase », qui s’applique aux lettres latines dans un texte mixte thaï/anglais.
  • Normalisation des chiffres: utilise le filtre « decimaldigit » pour convertir les chiffres thaïlandais et autres chiffres décimaux Unicode en chiffres ASCII.
  • Suppression des mots vides: utilise le filtre « stop » avec le dictionnaire intégré « _thai_ ».
  • Pas de lemmatisation: l’analyseur intégré « thai » n’applique pas de filtre « stemmer ».

Une fois analyzer_params défini, vous pouvez appliquer l’analyseur à un champ VARCHAR lors de la définition d’un schéma de collection. Pour plus de détails, reportez-vous à la section Exemple d’utilisation.

Exemples

Avant d’appliquer la configuration de l’analyseur à votre schéma de collection, vérifiez son comportement à l’aide de la méthode ` run_analyzer `.

Configuration de l’analyseur

analyzer_params = {
    "type": "thai",
}

Vérification à l’aide de run_analyzer

from pymilvus import MilvusClient

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

sample_text = "ฉันรักการค้นหาข้อความใน Milvus ๑๒๓"

result = client.run_analyzer(sample_text, analyzer_params)
print(result)

Résultat attendu

['ฉัน', 'รัก', 'ค้นหา', 'ข้อความ', 'milvus', '123']

Traduit parDeepL

Essayez Milvus géré gratuitement

Zilliz Cloud est sans souci, propulsé par Milvus et 10 fois plus rapide.

Commencer
Feedback

Cette page a-t - elle été utile ?