Tutorial
Building a supply chain sustainability advisor using watsonx.ai and IBM SCIS
Learn how to integrate watsonx.ai and IBM Supply Chain Intelligence Suite to enhance supply chain management with AI-driven automation and insightsArchive date: 2025-11-02
This content is no longer being updated or maintained. The content is provided “as is.” Given the rapid evolution of technology, some content, steps, or illustrations may have changed.The IBM Supply Chain Intelligence Suite (SCIS) is a comprehensive software platform designed to optimize and enhance supply chain operations. It combines the power of AI and automation to provide real-time insights, predictive analytics, demand forecasting, and risk management to help organizations stay ahead of potential disruptions. These features enable businesses to improve efficiency, reduce costs, enhance collaboration with suppliers and partners, and respond proactively to changes in the market.
A key component of the suite is the Supply Chain Business Assistant, a conversational AI platform that leverages IBM watsonx Assistant. Using natural language understanding (NLU), watsonx Assistant interprets user requests, enabling seamless access to data, report generation, and delivery of insights through a conversational interface. The Supply Chain Business Assistant is pre-trained on a comprehensive set of supply chain-related requests, making it an essential tool for managing and optimizing supply chain operations.
This tutorial outlines the steps to train the Supply Chain Business Assistant on Scope 3 terminologies by implementing a dialog skill.
Prerequisites
To integrate watsonx Assistant with the SCIS tenant, the watsonx Assistant instance with custom skills must be registered with the SCIS tenant to recognize these custom skills.
To complete this registration, an IBM support ticket should be submitted with the following details:
- SCIS Tenant ID
- watsonx Assistant ID
- watsonx Assistant Service URL
- watsonx Assistant API Key
- watsonx Assistant Draft Environment ID and Live Environment ID

Configure Watson Discovery
Load the Watson Discovery instance from the Resource List under
AI/Machine Learning.
Create a project by clicking on
New Project.
Within the project, create a new collection by clicking on
New collection.
Upload the required documents to the Watson Discovery instance by navigating to the
Upload datatab.
Perform relevancy training to improve watsonx Assistant's responses.

Configure watsonx Assistant
Log in to IBM Cloud.
Load the watsonx Assistant instance from the Resource List under
AI/Machine Learning.
Create an Intent
Click on the Create Intent button.

Provide a name for the intent and add User examples. User examples are the questions that users might ask Watson Assistant. Add as many user examples as possible to cover a variety of scenarios.

Add an Extension
Navigate to the
Integrationsmenu.
From the
Extensionspage, selectBuild Custom Extension.
Configure the Watson Discovery extension
Upload the
wd_openapi.jsonfile.Specify the API key and URL for the Watson Discovery instance.
Save the changes.

Note: You can retrieve the API key and URL for the Watson Discovery instance from the
Resource ListunderWatson Discovery instance.
Configure the watsonx.ai extension
Upload the
watsonx-openapi.jsonfile.Enter the API key and URL of the watsonx.ai instance within the Custom Extension.
Save the changes.

Note: You can retrieve the API key and URL for the watsonx.ai instance from the
Resource ListunderWatson Discovery instance.
Variable definitions
The following variables must be defined and will be used across various steps when defining Actions.
For this tutorial, we have used the ibm/granite-20b-multilingual model. However, you are encouraged to explore and use other Granite models available from IBM.

Create an Action skill
Click on
New Actionto create an action and specify a name.
Create five steps within the action as outlined below. Add each step by clicking on
New Step:Step 1. Capture User Input
Define a step to consume the input from the user and store it in the variable
Question.Provide the Watson Discovery extension details:

count: 3query:Questionvariable definedpassages.enabled: truepassages.characters: 250passages.find_answers: truecollection_ids: Should be fetched as shown in the screenshot belowtable_results.enabled: falseproject_id: Should be fetched as shown in the screenshot belowversion: 2022-08-01
To fetch
collection_idandproject_id:Open the instance of Watson Discovery and navigate to the project where the files have been uploaded.
Go to
Integrate and Deploy->API Information.
Navigate to
Manage Collectionsand open the collection. Then, go toManage Dataand open the document. Click onView as JSONin the top right corner to retrieve the necessary IDs.
Step 2. Store Watson Discovery output
Store the output from Watson Discovery in a variable
WD_Result_info.The first result with the highest confidence will be used.

Step 3. Prepare input for the LLM model
Set a temporary string variable,
temp_input, for concatenation purposes.Provide necessary instructions to the LLM model and clear the
Questionvariable.The model prompt will be constructed as follows:
("Answer the following question using information from the article confidently , which is surrounding with ###. If there is no answer in the article, provide the same article as the response.Article ###").concat("Result from discovery").concat("###").concat("Question")
Step 4. Provide watsonx.ai extension details
Provide the watsonx.ai extension details:

input: Input to the Granite modelmodel_id: Should be fetched as shown in the screenshot belowproject_id: Should be fetched as shown in the screenshot belowparameters.max_new_tokens: 500parameters.temperature: 0.5parameters.top_k: 50parameters.top_p: 1parameters.decoding_method: sampleparameters.min_new_tokens: 1version: 2023-05-29Note: To fetch
model_idandproject_id, refer to the following image.
Step 5. Store LLM output
Set the output of the LLM model to a variable,
prompt_result, which will be the final response from the assistant and displayed to the user.
Create a Dialog skill
Navigate to the
Dialogsection from the menu.Click on
Add Nodeand specify a name for the node.In the
If assistant recognizesfield, specify the relevant intent names.From the drop-down menu, select the action you created earlier.
Set the parameters, with the
Questionvariable corresponding to the text input from the user. The return variable will be auto-populated.
In the
Assistant respondssection, assign the output variable that was auto-created and set the next step toanything_else.
Configure webhooks
Webhooks in watsonx Assistant allow it to interact with external systems. To configure the webhook, specify the following details:

URL:
https://api.ibm.com/scassistant/run/named-entities/na/recognizeAuthorization:
Bearer $integrations.chat.private.jwt
Client ID:
X-IBM-Client-Id scassistant-$integrations.chat.private.tenant_id
Call the webhook within the Dialog
Click on the
Customizegear icon for theCall a Webhookoption within the dialog.
This sample dialog node processes a dynamic value for
Category(stored in$sterling_entities.category_name.value) from the user, and then displays the suppliers for that specific category.The previously configured webhook will be invoked from this dialog node with the necessary configurations:
- Click on the gear icon for
$sterling_entities. - Click on the three dots icon and select Open JSON editor to view the category name
"compactSuppliersForCategory".



In SCIS, the page
compactSuppliersForCategoryis created, as shown below, and is linked to the category name in watsonx Assistant by using the webhook callout to the NER API.
- Click on the gear icon for
Configure the
Anything elseoption in the dialog node to handle queries that the Assistant cannot recognize or respond to, as shown in the screenshot.

Demonstration video
To learn how to build a supply chain sustainability advisor using watsonx.ai and IBM SCIS, watch the following demonstration video:
Video will open in new tab or window
Summary and next steps
The integration of IBM SCIS, generative AI, and Watson Discovery represents a significant advancement in supply chain management. This convergence reduces time and effort for business users while enhancing decision-making and operational efficiency.
Generative AI can also be used to simplify developers' tasks, such as generating GraphQL code to create work queues in SCIS, further streamlining development processes and boosting productivity.
Useful resources
Acknowledgments
Thanks to Irene Lee and Kevin Grozav for their invaluable assistance with the registration and integration of these products.