Porównanie luis.ai vs api.ai vs wit.ai?

80

Czy ktoś zna konkretne różnice i funkcje między tymi trzema, czy może ktoś ma więcej funkcji / jest bardziej elastyczny w użyciu jako programista?

Thomas G.
źródło
4
To naprawdę fajny artykuł zawierający porównanie między nimi! stanfy.com/blog/…
Omar Shehata
@OmarShehata, proszę, umieść to w odpowiedzi.
Mokhtar Ashour
Gotowe! @MokhtarAshour
Omar Shehata
@OmarShehata upvoted!
Mokhtar Ashour

Odpowiedzi:

95

wit.ai Dialogflow luis.aivs vs

╔══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════╗
║                                      wit.ai vs api.ai(Dialogflow) vs luis.ai                                                 ║
╠══════╦════════════════════════════════════╦═════════════════════════════════════════════╦════════════════════════════════════╣
║ S.No ║               Wit.ai               ║          Api.ai(Dialogflow)                 ║               Luis.ai              ║
╠══════╬════════════════════════════════════╬═════════════════════════════════════════════╬════════════════════════════════════╣
║ 1    ║ Wit.ai API is completely free      ║ Api.ai Has a paid enterprise option         ║ LUIS is in beta and free to use    ║
║      ║ with no limitations on             ║ which allows for this to be run on a        ║ 10K transactions per month         ║
║      ║ request rates.                     ║ private cloud internally and more           ║ and up to 5 requests per second    ║
║      ║                                    ║ from their services team., After google     ║ for each account.                  ║
║      ║                                    ║ acquisition they are providing free         ║                                    ║
║      ║                                    ║ services by integrating google cloud        ║                                    ║
║      ║                                    ║ services.                                   ║                                    ║
╠══════╬════════════════════════════════════╬═════════════════════════════════════════════╬════════════════════════════════════╣
║ 2    ║ Provides a nice combination        ║ Speech to Text and Text to Speech           ║ LUIS uses machine learning         ║
║      ║ of both voice recognition and      ║ capabilities, along with machine            ║ based methods to analyze           ║
║      ║ machine learning for developers.   ║ learning.                                   ║ sentences. To perform machine      ║
║      ║                                    ║                                             ║ learning, LUIS breaks an           ║
║      ║                                    ║                                             ║ utterance into "tokens".           ║
╠══════╬════════════════════════════════════╬═════════════════════════════════════════════╬════════════════════════════════════╣
║ 3    ║ Has two main elements to it        ║ Support of Intents, Entities, actions       ║ Supports Intents, Entities         ║
║      ║ that you set up within your        ║ and one key focus area is its “Domains”.    ║ and actions.                       ║
║      ║ app – intents and entities.        ║                                             ║                                    ║
║      ║ Actions are separated to           ║                                             ║                                    ║
║      ║ use as a combined operations.      ║                                             ║                                    ║
╠══════╬════════════════════════════════════╬═════════════════════════════════════════════╬════════════════════════════════════╣
║ 4    ║ Has pre-build entities like        ║ Has pre-build entities like @sys.date,      ║ Has pre-build entities             ║
║      ║ temperature, number, URLs,         ║ @sys.color, @sys.unit-currency… etc.        ║ builtin.intent.alarm,              ║
║      ║ emails, duration… etc.             ║                                             ║ builtin.intent.calendar,           ║
║      ║                                    ║                                             ║ builtin.intent.email… etc.         ║
╠══════╬════════════════════════════════════╬═════════════════════════════════════════════╬════════════════════════════════════╣
║ 5    ║ Doesn’t have integration module    ║ Has integration module to connect           ║ Has integration to Microsoft       ║
║      ║ to directly communicating with     ║ directly to Facebook messenger and          ║ Azure and other services, can be   ║
║      ║ Facebook messenger or other        ║ other messenger api’s. Has support for      ║ deployable in any supported        ║
║      ║ messenger APIs. but has web        ║ deploying in to heroku server, enterprise   ║ servers.                           ║
║      ║ service api to hook services.      ║ paid environment.                           ║                                    ║
╠══════╬════════════════════════════════════╬═════════════════════════════════════════════╬════════════════════════════════════╣
║ 6    ║ Early in 2015, joined Facebook     ║ Created by a team who built personal        ║ LUIS was introduced together with  ║
║      ║ and opened up the entire platform  ║ assistant app for major mobile platforms    ║ Microsoft Bot Framework and Skype  ║
║      ║ to be free for both public and     ║ with speech and text enabled conversations. ║ Developer Platform which can be    ║
║      ║ private instances.                 ║ acquired by google (sept 2016).             ║ used to create Skype Bots.         ║
╠══════╬════════════════════════════════════╬═════════════════════════════════════════════╬════════════════════════════════════╣
║ 7    ║ Wit.ai API for developers of iOS,  ║ Api.ai has SDKs for Android, iOS,           ║ LUIS allow building applications   ║
║      ║ Android, Node.js, Raspberry Pi,    ║ the Apple Watch, Node.js, Cordova,          ║ by using the LUIS web interface.   ║
║      ║ Ruby, Python, C, Rust and          ║ Unity, C#, Xamarin, Windows Phone,          ║ No coding needed other than the    ║
║      ║ Windows Phone. It even             ║ Python and JavaScript. It also can be       ║ ability to interpret and use the   ║
║      ║ has a JavaScript plugin for        ║ integrated with Amazon’s Echo and           ║ returned JSON in application.      ║
║      ║ front end developers.              ║ Microsoft’s Cortana.                        ║ It is also possible to use the     ║
║      ║                                    ║                                             ║ LUIS REST API for                  ║
║      ║                                    ║                                             ║ automation of applications.        ║
╚══════╩════════════════════════════════════╩═════════════════════════════════════════════╩════════════════════════════════════╝

