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 |
|---|---|---|---|
|
|
|
Un elenco di parole di stop aggiuntive da rimuovere dalla tokenizzazione. Per impostazione predefinita, l'analizzatore |
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
thaitokenizer 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
decimaldigitper convertire le cifre in thailandese e altre cifre decimali Unicode in cifre ASCII. - Rimozione delle parole vuote: utilizza il filtro
stopcon 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']