Metadata-Version: 2.4
Name: litmus-sdk
Version: 0.2.1
Summary: LLM regression testing via embedding drift
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: POSIX
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: chromadb>=1.4.1
Requires-Dist: click>=8.1.8
Requires-Dist: litellm>=1.81.13
Requires-Dist: openai>=2.21.0
Requires-Dist: pydantic>=2.12.5
Requires-Dist: python-dotenv>=1.2.1
Requires-Dist: PyYAML>=6.0.3
Requires-Dist: scikit-learn>=1.8.0
Requires-Dist: scipy>=1.17.0
Requires-Dist: tomlkit>=0.13.2
Provides-Extra: dev
Requires-Dist: pytest>=9.0.2; extra == "dev"
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# litmus-sdk

LLM regression testing via embedding drift.

## Install

```bash
pip install litmus-sdk
```

## Quick start

```python
from litmus_sdk import LitmusSDK

sdk = LitmusSDK(db_path="./litmus.db", project_id="my-project")
sdk.init("v1.0.0")

# Your litellm calls are now instrumented automatically
import litellm
response = litellm.completion(model="gpt-4o-mini", messages=[{"role": "user", "content": "Hello"}])

# Compare two versions
report = sdk.compare("v1.0.0", "v2.0.0")
report.display()
```

## CLI

```bash
litmus --help
```

## Development

```bash
pip install -e ".[dev]"
pytest tests/
```
