Authentifizierung
Die Authentifizierung basiert auf einem einzelnen API-Schlüssel, der im Authorization-Header übergeben wird. Dieser Schlüssel wird sofort nach der Anmeldung mit E-Mail und Passwort auf der Seite API-Schlüssel erhalten generiert. Du kannst den Schlüssel jederzeit neu generieren, wodurch der alte sofort ungültig wird. Für die initiale Testphase wird keine Kreditkarte benötigt, und Prompts werden nicht zum Training deiner Daten verwendet. Speichere deinen Schlüssel sicher, da er direkten Zugriff auf dein Prepaid-Guthaben gewährt.
Chat Completions Endpunkt
Sende Anfragen an die Basis-URL https://api.nsfwllmrouter.com/v1 über den standard POST /v1/chat/completions Endpunkt. Dies ist eine Text-only-Schnittstelle; wir unterstützen keine Embeddings, Bilder, Audio- oder Video-Generierung. Gib das Modell als uncensored an, um sicherzustellen, dass du unser dediziertes Open-Weight-Modell nutzt, das für erwachsene Inhalte optimiert ist. Das Modell läuft auf unseren eigenen GPU-Servern und lehnt legale, fiktionale oder kontroverse Themen nicht ab. Es ist kein GPT, Claude oder ein Modell eines anderen Anbieters.
curl https://api.nsfwllmrouter.com/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."}]
}'
Der Anforderungstext darf 8 MB nicht überschreiten. Du kannst System-, Benutzer- und Assistenten-Nachrichten definieren, genau wie bei jedem OpenAI-kompatiblen Client. Das Modell gibt die Textausgabe direkt im Antwort-Streaming zurück.
Python SDK
Nutze die offizielle OpenAI Python-Bibliothek für eine schnelle Integration. Richte den Client auf unsere Basis-URL ein und gib deinen API-Schlüssel an. Dieser Ansatz funktioniert mit jedem OpenAI-kompatiblen SDK, sodass du die Basis-URL austauschen kannst, ohne deine Anwendungslogik zu ändern. Die Modell-ID uncensored stellt sicher, dass du mit unserem spezifischen unzensierten LLM interagierst.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwllmrouter.com/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)
Denke daran, dass dies eine dedizierte unzensierte API ist, sodass du kein komplexes Routing verwalten oder zwischen mehreren Modellen wählen musst. Das System übernimmt die Inferenz auf unserer Infrastruktur. Wenn du Multi-Modell-Routing benötigst, musst du dies selbst aufbauen, aber hier ist die Wahl auf unser einzelnes optimiertes Modell festgelegt.
Node SDK
Initialisiere in Node.js-Umgebungen den OpenAI-Client mit der benutzerdefinierten Basis-URL und deinem API-Schlüssel. Dies ermöglicht dir, Standard-JavaScript/TypeScript-Muster zum Erstellen von KI-Anwendungen zu nutzen. Der Client kommuniziert mit unseren Endpunkten genau nach der OpenAI-Spezifikation.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwllmrouter.com/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);
Stelle sicher, dass deine Umgebung die erforderlichen fetch- oder http-Bibliotheken unterstützt. Das Antwortobjekt enthält das Standard-choices-Array mit dem generierten Text. Diese Methode ist ideal für Server-Side-Rendering oder API-Backends, in denen du zuverlässige, unfilterierte Textgenerierung benötigst.
Streaming-Antworten
Aktiviere das Streaming, indem du stream: true in deiner Anfrage setzt. Die API sendet Server-Sent Events (SSE), die teilweise Antwortblöcke enthalten. Das ist nützlich für Echtzeit-Schnittstellen, bei denen du Text sofort anzeigen möchtest, während er generiert wird. Das Modell unterstützt Standard-Streaming-Protokolle, sodass du bestehende SSE-Parser verwenden kannst.
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)
Jeder Block enthält den inkrementalen Text. Sammle diese Blöcke in deiner Anwendung, um die vollständige Antwort zusammenzusetzen. Das Streaming hat keinen Einfluss auf die Token-Abrechnung; du wirst für die gesamte verarbeitete Anzahl an Input- und Output-Token abgerechnet. Diese Funktion wird auf dem chat/completions Endpunkt unterstützt.
Ratenlimits und Einschränkungen
Jeder API-Schlüssel ist auf 300 Anfragen pro Minute begrenzt. Überschreitest du diesen Wert, erhältst du einen 429 Ratenlimit-Fehler. Die maximale Größe des Anfragekörpers beträgt 8 MB. Wenn dein Schlüssel ungültig ist, erhältst du einen 401 Fehler. Hast du kein Prepaid-Guthaben, erhältst du einen 402 Fehler. Das Kontextfenster umfasst 100.000 Token, sowohl für den Prompt als auch für die Vervollständigung. Es gibt keine SLA-Garantie, und wir bieten keine On-Premise-Bereitstellung oder Modell-Routing. Nutze diese unzensierte API für Anwendungen, die hohes Volumen und unzensierte Ausgaben erfordern.