Echo Dot (3rd Gen) - Smart speaker with Alexa - Charcoal

Use your voice to play a song, artist, or genre through Amazon Music, Apple Music, Spotify, Pandora, and others. With compatible Echo devices in different rooms, you can fill your whole home with music.

Buy Now

Wireless Rechargeable Battery Powered WiFi Camera.

Wireless Rechargeable Battery Powered WiFi Camera is home security camera system lets you listen in and talk back through the built in speaker and microphone that work directly through your iPhone or Android Mic.

Buy Now

Chatbot, Natural Language Processing (NLP) and Search Services and how to mash them up for a better user experience

0
112


Mohammed Brückner

Let us assume that Cognigy is set as Bot framework. (It could equally be Azure Bot Service or chatfuel.com or whatever else.)

The workflow engine mentioned can be anything from Power Automate to Logic Apps to Catalytics to whatever else.

Search anything from ElasticSearch to good old Lucene (or similar) to Azure Search.

Now there are a couple of options, by scenario.

All you need can gathered mainly via the Bot Framework.

Should there be any service orchestration needed, e.g. pulling data from other systems, that would happen right out of the Bot Framework.

KB = Knowledge Base, a persistence store where intent are mapped to responses.

Easy and straight-forward to implement. Most Bot Frameworks are dead-simple to configure.

Constraints:

  • Continuous data import into the KB might be hard to achieve …
  • …because a Bot Framework is not built as workflow/integration engine necessarily but only provides some rudimentary technical capabilities for that, not to mention continuous deployment or existence of controls.
  • Therefore, a Bot Framework as user channel endpoint management tool, should be rather “dumb” and leave complex orchestration to other tools.

You want to make semi-structured data available to achieve easier access to relevant data, fostering (web) search services to retrieve results. Think of “FAQ bots”.

The intent KB in this scenario is with the NLP service.

Merits:

Allows for targeted search results delivered to any channel the Bot Framework can manage.

Constraints:

  • If the data is not publicly available, some services like QnA maker which bundle NLP + Search, may struggle.
  • The data is ideally scraped or imported from existing sources — if you have to build up the KB from scratch, there is no point in using Search and you could equally manage your KB out of the Bot Framework or via your NLP service.
  • Lots of moving parts of course, therefore be careful about total complexity.

You want to apply NLP processing beyond what your Bot Framework offers and probably further transformations / processing of the user input along the way.

The intent KB in this scenario is with the NLP service.

Merits:

Allows for targeted search results delivered to any channel the Bot Framework can manage.

Constraints:

  • The Bot Framework often offers at least a basic NLP capability, that is the case e.g. for Cognigy — consider wisely to what extent you want to manage NLP and whether it justifies using an “external” service.
  • Couple of moving parts here, to reduce complexity consider throwing out the “middleware” which is the workflow engine part. Do note however this will be poor decision in case you end up doing more service orchestration than initially expected. (Mitigation tactic: If that situation emerges, quickly pull in a worfklow engine before proceeding.)

A nice reference architecture to compare to would be:



Read More

LEAVE A REPLY

Please enter your comment!
Please enter your name here