Skip to main content

Anthropic

Integrate Anthropic Claude models through the Adaline Proxy to automatically capture telemetry — requests, responses, token usage, latency, and costs — with minimal code changes.

Supported Models

Chat Models
ModelDescription
claude-opus-4-6Latest Opus model
claude-opus-4-5-20251101Claude Opus 4.5
claude-4-opus-20250514Claude 4 Opus
claude-sonnet-4-6Latest Sonnet model
claude-sonnet-4-5-20250929Claude Sonnet 4.5
claude-4-sonnet-20250514Claude 4 Sonnet
claude-haiku-4-5-20251001Claude Haiku 4.5
claude-3-7-sonnet-20250219Claude 3.7 Sonnet with extended thinking
claude-3-5-sonnet-20241022Claude 3.5 Sonnet v2
claude-3-5-sonnet-20240620Claude 3.5 Sonnet v1
claude-3-5-haiku-20241022Fast and compact Claude 3.5
claude-3-opus-20240229Claude 3 Opus
claude-3-sonnet-20240229Claude 3 Sonnet
claude-3-haiku-20240307Fastest Claude 3 model
Embedding Models (Voyage)
ModelDescription
voyage-3General-purpose embeddings
voyage-3-liteLightweight embeddings
voyage-code-2Optimized for code
voyage-law-2Optimized for legal text
voyage-multilingual-2Multilingual embeddings
voyage-finance-2Optimized for financial text

Proxy Base URL

https://gateway.adaline.ai/v1/anthropic/

Prerequisites

  1. An Anthropic API key
  2. An Adaline API key, project ID, and prompt ID

Chat Completions

Complete Chat

import anthropic

client = anthropic.Anthropic(
    api_key="your-anthropic-api-key",
    base_url="https://gateway.adaline.ai/v1/anthropic/"
)

headers = {
    "adaline-api-key": "your-adaline-api-key",
    "adaline-project-id": "your-project-id",
    "adaline-prompt-id": "your-prompt-id"
}

response = client.messages.create(
    model="claude-3-5-sonnet-20241022",
    max_tokens=1000,
    messages=[
        {"role": "user", "content": "What is artificial intelligence?"}
    ],
    extra_headers=headers
)

print(response.content[0].text)

Stream Chat

import anthropic

client = anthropic.Anthropic(
    api_key="your-anthropic-api-key",
    base_url="https://gateway.adaline.ai/v1/anthropic/"
)

headers = {
    "adaline-api-key": "your-adaline-api-key",
    "adaline-project-id": "your-project-id",
    "adaline-prompt-id": "your-prompt-id"
}

stream = client.messages.create(
    model="claude-3-5-sonnet-20241022",
    max_tokens=1000,
    messages=[
        {"role": "user", "content": "Explain the theory of relativity in simple terms."}
    ],
    stream=True,
    extra_headers=headers
)

for event in stream:
    if event.type == "content_block_delta":
        print(event.delta.text, end="")

Optional Headers

Customize tracing behavior with optional headers:
headers = {
    # Required
    "adaline-api-key": "your-adaline-api-key",
    "adaline-project-id": "your-project-id",
    "adaline-prompt-id": "your-prompt-id",
    # Optional
    "adaline-trace-name": "anthropic-chat-completion",
    "adaline-trace-session-id": "user-session-123",
    "adaline-span-name": "claude-sonnet-call",
}
See the full Headers Reference for all available options.

Next Steps


Back to Integrations

Browse all integrations