wyciąganie słów kluczowych ze zdania to pikuś przy tym co musisz dalej zrobić - musisz zrozumieć jak działa taki specyficzny umysł. Samo odpowiadanie na kombinacje słów nie zda rezultatu. Słowa kluczowe muszą być grupowane, np. na osoby (ja, ty, on, ona, itp.), rzeczowniki, przymiotniki, czasowniki. Chatbot pierw otrzymany ciag znakow dzieli na slowa kluczowe, nastepnie kazdemu ze slownika przypisuje jego grupe, w razie gdy ciag jest niestandardowo ulozony (tj. w jezyku Polskim dozwolona jest przemienna kolejnosc slow, niezmieniajac zwykle znaczenia zdania) musi ulozyc slowa prawidlowo aby w dalszym etapie chatbot mogl przetrawic i "wyobrazic" sobie to co do niego piszesz, inaczej bylby to dla niego tylko bezsensowny slowotok.
"Ala ma kota" - dzieli na 3 slowa: "Ala"[osoba(ona)];"ma"[czasownik(stan)];"kota"[rzeczownik]. Chatbot zapamietuje ten ciag w pamieci wlasnie w strukturze slowo-grupa.
"(Ty) Masz {na} imie chatbot" - "Ty"[osoba(ty)];"masz"[czasownik(stan)];"imie"[rzeczownik];"chatbot"[rzeczownik].
bot zapamieta ten ciag (bot musi zapamietac kazdy niepowtarzajacy sie z wczesniej zapisanymi ciag slow).
"Jak (Ty) masz {na} imie?" - "jak"[zaimek ale dla bota to zapytanie, zarzadanie odpowiedzi];"Ty"[osoba(ty)];"masz"(czasownik(stan));"imie"[rzeczownik].
Bot widzac pierwsze slowo jako zapytanie, otworzy dostep do bazy pamieci, dalej widzac osobe, szuka w bazie pamieci danej osoby, gdy znajdzie pierwszy rekord zaczyna filtrowac szukane ciagi aby zawieraly dalsze szukane informacje ("masz" i "imie") i laduje je do pamieci krotkotrwalej (wszystko co bylo ostatnio w jego "myslach" - ciagi trafiaja nie tylko do bazy pamieci po ich przetrawieniu, ale tez do pamieci krotkotrwalej o jakims limicie maksymalnym aby miec swierze informacje pod reka). Znalazl ciag: "Ty Masz imie chatbot" i bierze z niego slowa pozostale ("chatbot") i dalej wynik transformuje w zdanie i wyrzuca do wyjscia. Obrobka w zdanie przy wiecej niz 1 slowie zwrotnym (odpowiedzi) bedzie klopotliwa, bo bot musi wiedziec ktore slowa odpowiedzi ma uzyc w zdaniu zwrotnym. Wlasnie w tym etapie wazne jest "wyobrazenie" przez bota ciagu ktory dostaje.
Milej zabawy :)
BTW. Bede musial Wam chyba jakis arcik o tym strzelic z przykladem ;)