top of page

The Deutsche Telekom Smart TV App

Revolutionizing the way users interact with their smart homes

Introduction to the Project

PROJECT SUMMARY

The approach addresses a key challenge - users express more than one intent in a single utterance.

The augmentation with ChatGPT integration will effectively address this issue with multi-intent recognition. The PoC is applied to the EGS Max chatbot which will handle multiple intents in user interactions.

The extension should breaks the user utterancess down to multiple intents, identify and follows-up on multiple  intents, from a single message.

It will allow the NLP engine detect and execute multiple intents identified in a single user utterance. 

PROBLEM

Introduction to the Project

What I learned

SOLUTION

The approach of the concept implementation:

Due to the big scope of the EGS Max intents, the approach would be the following: 

(For the first iteration):

Suggestion:
handle max 3 intents:

If more than 3:
“Ich habe bemerkt, dass Sie Interesse an mehreren Themen haben. Lassen Sie uns mit den drei wichtigsten beginnen. Welche sind das?” - buttons with recognized intents

Otherwise, handle the intents with the priorities in the sequential order that are given in instructions.

Priorities:
If in the combination, there are intents "Account Sperrung", "Login funktioniert nicht" and "Account Sperrung", the handling of the intents should be priorized over other intents and in this order:

INTENT1: "Account Sperrung"
INTENT2: "Passwort vergessen"
INTENT3: "Login funktioniert nicht"

If the "Account Sperrung" is recognized, then say exactly this prompt (just exchange the INTENT1, etc. with the intent names recognized): "Ich habe bemerkt, dass Sie sich für INTENT1, INTENT2, INTENT3 interessieren. Lassen Sie uns zuerst mit der Konto-Entsperrung anfangen."

Login funktioniert nicht: “Hat es mit dem Login geklappt?”
If yes: “Dann lassen Sie uns mit INTENT2 fortsetzen”

  • In order not to overwhelm the user, the maximum of the intents handled in one utterance will be 3. 

  • The intent combinations would be categorized and prioritized:

    • the probability of the combinations within the same domain is higher.  

    • Problems with logging should be handled as first.

    • Keywords such as temporal adverbs and verbs can help to determine the order.

    • Otherwise, we give the user the control to choose the order of handling the recognized intents by themselves.

    • The A/B testing needed if the intents should be handled in the order in which they recognized or the users should decide on their own.

  • Implementation:

    • A GPT layer as fallback

    • Use scores of intents that were recognized.

  • On the front-end: 

    • if more than one intent is recognized, prompt "I've noticed you would like to "INTENT1" and "INTENT2. Whith what would you like to start?"

    • Built-in buttons with topics/intents to choose

      • For the future iterations, adjust the wording of intents shown on the buttons so that they are consistent.

    • Built-in Go-to intents

Sample Dialogs

INTENT1 + INTENT2 + INTENT3

Chatbot: Ich habe bemerkt, dass Sie sich für [Thema X], [Thema Y] und [Thema Z] interessieren. Lassen Sie uns mit [Thema X] beginnen.

Thema X is handled.

Chatbot: Wir sind mit [Thema X] fertig. Wir können jetzt mit dem [Thema Y] fortsetzen. Abschließend haben wir noch [Thema Z].

Thema Y is handled.

Chatbot: Wir sind fast am Ziel! Wir haben nur noch das Thema [Thema Z].

Thema Y is handled.

Order of handling of intents

The order will be determined by the user themselves to give them more freedom to control the process, with some exceptions:

  1. Exception - Temporal adverbs and verbs

  2. As an additional help, we can use the following keywords to identify the multiple intents and the order for handling the intents:

  3. nach

  4. danach

  5. erstens

  6. zweitens

  7. drittens

  8. dann

  9. davor

  10. im Voraus

  11. vorher

  12. später

  13. beginnen

  14. starten

  15. fortfahren

  16. weitermachen

  17. beenden

  18. abschließen

  19. enden

  20. Handling of temporal adverbs:

    If the utterance recognizes the intent in combination with “erstens”, “zuerst”, “als erstes”, “jetzt”, “zu Beginn”:
    then: handle this intent as the first one.

    If the utterance recognizes the intent in combination with “zweitens”, “als zweites”:
    then: handle this intent as the second one.

    If the utterance recognizes the intent in combination with “zweitens”:
    then: handle this intent as the second one.

    If the utterance recognizes the intent in combination with “drittens”:
    then: handle this intent as the third one.

    If the utterance recognizes the intent in combination with “dann”, “nachher”, “als nächstes”, “danach”:
    then: handle this intent as the next one after a certain intent.

    If the utterance recognizes the intent in combination with “vorher”, “davor”:
    then: handle this intent as the one before a certain intent.

    If the utterance recognizes the intent in combination with “abschließend”, “schließlich”, “am Ende”:
    then: handle this intent as the last one.

    Hanlding the temporal verbs:

    If the utterance recognizes the in intent in combination with "beginnen", "starten":
    then handle as the first one.

    If the utterance recognizes the intent in combination with "fortfahren", "weiter machen":
    handle the intent as the next one.

    If the utterance recognizes the intent in combination with "beenden", "abschließen":
    then handle the intent as the last one.

  21. 2. Exception - User account intent category

  22. If the user account is blocked, then this intent should be handled first.

  23. ------

Users are motivated by their hearts,
but make decisions with their head.

So how do we create an experience
for this person?

bottom of page