Aktualizacja: API.AI to teraz Dialogflow. Dowiedz się więcej tutaj.

Chandra Sekhar
źródło
3
Limit miesięczny LUIS spadnie do 10 000 zamiast 100 000
Mokhtar Ashour
5
Api.ai usunęło teraz limit żądań dotyczących darmowej wersji, odkąd został zakupiony przez Googe. A Api.ai moim skromnym zdaniem jest najbardziej wydajnym i dobrze zaprojektowanym, chociaż nigdy nie używałem luisa.
Chris - Jr
Czy Luis to samodzielnie obsługuje funkcję zamiany mowy na tekst, taką jak api.ai, bez kupowania innego produktu z zamiany mowy na tekst?
Tariq
@Tariq LUIS koncentruje się wyłącznie na przetwarzaniu języka naturalnego i tokenizacji. Istnieje oddzielna usługa od Cognitive Services firmy Microsoft, która to obsługuje: Bing Speech API
zaznacz stiles
Hej Chandra, nie mogę znaleźć płatnej opcji dla przedsiębiorstw dla api.ai, jak wspomniałaś. Czy możesz pomóc?
Abhishek
45

Ten post na blogu zawiera naprawdę dobrą analizę i porównanie usług Luis, Wit.ai, Api.ai, Amazon Alexa i IBM Watson. Zawiera również ładne tło, dlaczego w pierwszej kolejności chciałbyś zbudować bota konwersacyjnego i niektóre wyzwania, które się z tym wiążą. Został napisany przez ludzi stojących za YumiBot (botem, który podaje ceny za rozwój aplikacji).

Ogólnie rzecz biorąc, Wit.ai i Luis są świetnymi wyborami, jeśli eksperymentujesz i po prostu chcesz coś wydobyć za darmo. Api.ai oferuje doskonałą obsługę i wygodę użytkownika, ale nie jest darmowy. To samo z IBM Watson , ten ostatni wycenił więcej w przypadku pracy w przedsiębiorstwie.Alexa API jest wielki, ale działa tylko z Alexa (ale biorąc pod uwagę, że mają ogromny userbase, nie jest zły interes).

Ich rada to również, aby nie polegać zbytnio na jednym dostawcy:

