Application Development Blog Posts
Learn and share on deeper, cross technology development topics such as integration and connectivity, automation, cloud extensibility, developing at scale, and security.
cancel
Showing results for 
Search instead for 
Did you mean: 
lpm
Newcomer

We have exciting news for SAP developers! You may remember that last year, IBM and SAP jointly announced  a milestone collaboration around embedding AI into SAP solutions. One visible outcome was the adoption of Watson technology in the SAP Start and SAP Joule digital assistants.

And at the same time, IBM's been working on creating a watsonx Software Development toolKit (SDK) for SAP ABAP, complementing the existing Watson SDK that was refreshed in 2023.

I am pleased to confirm that the watsonx ABAP SDK version 1.0.0 is now live. It was released late March 2024 by the IBM SAP Software Engineering Team as expected. It is a separate release from its relative, the Watson SDK, who released a version 2 in Q4 2023. Both SDKs are open source and downloadable from GitHub.

If you develop SAP apps or have clients doing so, this is big news. It is truly a revolution in easily integrating Machine Learning and Generative AI, in just a few clicks, into an SAP ABAP application. Literally in 10 minutes!

The watsonx SDK comes in two flavors, allowing SAP developers to easily access watsonx from an ABAP application in a traditional SAP NetWeaver environment, and also in the latest SAP Business Technology Platform (BTP):

The SDK natively supports both the watsonx.ai (V1) and the Watson Machine Learning (V4). To get developers up to speed quickly, comprehensive examples are included in both of the APIs' documentation.

  • The sample code for the watsonx.ai sends a AI prompt to a generative AI model and collects the generated response. It uses the granite-13b-chat-v2 in the example but there are many other superb models available through watsonx.
  • The sample code for the Watson Machine Learning API lets you unleash the full capability of Watson Machine Learning (ML):
    • Without going too far in the detail, to use watsonx ML you have to create a watsonx deployment space. This is where you will deploy your ML assets, which can be models, functions, or scripts.
    • Python is a popular language for functions, in fact most frameworks in Watson ML rely on Python (or R). With a Python function, you can perform any ML task like creating, training, and using models.
    • Going back to the watsonx ABAP SDK: in the supplied sample code, the ABAP application deploys arbitrary Python code as a Python function on a watsonx deployment space and calls the deployed function. It also supplies a CURL command that can be used to easily call the deployed function from the command line
    • So the SDK connects lets you use the full capabilities of watsonx ML with very little development effort.  Then no further SAP programming knowledge is necessary, you can refer to the regular watsonx ML documentation. And of course, reuse the many examples of functions, models, and scripts provided by IBM and third parties.

See also the post by @christian_bartels on the same topic.

Labels in this area