Skip to content

Python SDK

Access Claude models from Python using either the official Anthropic SDK or the OpenAI-compatible endpoint.

Anthropic SDK

Installation

bash
pip install anthropic

Basic usage

python
import anthropic

client = anthropic.Anthropic(
    api_key="sk_cdx_YOUR_KEY",
    base_url="https://api.claudexia.tech",
)

message = client.messages.create(
    model="claude-sonnet-4.5",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Hello, Claude!"}
    ],
)

print(message.content[0].text)

Streaming

python
import anthropic

client = anthropic.Anthropic(
    api_key="sk_cdx_YOUR_KEY",
    base_url="https://api.claudexia.tech",
)

with client.messages.stream(
    model="claude-sonnet-4.5",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Write a short poem about coding."}
    ],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)

Extended thinking

Enable extended thinking to let the model reason step-by-step before responding.

python
import anthropic

client = anthropic.Anthropic(
    api_key="sk_cdx_YOUR_KEY",
    base_url="https://api.claudexia.tech",
)

message = client.messages.create(
    model="claude-sonnet-4.5",
    max_tokens=16000,
    thinking={
        "type": "enabled",
        "budget_tokens": 10000,
    },
    messages=[
        {"role": "user", "content": "How many r's are in strawberry?"}
    ],
)

for block in message.content:
    if block.type == "thinking":
        print(f"Thinking: {block.thinking}")
    elif block.type == "text":
        print(f"Answer: {block.text}")

OpenAI SDK

Installation

bash
pip install openai

Basic usage

python
from openai import OpenAI

client = OpenAI(
    api_key="sk_cdx_YOUR_KEY",
    base_url="https://api.claudexia.tech/v1",
)

response = client.chat.completions.create(
    model="claude-sonnet-4.5",
    messages=[
        {"role": "user", "content": "Hello, Claude!"}
    ],
)

print(response.choices[0].message.content)

Streaming

python
from openai import OpenAI

client = OpenAI(
    api_key="sk_cdx_YOUR_KEY",
    base_url="https://api.claudexia.tech/v1",
)

stream = client.chat.completions.create(
    model="claude-sonnet-4.5",
    messages=[
        {"role": "user", "content": "Write a short poem about coding."}
    ],
    stream=True,
)

for chunk in stream:
    delta = chunk.choices[0].delta.content
    if delta:
        print(delta, end="", flush=True)