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 forKAPPAML_API_KEYenvironment 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 modelml_type: Type of ML task ('regression' or 'classification')wait_for_deployment: Whether to wait for model deployment to completetimeout: 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 IDfeatures: Dictionary of feature names and valuestarget: 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 IDfeatures: 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 errorsModelNotFoundError: Raised when a model is not foundModelDeploymentError: 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)
| File | Size | Uploaded | |
|---|---|---|---|
| kappaml-1.1.0.tar.gz | 4.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|