Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

On this page

◾ Bot

image-20240611-070701.png

The user can use one of the current ASR blocks to understand the conversation, then the new ChatGPT block to generate the response, and one of the current TTS blocks to play the response.

Refer to what is implemented under the Cloud Providers section for OpenAI account configuration (API Key).

Requirements:

  • Set up a Google-type cloud provider with a valid API key

  • Set up a cloud provider of type OpenAI with a valid API key

  • If it is not already there, set a variable in Tools → Variables called GOOGLE_ASR_TRANSCRIPT

  • Set in the TTS blocks the Google provider

  • Set in the ARS block the Google API key

  • Choose in the set Variable block the variable GOOGLE_ASR_TRANSCRIPT

missing image

  • Label: here you can type a brief description

  • Project ID: Cloud Platform project ID

  • Client Email: email address associated with Service Account Key

  • Private Key: private key associated with Service Account Key

  • Language: the language you want to use for the bot

  • Text: the text you want to send
    [DA CONFERMARE, COPIATO DA SOTTO]

VARIABLES: TO BE DEFINED

Configure an OpenAI bot in Tools → OpenAI Bots with the parameters:

  • Recommended model "GPT-3.5-turbo" for simple bots, otherwise "GPT-4" (slower, but understands better in case of unclear transcripts)

  • Max tokens: 2000

  • Exit phrase: "I am transferring you to a human operator".

  • ChatGPT prompt (highlighted differences from chatbot):

    • You are a voice bot assistant. Help users as much as possible.

      • Answer only in English.

      • Answer like in a phone conversation.

      • If the customer asks for a reservation, ask first for the day, then ask for the time.

      • If the customer asks for warranty information, ask for the customer number, then redirect to a human operator.

      • If the customer asks for a cancellation, ask for the customer number, and then the reservation number.

      • If you don't know how to help the user, tell the customer "I am redirecting you to a human operator".

    • Temperature: 0.1

    • Analyze chat (RECOMMENDED ENABLED):

      • Answer in a JSON format. The key is 'CHAT_PROGRESS', which is equal to '1' if chat is complete. Else it is equal to '0'. Write a key REASON about why CHAT_PROGRESS should be 1. If you say "Have a good day", CHAT_PROGRESS = 1. If you say "I am redirecting you to an human operator", CHAT_PROGRESS = 1

    • Forward message: “I am redirecting you to a human operator“

    • Error message: “Sorry, I ran into an error, I am redirecting you to a human operator”

    • Attachment message: “/“ (a voicebot can not have an attachment sent)

◾ Dialogflow V2

AVAILABLE FROM REL. 2.5.7

This box allows you to build a voice bot using the Google Dialogflow integration

Explore this documentation to find out How to retrieve Google Key for Cally Square blocks

  • An Internet connection is required for this box to work

Remember:

This software is managed by others. Check if it works properly.

image-20240611-093622.png

  • Label: here you can type a brief description

  • Project ID: Cloud Platform project ID

  • Client Email: email address associated to Service Account Key

  • Private Key: private key associated to Service Account Key

  • Language: the language you want use for the bot

  • Text: the text you want to send

Please note Dialogflow requires a valid Service Account Key and a sufficient amount of acquired credits.

Furthermore it is pure experimental and it can bring to unexpected behaviour.

The DialogflowV2 block saves the results in the following variables:

  • DIALOGFLOW_ACTION: Matched Dialogflow intent action name

  • DIALOGFLOW_ALLREQUIREDPARAMSPRESENT: True if all required parameter values have been collected (true-false)

  • DIALOGFLOW_ENDCONVERSATION: True when 'end conversation' flag is set for the matched dialogflow intent. It is useful when you want to transfer a call to an agent (true/false)

  • DIALOGFLOW_FULLFILLMENTTEXT: The text to be pronounced to the user or shown on the screen

  • DIALOGFLOW_INTENTNAME: The unique identifier of the intent

  • DIALOGFLOW_INTENTDISPLAYNAME: The display name of the intent

  • DIALOGFLOW_ISFALLBACKINTENT: True when matched dialogflow intent is fallback intent (true-false)

  • DIALOGFLOW_LANGUAGECODE: The language that was triggered during intent detection

  • DIALOGFLOW_QUERYTEXT: User input

  • DIALOGFLOW_RESPONSEID: The unique identifier of the response

  • DIALOGFLOW_SCORE: Matching score for the intent (0-1)

  • DIALOGFLOW_SPEECH: Text to be pronounced to the user

  • DIALOGFLOW_RESOLVEDQUERY: The query that was used to produce the result.

Exit Arrows

This box provides just one arrow out to the next step

TIP

Click here to learn more about voice bot triggers useful to enable conversation transcript view

◾ Dialogflow

DEPRECATED FROM REL. 2.5.7

This box allows you to build a voice bot using the Google Dialogflow integration (click clip1 and clip2 and learn more about this topic!)

  • An Internet connection is required for this box to work

Remember:

This software is managed by others. Check if it works properly.

image-20240531-101234.png

  • Label: here you can type a brief description

  • Key: your acquired client api key from the console.dialogflow.com account

  • Text: the text you want to send

  • Language: the language you want use for the bot

Please note that Dialogflow requires a valid key from the console.dialogflow.com website and a sufficient amount of acquired credits. Furthermore, it is purely experimental and it can bring to unexpected behaviour.

The Dialogflow block saves the results in the following variables:

  • DIALOGFLOW_SOURCE: Request source name. 

  • DIALOGFLOW_RESOLVEDQUERY: The query that was used to produce the result.

  • DIALOGFLOW_ACTION: Matched Dialogflow intent action name.

  • DIALOGFLOW_SPEECH: Text to be pronounced to the user.

  • DIALOGFLOW_SCORE: Matching score for the intent (0-1).

  • DIALOGFLOW_STATUSCODE: Response status code. For more information, please see here https://dialogflow.com/docs/fulfillment#errors

  • DIALOGFLOW_ENDCONVERSATION: True when 'end conversation' flag is set for the matched dialogflow intent. It is useful when you want to transfer a call to an agent (true/false).

  • DIALOGFLOW_ISFALLBACKINTENT: True when matched dialogflow intent is fallback intent (true-false).

Release notes

DIALOGFLOW_ENDCONVERSATION and DIALOGFLOW_ISFALLBACKINTENT variables are available from version 2.0.77

Exit Arrows

This box provides just one arrow out to the next step

TIP

Click here to learn more about voice bot triggers useful to enable conversation transcript view

◾ Amazon Lex

AVAILABLE FROM REL. 2.0.77

his box allows you to build a voice bot using the Amazon Lex integration.

For additional information see https://docs.aws.amazon.com/en_us/lex/latest/dg/getting-started.html

  • An Internet connection is required for this box to work

Remember:

This software is managed by others. Check if it works properly.

The Amazon Lex block saves the results in the following variables:

  • AWS_LEX_INTENTNAME: The current user intent that Amazon Lex is aware of. (Read more)

  • AWS_LEX_MESSAGE: The message to convey to the user. 

  • AWS_LEX_MESSAGEFORMAT: The format of the response message. (Read more)

  • AWS_LEX_DIALOGSTATE: Identifies the current state of the user interaction. (Read more)

  • AWS_LEX_SLOTTOELICIT: If the AWS_LEX_DIALOGSTATE value is ElicitSlot, returns the name of the slot for which Amazon Lex is eliciting a value.

  • AWS_LEX_SLOT_*: The intent slots that Amazon Lex detected from the user input in the conversation. (ex. AWS_LEX_SLOT_PICKUPCITY)

TIP

Click here to learn more about voice bot triggers useful for enabling conversation transcript view

  • No labels