Voraussetzungen
Um die apertus-API zu nutzen, benötigst du ein Konto und einen API-Schlüssel. Registriere dich über Google oder E-Mail auf der Seite API-Schlüssel erhalten. Du erhältst sofort einen Schlüssel; keine Telefonnummer ist erforderlich. Wenn du zuerst testen möchtest, erhältst du bei jedem neuen Konto 0,50 $ an kostenlosem Testguthaben, das 7 Tage gültig ist. Für das Testguthaben wird keine Karte benötigt. Für den Produktivbetrieb lade mit Kryptowährung auf (USDT auf TRC20 oder USDC auf Base). Das Guthaben verfällt nie, und Fehler verbrauchen kein Guthaben. Du hast einen aktiven Schlüssel pro Konto; das Generieren eines neuen ersetzt den alten. Bewahre deinen Schlüssel sicher auf und übergebe ihn im Authorization-Header als Bearer-Token. Die API ist rein textbasiert und bedient ein einzelnes unzensiertes Modell, das für Antworten ohne Inhaltsfilter optimiert ist.
Basis-URL und Authentifizierung
Leite alle Anfragen an https://api.apertus.cc/v1. Diese Basis-URL funktioniert mit den offiziellen OpenAI-SDKs und jedem kompatiblen Client, indem du einfach den Endpunkt änderst. Füge deinen API-Schlüssel im Header hinzu: Authorization: Bearer YOUR_API_KEY. Der einzige unterstützte Endpunkt ist POST /v1/chat/completions. Ein GET /v1/models-Endpunkt ist ebenfalls verfügbar, um die Konnektivität zu überprüfen. Die zu verwendende Modell-ID ist uncensored. Dies ist ein Open-Weight-Modell, das auf unseren Servern läuft, und unterscheidet sich von GPT, Claude oder anderen Anbietern. Es verarbeitet Texteingaben und gibt Textausgaben zurück. Erwarte keine Embeddings, Bilder oder Audio. Die API ist für Entwickler konzipiert, die eine direkte Integration ohne Komplexität beim Modell-Routing wünschen.
Erste Anfrage
Sende eine einfache Completion-Anfrage, um deine Einrichtung zu überprüfen. Verwende den Befehl curl, um eine POST-Anfrage an den Chat-Completions-Endpunkt zu senden. Stelle das Modell auf uncensored und füge eine einfache Nachricht hinzu. Dies bestätigt, dass dein API-Schlüssel funktioniert und die Basis-URL korrekt ist. Du kannst Parameter wie temperature oder max_tokens nach Bedarf anpassen. Die Antwort enthält die Textausgabe des Modells. Wenn du einen 401-Fehler erhältst, überprüfe deinen Schlüssel. Ein 402-Fehler deutet auf unzureichendes Guthaben hin. Ein 429-Fehler bedeutet, dass du das Ratenlimit erreicht hast. Diese einfache Anfrage demonstriert den direkten API-Zugriff ohne Middleware. Dies ist der schnellste Weg, deine Integration zu validieren, bevor du komplexere Logik aufbaust.
Python-Integration
Verwende das offizielle openai Python-SDK, um mit der API zu interagieren. Initialisiere den Client mit der Basis-URL https://api.apertus.cc/v1 und deinem API-Schlüssel. Stelle das Modell auf uncensored. Sende Nachrichten als Liste von Wörterbüchern. Das SDK übernimmt die Serialisierung und Fehleranalyse automatisch. Dieser Ansatz ist ideal für Backend-Dienste oder Datenverarbeitungsskripte. Du kannst Antworten streamen oder vollständige Blöcke erhalten. Der Client-Code ist identisch mit dem, den du für OpenAI verwenden würdest, nur mit einer anderen Basis-URL. Dies reduziert die Hürden beim Wechsel von anderen Anbietern. Stelle sicher, dass du die neueste SDK-Version für die beste Kompatibilität verwendest. Die Integration ist minimal und erfordert nur Konfigurationsänderungen in deiner bestehenden Client-Einrichtung.
Node.js-Integration
Für JavaScript- oder TypeScript-Umgebungen verwende das openai npm-Paket. Konfiguriere den Client mit derselben Basis-URL und demselben Schlüssel wie in Python. Rufe chat.completions.create() mit dem Modell uncensored auf. Übergebe deine Nachrichten im Standardformat. Dies eignet sich gut für serverlose Funktionen oder Node.js-Backends. Das SDK verwaltet die HTTP-Anfragen und die Antwortanalyse. Du kannst Fehler durch Prüfung des Antwortstatus angemessen behandeln. Der Code bleibt portabel über verschiedene OpenAI-kompatible Dienste hinweg. Dies macht es einfach, Anbieter bei Bedarf zu wechseln. Die Node.js-Integration unterstützt sowohl synchrone als auch asynchrone Muster. Nutze sie zum Erstellen von APIs, Bots oder automatisierten Workflows, die unzensierte Textgenerierung erfordern.
Streaming-Antworten
Aktiviere das Streaming, indem du stream: true in deiner Anfrage setzt. Die API gibt Textblöcke zurück, sobald sie generiert werden. Dies verbessert die wahrgenommene Latenz bei langen Antworten. Jeder Block enthält einen Teil der Vervollständigung. Der letzte Block enthält Token-Nutzungsstatistiken. Streaming wird über Server-Sent Events (SSE) unterstützt. Nutze die Streaming-Helfer des SDKs, um Blöcke effizient zu verarbeiten. Dies ist nützlich für Chat-Oberflächen oder Echtzeitanwendungen. Beachte, dass Streaming dieselben Tokens verbraucht wie das Nicht-Streaming. Fehler können während des Streams auftreten, daher behandle Unterbrechungen entsprechend. Das unzensierte Modell unterstützt standardmäßig das Streaming. Diese Funktion ermöglicht es dir, Text inkremental anzuzeigen. Dies ist ein Standardfeature moderner LLM-APIs. Stelle sicher, dass dein Client-Code partielle Antworten korrekt verarbeitet.
Grenzwerte, Fehler und Kontext
Das Kontextfenster umfasst insgesamt 100.000 Token, einschließlich Prompt und Vervollständigung. Die maximale Ausgabe beträgt 32.000 Token pro Anfrage oder 2.048, wenn max_tokens nicht gesetzt ist. Die Ratenlimits liegen bei 300 Anfragen pro Minute und 8 parallelen Anfragen pro Schlüssel. Anfragekörper müssen unter 8 MB liegen. Häufige Fehler sind 401 für ungültige Schlüssel, 402 für kein Guthaben und 429 für Ratenlimits. Das Modell lehnt sexuelle Inhalte mit Minderjährigen ab. Es lehnt andere legale erwachsene, fiktive oder kontroverse Themen nicht ab. Die Preise sind transparent: $0,25 pro 1M Input-Token und $1,00 pro 1M Output-Token. Fehler sind kostenlos. Das Prepaid-Guthaben verfällt nie. Nutze diese Limits, um die Skalierung deiner Anwendung zu planen. Die API ist für die kostengünstige Textgenerierung in großem Umfang konzipiert.
cURL
curl https://api.apertus.cc/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.apertus.cc/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apertus.cc/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);Streaming
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)