Technical Articles
How to integrate SAP CoPilot and SAP Conversational AI or how to Pokémon your SAP S/4HANA
===
This blog is being obsolete.
Please use the SAP Conversational AI Web Client Instead.
====
If you want to create a conversational experience for end users, both SAP CoPilot and SAP Conversational AI (SAP CAI) are the platforms available to build a chatbot!
This blog will explain;
- What is the difference between SAP CoPilot and SAP CAI
- How you can combine SAP CoPilot and SAP CAI to work together
You will see an example of calling a SAP CAI Pokemon chatbot from SAP CoPilot. As to the general information about SAP CoPilot – SAP CAI Integration, please go to SAP CoPilot: Integration with SAP Conversational AI
What is the difference between SAP CoPilot and SAP Conversational AI?
As general principle, you can view SAP CoPilot and SAP CAI as complementing each other.
Here are the statements made by SAP in presentations and blog.
SAP CoPilot is the Digital Assistant and Bot Integration Hub for the Enterprise.
It enables natural language interaction with enterprise systems and integrates enterprise bots.
SAP Conversational AI (former Recast.AI) is the collaborative platform to build, train, deploy, and monitor intelligent bots.
It enables custom dialogs with machine learning-based natural language understanding.scenario.
What does that mean?
In a nutshell, SAP CoPilot is mainly aimed at providing natural language UI for business users using SAP enterprise systems like SAP S/4HANA, targeting mostly the Business-to-Employee (B2E) scenario.The first use case for SAP CoPilot was SAP S/4HANA integration where you can use SAP CoPilot via the chat window in SAP Fiori Launchpad. This was made available with SAP S/4HANA Cloud 1705 and SAP S/4HANA 1709 FPS01 and above.
You can enhance the capability of SAP CoPilot by adding a new CoPilot skill with SAP CoPilot skill builder. A skill of the SAP CoPilot is a service used through a digital assistant that users can interact with on a topic or domain.
The CoPilot skill will be able to translate an utterance (something the user says into the microphone or types into the chat) to an OData call to the system and vice versa.
There are multiple predefined skills for SAP CoPilot including sales contract query, shopping cart creation, bank statement creation etc. (At this point of time, there is no single page listing the standard CoPilot skills yet.Please search for the individual skill in the online help).
On the other hand, SAP CAI is based on free-style approach for creating chatbots, more suited to general consumer use.
The terminology “intent” or “skill” is used in both SAP CoPilot and SAP CAI, but we have to be aware that there is a slight difference between the two in their concepts.
SAP CAI can classify an expression to an intent and extract entities.
The intent of SAP CAI is the natural language classification of the utterance.
And the skill of SAP CAI will be triggered based on the defined prerequisite conditions.
For an intent, you can add multiple examples of expressions as the training data for the natural language classification.
In this example, the skill greeting is triggered when the intent is classified to be “greetings” or “goodbye”.
In the skill, you can define how SAP CAI replies to users freely.
The skill of SAP CoPilot created for an OData Service.
The intent of SAP CoPilot is more like a method of OData Service (e.g. CRUDQ-Create,Read,Update,Delete and Query).
How we can combine SAP CoPilot and SAP CAI to work together
If CRUDQ(Create, Read, Update and Query) like interaction is not enough for the chatbot for the employees, it is possible to combine SAP CoPilot and SAP CAI altogether. SAP CoPilot can work as a Bot Integration Hub. In a Bot Integration Hub scenario, SAP CoPilot will work as an access point from the end-users, but it will delegate the natural language processing to SAP CAI.
1.Create a bot in the SAP Conversational AI.
In this example, I will use thie Poke-Bot Example here.
https://cai.tools.sap/blog/build-a-pokebot-with-sap-conversational-ai-and-nodejs/
In reality, there is no reason SAP CoPilot needs to answer Pokémon related question from the employees, but this is just an example how we can enhance the capability of SAP CoPilot with SAP CAI.
2.Add parameter(s) to the Skill
Go to the Actions of skill.
Add “conversation_end” = true to the memory at the end of conversation
3.Connect the Chatbot to SAP CoPilot
Go to Connect tab
Select SAP CoPilot
Enter SAP CoPilot URL and press Connect
You are asked if you want to authorize and press Authorize
4.Check the configuration of SAP CoPilot
Go to https://<copilothost>/config
In the Agent Configuration you can see the agent of SAP CAI is registered
5.Test it with SAP CoPilot
Ask “What is the evolution of Pikachu?”
SAP CoPilot answered the question!
NOTE: Unfortunately, as of 2019 April, “Image/Gifis” is not supported yet.
That’s why you see the message like “Sorry, there was an error displaying the result as the UI element is currently not supported.”
This is the result of SAP CAI test tool.
© 2019 Pokémon. © 1995–2019 Nintendo/Creatures Inc./GAME FREAK inc. Pokémon
You can check the latest support status here.
https://cai.tools.sap/docs/concepts/channel
Becoming a SAP Fiori for SAP S/4HANA guru
SAP Help
Hi Makoto Sugishita
First of all Thanks much for the blog... this really helps..
I need your guidance on an Issue which I am facing - I am not able to see Bot in SAP CoPilot which created in SAP CAI...
In SAP CAI bot is working as expected and I have also registered it under Connect Tab (SAP CAI).
I am also able to Agent ID updated in my SAP CoPilot configuration page...
I want to use bot created in CAI with CoPilot... Please help, what I am missing...
Thanks-
Abhishek