Multi-Agent Support: Gen AI - Voice Bot

Overview

This document outlines a Multi-Agent GenAI Voice Bot architecture specifically designed for iX Hello. It emphasizes scalable customer support, advanced automation, and seamless transitions to human agents. This system employs multiple specialized AI agents managed by an orchestration layer to efficiently handle complex, end-to-end voice interactions.

Prerequisites

Before commencing bot creation, ensure the following prerequisites are met:

  • Access to iX Helloarrow-up-right Studio Mode.

  • Familiarity with basic iX Hello navigation.

  • Basic knowledge of RESTful API principles and JSON format for handling the data returned by the API.

  • Use the below Gen AI bot links to create a custom app without using the Orchestration step

Let's create a Custom App

On the left navigation, go to Apps-> Custom Apps -> New Custom App.

Data Source

In the top menu tabs, select “Data Sources” then “Create New Data Source”. Provide the following details:

Name: GenerativeAI

Integration Configuration: Generative AI

Name: InternalContent

Integration Configuration: Internal Content DS

Name: InternalContent

Integration Configuration: Internal Content DS

Method Creation

Click on methods and create new methods. Enter the following in the fields

Method Creation for InternalContent Datasource

Method: SaveTransferInfo

  • Name: SaveTransferInfo

  • Request Type: AddRecord

  • Parameters:

    • ContentID: transfer_data

    • Record: { "{{Context.CurrentDateTimeUTC}}": { "phone_number": "{{Session.outgoing_number}}", "client_name": "{{Session.client_name}}", "language": "{{Session.language}}", "datetime": "{{Context.CurrentDateTimeUTC}}", "conversation": "{{Session.chat.conversation}}" } }

    • RecordPosition: First

  • Valid Result Template: Saved

  • Empty Result Template: Sorry, I am unable to process this request.

Sample Result:

Method Creation for PortalDatasource

Method: PostScheduleCall

  • Name: PostScheduleCall

  • Request Type: Post

  • Request Header: {"X-API-KEY": "XXXXXX"}

  • Method Path: /schedule/

  • Query Path: ?bot=IXHELLO_DEMO_USECASE

  • Request Body: { "Bot": "IXHELLO_DEMO_USECASE", "Phone Number": "{{Session.outgoing_number}}", "Delay": {{user_timeframe}}, "language": "{{Session.language}}", "Client Name": "{{Session.client_name}}", "customerPhoneNumber": "{{Session.customer_phone_number}}", "secretCode": "{{Session.secret_code}}" }

  • Result Type: Record

  • Valid Result Template: Call Scheduled { "Client Name": "{{ClientName}}", "Phone Number": "{{PhoneNumber}}", "Amount Owed": {{AmountOwed}}, "Delay": {{TimeDelay}}, "language":"{{Language}}", "bot": "AMEX_PAYMENT"}

  • Empty Result Template: Schedule failed

Sample Result:

Method: GetData

  • Name: GetData

  • Request Type: GET

  • Request Header: {"X-API-KEY": "XXXXXX"}

  • Method Path: /schedule/list/phone/{{PhoneNumber}}

  • Query Path: ?bot=IXHELLO_DEMO_USECASE

  • Request Body: Blank

  • Result Type: ListofRecords

  • Record Template: {"client_name": "{{client_name}}", "customer_phone_number": "{{customer_phone_number}}", "language": "{{language}}", "outboundNumber": "{{phone_number}}", "request_id": {{request_id}}}

  • Record Json Path: $.records[*]

  • Record Limit: 1

  • Valid Result Template: {{Records}}

  • Empty Result Template: No records found

Sample Response:

Creating an Intent

Let's see in the next document on how the Intent - Orchestration is done.

Navigate to the ‘Intents’ tab and click on the ‘Create New Intent’ button.

Name: ChatIntent

Description: Chat Intent

Intent Type: Orchestration

Dialog Delegation Strategy: FallbackToSkill

Choose - Set this intent as a fallback Intent

For Orchestration follow this documentarrow-up-right.

circle-info

Further Steps are not needed for this bot as the inputs will be collected by GEN AI in orchestration.

Please find the attached demo recording showcasing the functions and performance of the Multi-Agent Voice Bot.

file-download
5MB

Last updated

Was this helpful?