Technology Blog Posts by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
Raja_Gupta
Product and Topic Expert
Product and Topic Expert
2,305
  • SAP Managed Tags:

This blog is part of the series Understanding Joule in 8 Steps Please check the previous blogs, before proceeding.

 #1 – Introduction to Joule

#2 How Joule Works

In this blog, we will dive deep into architecture of Joule.

 

Let’s first quickly recap what we learnt so far:

  • Joule is an advanced, generative AI copilot.
  • It is embedded into various SAP applications, for example SAP S/4HANA, SAP SuccessFactors etc.
  • Users ask their queries in the natively integrated Joule client embedded in SAP cloud solutions, such as S/4HANA, SuccessFactors etc. 
  • Joule analyses the prompt, provides a much richer query to the LLM, and finally returns a secure, accurate, and appropriate response back to the user.

 

Now, let's understand the architecture of Joule. Below image shows the major components of Joule and it's ecosystem.

 

Joule Architecture.gif

 

First, some important points to note.

Technically, Joule is a service running on SAP BTP in a Cloud Foundry environment.

Joule is integrated into SAP cloud solutions, such as S/4HANA, SuccessFactors, SAP Start, SAP Build Work Zone, Ariba, CX and many more.

Users can access Joule through a diamond icon in the top right-hand corner of the SAP user interface, regardless of the specific system. 

Joule uses SAP Cloud Identity Services for authentication and authorization.

 

Now, let's decode the image shown above.

1️⃣User (say, a manager) enters a prompt in Joule UI, which is embedded inside a SAP cloud solution (e.g. SAP SuccessFactors).

Example - "Show my pending leave requests.”

2️⃣Joule UI forwards the user's request to the Joule service hosted in SAP BTP.

3️⃣As explained in previous post (#2 how Joule works), Joule sends the final prompt to LLM and get a response or instruction to access SAP cloud application.

For example, in this case, Joule recognizes that leave requests are stored in SAP SuccessFactors. So, it needs to retrieve data from SuccessFactors via OData APIs.

4️⃣Joule uses pre-configured Destination in SAP BTP to securely establish the connection with SAP cloud application.

For example, in this case, Joule calls this Destination to access SuccessFactors.

5️⃣ The request flows through the Connectivity Service in SAP BTP. For on-premise system, the Connectivity Service creates a secure tunnel.

6️⃣ Joule calls the OData API to fetch the required data.

For example, in this case Joule makes an OData API request to SuccessFactors and gets pending leave requests for the user.

7️⃣ Joule formats the response and sends it back to Joule UI.

For example, in this case Joule displays:

"You have 3 pending leave requests: 1 from John, 1 from Lisa, and 1 from Mark."

 8️⃣ If the user wants to navigate to an app, Navigation Target Mapping mechanism of SAP Build Work Zone is used.

For example, if user requests, Joule may use Navigation Target Mapping to open the leave approval page in SuccessFactors.

 9️⃣ Throughout the process, security is handled by SAP Cloud Identity Services.

Identity Authentication verifies the user before allowing Joule access.

Identity Provisioning ensures the user has the correct permissions in Joule and SuccessFactors.

 

This is in nutshell - The Architecture of Joule!

 

What's Next?

#4 Joule Interaction Patterns

You may read the blog Joule, SAP’s Generative AI Copilot

 

3 Comments
vinod_anugandul
Explorer
0 Kudos

very systematically in simplified way explained the steps .. really appreciated Raja.. 

Hiroya_Kita
Explorer

@Raja_Gupta 
Could you show me which arrow in the diagram corresponds to which of the steps 1 to 9?

Raja_Gupta
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Hiroya_Kita

The explanation in this blog should be combined with the previous blog (#2 How Joule works).
In the blog 2, I have mentioned point by point how the entire flow works.
 
 

The architecture includes multiple points which cannot be just mapped with diagram point-to-point. But it should be understood as a holistic concept. 

 

Please check the previous blog (#2 How Joule works) and then re-read this one. Hope that will make it crystal clear.

 

Thank you!