RasaHQ / pokedex-demo

Rasa Demo for a digital assistant for pokemon
Apache License 2.0
36 stars 39 forks source link

Use a Knowledge Base to ask for random Pokemon. #9

Closed juandes closed 4 years ago

juandes commented 4 years ago

In this PR, I'm using a knowledge base to ask for random Pokemon. The question is as follows.

user -> mention a few Pokemons
bot -> Found the following objects of type 'pokemon':
1: Goldeen
2: Furret
3: Glaceon
4: Amaura
5: Illumise

Additionally, I changed the format of the Pokemon DB file added in a previous PR to match the format required by the Knowledge Base.

sara-tagger commented 4 years ago

Thanks for submitting a pull request 🚀 @wochinge will take a look at it as soon as possible ✨

koaning commented 4 years ago

Very cool you got this to work. I'm definately going to add it to the repo but I had one remark.

Looking at the nlu.md file you've added this intent.

## intent:query_knowledge_base
- mention a few [pokemons](object_type:pokemon).

It would be good to add a few extra examples for this intent. Here's a list that I came up with;

- could you give me some random [pokemons](object_type:pokemon)
- give me some random [pokemons](object_type:pokemon)
- can you give examples of [pokemon](object_type:pokemon)

We'll expand this list when we come up with more features we'd like it to handle, but I have noticed that it is having some trouble distinguishing between this new intent and the make_joke intent.

koaning commented 4 years ago

Once you've added the extra examples I'll gladly press the big green button 😄

juandes commented 4 years ago

Sweet! I'll add the extra examples. Regarding the small issues with the make_joke intent, maybe I could try a different wording? But that seems a bit hacky. Any idea why it might happen?

EDIT: Updated.

koaning commented 4 years ago

I would not use different wording. I would just use the wording that you think a user might use to communicate their intent. After all; this is the pattern we'd like our system to learn.

I think part of what is going wrong here is that there technically is a class imbalance. There are lots of examples for the joke intent and not a whole lot for the others. I imagine that this issue should be remedied as we add more examples but it certainly is something to keep an eye out for.

I'll be working on this today with a collegue and I expect more examples to be added by the end of the afternoon.

That said, I'm merging. @juandes thanks for the PR! Feel free to think about what other features you may want to add. I'm still thinking about simulating pokemon battles, but since I'm less of an actual pokemon fan it would be cool to hear your thoughts on the issue list :)

juandes commented 4 years ago

Sweet! Thanks for accepting the PR, and for the insights about the issue with the joke intent. Regarding the battle simulator, I'll start gathering some ideas :D!