EN ET

Keeletuvasti (Language Detector)

Keeletuvasti abil saab tuvastada valitud indeksi iga dokumendi keelt. Keeletuvasti kasutab langdetect python moodulit. Selle abil saab kiire ülevaate andmestikus esinevatest keeltest ning parsida edaspidi vaid kindlas keeles dokumente.

Loomine

Parameetrid

description:

Keeletuvasti töönimi. See on vajalik vaid selleks, et eristada kõiki keeletuvasti töid antud projektis.

indices:

Analüüsitavaid dokumente sisaldavad Elasticsearchi indeksid.NB! Indeksid peavad olema antud sõnastike järjendiga, kus võti = „name“ ja väärtus = <index_name>, nt:

[{"name": "my_dataset"}]
fields:

Analüüsitavate väljade nimede järjend sõnedena.

query:

Päring, millega võetakse indeksist analüüsimisse minevad dokumendid välja API-s peab päring olema formeeritud JSON sõnena. GUI-s saab kasutada salvestatud otsinguid. Vaikimisi on päring tühi ning sel juhul analüüsitakse kõiki dokumente valitud indeksi(te)s.

GUI

Keeletuvasti töö alustamiseks mine „Tools“ -> „Language Detector“ ja vajuta „CREATE“-nupule ülal vasakul.Ilmub uus aken pealkirjaga „Apply Language Detector task“. Täida vajalikud väljad ja vajuta „Create“-nupule all paremal nurgas (Joonis 58). Uus Keeletuvasti töö peaks nüüd ilmuna uue reana Keeletuvasti tööde nimekirja. (kui ei ilmu, proovi lehe värskendamist).

_images/lang_det_GUI.png

Joonis 58 Keeletuvasti töö loomisaken

Kui töö on lõpetatud (staatus näitab „completed“), saab tulemusivaadata Searcheris. Keeleanalüüsi tulemus on talletatud`välja <field_concept>` <algne_väli>_mlp.language_detected.

API

Otspunkt /api/v1/-le : /projects/{project_pk}/lang_index/

Otspunkt /api/v2/-le : /projects/{project_pk}/lang_index/

Näidis:

curl -X POST "http://localhost:8000/api/v2/projects/1/lang_index/" \
-H "accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: Token 8229898dccf960714a9fa22662b214005aa2b049" \
-d '{
        "indices": [{"name": "index_name"}],
        "description": "job_description",
        "field": "field_name_to_detect_on"
}'

Vastus:

{
  "id": 6,
  "url": "http://localhost:8000/api/v2/projects/1/lang_index/6/",
  "author_username": "test_user",
  "indices": [
  {
     "id": 3949,
     "is_open": true,
     "url": "http://localhost:8000/api/v2/elastic/index/3949/",
     "name": "index_name",
     "description": "",
     "added_by": "test_user",
     "test": true,
     "source": "",
     "client": "",
     "domain": "",
     "created_at": "2021-07-27T13:56:46.118000+03:00"
  }
  ],
  "description": "job_description",
  "task": {
     "id": 163542,
     "status": "completed",
     "progress": 100.0,
     "step": "",
     "errors": "[]",
     "time_started": "2021-07-27T16:58:46.886043+03:00",
     "last_update": null,
     "time_completed": "2021-07-27T16:59:09.632845+03:00",
     "total": 0,
     "num_processed": 0
  },
  "query": "{\"query\": {\"match_all\": {}}}",
  "field": "field_name_to_detect_on"
}