SovrGPT Docs
API

SDK-Beispiele

Python, Node, .NET, Java, Go — alle OpenAI-Clients funktionieren ohne Patch.

SovrGPT spricht das OpenAI-v1-Schema. Du kannst jedes existierende OpenAI-SDK verwenden — du musst nur baseURL und apiKey umstellen.

Python (offizielles openai-SDK)

from openai import OpenAI

client = OpenAI(
    api_key="sk-sovr-…",
    base_url="https://sovrgpt.com/api/v1",
)

resp = client.chat.completions.create(
    model="qwen3.5-9b",
    messages=[{"role": "user", "content": "Hallo!"}],
)
print(resp.choices[0].message.content)

Streaming:

for chunk in client.chat.completions.create(
    model="qwen3.5-9b",
    messages=[{"role": "user", "content": "Erzähl einen Witz."}],
    stream=True,
):
    print(chunk.choices[0].delta.content or "", end="", flush=True)

Node.js (offizielles openai-SDK)

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.SOVR_KEY,
  baseURL: "https://sovrgpt.com/api/v1",
});

const resp = await client.chat.completions.create({
  model: "qwen3.5-9b",
  messages: [{ role: "user", content: "Hallo!" }],
});
console.log(resp.choices[0].message.content);

Vercel AI SDK

import { createOpenAI } from "@ai-sdk/openai";
import { streamText } from "ai";

const sovrgpt = createOpenAI({
  apiKey: process.env.SOVR_KEY!,
  baseURL: "https://sovrgpt.com/api/v1",
});

const result = streamText({
  model: sovrgpt("qwen3.5-9b"),
  messages: [{ role: "user", content: "Hallo!" }],
});

for await (const textPart of result.textStream) {
  process.stdout.write(textPart);
}

.NET (Azure.AI.OpenAI / OpenAI-DotNet)

using OpenAI.Chat;

var client = new ChatClient(
    model: "qwen3.5-9b",
    credential: new System.ClientModel.ApiKeyCredential("sk-sovr-…"),
    options: new()
    {
        Endpoint = new Uri("https://sovrgpt.com/api/v1"),
    });

var resp = await client.CompleteChatAsync(
    new UserChatMessage("Hallo!"));
Console.WriteLine(resp.Value.Content[0].Text);

Java (langchain4j)

OpenAiChatModel model = OpenAiChatModel.builder()
    .apiKey(System.getenv("SOVR_KEY"))
    .baseUrl("https://sovrgpt.com/api/v1")
    .modelName("qwen3.5-9b")
    .build();

String answer = model.generate("Hallo!");
System.out.println(answer);

Go (sashabaranov/go-openai)

client := openai.NewClientWithConfig(openai.ClientConfig{
    AuthToken: os.Getenv("SOVR_KEY"),
    BaseURL:   "https://sovrgpt.com/api/v1",
})

resp, _ := client.CreateChatCompletion(ctx, openai.ChatCompletionRequest{
    Model:    "qwen3.5-9b",
    Messages: []openai.ChatCompletionMessage{{Role: "user", Content: "Hallo!"}},
})
fmt.Println(resp.Choices[0].Message.Content)

LangChain (Python)

from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
    model="qwen3.5-9b",
    api_key="sk-sovr-…",
    base_url="https://sovrgpt.com/api/v1",
)

print(llm.invoke("Hallo!").content)

LiteLLM

import litellm
litellm.api_base = "https://sovrgpt.com/api/v1"
litellm.api_key = "sk-sovr-…"

resp = litellm.completion(
    model="openai/qwen3.5-9b",
    messages=[{"role": "user", "content": "Hallo!"}],
)

(Beachte das openai/-Präfix — LiteLLM braucht das für OpenAI-kompatible Provider.)

SDK-Beispiele