---
title: "Overview"
description: "Zero-code LLM tracing for OpenAI, Anthropic, Google Gemini, Mistral AI, and AWS Bedrock"
icon: "gauge"
---

**LLM provider wrappers** are the simplest way to add tracing to your LLM calls. Wrap your provider client once and every API call is automatically traced — no other code changes required.

The wrapper returns the same client type with tracing injected. Your existing code continues to work identically.

All wrappers automatically capture: input messages, output messages, model name, token usage, model parameters, streaming support, time-to-first-token for streaming, and error details.

## Comparison

| Wrapper | Install Extra | Provider Methods Traced |
| --- | --- | --- |
| `wrap_openai` | `"pandaprobe[openai]"` | `chat.completions.create`, `responses.create` |
| `wrap_anthropic` | `"pandaprobe[anthropic]"` | `messages.create`, `messages.stream` |
| `wrap_gemini` | `"pandaprobe[gemini]"` | `models.generate_content`, `models.generate_content_stream` |
| `wrap_mistral` | `"pandaprobe[mistral]"` | `chat.complete`, `chat.complete_async`, `chat.stream`, `chat.stream_async` |
| `wrap_bedrock` *(beta)* | `"pandaprobe[bedrock]"` | `converse`, `converse_stream`, `invoke_model`, `invoke_model_with_response_stream` |

<Tip>
  Install only the provider extras you use so dependency resolution stays minimal.
</Tip>

## Quick example

```python
from pandaprobe.wrappers import wrap_openai
from openai import OpenAI

client = wrap_openai(OpenAI())
# Use client exactly as before — all calls are traced automatically
```

<Note>
  Wrappers work seamlessly with manual instrumentation. If a wrapper call happens inside a `pandaprobe.start_trace()` or `@pandaprobe.trace` context, the LLM span is automatically nested as a child span.
</Note>

## Provider guides

<CardGroup cols={3}>
  <Card title="OpenAI" href="/tracing/wrappers/openai">
    Chat Completions and Responses API, streaming, and tool spans
  </Card>
  <Card title="Anthropic" href="/tracing/wrappers/anthropic">
    Messages API, streaming patterns, and extended thinking
  </Card>
  <Card title="Google Gemini" href="/tracing/wrappers/google-gemini">
    `generate_content`, async, streaming, and thinking mode
  </Card>
  <Card title="Mistral AI" href="/tracing/wrappers/mistral">
    Chat completions, async, and streaming
  </Card>
  <Card title="AWS Bedrock (beta)" href="/tracing/wrappers/bedrock">
    Converse and InvokeModel APIs, streaming, and aioboto3 support
  </Card>
</CardGroup>
