> ## Documentation Index
> Fetch the complete documentation index at: https://docs.observ.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Quick Start

> Get Observ up and running in your application a few lines of code

## 1. Get your API Key

Create an account and get your API key from [Settings → API Keys](https://observ.dev/settings/api-keys).

## 2. Choose Your Integration

<CardGroup cols={2}>
  <Card title="Vercel AI SDK" icon="zap" href="/vercel-ai/overview">
    **Recommended for new projects**

    Use Vercel AI SDK for multi-provider support with a unified API. Switch between OpenAI, Anthropic, Google, and 20+ other providers without changing your code.
  </Card>

  <Card title="Provider SDKs" icon="code" href="/provider-sdks/overview">
    **For existing integrations**

    Wrap your existing provider SDK clients (Anthropic, OpenAI, Mistral, etc.) for instant observability.
  </Card>
</CardGroup>

## Quick Example: Vercel AI SDK

<Steps>
  <Step title="Install dependencies">
    ```bash theme={null}
    npm install observ-sdk ai @ai-sdk/openai
    ```
  </Step>

  <Step title="Wrap your model">
    ```typescript theme={null}
    import { Observ } from "observ-sdk";
    import { openai } from "@ai-sdk/openai";
    import { generateText } from "ai";

    const observ = new Observ({
      apiKey: "your-observ-api-key",
      recall: true, // Enable semantic caching
    });

    // Wrap the model
    const model = observ.wrap(openai("gpt-4"));
    ```
  </Step>

  <Step title="Use it normally">
    ```typescript theme={null}
    const result = await generateText({
      model,
      prompt: "What is TypeScript?",
    });

    console.log(result.text);
    ```
  </Step>

  <Step title="View traces in dashboard">
    All your LLM calls are now automatically traced! View them in the [Dashboard](https://observ.dev/dashboard).
  </Step>
</Steps>

## Quick Example: Provider SDKs

<Tabs>
  <Tab title="TypeScript">
    <Steps>
      <Step title="Install dependencies">
        ```bash theme={null}
        npm install observ-sdk @anthropic-ai/sdk
        ```
      </Step>

      <Step title="Wrap your client">
        ```typescript theme={null}
        import Anthropic from "@anthropic-ai/sdk";
        import Observ from "observ-sdk";

        const ob = new Observ({
          apiKey: "your-observ-api-key",
          recall: true,
        });

        const client = new Anthropic({ apiKey: "your-anthropic-key" });
        const wrappedClient = ob.anthropic(client);
        ```
      </Step>

      <Step title="Use it normally">
        ```typescript theme={null}
        const response = await wrappedClient.messages.create({
          model: "claude-sonnet-4-20250514",
          max_tokens: 1024,
          messages: [{ role: "user", content: "Hello!" }],
        });

        console.log(response.content[0].text);
        ```
      </Step>
    </Steps>
  </Tab>

  <Tab title="Python">
    <Steps>
      <Step title="Install dependencies">
        ```bash theme={null}
        pip install observ-sdk anthropic
        ```
      </Step>

      <Step title="Wrap your client">
        ```python theme={null}
        import anthropic
        from observ import Observ

        ob = Observ(
            api_key="your-observ-api-key",
            recall=True,
        )

        client = anthropic.Anthropic(api_key="your-anthropic-key")
        wrapped_client = ob.anthropic(client)
        ```
      </Step>

      <Step title="Use it normally">
        ```python theme={null}
        response = wrapped_client.messages.create(
            model="claude-sonnet-4-20250514",
            max_tokens=1024,
            messages=[{"role": "user", "content": "Hello!"}],
        )

        print(response.content[0].text)
        ```
      </Step>
    </Steps>
  </Tab>
</Tabs>

## What's Next?

<CardGroup cols={3}>
  <Card title="Session Tracking" icon="users" href="/features/sessions">
    Group related calls with session IDs
  </Card>

  <Card title="Custom Metadata" icon="tag" href="/features/metadata">
    Attach metadata to your traces
  </Card>

  <Card title="View Dashboard" icon="gauge" href="https://observ.dev/dashboard">
    Analyze your LLM usage
  </Card>
</CardGroup>

<Tip>
  Set `recall: true` to enable semantic caching and reduce costs by up to 85% on
  similar prompts.
</Tip>
