Jovo Model: Dialogflow
Learn how to turn the Jovo Model into a Dialogflow agent.
- Introduction
- Dialogflow-specific Elements in the Jovo Model
- Using the Dialogflow Jovo Model with the Jovo CLI
- Using the Dialogflow Jovo Model npm Package
Introduction
Language models for Dialogflow are called Dialogflow agents. You can either manage them via API (what the Jovo CLI is doing during deployment) or in the Dialogflow console, which offers a graphical user interface.
Dialogflow agents include:
- Intents with training phrases (phrases in the Jovo Model) and entities (inputs)
- Entity types (input types)
- And more, like events, actions, fulfillment
Learn more about the structure in the official Dialogflow documentation. The Jovo Model can be translated into this structure by using the jovo build
command (see below) or the npm package (see below).
Dialogflow-specific Elements in the Jovo Model
This section provides an overview how the Jovo Model (see general structure in the main Jovo Model docs) can be extended with platform-specific content for Dialogflow.
Intents
You can add options to Jovo intents like this:
In the above example, you can see that you can add specific elements like a priority
to an intent.
The priority
can have the following value :
Definition | Value | Color |
---|---|---|
Highest | 1000000 | Red |
High | 750000 | Orange |
Normal | 500000 | Blue |
Low | 250000 | Green |
Ignore | 0 | Grey |
Inputs and Input Types
You also can manage your input
as a list by specifying the parameter isList
:
You can add a specific parameter automatedExpansion
to allow automated expansion like this:
System Entities
Find all types in the official Dialogflow system entities documentation.
If your intent uses an input (see how they are added to the Jovo Model) that requires a Dialogflow system entity type, you can add it like this:
Dialogflow-only Elements
Some elements (intents, entities) might be required only by the Dialogflow portion of your Jovo project. For this you can add a dialogflow
object to your Jovo Model.
The dialogflow
object contains the agent data in its original syntax. For example, you export your Dialoglow Agent, look at the files, and copy-paste the stuff that you need into this part of the Jovo Language Model file.
Using the Dialogflow Jovo Model with the Jovo CLI
By using the jovo build
command, you can turn your Jovo Model files in the models
folder in your Jovo project into Dialogflow specific files.
Make sure that you have dialogflow
selected as nlu
in your project.js
file:
In the current version of the Jovo CLI, you can find the files inside the platforms/googleAction/dialogflow
folder.
The jovo deploy
command will create a zip
which you can then import into Dialogflow.
It will be stored inside the googleAction
folder:
The dialogflow
folder contains the following folders:
Platforms Folder
Intents
All the intents
are saved in separate files and look like this:
It is important that "webhookUsed"
is set to true
for your Jovo code to be triggered when this intent is called.
The user phrases are added to a different file for each language, e.g. MyNameIsIntent_usersays_en-us.json
, and look like this:
Entities
If you have defined input types, you will find the entities
in separate folders as well.
package.json
This includes some agent specific information. We recommend to not change this file unless you know what you're doing.
- Dialogflow: System Entities
Using the Dialogflow Jovo Model npm Package
Install the package like this:
You can learn more about all the Jovo Model features here: Using the Jovo Model npm Packages.