Chatbot w języku polskim to program, który potrafi rozumieć i analizować rozmowy po polsku. Obecnie takie chatboty potrafią bardzo płynnie prowadzić dialog między człowiekiem a komputerem.
Ostatnie postępy w dziedzinie przetwarzania języka naturalnego (NLP, w tym tekście określane jako PLN) umożliwiają tworzenie chatbotów po polsku, uwzględniając specyfikę tego języka. Te osiągnięcia wykorzystują uczenie maszynowe (ML – machine learning), by rozumieć nie tylko strukturę języka, ale także znaczenie słów i ich kontekst.
Portugalski jest szóstym najczęściej używanym językiem na świecie, a połowa użytkowników mieszka w Brazylii. Mimo podobieństw do innych języków romańskich, portugalski ma dwie wyraźne cechy:
Dodatkowo, istnieją zupełnie różne idiomy wśród użytkowników z różnych regionów, co bardzo utrudnia zrozumienie, czasem nawet całych zdań.
Te cechy sprawiają, że praca nad chatbotem po polsku jest trudna? Bez zaskoczenia – odpowiedź brzmi: tak.
Powyższe kwestie stanowią wyzwanie dla PLN w chatbotach po polsku. Pierwszym krokiem każdego algorytmu przetwarzania języka naturalnego jest zrozumienie języka, czyli rozbicie zdań na małe jednostki znaczeniowe, tzw. „tokeny”. Ten proces nazywa się „tokenizacją” (co ciekawe, w polskim często używa się zapożyczeń i „spolszcza” je). Im bardziej uporządkowany i systematyczny jest język, tym łatwiejsza jest tokenizacja.
Zanim zrozumiemy, na czym polegają najnowsze osiągnięcia PLN, musimy wiedzieć, jak powstawały modele rozumienia języka.
W pewnym sensie, zrozumienie jak powstaje chatbot po polsku (lub w innym języku) to podróż w czasie.
Pierwsze badania nad nieprzewidywalnością języka pojawiły się w latach 40., w pracach neuroanatomisty i psychiatry Warrena McCullocha z MIT oraz matematyka Waltera Pittsa z Uniwersytetu Illinois. Stworzyli oni teoretyczne podstawy, które pozwoliły Johnowi von Neumannowi napisać „The General and Logical Theory of Automata” pod koniec lat 40.
Postęp w mocy obliczeniowej komputerów był drugim filarem, który przeniósł badania nad PLN z laboratoriów naukowych do firm i instytucji zajmujących się praktycznym wykorzystaniem nowych technologii.
Historia PLN w ścisłym sensie zaczyna się w latach 50., gdy Alan Turing opublikował artykuł „Computing Machinery and Intelligence”, w którym zaproponował to, co dziś nazywamy testem Turinga jako kryterium inteligencji.
Pod koniec lat 80. nastąpiła rewolucja w PLN dzięki wprowadzeniu algorytmów uczenia maszynowego do przetwarzania języka. Było to możliwe zarówno dzięki wzrostowi mocy obliczeniowej, jak i stopniowemu odchodzeniu od teorii lingwistycznych Chomsky’ego, które nie sprzyjały tworzeniu korpusów językowych niezbędnych do uczenia maszynowego. Automatyzacja polegała na dzieleniu zdań na mniejsze fragmenty i stosowaniu reguł statystycznych do katalogowania i identyfikowania relacji między nimi. Ten proces to właśnie „tokenizacja”, opisana wcześniej.
Jednak tokenizacja wymagała dużego nakładu pracy ręcznej ze strony badaczy PLN. Każdy język musiał być tokenizowany osobno i praktycznie ręcznie.
Było to szczególnie trudne dla botów obsługujących języki silnie zależne od kontekstu, jak można się domyślić.
Po tokenizacji można było zastosować algorytmy AI do zrozumienia języka, czyli zbudowania mapy znaczeń i relacji między słowami.
Ten etap rozumienia języka mógł być zautomatyzowany, jeśli tokenizacja była niezawodna. Problem polegał jednak na tym, że tokenizacja była skomplikowana, więc nawet algorytmy rozumienia musiały być konfigurowane ręcznie wraz z tokenizacją.
Efekt końcowy nie był zadowalający. Na przykład poziom rozumienia polskiego w porównaniu z angielskim był przeciętny. Oczywiście, badania nad językiem angielskim były znacznie bardziej rozwinięte niż nad polskim, ale trudności z kontekstem w polskim utrudniały osiągnięcie dobrych rezultatów.
Jak to zwykle bywa w AI, badacze zaczęli się zastanawiać, czy tokenizację można by powierzyć uczeniu maszynowemu. Pozwoliłoby to, by algorytmy tokenizacji i rozumienia były niezależne od języka (tzw. agnostyczne językowo), co znacznie przyspieszyłoby i poprawiło trenowanie AI w nowych językach.
I właśnie wtedy, pod koniec 2018 roku, nastąpił przełom: AI mogła być trenowana po polsku bez ręcznej ingerencji, a wydajność PNL znacznie się poprawiła.
Platformy AI dla chatbotów po polsku stały się natychmiast dużo lepsze, a poziom rozumienia polskiego zbliżył się do tego, jaki osiągnięto w innych językach.
To, że nastąpił taki postęp, nie oznacza, że jakość wszystkich chatbotów po polsku od razu się poprawiła. Aby klienci mogli odczuć te korzyści, platformy chatbotów musiały najpierw zaktualizować swoje algorytmy do najnowszych technologii.
Z uwagi na wcześniejsze inwestycje w starsze technologie, nie wszystkie platformy zrobiły to szybko.
Dodatkowo, niektóre funkcje muszą być wdrożone, by chatboty po polsku zapewniały dobrą jakość użytkownikom. Przykładem jest budowa słowników synonimów i ich użycie w różnych kontekstach, by chatbot nie zrozumiał słowa inaczej, niż wynika to z kontekstu.
Praca z wieloma językami na różnych platformach może być trudna. Niektóre platformy wymagają tworzenia osobnych botów dla każdego języka, co jest nieefektywne pod względem skalowalności i utrzymania.
Dobra platforma powinna być naprawdę wielojęzyczna i umożliwiać wiele tłumaczeń tych samych treści w interfejsie użytkownika.
Dodatkowo, język powinien być ustawiany jako zmienna rozmowy, by AI mogła go wykryć i by projektanci mogli tworzyć logikę wokół tego języka.
Poza funkcjami związanymi z językiem, aby stworzyć świetnego chatbota w dowolnym języku, ogólna funkcjonalność platformy chatbotowej musi być na wysokim poziomie. Istnieją dwie ważne kategorie funkcjonalności.
Ostatecznie jakość doświadczenia użytkownika zależy bezpośrednio od możliwości narzędzia użytego do stworzenia chatbota – od rozumienia języka po podejście do interfejsu graficznego lub tekstowego.
Nawet z dobrą platformą, tworzenie chatbota po polsku to wciąż wyzwanie. Liczba badań nad polskim w świecie AI jest ograniczona, więc znalezienie odpowiednich specjalistów do projektu może być trudne.
Nie trzeba już pisać algorytmów PNL od podstaw, bo są one dostępne od ręki, ale wyzwaniem może być znalezienie kompetentnych projektantów, którzy rozumieją różnice idiomatyczne między grupami użytkowników, do których chatbot po polsku ma trafić. Jest to szczególnie ważne w przypadku języka polskiego, gdzie szeroko stosuje się idiomy zależne od kontekstu.
Dlatego ważne jest, by platforma chatbotowa umożliwiała łatwą aktualizację i utrzymanie treści oraz tłumaczeń przez osoby nietechniczne, bo projektanci i deweloperzy mogą nie znać wszystkich kulturowych niuansów polszczyzny.
Oczywiście, coraz większa precyzja chatbotów po polsku oznacza, że ich popularność będzie rosła w najbliższych latach. To z kolei rozwiąże problem ograniczonych zasobów i pozwoli potencjalnym klientom lepiej zrozumieć, jakie są najlepsze praktyki, by osiągnąć najlepsze rezultaty.
Innowacje w technologii PNL dotyczą nie tylko chatbotów po polsku, ale także innych zastosowań AI. Obecnie widzimy wielofunkcyjne systemy wykorzystujące AI po polsku na różne sposoby – od analizy sentymentu w wiadomościach i komentarzach, po streszczanie lub generowanie tekstów, które wcześniej mogły być tworzone tylko przez ludzi. Zazwyczaj chatbot po polsku służy jako interfejs użytkownika nie tylko dla różnych technologii AI, ale także pomaga użytkownikom korzystać z innych systemów, takich jak strony internetowe czy aplikacje webowe, a także jako doradca zakupowy lub wspierający podejmowanie decyzji.
Oczywiście, mimo dużego postępu w PNL po polsku, zawsze można osiągnąć lepsze wyniki. Badania nad PNL trwają i z pewnością pojawią się kolejne innowacje. Dopóki PNL nie osiągnie poziomu ludzkiego, zawsze będzie coś do poprawy.
Kolejnym krokiem dla wszystkich silników PNL, niezależnie od języka, jest lepsza obsługa dialogów wieloetapowych. Oznacza to umożliwienie człowiekowi prowadzenia wieloetapowej rozmowy z botem w określonym temacie, a nie tylko zadawania pojedynczych pytań czy poleceń. Następnym krokiem dla platform chatbotowych jest ułatwienie tworzenia takich dialogów.
Dialog wieloetapowy jest szczególnie ważny dla interfejsów głosowych, takich jak Alexa czy urządzenia Google Home.
Choć omówiliśmy postępy w tokenizacji opartej na uczeniu maszynowym i ich wpływ na PNL po polsku, powiązanym tematem jest transkrypcja mowy na tekst po polsku. Transkrypcja mowy na tekst po polsku wciąż się rozwija w porównaniu z innymi językami – choć różnice w wydajności szybko się zmniejszają. Mamy nadzieję, że postęp PNL opisany tutaj i prowadzony na całym świecie pomoże jeszcze bardziej zredukować tę różnicę w najbliższej przyszłości.
Twórz wyjątkowe doświadczenia z agentami AI.