Authenticatie
Authenticatie is afhankelijk van een enkele API-sleutel die wordt doorgegeven in de Authorization-header. Deze sleutel wordt direct gegenereerd nadat je je hebt aangemeld met een e-mailadres en wachtwoord op de API-sleutel ophalen-pagina. Je kunt de sleutel op elk moment opnieuw genereren, waardoor de oude sleutel onmiddellijk ongeldig wordt. Voor de initiële proefversie is geen creditcard vereist en worden prompts niet gebruikt om je gegevens te trainen. Zorg ervoor dat je de sleutel veilig bewaart, omdat deze directe toegang geeft tot je prepaid tegoed.
Chat Completions Endpoint
Verstuur verzoeken naar de basis-URL https://api.nsfwllmrouter.com/v1 met behulp van het standaard POST /v1/chat/completions-endpoint. Dit is een tekstinterface; we ondersteunen geen embeddings, afbeeldingen, audio of video-generatie. Geef het model op als uncensored om zeker te weten dat je ons speciale open-weight model gebruikt dat is geoptimaliseerd voor volwassen inhoud. Het model draait op onze eigen GPU-servers en weigert geen wettelijke volwassen, fictieve of controversiële onderwerpen. Het is geen GPT, Claude of een model van een andere leverancier.
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."}]
}'
De verzoekbody mag niet groter zijn dan 8 MB. Je kunt systeem-, gebruiker- en assistentberichten definiëren zoals je dat zou doen met elke OpenAI-compatibele client. Het model retourneert tekstuitvoer direct in de responsstream.
Python SDK
Gebruik de officiële OpenAI Python-bibliotheek voor snelle integratie. Wijs de client naar onze basis-URL en geef je API-sleutel op. Deze aanpak werkt voor elke OpenAI-compatibele SDK, zodat je de basis-URL kunt wijzigen zonder je applicatielogica aan te passen. De model-ID uncensored zorgt ervoor dat je communiceert met onze specifieke ongecensureerde LLM.
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)
Onthoud dat dit een speciale ongecensureerde API is, dus je hoeft geen complexe routing te beheren of te kiezen tussen meerdere modellen. Het systeem verwerkt de inferentie op onze infrastructuur. Als je multi-model routing nodig hebt, moet je dat zelf bouwen, maar hier is de keuze vastgesteld aan ons enkele geoptimaliseerde model.
Node SDK
Initialiseer voor Node.js-omgevingen de OpenAI-client met de aangepaste basis-URL en je API-sleutel. Hiermee kun je standaard JavaScript/TypeScript-patronen gebruiken voor het bouwen van AI-applicaties. De client communiceert met onze endpoints precies zoals verwacht door de OpenAI-specificatie.
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);
Zorg ervoor dat je omgeving de vereiste fetch- of http-bibliotheken ondersteunt. Het responsobject bevat de standaard choices-array met de gegenereerde tekst. Deze methode is ideaal voor server-side rendering of API-backends waar je betrouwbare, ongefilterde tekstgeneratie nodig hebt.
Streaming Responses
Schakel streaming in door stream: true in je verzoek in te stellen. De API retourneert Server-Sent Events (SSE) met gedeeltelijke brokken van het antwoord. Dit is handig voor realtime-interfaces waar je tekst wilt weergeven terwijl deze wordt gegenereerd. Het model ondersteunt standaard streaming-protocollen, dus je kunt bestaande SSE-parsers gebruiken.
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)
Elke brok bevat de incrementele tekst. Aggregateer deze brokken in je applicatie om de volledige respons samen te stellen. Streaming heeft geen invloed op de tokenfacturatie; je wordt gefactureerd voor het totale aantal verwerkte input- en outputtokens. Deze functie wordt ondersteund op het chat/completions-endpoint.
Rate Limits and Constraints
Elke API-sleutel is beperkt tot 300 verzoeken per minuut. Als je dit overschrijdt, ontvang je een 429 rate limit-fout. De maximale grootte van de request body is 8 MB. Als je sleutel ongeldig is, krijg je een 401 fout. Als je geen prepaid tegoed hebt, ontvang je een 402 fout. Het contextvenster is 100.000 tokens, zowel voor de prompt als de completion. Er is geen SLA-garantie en wij bieden geen on-prem deployment of model routing. Gebruik deze ongecensureerde API voor applicaties die hoge volumes en ongefilterde output vereisen.