QueryProcessor mendefinisikan aturan analisis kueri untuk aplikasi OpenSearch, mencakup processor yang diterapkan, indeks target aturan tersebut, serta statusnya sebagai aturan default aktif.
Struktur
{
"name": "qp_lsh_test_1",
"domain": "GENERAL",
"processors": [{
"name": "stop_word",
"use_system_dictionary": true,
"intervention_dictionary": ""
}],
"indexes": [
"default"
],
"active": true
}| Field | Type | Description |
|---|---|---|
name | String | Nama aturan analisis kueri. Dapat berisi huruf kecil, angka, dan garis bawah (_). Harus dimulai dengan huruf kecil. Maksimal 16 karakter. |
domain | String | Domain industri tempat aturan ini berlaku. Nilai yang valid: GENERAL, ECOMMERCE, IT_CONTENT. |
processors[] | Object | Processor yang diterapkan dalam aturan ini. Setiap entri merupakan objek Processor. Lihat Processor di bawah. |
indexes | Array | Indeks yang menjadi target aturan ini. |
active | Boolean | Menentukan apakah aturan ini merupakan aturan analisis kueri default. |
Processor
Processor mendefinisikan satu fitur analisis kueri beserta konfigurasinya.
OpenSearch mendukung enam jenis processor:
| Processor name | Feature |
|---|---|
stop_word | Filtering kata stop |
spell_check | Koreksi ejaan |
term_weighting | Analisis bobot kata kunci |
synonym | Konfigurasi sinonim |
category_prediction | Prediksi kategori — lihat Prediksi kategori |
ner | Pengenalan Entitas Bernama (Named Entity Recognition/NER) — lihat NER |
Fields
{
"name": "stop_word",
"use_system_dictionary": true,
"intervention_dictionary": ""
}| Field | Type | Description |
|---|---|---|
name | String | Jenis processor. Nilai yang valid: stop_word, spell_check, term_weighting, synonym, category_prediction, ner. |
use_system_dictionary | Boolean | Menentukan apakah akan menggunakan kamus bawaan. |
intervention_dictionary | String | Nama kamus intervensi. Biarkan kosong jika tidak berlaku. |
Prediksi kategori
Gunakan processor category_prediction untuk menerapkan model prediksi kategori yang telah dilatih.
Fields
{
"name": "stop_word",
"categoryPrediction": 12345,
"projectId": 12346
}| Field | Type | Description |
|---|---|---|
name | String | Harus bernilai category_prediction. |
categoryPrediction | Integer | ID model prediksi kategori. |
projectId | Integer | ID Proyek algoritma. |
NER
Gunakan processor ner untuk menerapkan Named Entity Recognition (NER) dan mengatur prioritas tipe entitas yang dikenali.
Fields
{
"name": "stop_word",
"use_system_dictionary": true,
"intervention_dictionary": "",
"priorities": [{
"priority": "HIGH",
"tag": "test",
"order": 1
}]
}| Field | Type | Description |
|---|---|---|
name | String | Harus bernilai ner. |
use_system_dictionary | Boolean | Menentukan apakah akan menggunakan kamus bawaan. |
intervention_dictionary | String | Nama kamus intervensi. Biarkan kosong jika tidak berlaku. |
priorities[] | Object | Pengaturan prioritas untuk tipe entitas. |
priorities[].priority | String | Tingkat prioritas. Nilai yang valid: HIGH, MIDDLE, LOW. |
priorities[].tag | String | Nama internal tipe entitas. |
priorities[].order | Integer | Peringkat di antara tipe entitas yang memiliki tingkat prioritas sama. Nilai lebih rendah berarti prioritas lebih tinggi. Default: 0. |