Такенізатар


Сэрвіс «Такенізатар» прызначаны для вылучэння ў тэксце токенаў. На ўваход сэрвісу падаецца тэкст, які патрабуе такенізацыі. Пасля апрацоўкі тэксту на выхадзе карыстальнік атрымлівае спіс вылучаных токенаў.

 

Асноўныя тэрміны і паняцці

Такенізацыя (англ. tokenizing, лексічны аналіз) — вылучэнне ў тэксце токенаў спецыяльнай камп’ютарнай праграмай. Гэта працэс аналітычнага разбору ўваходнай паслядоўнасці знакаў на распазнаныя групы — лексемы, з мэтай атрымання на выхадзе ідэнтыфікаваных паслядоўнасцяў, так званых «токенаў». Лексічны аналіз выкарыстоўваецца ў кампілятарах і інтэрпрэтатарах зыходнага коду моў праграмавання, і ў розных парсерах слоў натуральных моў.

Токен (лексічны аналіз) — паслядоўнасць знакаў у лексічным аналізе ў інфарматыцы, адпаведны лексеме. Аб’ект, які ствараецца з лексемы ў працэсе лексічнага аналізу (такенізацыі).

Шаблон токена — фармальнае апісанне класу лексем, якія могуць стварыць дадзены тып токена.

 

Апісанне карыстальніцкага інтэрфейсу

Карыстальніцкі інтэрфейс сэрвісу прадстаўлены на малюнку 1.

Малюнак 1. Графічны інтэрфейс сэрвісу «Такенізатар»

Малюнак 1. Графічны інтэрфейс сэрвісу «Такенізатар»

  • поле ўводу тэксту, які патрабуе такенізацыі;
  • меню выбару мэтавай мовы;
  • кнопка «Атрымаць спіс токенаў!», якая запускае такенізацыю;
  • поле вываду, дзе адлюстроўваюцца вылучаныя токены.

Карыстальніцкі сцэнар працы з сэрвісам

  1. Увесці ў поле ўводу тэкст, які патрабуе такенізацыі.
  2. Выбраць мэтавую мову.
  3. Націснуць кнопку «Атрымаць спіс токенаў!».
  4. Праглядзець вылучаныя токены (малюнак 2).
Малюнак 2. Вынікі працы сэрвіса «Такенізатар»: вылучаныя токены

Малюнак 2. Вынікі працы сэрвіса «Такенізатар»: вылучаныя токены

 

Доступ да сэрвіса праз API

Для доступу да сэрвіса “Такенізатар” праз API, неабходна адправіць AJAX-запыт тыпу POST на адрас https://corpus.by/Tokenizer/api.php. Праз масіў data перадаюцца наступныя параметры:

  • inputText — адвольны ўваходны тэкст.
  • language — мова тэксту. Даступны наступныя мовы:
    • be — беларуская мова;
    • en — англійская мова;
    • ru — руская мова.

Прыклад AJAX-запыту:

$.ajax({
   type: “POST”,
   url: “https://corpus.by/Tokenizer/api.php”,
   data:{
      “inputText”: “Сі́рыус (лац. Sirius), таксама Альфа Вялікага Сабакі (лац. Alpha Canis Majoris) – найярчэйшая зорка начного неба.”,
      “language”: “be”
   },
   success: function(msg){ },
   error: function() { }
});

Сервер верне JSON-масіў з уваходным тэкстам (параметр text), масівам са згрупаванымі сімвальнымі паслядоўнасцямі (параметр CharacterArr) і масівам з сімвальнымі паслядоўнасцямі, згрупаванымі паводле дадатковых правіл, (параметр ResultArr). Напрыклад, па вышэй прыведзеным AJAX-запыце будзе сфарміраваны наступны адказ:

[
   {
      “text”: “Сі́рыус (лац. Sirius), таксама Альфа Вялікага Сабакі (лац. Alpha Canis Majoris) – найярчэйшая зорка начного неба.”,
      “CharacterArr”: 
      {
         “0”: {
            “0”: “Сі”,
            “1”: “alphabet”,
            “2”: 2
         },
         “1”: {
            “0”: “́”,
            “1”: “character”,
            “2”: 1
         },
         “2”: {
            “0”: “рыус”,
            “1”: “alphabet”,
            “2”: 4
         },
         <…>
      },
      “ResultArr”: {
         “0”: {
            “0”: “Сі́рыус”,
            “1”: “word”,
            “2”: 7
         },
         “1”: {
            “0”: ” “,
            “1”: “whitespaces”,
            “2”: 1
         },
         “2”: {
            “0”: “(“,
            “1”: “character”,
            “2”: 1
         },
         <…>
      }
   }
]

 

If you have found a spelling error, please, notify us by selecting that text and pressing Ctrl+Enter.