Go to primary content
Oracle® Retail Science Cloud Services Implementation Guide
Release 19.1.003.2
F40917-01
  Go To Table Of Contents
Contents

Previous
Previous
 
Next
Next
 

19 Oracle Digital Assistance

Oracle Digital Assistance (ODA) is a NLP and Machine Learning-based cloud service that enables application-specific interactions. It is a virtual user that assists end users with complex engagements using transactional data to review key business insights and exceptions. It also provides out-of-the-box knowledge sharing by responding to typical Q&A-style questions for customer service and support. ODA features are supported using voice along with conversational interface to distill end user intents, invoke actions, and provide reasonable responses. This enhances consulting services with minimal training and support.

Digital assistance is not a replacement for a web application but a channel that allows the user to complete context-driven tasks using a combination of text messages, voice and, simple UI.

Digital assistance supports Transactional bots and Q&A bots.

ODA requires, as a prerequisite, that the Oracle Autonomous Mobile Cloud Enterprise (OMCe) be provisioned, as the Oracle Retail Science Platform uses OMCe to enable digital assistance.

This chapter describes the steps to import bots in OMCe and to configure the Oracle Retail Science Platform services and channels in OMCe.

Transactional Digital Assistance

Transactional digital assistance helps with business engagements by using transactional data to review business insights, rules, and exceptions. This assistant complete tasks and helps the end user navigate to specific tasks in application.

Q&A Digital Assistance

Q&A digital assistance helps answer general interest questions by returning one or more question and answer pairs. It helps the user find FAQs or other knowledge-based documents.

In order to deploy bots, the implementer must obtain the following

Bot URL

http://<HOSTNAME>:<PORT>/botsui/bot

Bot Export

Table 19-1 Bot Export

Bot Type Application Export File

Transaction

Retail

RetailAdaptiveIntelligentChatbot.zip

Common

CommonAdaptiveIntelligentChatbot.zip

Q&A

Retail

RetailAdaptiveIntelligenceQnA.zip

Retail

RetailAI_OfferOpt_QnA.zip

Common

CommonAdaptiveIntelligenceQnA.zip


This following section is repeated for all the above listed bots.

  1. Access Oracle Chatbot Service using the provided URL. The Management Bots UI can be used to manage the bots.

  2. Click the Import Bot button to import Digital Assistance.

  3. Access the provided bot from the local drive.

    Figure 19-3 Local Access of the Bot

    Description of Figure 19-3 follows
    Description of ''Figure 19-3 Local Access of the Bot''

  4. Once the import is successful, you see the imported bot.

Once the bots have been successfully imported, configure Update Channel and Service using Management Bots UI Service.

Oracle Chatbot - Bot Channel Setup

This section describes the channel setup.

Change the following settings:

  1. Outgoing Webhook URI, this is callback to Retail Science Platform running in the application https://<hostname>:<port>/orase/chat/bots/chatbot/<channelId>/messages

    https:// /orase/chat/bots/chatbot/FBE1596D-7BEF-4650-8EB8-726F8D08E9E5/messages

    • Bot Service requires HTTPs

    • <channelId> is generated by the bot. Keep a record of the value for registering the chatbot in Retail Science Platform.

  2. The bot also generates a secret key. Keep a record of this secret key as it will be registered in the Retail Science Platform. (See table RSE_CHATBOT_CONFIG.)

  3. Webhook URI is generated by the bot service.

    1. http://<hostname>:8000/connectors/v1/tenants/chatbot-tenant/listeners/webhook/channels/<channelId>

    2. http:// /connectors/v1/tenants/chatbot-tenant/listeners/webhook/channels/FBE1596D-7BEF-4650-8EB8-726F8D08E9E5

    3. channelId is generated and must be copied to the Outgoing Webhook URI. See step 1.

    4. Change the port number to 8800; by default, it is generated as 8000.

    5. This will be registered in the database [see table RSE_CHATBOT_CONFIG]

  4. While setting up bot channel, also make a note of the bot ID in the URL.

    http:// /botsui/(botId:3AAA09C8-67E4-401F-BEA1-489DC70A7322)/bot/settings/channels

Copy the bot ID - 3AAA09C8-67E4-401F-BEA1-489DC70A7322. This will be registered in the database. (See table RSE_CHATBOT_CONFIG.)

