Using API.ai for NLP to redirect to the right flow

#21

The reason I use built.io is that I’m building out some more “advanced” integrations with other “enterpise-y” tools that they support directly, including an adapter for api.ai, and a response engine for Amazon Alexa. Plus, their debugging tools and visual flow design is better at the moment.

However, I know FlowXo is working on a new version of flow design (this will help a lot) and there’s no reason you couldn’t just use FlowXO exclusively for all this right now.

The response times with my multi-layered solution isn’t bad at all, totally seems like a “normal” conversation speed.

(Talvinder) #22

I am intrigued. Will check out built.io as well.

(Anish Duggal) #23

@Ruben_P

Hi Ruben,

How are you finding the pricing on Built.io vs. Zapier

#24

I love Zapier too, but built.io is much more slick, especially with debugging logs and using custom Nodejs scripts. I’m in process of migrating several of my “zaps” to built.io. In particular, the built.io “enterprise” version is excellent, while their “express” version is too limited. Also, built.io can be more expensive, and they vary on what services are supported out-of-the-box.

It think the reality is that the “perfect” solution for automation and integration is going to involve a mix of FlowXO, Zapier, and Built.io for now.

(Anish Duggal) #25

Thank you very much. @Ruben_P

#26

I just a wanted to share an update here as I’ve been continuing to develop my strategy on how to best integrate all these tools.

As I’ve gotten more into built.io, I found myself writing more and more custom NodeJS code to do API calls, parsing and other things. This was all fine, their tools are good, but the truth is that the cost of the platform it pretty high considering other options. I’m on their $99/month plan, which is probably ok for this short-term, but for lots of automations and especially lots of people using you bots you’ll quickly move toward their enterprise-level $1500/month plan.

So, while I’m still using their tools flow setting up minimally-programatic integrations, I’ve moved a lot of my “hard-core” processing to AWS lambda. Lambda is great, fast, and (comparatively) really-really cheap. However, it’s not a trivial thing to understand especially if you’re not already a developer.

Also, to reduce built.io costs, and to get faster bot responses, I plugged FlowXO directly into Api.ai and am using Api.ai’s “fulfillment webhook” option to process more advanced responses. AWS Lambda catches all these custom requests and call APIs and such, then routes messages back to FlowXO (I’m using Amazon SNS to do this part).

For simple NLP, conversational responses (how are are you doing to today? What’s up?)
FlowXO -> Api.ai -> FlowXO

For complex processing
FlowXO -> Api.ai -> Api Fulfillment Webhook -> AWS Lambda -> FlowXO
FlowXO -> Api.ai -> Api Fulfillment Webhook -> AWS Lambda -> Built.io -> FlowXO

In summary, my updated thoughts on this whole thing are:

  • FlowXo is still your best bet as a front-end bot service
  • Api.ai integrated with a FlowXO catch-all works great
  • Use Api.ai’s Fulfillment webhook for complex intent handling
  • Use AWS Lambda to hand the Api.ai webhooks (there are good tutorials on this)
  • Route the responses back to FlowXo for user interaction.

This being a FlowXO forum, I want to emphasize, you CAN use FlowXO to handle the Api.ai responses or even handle the Api.ai webhooks as well. It’s just that as your needs get more complex, in my opinion it will become unmanageable that way quickly.

For this kind of work let FlowXO be your “front-end” for users and for some basic procedural requests, and offload the rest to more specialized NLP and development tools.

5 Likes
Answers based on past messages
(Michel Morelli) #27

Hi, are there some news about the tutorial for using Api.ai into Flow.xo ?

(Sarah Palombo) #28

Just to let you know that we’ve now published the API.AI article

The article will show you how to use services like API.AI to give your users a conversational experience. You’ll see how to move data between the two services, save the user’s choices as attributes and eventually pass information into another Flow using the flow service.:+1:

Sarah

3 Likes
(Samson Taylor) #29

Would you say, if you have Api.ai running as a catch-all, it eliminates the need for a Flow XO only catch-all trigger? (one that doesn’t fire out to Api.ai)

(Karen Barker) #30

Hi Samson,

There wouldn’t really ever be a time that you would have 2 separate catch all flows. You wouldn’t be able to guarantee which would trigger here and so responses would get confusing.

In our article the api.ai flow is triggered by a catch all because generally if you are looking to go to api.ai you are receiving a sentence from the user and wanting to find the intent behind that message rather than just listening for a keyword/phrase.

1 Like
#32

Hi,
How were you able to incorporate the follow up question functionality? The only way I could figure out how to get follow up answers was to create intents that result in the follow up question so that I could ask the follow up question in Flowxo.

(Karen Barker) #33

Hi @stellarun1,

You’re spot on with how to get the follow up answers back into Flow XO. If you haven’t seen we have an article here that should help. :thumbsup: