ORYNX

OpenAI, Anthropic and Google SDKs

Use the official SDKs, and the Vercel AI SDK, with ORYNX.

Only the base URL and key change. Everything else works as each SDK's own documentation describes. The examples read the key from the ORYNX_API_KEY environment variable.

OpenAI SDK

import os
from openai import OpenAI

client = OpenAI(base_url="https://api.orynx.dev/v1", api_key=os.environ["ORYNX_API_KEY"])

# Chat Completions: every family except Gemini
chat = client.chat.completions.create(model="kimi-k3", messages=[{"role": "user", "content": "Hello"}])
print(chat.choices[0].message.content)

# Responses: GPT and Grok models
resp = client.responses.create(model="gpt-5.5", input="Hello")
print(resp.output_text)

Anthropic SDK

import os
import anthropic

client = anthropic.Anthropic(base_url="https://api.orynx.dev", api_key=os.environ["ORYNX_API_KEY"])
message = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello"}],
)
print(message.content[0].text)

Google GenAI SDK

import os
from google import genai
from google.genai import types

client = genai.Client(
    api_key=os.environ["ORYNX_API_KEY"],
    http_options=types.HttpOptions(base_url="https://api.orynx.dev"),
)
response = client.models.generate_content(model="gemini-3.8-flash", contents="Hello")
print(response.text)

Vercel AI SDK

import { createAnthropic } from "@ai-sdk/anthropic";
import { createOpenAI } from "@ai-sdk/openai";
import { generateText } from "ai";

const openai = createOpenAI({ baseURL: "https://api.orynx.dev/v1", apiKey: process.env.ORYNX_API_KEY });
const anthropic = createAnthropic({ baseURL: "https://api.orynx.dev/v1", apiKey: process.env.ORYNX_API_KEY });

// openai("...") calls the Responses API: GPT and Grok models
const gpt = await generateText({ model: openai("gpt-5.5"), prompt: "Hello" });
// openai.chat("...") calls Chat Completions: every family except Gemini
const kimi = await generateText({ model: openai.chat("kimi-k3"), prompt: "Hello" });
const claude = await generateText({ model: anthropic("claude-sonnet-5"), prompt: "Hello" });

Unlike the official Anthropic SDK, @ai-sdk/anthropic needs /v1 in its base URL. For Gemini models with @ai-sdk/google, set its baseURL to https://api.orynx.dev/v1beta.

On this page