Intent naming guidelines


(Madhu) #1

Follow the below rules when naming your task (intent identifier)

  • Always use​ less than 5 words​ to convey the purpose of the task
  • Try naming the task as close to what the user might say, but consider that when asked for help from bot, the task name might be displayed.
  • Always use consistent letter cases​ for UX
  • Always use the same verb in different tasks if the action is similar ​(e.g. Show Issue / Show Report instead of Show Issue / Get Report)
  • Avoid determiners​ (the, a, my, that, etc.) except to explicitly define the task’s purpose
  • Avoid digits ​but if you cannot, always use the numerical form
  • Avoid terms​ such as task, alert, action, cancel, discard, amend, webhook
  • Avoid using potential entity in an intent name​ (e.g. Get Weather Today)
  • Avoid single word actions unless they are self-explaining, e.g. Tweet
  • Never use special characters​ such as () & / \ $ [ ] + *
  • Never use punctuation​ such as - , . ! ? ‘ “
  • Never use pronouns​ (i.e. Show Me All Issues)
  • Never use terms related to the bot name​ (e.g. Create Asana Task)
  • Never use a word both as a verb and as a noun (e​ .g. Update Issue / Get Updates)

(Maddy) #2

This is a long list. Do we really need to follow all of these?

(Madhu) #3

These are suggested guidelines. Unless necessary, based on your use case and language we suggest you try and follow most of the above guidelines.

(Andy Heydon) #4

The purpose of the guidelines is to assist the fundamental meaning model within Kore by concentrating on the words that are pertinent to the intent and to avoid ambiguous situations.

For example, one of the factors influencing detection is how many words from the user’s utterance match the task name. The longer that task name then the smaller chance that the user will have said all of those words and hence the task will receive a low score.

On the flip side, one word task names, particularly if they are a verb, are downplayed because they lead to very ambiguous situations.