Skip to main content

Python client library for the Kamiwaza AI Platform

Project description

Kamiwaza Python SDK

Python client library for interacting with the Kamiwaza AI Platform. This SDK provides a type-safe interface to all Kamiwaza API endpoints with built-in authentication, error handling, and resource management.

Installation

pip install kamiwaza-sdk

Naming note: Install the package as kamiwaza-sdk, but import it as kamiwaza_sdk. A deprecated kamiwaza_client alias remains for older snippets, though new code should prefer kamiwaza_sdk.

Version compatibility: This SDK (version 0.5.1+) is incompatible with Kamiwaza versions before 0.5.1. Please ensure you're using the latest version of Kamiwaza.

Python SDK Usage

from kamiwaza_sdk import KamiwazaClient
from kamiwaza_sdk.authentication import UserPasswordAuthenticator
from kamiwaza_sdk.schemas.auth import PATCreate

client = KamiwazaClient("https://localhost/api")

# Option 1 (recommended): Personal Access Token
# export KAMIWAZA_API_KEY=<your-pat>
# client automatically loads the token and reuses it for every request.

# Option 2: bootstrap with username/password to mint a PAT
client.authenticator = UserPasswordAuthenticator("admin", "kamiwaza", client.auth)
pat = client.auth.create_pat(PATCreate(name="local-bootstrap")).token
print("Save this token:", pat)

Examples

The /examples directory contains Jupyter notebooks demonstrating various use cases:

  1. Model Download and Deployment - A comprehensive guide to searching, downloading, deploying, and using models with the Kamiwaza SDK
  2. Quick Model Deployment - Streamlined approach to download and deploy models using a single function
  3. Model Evaluation - How to evaluate and benchmark multiple language models for performance comparison using the streamlined download_and_deploy_model function
  4. Structured Output - Using Kamiwaza's OpenAI-compatible interface to generate structured outputs with specific JSON schemas
  5. Function Calling - Demonstrates how to use function calling (tools) with Kamiwaza's OpenAI-compatible API
  6. Web Agent - Build an AI agent that can browse and interact with web pages
  7. RAG Demo - Retrieval Augmented Generation using Kamiwaza's vector database and embedding services
  8. App Garden and Tool Shed - Deploy containerized applications and MCP Tool servers

More examples coming soon!

Service Overview

Service Description Documentation
client.models Model management Models Service
client.serving Model deployment Serving Service
client.vectordb Vector database VectorDB Service
client.catalog Data management Catalog Service
client.embedding Text processing Embedding Service
client.retrieval Search Retrieval Service
client.cluster Infrastructure Cluster Service
client.lab Lab environments Lab Service
client.auth Security Auth Service
client.authz Authorization tuples/checks AuthZ Service
client.activity Monitoring Activity Service
client.openai OpenAI API compatible OpenAI Service
client.apps App deployment App Service
client.tools Tool servers (MCP) Tool Service
client.ingestion Data ingestion Ingestion Service

Integration Tests

The tests/integration suite spins up a MinIO fixture via Docker Compose and exercises the ingestion → catalog flow using the SDK. Run it with:

pytest -m integration

Note: Retrieval checks are currently marked xfail because the live deployment returns HTTP 500 while Ray-backed transport is being stabilised.

The Kamiwaza SDK is actively being developed with new features, examples, and documentation being added regularly. Stay tuned for updates including additional example notebooks, enhanced documentation, and expanded functionality across all services.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kamiwaza_sdk-0.7.0.tar.gz (69.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kamiwaza_sdk-0.7.0-py3-none-any.whl (90.1 kB view details)

Uploaded Python 3

File details

Details for the file kamiwaza_sdk-0.7.0.tar.gz.

File metadata

  • Download URL: kamiwaza_sdk-0.7.0.tar.gz
  • Upload date:
  • Size: 69.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.18

File hashes

Hashes for kamiwaza_sdk-0.7.0.tar.gz
Algorithm Hash digest
SHA256 99e386807a0943374b42598f35bc18b5d6cbf8b15a29ffb5a07a5e8951718e46
MD5 f0e93b798e19eeb45242d6075a679573
BLAKE2b-256 1574b786cdc7cfc23bc5c4278f75c4d5d71b327e725255769242fb00415e622c

See more details on using hashes here.

File details

Details for the file kamiwaza_sdk-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: kamiwaza_sdk-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 90.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.18

File hashes

Hashes for kamiwaza_sdk-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d8edf1e599bbafd1c91b1250585f6f68e9a586dcd6c2ca83153477a5758cf0d6
MD5 d175bde4d0ce6ebc2d48bd4052ec763f
BLAKE2b-256 f3d0acb27cd57c60ec403a32ecb419cc6d15c4ad4a3dcd66da192f9ad23d32cf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page