Metadata-Version: 2.4
Name: llm-tracekit
Version: 2.1.0
Summary: Meta-package for LLM Tracekit - OpenTelemetry instrumentations for LLM providers.
Project-URL: homepage, https://coralogix.com
Project-URL: repository, https://github.com/coralogix/llm-tracekit.git
Author-email: "Coralogix Ltd." <info@coralogix.com>
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 5 - Production/Stable
Classifier: Framework :: OpenTelemetry :: Instrumentations
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
Requires-Python: <3.14,>=3.10
Requires-Dist: llm-tracekit-core>=1.0.0
Provides-Extra: bedrock
Requires-Dist: llm-tracekit-bedrock>=1.0.0; extra == 'bedrock'
Provides-Extra: gemini
Requires-Dist: llm-tracekit-gemini>=1.0.0; extra == 'gemini'
Provides-Extra: google-adk
Requires-Dist: llm-tracekit-google-adk>=1.0.0; extra == 'google-adk'
Provides-Extra: guardrails
Requires-Dist: cx-guardrails>=1.0.0; extra == 'guardrails'
Provides-Extra: langchain
Requires-Dist: llm-tracekit-langchain>=1.0.0; extra == 'langchain'
Provides-Extra: langgraph
Requires-Dist: llm-tracekit-langgraph>=1.0.0; extra == 'langgraph'
Provides-Extra: litellm
Requires-Dist: llm-tracekit-litellm>=1.0.0; extra == 'litellm'
Provides-Extra: openai
Requires-Dist: llm-tracekit-openai>=1.0.0; extra == 'openai'
Provides-Extra: openai-agents
Requires-Dist: llm-tracekit-openai-agents>=1.0.0; extra == 'openai-agents'
Description-Content-Type: text/markdown

# LLM Tracekit

Open-source observability for your LLM application, based on OpenTelemetry.

LLM Tracekit is a set of OpenTelemetry instrumentations that gives you complete observability over your LLM application. Because it uses OpenTelemetry under the hood, it can be connected to your existing observability solutions - Coralogix, Datadog, Honeycomb, and others.

## 🚀 Getting Started

Install the instrumentation for your LLM provider:

```bash
pip install llm-tracekit-openai        # For OpenAI
pip install llm-tracekit-bedrock       # For AWS Bedrock
pip install llm-tracekit-gemini        # For Google Gemini
pip install llm-tracekit-google-adk    # For Google ADK
pip install llm-tracekit-litellm       # For LiteLLM
pip install llm-tracekit-langchain     # For LangChain
pip install llm-tracekit-langgraph     # For LangGraph
pip install llm-tracekit-openai-agents # For OpenAI Agents SDK
```

Then instrument your code:

```python
from llm_tracekit.openai import OpenAIInstrumentor, setup_export_to_coralogix

setup_export_to_coralogix(
    service_name="my-ai-service",
    capture_content=True,
)

OpenAIInstrumentor().instrument()

from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[{"role": "user", "content": "Hello!"}],
)
```

## 🪗 What do we instrument?    

### LLM Providers

| Provider | Package | Instrumentor |
|----------|---------|--------------|
| [OpenAI](https://openai.com/) | `llm-tracekit-openai` | `OpenAIInstrumentor` |
| [AWS Bedrock](https://aws.amazon.com/bedrock/) | `llm-tracekit-bedrock` | `BedrockInstrumentor` |
| [Google Gemini](https://ai.google.dev/) | `llm-tracekit-gemini` | `GeminiInstrumentor` |

### Frameworks

| Framework | Package | Instrumentor |
|-----------|---------|--------------|
| [Google ADK](https://github.com/google/adk-python) | `llm-tracekit-google-adk` | `GoogleADKInstrumentor` |
| [LiteLLM](https://github.com/BerriAI/litellm) | `llm-tracekit-litellm` | `LiteLLMInstrumentor` |
| [LangChain](https://www.langchain.com/) | `llm-tracekit-langchain` | `LangChainInstrumentor` |
| [LangGraph](https://langchain-ai.github.io/langgraph/) | `llm-tracekit-langgraph` | `LangGraphInstrumentor` |
| [OpenAI Agents SDK](https://openai.github.io/openai-agents-python/) | `llm-tracekit-openai_agents` | `OpenAIAgentsInstrumentor` |


## 📖 Usage

### Setting up tracing

#### Export to Coralogix

```python
from llm_tracekit.openai import setup_export_to_coralogix

setup_export_to_coralogix(
    service_name="ai-service",
    application_name="ai-application",
    subsystem_name="ai-subsystem",
    capture_content=True,
)
```

## 🛡️ Guardrails

LLM Tracekit also includes **Coralogix Guardrails** - a client for protecting your LLM applications with content moderation, PII detection, prompt injection detection, and more.

See the [Guardrails documentation](./guardrails/README.md) for details.

## 📚 Documentation

For detailed documentation on each instrumentation, see the individual READMEs:

- [OpenAI](./instrumentations/openai/README.md)
- [AWS Bedrock](./instrumentations/bedrock/README.md)
- [Google Gemini](./instrumentations/gemini/README.md)
- [Google ADK](./instrumentations/google-adk/README.md)
- [LiteLLM](./instrumentations/litellm/README.md)
- [LangChain](./instrumentations/langchain/README.md)
- [LangGraph](./instrumentations/langgraph/README.md)
- [OpenAI Agents SDK](./instrumentations/openai_agents/README.md)

## 📜 License

Apache 2.0 - See [LICENSE](./LICENSE) for details.
