Muszę zaimplementować NLP w moim obecnym module. Szukam dobrej biblioteki, która może mi tutaj pomóc. Natknąłem się na „LingPipe”, ale nie mogłem do końca śledzić, jak go używać.
Zasadniczo musimy zaimplementować funkcję, w której aplikacja może odszyfrować instrukcje klienta (instrukcje dostawy) napisane prostym angielskim. Na przykład:
- Odbiór jutro o 12:00
- Zamów dostawę po 10 czerwca
- Prosimy nie wysyłać do środy
- Dodaj 10 kolejnych jednostek XYZ do zamówienia
Odpowiedzi:
LingPipe jest bardzo ładny i dobrze udokumentowany. Możesz też rzucić okiem na:
Ta ostatnia szczególnie może Cię zainteresować, chociaż nie wiem, czy są jakieś łatwo dostępne implementacje Java (a może i tak jest to zbyt duża broń dla twojego problemu :-)
Pomysł Paula dotyczący korzystania z DSL jest prawdopodobnie łatwiejszy i szybszy do wdrożenia oraz bardziej niezawodny w użyciu dla Twoich klientów. Ja też poleciłbym najpierw przyjrzeć się temu.
źródło
Myślę, że to, czy zdecydujesz się użyć NLP, może zależeć od konkretnych wymagań twojego systemu. Czy wymagana jest akceptacja języka angielskiego w dowolnej formie, czy też akceptowany będzie tylko określony zestaw instrukcji? Może być łatwiej zbudować język specyficzny dla domeny, który obsługuje to, co muszą przekazać Twoi użytkownicy, niż przeprowadzić pełną analizę semantyczną dowolnego tekstu.
W przestrzeni Java Groovy ma pewne wsparcie dla budowania DSL .
źródło
Aby uzyskać informacje na temat innych języków JVM, zobacz
źródło