Agents

Agents are best described as NLU (Natural Language Understanding) modules. They can be used by your app, product, or service to transform natural user requests into actionable data. This transformation occurs when a user input matches one of the intents inside your agent. Intents are the predefined or developer-defined components of agents that process user requests.

Agents can be designed to manage a conversation flow with the help of contexts, intent priorities, slot filling, responsibilities, and fulfillment via webhook. The following diagram shows the handling of a user request. An agent encompasses the DIALOGFLOW compononents.

Create an agent

To create an agent, click on Create Agent in the left menu.

Choose a unique name for your agent and set the relevant settings.

  • Default Language: Select the default language for your agent.
  • Default Time Zone: Select the default time zone for your agent.
  • Google Project: Select a Google Cloud Platform (GCP) project. If you have an existing GCP project, you can select it from the drop down list. Leaving the default option will create a new GCP project using the name of the agent.

Settings

You can access the settings for an agent by following these steps:

  1. Go to the Dialogflow console
  2. Select your agent
  3. Click the gear icon settings next to the agent name

General

  • Description: Description of your agent. Displayed in the Web Demo for your agent.
  • Default Time Zone: Default time zone for agent.
  • Google Project:
    • Project ID: GCP project linked to agent.
    • Service Account: Service account for authentication.
  • API Version: API version for agent. Select V2 API for all new agents. Dialogflow Enterprise Edition only supports the V2 API, so the API version cannot be selected.
  • Beta Features: (V2 API only) Toogle to enable beta features for your agent.
  • API Keys V1:
    • Client Access Token: (V1 API only) For end-user interaction with /query, /context and /userEntites endpoints only.
    • Developer Access Token: (V1 API only) Used for agent modification. Do not share.
  • Log Settings:
  • Delete Agent: Completely deletes agent and cannot be undone. If the agent is shared with other users, those users must be removed from the agent before you can delete it.

Languages

Add multiple languages and their respective locales to make your agent multilingual.

Choose a language from the list and click the Save button. To add a locale, if available, hover over the listed language and click + Add locale.

For more information, see Multi-language Agents.

ML settings (machine learning)

  • Match Mode: This setting defines the algorithms that should be used for machine learning for all intents in which machine learning is enabled.
    • There are two types of algorithms used to match intents:
      • Rule-based grammar matching:
        • Pros:
          • Accurate with a small or large number of training phrase examples
          • Models are updated quickly
        • Cons:
          • Matching is slow if there are many training phrase examples
          • May produce incorrect results if the agent uses @sys.any or "Allow automated extension" frequently
      • ML matching:
        • Pros:
          • Accurate with a large number of training phrase examples
          • Matching is fast
        • Cons:
          • Inaccurate with a small number of training phrase examples
          • Models are updated slowly
          • Less accurate than grammar matching for agents with many/complex composite entities or training phrase templates
    • You can select one of two modes that use these algorithms:
      • Hybrid: This mode first attempts a rule-based grammar match. If a match is not made, it switches to ML matching. This mode is best for most cases.
      • ML Only: This mode only performs ML matching.
  • ML Classification Threshold: To filter out false positive results and still get variety in matched natural language inputs for your agent, you can tune the machine learning classification threshold. Intent matches have an intent detection confidence value in a range from 0.0 (completely uncertain) to 1.0 (completely certain). If the confidence value is less than the ML classification threshold, a fallback intent is triggered. If there are no fallback intents defined, no intent will be triggered.

Export and import

  • Export as ZIP: Exports the agent as a zip file. For more information, see Exported JSON Fields.
  • Restore from ZIP: Overwrites the current agent with the supplied zip file.
  • Import from ZIP: Adds intents and entities to the current agent from the supplied zip file. If any existing intents or enties have the same name as those in the zip file, they will be replaced.

Environments BETA

This feature allows you to publish and make past or current versions of your agent available to a specific environment. Multiple environments can be set up depending on your needs, like "Development", "Testing", and "Production".

Clicking the PUBLISH A VERSION button takes a snapshot of your agent's intents and entities, and lets you optionally deploy that version to one of your environments.

To learn more about this feature, see Versions and Environments.

Share

These settings are used to share agent access with other developers. See Sharing for more information.