📦 ibm-watsonx-ai
Official IBM watsonx.ai Python SDK
Enterprise-grade Python client for building, tuning and deploying AI models with IBM watsonx.ai
📌 Overview
ibm-watsonx-ai is the official Python SDK for IBM watsonx.ai, an enterprise-grade AI platform for building, training, tuning, deploying, and operating AI models at scale.
The SDK provides a unified and production-ready Python interface to the full watsonx.ai ecosystem, including Foundation Models (within LLMs), AutoAI experiments, Retrieval-Augmented Generation (RAG), model tuning, deployment, and data integration.
With ibm-watsonx-ai, developers and data scientists can seamlessly integrate advanced AI capabilities into Python applications running on IBM watsonx.ai for IBM Cloud or IBM watsonx.ai software, while meeting enterprise requirements such as security, governance, and scalability.
🎯 What This SDK Is Used For
The ibm-watsonx-ai SDK is designed to support the entire AI lifecycle:
- 🔐 Secure authentication and environment configuration
- 🤖 Inference with Foundation Models (LLMs, embeddings, time-series, audio)
- 📚 Building Retrieval-Augmented Generation (RAG) systems
- 🧪 Running and optimizing AutoAI experiments
- ⚙️ Fine-tuning and prompt tuning of models
- 🚀 Deploying models to scalable inference endpoints
- 🔗 Integrating enterprise data sources into AI workflows
It is suitable for research, prototyping, and production deployments.
📦 Installation
Install from PyPI:
pip install ibm-watsonx-ai
Install with optional extras:
pip install "ibm-watsonx-ai[rag]"
| Extra | Description |
|---|---|
rag |
Retrieval‑Augmented Generation utilities |
mcp |
Model Context Protocol |
🚀 Quick Start
Authentication
Set up your Credentials and create an APIClient instance:
from ibm_watsonx_ai import Credentials, APIClient
credentials = Credentials(
url="https://us-south.ml.cloud.ibm.com",
api_key="<your-ibm-api-key>"
)
# Initialize APIClient using a space ID (you can also use a project ID)
api_client = APIClient(credentials, space_id="<your-space-id>")
Working with ModelInference
List available chat models
list(api_client.foundation_models.ChatModels)
# Output example:
# [<ChatModels.GRANITE_3_3_8B_INSTRUCT: 'ibm/granite-3-3-8b-instruct'>,
# <ChatModels.GRANITE_4_H_SMALL: 'ibm/granite-4-h-small'>,
# <ChatModels.LLAMA_3_3_70B_INSTRUCT: 'meta-llama/llama-3-3-70b-instruct'>,
# <ChatModels.GPT_OSS_120B: 'openai/gpt-oss-120b'>]
Initialize ModelInference
from ibm_watsonx_ai.foundation_models import ModelInference
# Create a `ModelInference` instance for the selected model
model = ModelInference(
api_client=api_client,
model_id="ibm/granite-4-h-small"
)
Chat with the model
# Prepare messages
messages = [
{"role": "system", "content": "You are a helpful assistant that translates English to French."},
{"role": "user", "content": "I love you for listening to Rock."}
]
# Get model response
response = model.chat(messages=messages)
print(response)
Metadata
Release files for ibm-watsonx-ai 1.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ibm_watsonx_ai-1.8.0.tar.gz | 742.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ibm_watsonx_ai-1.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.9 MB
Release files / ibm_watsonx_ai-1.8.0.tar.gz
| Download URL | ibm_watsonx_ai-1.8.0.tar.gz |
|---|---|
| Size | 742.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e2a11b4146b5942a58ccbdb63bc64c18889969e73f80a31216bf683fa42419e3
|
|
BLAKE2b-256 checksum How to use checksums |
4bc149489cbb417206e35b85250c8b03d8ac65ddf9ba521710f60175ce599134
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|
Release files / ibm_watsonx_ai-1.8.0-py3-none-any.whl
| Download URL | ibm_watsonx_ai-1.8.0-py3-none-any.whl |
|---|---|
| Size | 1.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
26885d661679ffc032a4102d60b0cb34cc3dca3e9e61ffa29a3c6cac30e6eab4
|
|
BLAKE2b-256 checksum How to use checksums |
434bcc5a3bbd795a03e653ea2fad6d26456107e3295b787439afdccd480268a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.16
|