Metadata-Version: 2.4
Name: paralegal
Version: 0.1.0
Summary: Multi-tenant LLM observability powered by OpenLLMetry
Home-page: https://github.com/yourcompany/paralegal
Author: Your Company
Author-email: support@yourcompany.com
Keywords: llm observability tracing opentelemetry openai anthropic
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
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.8
Description-Content-Type: text/markdown
Requires-Dist: traceloop-sdk>=0.20.0
Requires-Dist: opentelemetry-api>=1.20.0
Requires-Dist: opentelemetry-sdk>=1.20.0
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# Paralegal - Multi-Tenant LLM Observability

Complete observability for your LLM applications with one line of code.

## Installation

```bash
pip install paralegal
```

## Quick Start

```python
import paralegal
from openai import OpenAI

# Initialize with your API key
paralegal.init(api_key="pl_your_api_key_here")

# Your LLM calls are now automatically traced
client = OpenAI()
response = client.chat.completions.create(
    model="gpt-4",
    messages=[{"role": "user", "content": "Hello!"}]
)
```

## Getting Your API Key

1. Sign up at your customer portal
2. Get your API key
3. Use it in your code or set as environment variable:

```bash
export PARALEGAL_API_KEY="pl_your_api_key"
```

## Supported Providers

- ✅ OpenAI / Azure OpenAI
- ✅ Anthropic (Claude)
- ✅ Google AI (Gemini)
- ✅ AWS Bedrock
- ✅ Cohere
- ✅ HuggingFace
- ✅ LangChain
- ✅ LlamaIndex
- And many more via OpenLLMetry

## Advanced Usage

### Custom App Name

```python
paralegal.init(
    api_key="pl_xxx",
    app_name="my-chatbot-prod"
)
```

### Disable Batching (for testing)

```python
paralegal.init(
    api_key="pl_xxx",
    disable_batch=True
)
```

### Association Properties

```python
paralegal.set_association_properties({
    "user_id": "user_123",
    "session_id": "session_456"
})
```

## Documentation

Built on top of OpenLLMetry and OpenTelemetry for industry-standard observability.

## License

MIT License
