ThailandeseCompatible with Milvus 3.0.0+

L'analizzatore thai è un analizzatore integrato per il testo in lingua thailandese. Utilizza questo analizzatore quando desideri che Milvus segmenti il testo in thailandese in parole, normalizzi le cifre thailandesi, converta in minuscolo il testo misto in caratteri latini e rimuova le parole vuote in thailandese.

Configurazione

Gli analizzatori integrati sono modelli di analizzatori forniti da Milvus. Per utilizzare un analizzatore integrato, impostare ` type ` su un nome di analizzatore predefinito in ` analyzer_params`.

Per utilizzare l’analizzatore thailandese integrato, impostare ` type ` su ` thai`:

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

L'analizzatore thai accetta il seguente parametro opzionale:

Parametro

Tipo

Valore predefinito

Descrizione

stop_words

list[str]

_thai_

Un elenco di parole di stop aggiuntive da rimuovere dalla tokenizzazione. Per impostazione predefinita, l'analizzatore thai utilizza il dizionario integrato _thai_. Per consultare il dizionario predefinito, fare riferimento all'elenco delle parole di stop in lingua thailandese di Milvus. L'elenco proviene dal file delle parole di stop in lingua thailandese di Apache Lucene.

Per aggiungere parole di stop personalizzate, includere stop_words:

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

Milvus applica le parole di stop personalizzate in aggiunta al dizionario _thai_ integrato.

L'analizzatore " thai " integrato è equivalente alla seguente configurazione dell'analizzatore personalizzato:

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

Questo analizzatore applica le seguenti fasi di elaborazione:

  • Tokenizzazione: utilizza il thai tokenizer per segmentare il testo thailandese in token di parole senza fare affidamento sugli spazi bianchi. Il tokenizer filtra gli spazi bianchi e i segmenti composti esclusivamente da segni di punteggiatura.
  • Normalizzazione maiuscole/minuscole: utilizza il filtro lowercase, che agisce sulle lettere latine presenti in testi misti in thailandese e inglese.
  • Normalizzazione delle cifre: utilizza il filtro decimaldigit per convertire le cifre in thailandese e altre cifre decimali Unicode in cifre ASCII.
  • Rimozione delle parole vuote: utilizza il filtro stop con il dizionario integrato _thai_.
  • Nessuno stemming: l’analizzatore integrato “ thai ” non applica il filtro “ stemmer ”.

Dopo aver definito analyzer_params, è possibile applicare l'analizzatore a un campo VARCHAR durante la definizione di uno schema di raccolta. Per ulteriori dettagli, consultare Esempio di utilizzo.

Esempi

Prima di applicare la configurazione dell’analizzatore allo schema della raccolta, verificarne il comportamento utilizzando il metodo ` run_analyzer `.

Configurazione dell’analizzatore

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

Verifica tramite 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)

Risultato atteso

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

Tradotto daDeepL

Prova Milvus gestito gratuitamente

Zilliz Cloud è senza problemi, basato su Milvus e 10 volte più veloce.

Inizia
Feedback

Questa pagina è stata utile?