Discovering QiChat, the SBR language for creating chatbots

Discovering QiChat header

Let's discover the basics of the QiChat language to have a fun yet meaningful conversation with Pepper

As a humanoid robot, Pepper's primary means of communication is verbal: language acquisition is,therefore, an important part of the robot's growth and development. Be it greeting people politely, learning a person's name and entertaining people with jokes and games, or retaining information from the conversation, a humanoid robot needs to converse fluently. In this lesson, you will learn how to create and run a simple dialogue to handle various situations in a smart and funny way.

What you will need

  • Android Studio with Pepper SDK plugin installed;
  • Pepper robot with NaoQi 2.9;
  • English language package installed on the robot;
  • Pepper robot connected via WiFi (not ethernet).

What you should know about

What you will learn

In this lesson, we will create a simple playful dialogue with Pepper as an opportunity to cover all major features of QiChat, Softbank Robotics's proprietary chatbot language:

  • Integrating a QiChat topic [Conversation]
  • QiChat Syntax [Conversation]

Detailled skills

  • Building a Chat and QiChatbot
  • QiChat syntax:
    • List of synonyms (or): []
    • Optional words: {}
    • Concepts: ~
    • Lexicon
    • Input storing: _ and $1
    • Wildcard: *
    • Random function: ^rand
    • First function: ^first
    • User rules u:
      • Subrules: u1:
      • Proposals: proposal:
    • Goto function: ^enableThenGoto

Applicable use cases

QiChat is useful for any robot interacting verbally with users, for example: * Welcoming clients in shops and malls; * Making speeches on stage for various events; * Showcasing a given brand; * Answering specific Q&A; * ...