Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
panelIconId1f525
panelIcon:fire:
panelIconText🔥
bgColor#FFF0B3

You are on fire!

If you are here, you should have been successful in completing a basic version of your recipe recommendation agent. You will have been able to implement this basic version by following the project instructions in the other sections. This will already enable you to pass the project, that is, if you also write a good report (see End Final Report).

An implementation of only this basic version, however, will not get you a (very) high grade (see the Assessment Rubric for more information). Therefore, we encourage you to read through this section. It will provide you with some ideas of how you can extend your recipe recommendation agent. By implementing extensions, you will be able to improve your grade.

...

  • Add a Filter: Make a new filter by adding a rule and entity in order to filter recipes in a new way.

  • Add a Capability: The basic agent is quite limited in what it can do, so you could add, for example:

    • Check if the user has all the ingredients: before confirming the recipe, your agent could ask the user if they have the ingredients the recipe requires, so they can check before starting. This would require a new page, pattern, and response.

    • Ask to restart or quit: you would need to add a pattern, intent, entity, etc.

    • Ask a random recommendation: a “Recommend me something” capability which would require a pattern, intent or entity, response, and rule.

    • Last topic check: ask the user after a successful recipe recommendation if they want to select another recipe and if so, the agent should restart the recipe recommendation conversation.

    • Repair: add more advanced handling of the Fallback intentrepair. For example, if a user does not know how to continue the conversation, the agent could suggest (alternative) ways of continuing it. It may also happen that a user initiates repair (“I don’t understand that”, “what do you mean by 'X’”?), in which case the agent should now how to response (e.g.: understand this user-initiated repair, and respond with a further explanation of a concept or utterance). Finally, rather than stating misunderstanding, the agent could provide more information on what aspect of the user utterance it did not understand, or provide pointers to what the user can say at that point in the conversation.

    • Small talk capabilities related to the recipe domain: small talk can make the agent more engaging for a user. It would require you to think of small talk patterns, either initiated by the user or by the agent, that can be naturally integrated at some point in the recipe recommendation conversation. You would need one or more new intents, patterns, and responses.

  • Extend Visuals: In the visuals section, we already talk about ways for extending it. We mostly mentioned some aesthetic changes that you can add. Now, we are specifically referring to extending functionality of the visuals, i.e. adding something that makes the visuals more supportive. An example would be to show the filtering history at any point. Another example would be to add a rating system for the agent to get feedback. However, keep in mind that the interaction should primarily be conversational in nature!

  • Agent personality, style, and characteristics: You can work on designing and shaping the responses from your agent to suggest a particular personality, to provide it with a specific conversational style, or with social characteristics that may increase the user experience. See e.g. this paper for more ideas.

...