Metadata-Version: 2.4
Name: kailash-ml-protocols
Version: 0.1.0
Summary: Frozen interface contracts for kailash-ml and kailash-kaizen interop
Project-URL: Documentation, https://docs.terrene.foundation/kailash-ml-protocols
Project-URL: Repository, https://github.com/terrene-foundation/kailash-py/tree/main/packages/kailash-ml-protocols
Project-URL: Issues, https://github.com/terrene-foundation/kailash-py/issues
Author: Terrene Foundation
License-Expression: Apache-2.0
Keywords: interfaces,kailash,machine-learning,ml,protocols
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.10
Provides-Extra: dev
Requires-Dist: mypy>=1.8; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest-timeout>=2.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.3; extra == 'dev'
Description-Content-Type: text/markdown

# kailash-ml-protocols

Frozen interface contracts for the Kailash ML ecosystem. This thin package (~160 lines, zero dependencies) breaks the circular dependency between `kailash-ml` and `kailash-kaizen`.

## Install

```bash
pip install kailash-ml-protocols
```

No dependencies required -- Python 3.10+ stdlib only.

## Protocols

### MLToolProtocol

Tools that Kaizen agents call via MCP to access ML capabilities.

- `predict(model_name, features, *, options=None)` -- Single-record prediction
- `get_metrics(model_name, version=None, *, options=None)` -- Model metrics
- `get_model_info(model_name, *, options=None)` -- Model metadata

### AgentInfusionProtocol

Protocol for agent-augmented engine methods.

- `suggest_model(data_profile, task_type, *, options=None)` -- Suggest model families
- `suggest_features(data_profile, existing_features, *, options=None)` -- Suggest feature engineering
- `interpret_results(experiment_results, *, options=None)` -- Interpret experiment results
- `interpret_drift(drift_report, *, options=None)` -- Interpret drift report

## Schemas

- `FeatureField` -- Single feature column definition
- `FeatureSchema` -- Schema for a feature set with `to_dict()` / `from_dict()` round-trip
- `ModelSignature` -- Input/output schema for a trained model
- `MetricSpec` -- A single evaluation metric with its value

## License

Apache 2.0 -- Terrene Foundation
