watsonx.ai

watsonx.ai

A one-stop, integrated, end- to-end AI development studio

 View Only

IBM Watsonx.ai Orchestrate - Creating AI Agents - Using YAML Configuration

By Sandipan Chakraborty posted 3 days ago

  

IBM watsonx Orchestrate is an AI-powered platform for building, deploying, and managing intelligent agents to automate complex business tasks at scale. Its core capabilities are:



  1. Multi-Agent Orchestration: It allows diverse AI agents and assistants to collaborate, delegate tasks, and execute multi-step workflows across systems.

  2. AI Agent Builder: Provides a low-code/no-code studio to easily create custom agents that can reason, plan, and act on user requests. 

  3. Seamless Integration: It connects with a rich catalog of prebuilt tools and over 80 enterprise applications (like Salesforce, SAP, etc.), leveraging existing IT investments.

  4. Governance & Observability: It includes centralized controls, audit trails, and guardrails to ensure AI agents operate responsibly, securely, and in compliance


IBM watsonx Orchestrate Agent Development Kit (ADK), which is the command-line interface developers use to build and deploy agents using configuration files (YAML or JSON). Here is a detailed, step-by-step guide on how to create and deploy an AI Agent using the ADK with a YAML configuration file.


Guide to Creating a watsonx Orchestrate Agent with ADK (CLI + YAML)


This guide assumes you have Python installed and have access to an IBM watsonx Orchestrate instance (either the SaaS version or the Developer Edition).


Step 1: Get IBM Watsonx.ai Orchestrate API Key: 


You can access a 30-day free trial of IBM watsonx Orchestrate on IBM Cloud to explore its features. Once you have a running service instance, here is where to retrieve the API Key and Service Instance URL for API access:




Step 2: Set up the ADK and Environment


The ADK is a Python package that includes the orchestrate CLI tool.


2.1 Install the ADK


Open your terminal and run the following commands to create a virtual environment and install the ADK:


# 1. Create a Python virtual environment


        python -m venv venv


# 2. Install the watsonx Orchestrate ADK


       pip install ibm-watsonx-orchestrate


2.2 Configure the watsonx Orchestrate Environment


You need to connect the CLI to your specific watsonx Orchestrate instance using its URL and API Key.



  1. Get Credentials: Log in to your watsonx Orchestrate instance, go to Profile > Settings > API Details, and copy your Service Instance URL and API Key.

  2. Add Environment: Use the orchestrate env addcommand


# Add your cloud environment (replace     placeholders with your actual values)


orchestrate env add --name "{YOUR_ENV_NAME}" --url "{YOUR_SERVICE_INSTANCE_URL}" --type ibm_iam --activate


it will ask for API KEY. 


Please enter WXO API key: 


[INFO] - Environment 'my-watsonx-orchestrate-env' is now active


Step 3: Create the Agent YAML Configuration File


3.1 Create A Calculate Tool: 


Creating an agent tool using Python and the IBM watsonx Orchestrate Agent Development Kit (ADK) involves defining a standard Python function and then using the ADK's CLI to import it. This function becomes a tool that your AI agent can reason about and invoke to perform a specific action.


[sum_agent_tool.py]



(myenv) C:\watson\watson_agent>orchestrate tools import -k python -f sum_agent_tool.py



3.2 Create the Agent YAML Configuration File With Tool:


[sum_agent.yaml]


spec_version: "v1"
name: SumAgent


kind: native
description: "A specialized agent for performing mathematical calculations."



llm: watsonx/meta-llama/llama-3-2-90b-vision-instruct

instruction: "Always run the calculate_sum tool when use type addition, sum or plus"

style: default

tools:

- sum_numbers

# CLI Command

(myenv) C:\watson\watson_agent>orchestrate agents import -f sum_agent.yaml and uses the tool sum_numbers created earlier 






3.3 Verify and Test Sum Agent and How it uses the tool.



  1. Agent uses the tool appropriatly to sum the number provided in



       2. Steps how Agent used reasoning and    utilize tool for the task



4. Conclusion:


The ability of IBM watsonx Orchestrate to define and configure agents using simple YAML or JSON files delivers a powerful form of flexibility and democratization. "configuration-as-code" approach separates the agent's core logic from its operational definition, allowing developers to swiftly define the agent's LLM, instructions, tools, and collaborators in a human-readable format.



This functionality will significantly accelerate the development lifecycle of intelligent agents. By decoupling agent configuration (like persona, instruction set, tools, and LLM) from the underlying application code, builders can rapidly prototype, iterate, and deploy new agents or modify existing ones without complex redeployment cycles. It enforces a standardized, version-controllable approach to agent management, supporting DevOps practices and promoting configuration consistency across teams.


#Watson #watsonx.ai #AIAgent 


#watsonx.ai
0 comments
16 views

Permalink