Comments (8)
@amendlik Setting up a separate intent and slot type will only work in voice mode if you also train QnABot with the same city data for voice processing. In this situation, the Lex bot, QnABot, is being invoked using the utterance prior to calling the response bot. It does not pass the voice utterance through to the response bot but instead passes the text transcript which is most likely in error in this case as QnABot/Lex was not trained to understand it in the QnABot context.
The best way to solve this is to use QnABot to define a new slottype and a new question which uses the new slot type and creates a dedicated bot intent. This is in lieu of building a new response bot. I've attached qnabot json file that can be imported that demonstrates this technique. You can cache this slot value in a SessionAttribute for later use in QnABot in another question use it in a question flow where another qid is called via Document Chaining. When using this technique be sure to perform a Lex Rebuild from the hamburger menu in the upper right area of the admin ui tool bar.
from qnabot-on-aws.
Thanks @bobpskier. @amendlik plase let us know if the provided solution works for you
from qnabot-on-aws.
Thank you @bobpskier. I can see this solution working in some cases, but only when you always want to collect the city name within the first step of the conversation. If you have multiple steps, and the city name would be collected conditionally in a later step, I don't think this works.
Are there any other solutions that would support multi-step conversations?
from qnabot-on-aws.
@amendlik I think using QnABot conditional chaining would work quite nicely for this scenario. This lets one question chain to another question in QnABot. There will be a question that decides to conditionally chain into the city question. Once the city question is complete and the session attribute set, it would chain to the later step. I can work up an example if that would help.
from qnabot-on-aws.
Thanks @bobpskier - What about cases where I only want to ask for a city name in some cases? If the city name is a required slot in the supervisory bot, how would I ever avoid asking for it?
BTW - I'm having some trouble testing this scenario due to #684
from qnabot-on-aws.
@bobpskier I received an update on #684 that one cannot use slots and chaining within the same QnA document.
from qnabot-on-aws.
@amendlik Not the response I was expecting from the QnABot solutions team. I'll see if I can come up with a solution. This should work regardless if using a custom intent/slot or if using an elicit response bot prompting for a value. The custom intent will work better from a training perspective than using an elicit response bot.
from qnabot-on-aws.
@amendlik Are you still blocked here or do you have a path based on the input from #684 ?
from qnabot-on-aws.
Related Issues (20)
- Lex slot validation using lambda code hook in lex v2 console HOT 4
- Kendra context summary encoding/decoding issues. HOT 3
- a Terraform version HOT 2
- Provide session management capabilities HOT 2
- Ability to reset the conversation or start new conversation HOT 2
- QnA wont get any content from Kendra , if the Kendra content is not in english. HOT 15
- [Bug] AWS environment variable for region is wrongly set HOT 3
- Enable Intent Trigger every start of a session HOT 2
- Using Elicit Response but with chaining HOT 4
- Confirmation Decline Response Prompt not sending HOT 2
- Lambda creates about 1 bilion copies of file HOT 5
- Lambda layer changes not reflecting HOT 4
- Response card is not showing when chaining rule is added. HOT 8
- Amazon Polly voice name for Austrian German is incorrect HOT 4
- Score matching HOT 3
- Answer data that contains only double-byte full-width characters cannot be imported. HOT 2
- Shell and other commands not working in Ubuntu linux HOT 4
- Issue: QnABot logs Never Expire. Request: Add configurable log retention period for all CloudWatch log groups used by QnABot HOT 4
- 6.0.0 has updated PassRole resource constraint definition that breaks upgrades or new installs if stack name is greater than 26 characrters HOT 5
- Kendra Web Cwaler is executed, but the KendraCrawlerSNSTopic that launches the ClowlerLambda is not triggered HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from qnabot-on-aws.