Zalecamy przechowywanie wszystkich danych potrzebnych do modelu w ustrukturyzowany sposób we własnym repozytorium kodu. Później możesz więc ponownie przeszkolić model od zera, a nawet w razie potrzeby zmienić dostawcę rozumienia języka. Po prostu nie chcesz być w sytuacji, gdy firma zaprzestaje swoich usług i jesteś zupełnie nieprzygotowany. Pamiętasz Parse?

Mam nadzieję, że to trochę pomogło! Myślę, że najlepszym sposobem dokonania wyboru jest wypróbowanie tych usług. Biorąc pod uwagę, że wiele z nich jest wciąż w fazie rozwoju i dodawania funkcji / zmieniających się modeli cenowych, powinieneś spróbować podejść do nich z konkretnym przypadkiem użycia i zobaczyć, który z nich może Cię najszybciej dostać tam, gdzie potrzebujesz.

Omar Shehata
źródło
3
Api.ai jest teraz bezpłatna po przejęciu przez Google.
nguyên
8

Niedawno opublikowaliśmy badanie oceniające siedem usług obsługujących NLU API : API.ai, Amazon Lex, Microsoft LUIS, IBM Watson Conversation, wit.ai, Recast.ai i Snips.ai.

Krótkie podsumowanie naszych ustaleń:

  • Wykrywanie intencji IBM Watson jest najlepsze, zwłaszcza w przypadku mniejszych zbiorów danych uczących (chociaż podczas szkolenia na ponad 2000 próbkach różnica jest nie do odróżnienia).
  • API.AI jest darmowy, wydajność na wystarczająco dużym zestawie treningowym dorównuje IBM Watson i Microsoft LUIS.
  • W naszych testach Microsoft LUIS działa znacznie szybciej niż inne. wit.ai ma nieco gorszą wydajność i czas reakcji niż trzy powyższe, ale jest darmowy i zapewnia najlepsze pokrycie językowe (około 50 języków).
  • Amazon Lex ma dość ścisłe limity API (rozmiar zbioru uczącego jest ograniczony do 200K symboli, co może być niewystarczające do osiągnięcia dobrej jakości wykrywania intencji dla asystenta wielocelowego; wymaga również, aby wszystkie wypowiedzi szkoleniowe były oznaczane przez byty, co jest skomplikowane przygotowanie zbioru danych.
Savenkov
źródło
7

Jednym z aspektów tego pytania jest skuteczność tych narzędzi w zrozumieniu języka naturalnego. W niedawnym teście porównawczym, który właśnie opublikowaliśmy (Snips, francuska firma AI), przetestowaliśmy wbudowane silniki języka naturalnego Alexa (Amazon), SiriKit (Apple), Luis (Microsoft) i API.ai (Google).

Przetestowaliśmy ich zdolność rozumienia naturalnych zapytań, takich jak „Znajdź mi bar sałatkowy, do którego mogę pójść na spotkanie przy lunchu”, „Zamów taksówkę dla 6 osób”, a także 326 innych zapytań.

Ogólny wniosek jest taki, że wszystkie rozwiązania są niedoskonałe.

Dokładniej, wszyscy mają podobny poziom hałasu w swoich odpowiedziach (dokładność między 60% a 90%), ale istnieją znaczne różnice w zakresie języka, który mogą obsługiwać. Z tego punktu widzenia Luis wypada najsłabiej: w każdym testowanym przez nas przypadku użycia rozumiał mniej niż 14% zapytań. API.ai działa lepiej, chociaż niezbyt niezawodnie: rozumie od 0 do 80% zapytań, które testowaliśmy, w zależności od przypadków użycia. Najwyższe poziomy przypominania można zaobserwować w przypadku Alexa (42% i 82% przypomnienia) i Siri (61% przypomnienia).

Więcej szczegółów i surowe dane stojące za tymi wynikami można znaleźć w naszym poście na blogu, Benchmarking Natural Language Understanding Systems

Joseph Dureau
źródło
2

Odpowiem na ostatnią część twojego pytania o elastyczność i bycie programistą, IMO w końcu sprowadza się do tego, czego szukasz na tych platformach.

Jeśli jesteś programistą korzystającym z NodeJS lub .Net, LUIS.ai ma obszerną bibliotekę i dobrze zdefiniowane fragmenty kodu i przykład, aby dość szybko uruchomić porządnego bota. Intencje i rozpoznawanie podmiotów są nieco poniżej normy w porównaniu z Google, ale jeśli jesteś Microsoft Shop, istnieje wiele integracji jednym kliknięciem z O365, Teams, Skype, cortana itp. Wady LUIS.ai to ich usługa. bardzo niestabilny, ponieważ w chwili pisania tego tekstu ich strona LUIS.ai nie działa odrzucając połączenia, a od ponad tygodnia nie działa integracja cortana. Tak więc platforma jest nadal w toku.

Api.ai, z punktu widzenia czystego NLU jest lepszy niż Luis.ai, dalsze intencje są bardzo łatwe do ustawienia, torowanie mowy jest znacznie lepsze niż Luis.ai (nawet po przygotowaniu mowy). Wady, które powiedziałbym, to łączność, a także API do zbudowania bota są nieco bardziej skomplikowane niż budowanie bota opartego na MSBot.

Kolejną platformą open source, która zyskuje na popularności, jest RASA NLU. https://rasa.com/ . Dla porównania, rozpoznawanie podmiotów i ranking są nadal nieco szkicowe w przypadku dużych zbiorów danych, ale są to otwarte źródła i jeśli chcesz zabrudzić sobie ręce, możesz rozwidlić ich platformę github i ulepszyć ją.

Z czysto programistycznego punktu widzenia łatwiej jest latać chatbotem na platformie MS (używając luis.ai lub qnamaker.ai), ale bądź przygotowany na wyzwania, gdy pracują nad stabilizacją platformy.

-Kartik

Kartik
źródło
1

Moim zdaniem Luis jest bardziej rozbudowany i potrafi wyodrębniać encje w różnych językach. Testowałem w api.ai, a holenderski nie działa dla mnie. Jeśli potrzebujesz tylko angielskiego, każdy z nich powinien być w porządku, ale jeśli potrzebujesz obsługiwać więcej języków, lepiej przetestuj te języki, zanim utkniesz w jednej usłudze. Zamiana mowy na tekst Bing jest w porządku, ale myślę, że aby uzyskać bardziej niezawodne rozwiązanie, będziesz potrzebować innej usługi firmy Microsoft, która usuwa głos i szum.

andreja
źródło
0

Używałem DialogFlow, ale przełączyłem się na LUIS. Czemu? ponieważ gdy wywołujesz DetectIntent w DialogFlow, otrzymujesz JSON z wybraną intencją i jej poziomem ufności, ale muszę uzyskać listę intencji z poziomem ufności każdego z nich. To samo dzieje się z wit.ai i api.ai.

Z drugiej strony LUIS w odpowiedzi podaje listę intencji. W ten sposób mogę zastosować dalsze przetwarzanie po mojej stronie.

To jest przykład z LUIS, kiedy wyszukujesz „zarezerwuj lot do Kairu” (część przykładu LUIS):

 {
   "query": "Book me a flight to Cairo",
   "topScoringIntent": {
       "intent": "BookFlight",
       "score": 0.9887482
   },
   "intents": [
       {
           "intent": "BookFlight",
           "score": 0.9887482
       },
       {
           "intent": "None",
           "score": 0.04272597
       },
       {
           "intent": "LocationFinder",
           "score": 0.0125702191
       },
       {
           "intent": "Reminder",
           "score": 0.00375502417
       },
       {
           "intent": "FoodOrder",
           "score": 3.765154E-07
       },
   ],
   "entities": [
       {
           "entity": "cairo",
           "type": "Location",
           "startIndex": 20,
           "endIndex": 24,
           "score": 0.956781447
       }
   ]
}

Z drugiej strony, interfejs użytkownika służący do konfigurowania DialogFlow jest znacznie potężniejszy niż to, co dostajesz dzięki LUIS.

Francisco Goldenstein
źródło