Metadata-Version: 2.4
Name: unifiedai-sdk
Version: 1.0.1
Summary: Unified SDK for multi-provider LLM comparison (Cerebras, AWS Bedrock) with OpenAI-compatible interface.
Author-email: Your Team <team@example.com>
License: MIT
License-File: LICENSE
Keywords: bedrock,cerebras,comparison,llm,openai-compatible,sdk
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Requires-Dist: httpx>=0.27.0
Requires-Dist: opentelemetry-api>=1.20.0
Requires-Dist: prometheus-client>=0.20.0
Requires-Dist: pybreaker>=1.0.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: structlog>=24.0.0
Requires-Dist: tenacity>=8.0.0
Provides-Extra: dev
Requires-Dist: black>=24.0.0; extra == 'dev'
Requires-Dist: mypy>=1.8.0; extra == 'dev'
Requires-Dist: pre-commit>=3.0.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23.0; extra == 'dev'
Requires-Dist: pytest-benchmark>=4.0.0; extra == 'dev'
Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
Requires-Dist: pytest-vcr>=1.0.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: ruff>=0.3.0; extra == 'dev'
Description-Content-Type: text/markdown

# Unified AI SDK

OpenAI-compatible Python SDK that unifies multiple providers (Cerebras, AWS Bedrock) with Solo and Comparison modes and built-in telemetry.

## Highlights
- OpenAI-like API surface: `UnifiedAI().chat.completions.create(...)`
- Providers via adapters: Cerebras, Bedrock (extensible)
- Modes: Solo and side-by-side Comparison
- Telemetry: total round-trip time, time-to-first-byte, tokens, costs (extensible)

## Install
```bash
pip install unifiedai
```

### Install from GitHub (optional)
```bash
pip install git+https://github.com/<your-org-or-user>/<your-repo>.git#subdirectory=cerebras
```
Note: The `subdirectory=cerebras` flag installs the package defined under `cerebras/pyproject.toml`.

## Quickstart
```python
from unifiedai import UnifiedAI

client = UnifiedAI(provider="cerebras", model="llama3")
resp = client.chat.completions.create(messages=[{"role": "user", "content": "Hello"}])
print(resp.choices[0].message["content"])  # OpenAI-like shape
```

## Project Structure
- `src/unifiedai/`: SDK implementation
- `tests/`: unit tests
- `examples/`: usage examples
- `apps/chat/`: demo chat UI

## License
MIT
