Skip to main content

PyPI version PyPI downloads License

KappaML Python Client

Python client to interact with the KappaML platform 🐍

This SDK provides a simple interface for creating, training, and managing online machine learning models.

Platform: https://kappaml.com API Keys: https://app.kappaml.com/api-keys API Documentation: https://api.kappaml.com/docs OpenAPI Schema: https://api.kappaml.com/openapi.json

Installation

pip install kappaml

Quick Start

from kappaml import KappaML

# Initialize the client
client = KappaML(api_key="your_api_key")  # Or set KAPPAML_API_KEY env variable

# Create a new model
model_id = client.create_model(
    name="my-regression-model",
    ml_type="regression"
)

# Train the model with a single data point
client.learn(
    model_id=model_id,
    features={"x1": 1.0, "x2": 2.0},
    target=3.0
)

# Make predictions
prediction = client.predict(
    model_id=model_id,
    features={"x1": 1.5, "x2": 2.5}
)

# Get model metrics
metrics = client.get_metrics(model_id)

# Clean up
client.delete_model(model_id)

API Reference

KappaML Class

Constructor

client = KappaML(api_key: Optional[str] = None)
  • api_key: Your KappaML API key. If not provided, will look for KAPPAML_API_KEY environment variable.

Methods

create_model
def create_model(
    name: str,
    ml_type: str,
    wait_for_deployment: bool = True,
    timeout: int = 60
) -> str

Creates a new model on KappaML.

  • name: Name of the model
  • ml_type: Type of ML task ('regression' or 'classification')
  • wait_for_deployment: Whether to wait for model deployment to complete
  • timeout: Maximum time to wait for deployment in seconds
  • Returns: The model ID
learn
def learn(
    model_id: str,
    features: Dict[str, Any],
    target: Union[float, int, str]
) -> Dict[str, Any]

Train the model with a single data point.

  • model_id: The model ID
  • features: Dictionary of feature names and values
  • target: The target value to learn from
  • Returns: Response from the learning API
predict
def predict(
    model_id: str,
    features: Dict[str, Any]
) -> Dict[str, Any]

Make predictions using a model.

  • model_id: The model ID
  • features: Dictionary of feature names and values
  • Returns: Model predictions
get_metrics
def get_metrics(model_id: str) -> Dict[str, Any]

Get current metrics for a model.

  • model_id: The model ID
  • Returns: Model metrics
delete_model
def delete_model(model_id: str) -> None

Delete a model.

  • model_id: The model ID to delete

Error Handling

The SDK defines several exception classes for handling errors:

  • KappaMLError: Base exception for all SDK errors
  • ModelNotFoundError: Raised when a model is not found
  • ModelDeploymentError: Raised when model deployment fails or times out

Example error handling:

from kappaml import KappaML, ModelNotFoundError

client = KappaML()

try:
    metrics = client.get_metrics("non-existent-model")
except ModelNotFoundError:
    print("Model not found!")

Metadata

Release files for kappaml 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kappaml 1.1.0
File Size Uploaded
kappaml-1.1.0.tar.gz 4.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kappaml 1.1.0
File Interpreter ABI Platform
kappaml-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 10.4 kB

Release files / kappaml-1.1.0.tar.gz

Download URL kappaml-1.1.0.tar.gz
Size 4.8 kB
Tags Source
SHA-256 checksum
How to use checksums
0480f6d6782bde26d4d8232a0352fc83cf2a9b26a0925fcc72a9607a53a1b5bc
BLAKE2b-256 checksum
How to use checksums
0edf4bc30471e8479afc5b53f29632fdb62808ac5c9b9be6b281faacaea3b608
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.12

Release files / kappaml-1.1.0-py3-none-any.whl

Download URL kappaml-1.1.0-py3-none-any.whl
Size 5.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e825d01d2b868aedef6bf33adf0fb3b03447f5bae9063fb19209e80806457376
BLAKE2b-256 checksum
How to use checksums
2a368d1ab1a4bb81d5c68ad5c4ab8f0b4ae053dcfcb2161ba9038687a568dda8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.12

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page