Oracle Chatbot - Bot Service Setup

Change the bot service host name.

Figure 19-6 Bot Service Host Name

Description of Figure 19-6 follows
Description of ''Figure 19-6 Bot Service Host Name''

  1. https://<hostname>:<port>/rase/resources/components/RSE_AI/HOS/hosPredictionService

  2. Replace hostname/port.

  3. Change the credentials username/password. This user is created by the Cloud Administrator with the role [CHATBOT_SERVICE_JOB].

RSE Chatbot - Register Bot

There are two ways to update or register the bot, using either the UI or SQL.

UI

Fields to be updated include BOT_ID, BOT_CHANNEL_URL, and BOT_CHANNEL_ID. These values were generated as part of the above setup of the bot and its channels.

Figure 19-7 Register Bot Fields

Description of Figure 19-7 follows
Description of ''Figure 19-7 Register Bot Fields''

SQL

These records can be updated using SQL.

Update the records in RSE_CHATBOT_CONFIG for each bot entry, with entries identified above.

Columns to be updated include BOT_ID, BOT_CHANNEL_URL, and BOT_CHANNEL_ID.

UPDATE RSE_CHATBOT_CONFIG
SET 
  BOT_ID        = 'C0679A4E-DF97-4317-9A2E-60A5EEBC381F',
  BOT_CHANNEL_URL = 'http:// /connectors/v1/tenants/chatbot-tenant/listeners/webhook/channels/C4C9AC9B-F7E1-437F-87D2-48A2E05E45EF',
  BOT_CHANNEL_ID  = 'C4C9AC9B-F7E1-437F-87D2-48A2E05E45EF'
WHERE bot_name    =?;
COMMIT;
ID PK for this table.
RETAIL_APP Retail application for which the chatbot is configured, for example, AI, RMS, and so on.
RETAIL_MODULE Retail application module for which the chatbot is configured, for example, AI Hospitality and Retail.
BOT_NAME Bot name configured in the Bot Service Module.
BOT_ID Bot ID configured in the Bot Service Module.
DESCR Description in the Bot Service Module.
BOT_CHANNEL_URL Bot Channel URL configured in the Bot Service Module.
BOT_CHANNEL_CREDENTIAL_MAP Bot Channel Credential Map configured in Manage Credential; used for accessing Secret Key.
BOT_CHANNEL_CREDENTIAL_KEY Bot Channel Credential Key configured in Manage Credential, used for accessing Secret Key
BOT_CHANNEL_ID Bot Channel ID configured in the Bot Service Module
BOT_QNA_FLG -
CURRENT_FLG A Y/N flag indicating whether this row must be considered as a currently usable row (Y) or not (N).
DELETE_FLG A Y/N flag indicating whether this row is considered deleted (Y) or not (N).

RSE Chatbot - Manage Credentials

The final step is managing the credentials. Go to oracle.retail.rse.<chatbot or qna>.channel.<retail or hospitality>. For example,

oracle.retail.rse.chatbot.channel.retail

Figure 19-8 Managing Credentials

Description of Figure 19-8 follows
Description of ''Figure 19-8 Managing Credentials''

ODA Roles

The Oracle Digital Assistance roles section must be updated with following roles:

CHATBOT_SERVICE_JOB Chatbot Service Role will be configured with Webservices for getting data from application database for transactional bots
CHATBOT_VIEW_ROLE Role to enable Transactional bot in application UI in the contextual area
QNA_VIEW_ROLE Role to enable QnA bot in application UI in the contextual area

Train Model

There are two ways to train the Digital Assistance Model:

  • Train ht–This is the NLP-based linguistics model, which is suitable for a small training corpus. It relies on matching rules by creating templates of the text and is quick to train. It is performant and is highly accurate except for esoteric user input, which are not part of the training.

  • Train tm–This is a Machine Learning-based model and is suitable for large volume data. It relies on unsupervised learning and has a higher accuracy for user input outside training data. There may be exceptions when the intent resolution can be less predictable.

For the first deployment model, when the dataset is small, the NLP-based Train ht model is used. Over time, once enough history is gathered, the Machine Learning-based Train tm model is the preferred option.