- Nsfwchat
- NSFW Chat: Quickstart: Integratie van de ongecensureerde LLM
NSFW Chat: Quickstart: Integratie van de ongecensureerde LLM
Integreer onze ongecensureerde LLM API met standaard OpenAI-compatible endpoints. Deze quickstart behandelt authenticatie, verzoekformaten en streaming voor het genereren van grote hoeveelheden tekst.
Basis-URL & Authenticatie
Gebruik de speciale basis-URL voor alle verzoeken. Authenticatie is gebaseerd op één API-sleutel die je tijdens het aanmaken krijgt. Voeg de sleutel toe aan de Authorization header als Bearer token. Je sleutel wordt direct na het aanmaken weergegeven. Elke account heeft één actieve sleutel; het genereren van een nieuwe vervangt de oude.
De basis-URL is: https://api.nsfwchat.cc/v1. Er zijn geen extra routing- of proxylagen nodig. Deze setup werkt met elke OpenAI-compatible client door de basis-URL en API-sleutel aan te passen.
Chat Completions
Stuur tekstprompts naar het POST /v1/chat/completions endpoint. De model-ID is uncensored. Dit endpoint accepteert standaard chatberichten en retourneert gegenereerde tekst. Het ondersteunt geen embeddings, afbeeldingen of audio. Het model is afgestemd op ongecensureerde antwoorden op wettelijke volwassen inhoud.
Zorg ervoor dat je payload de model-ID en berichtgeschiedenis bevat. De API verwerkt tekstinput en retourneert direct tekstoutput.
curl https://api.nsfwchat.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 SDK
Gebruik de officiële OpenAI Python SDK voor integratie. Stel de base_url in op ons API endpoint en geef je API-sleutel op. De SDK verwerkt serialisatie en foutparsen automatisch. Configureer parameters zoals temperature en top_p om de willekeurigheid van de output te bepalen.
Initialiseer de client met je sleutel en basis-URL. Roep chat.completions.create() aan met de model-ID en berichten. Deze aanpak vermindert boilerplate code voor eenvoudige tekstgeneratietaken.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwchat.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 SDK
De Node.js OpenAI SDK werkt identiek aan de Python-versie. Configureer de client met de aangepaste basis-URL en je API-sleutel. Gebruik de chat.completions.create methode om verzoeken te versturen.
Deze methode is ideaal voor server-side integraties. De SDK beheert connection pooling en retries. Stel het model in op uncensored om ongecensureerde antwoorden te garanderen. Geef berichten door als een array van role en content objecten.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwchat.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 Responses
Schakel streaming in door stream: true in je verzoek in te stellen. De API retourneert Server-Sent Events (SSE). Elke chunk bevat gedeeltelijke tekst. Gegevens over tokengebruik verschijnen in de laatste chunk.
Streaming vermindert de waargenomen latentie voor lange outputs. Verwerk elke chunk sequentieel om de volledige respons te reconstrueren. Deze methode is essentieel voor real-time UI-updates. Afhandelen van fouten binnen de stream events zorgt voor verbindingstabiliteit.
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)
Rate Limits & Fouten
Houd je aan de rate limits om serviceonderbreking te voorkomen. De API staat 300 verzoeken per minuut en 8 gelijktijdige verzoeken per sleutel toe. De maximale grootte van de request body is 8 MB. Een 401 status geeft een ongeldige of ontbrekende API-sleutel aan. Een 429 status geeft aan dat je de rate limit hebt overschreden.
Het contextvenster is 100.000 tokens voor prompt en completion samen. Als je deze limiet overschrijdt, wordt het verzoek afgewezen. Er is geen truncatie; zorg dat je input binnen het venster past. Een 402 status geeft onvoldoende prepaid tegoed aan. Fouten en refusals verbruiken geen tegoed.
Technische specificaties
Alle echte limieten en functies van de API op één plek — controleer ze voordat je opwaardeert.
| Onderdeel | Waarde |
|---|---|
| API-formaat | OpenAI-compatibel: elke OpenAI-SDK werkt — vervang alleen base URL en sleutel |
| Model-ID | uncensored |
| Authenticatie | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.nsfwchat.cc/v1 |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| JSON-modus | response_format: {"type": "json_object"} |
| Contextvenster | 100.000 tokens (invoer + uitvoer) |
| Streaming | ja — server-sent events; het laatste deel bevat het tokenverbruik |
| Parameters | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Function calling | ja — tools, tool_choice; antwoorden bevatten tool_calls, ook bij streaming; resultaten als role: tool |
| Max. uitvoer | tot de rest van het venster van 100.000 tokens; max_tokens optioneel (geen aparte limiet) |
| Verzoekgrootte | tot 8 MB |
| Responsheaders | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Gelijktijdige verzoeken | tot 8 tegelijk per sleutel |
| Rate limit | 300 verzoeken per minuut per sleutel |
| Geldigheid | betaald tegoed verloopt niet, geen abonnement |
| Afrekening | prepaid tegoed op basis van echt verbruik; fouten en weigeringen zijn gratis |
| Opwaarderen | USDT (TRC20) of USDC (Base), elk heel bedrag van $10 tot $500 |
| Gratis proeftegoed | $0,50 voor 7 dagen, zonder kaart · Proefsleutel: 2 parallelle verzoeken, 60 per minuut; volledige limieten (8 en 300) na eerste opwaardering |
| Bonus | +5% vanaf $50, +10% vanaf $100 |
| Prijs | $0,25 per 1 mln invoertokens · $1,00 per 1 mln uitvoertokens |
| Sleutels | één actieve sleutel per account; een nieuwe vervangt de oude |
| Inloggen | Google of e-mail en wachtwoord |
| Inhoud | inhoud voor volwassenen toegestaan; seksuele inhoud met minderjarigen wordt geweigerd |
Foutcodes
Fouten komen als JSON met een vaste type; mislukte of geweigerde verzoeken kosten niets.
| Code | Type | Betekenis |
|---|---|---|
400 | bad_request | ongeldige JSON, lege berichten, verkeerde parameter of context te lang |
401 | missing_key · invalid_key · key_revoked | sleutel ontbreekt, is onjuist of is vervangen |
402 | no_credit | geen tegoed — waardeer op en ga direct verder |
403 | content_blocked | seksuele inhoud met minderjarigen — geweigerd, niet gerekend |
404 | not_found | onbekend endpoint |
413 | request_too_large | body groter dan 8 MB |
429 | rate_limited · concurrency | meer dan 300/min of 8 tegelijk — wacht en probeer opnieuw |
503 | upstream_busy | model bezet — probeer het over enkele seconden opnieuw |
Vragen en antwoorden
Ondersteunt de API function calling?
Ja, de API ondersteunt function calling via de parameters <code>tools</code> en <code>tool_choice</code>. Je kunt tools definiëren in je verzoek en het model retourneert gestructureerde JSON voor het gebruik van tools. Deze functie werkt met standaard OpenAI-compatible clients.
Wat is de grootte van het contextvenster?
Het contextvenster is 100.000 tokens, inclusief zowel de prompt als de completion. De maximale output per verzoek is 32.000 tokens, of 2.048 als <code>max_tokens</code> niet is ingesteld. Verzoeken die dit venster overschrijden, worden afgewezen.
Hoe worden fouten afgehandeld?
Foutresponsen bevatten een statuscode en een bericht. Een <code>401</code> code betekent dat de API-sleutel ongeldig is. Een <code>429</code> code betekent dat je de rate limit hebt bereikt. Een <code>402</code> code geeft aan dat er onvoldoende prepaid tegoed is. Fouten verbruiken geen token tegoed.
Je sleutel is nog maar één formulier verwijderd
Maak een account aan, kopieer de sleutel, pas de basis-URL aan. Dat is de hele setup.