Сэрвіс «Такенізатар» прызначаны для вылучэння ў тэксце токенаў. На ўваход сэрвісу падаецца тэкст, які патрабуе такенізацыі. Пасля апрацоўкі тэксту на выхадзе карыстальнік атрымлівае спіс вылучаных токенаў.
Асноўныя тэрміны і паняцці
Такенізацыя (англ. tokenizing, лексічны аналіз) — вылучэнне ў тэксце токенаў спецыяльнай камп’ютарнай праграмай. Гэта працэс аналітычнага разбору ўваходнай паслядоўнасці знакаў на распазнаныя групы — лексемы, з мэтай атрымання на выхадзе ідэнтыфікаваных паслядоўнасцяў, так званых «токенаў». Лексічны аналіз выкарыстоўваецца ў кампілятарах і інтэрпрэтатарах зыходнага коду моў праграмавання, і ў розных парсерах слоў натуральных моў.
Токен (лексічны аналіз) — паслядоўнасць знакаў у лексічным аналізе ў інфарматыцы, адпаведны лексеме. Аб’ект, які ствараецца з лексемы ў працэсе лексічнага аналізу (такенізацыі).
Шаблон токена — фармальнае апісанне класу лексем, якія могуць стварыць дадзены тып токена.
Апісанне карыстальніцкага інтэрфейсу
Карыстальніцкі інтэрфейс сэрвісу прадстаўлены на малюнку 1.
- поле ўводу тэксту, які патрабуе такенізацыі;
- меню выбару мэтавай мовы;
- кнопка «Атрымаць спіс токенаў!», якая запускае такенізацыю;
- поле вываду, дзе адлюстроўваюцца вылучаныя токены.
Карыстальніцкі сцэнар працы з сэрвісам
- Увесці ў поле ўводу тэкст, які патрабуе такенізацыі.
- Выбраць мэтавую мову.
- Націснуць кнопку «Атрымаць спіс токенаў!».
- Праглядзець вылучаныя токены (малюнак 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
},
<…>
}
}
]