Waarom een Uncensored.chat API gebruiken?
Standaard LLM-API's passen vaak rigide inhoudsfilters toe die wettelijke volwassen inhoud, creatieve fictie of controversiële onderwerpen weigeren. Een ongecensureerd chat-api verwijdert deze veiligheidsmuren, waardoor het model op prompts kan reageren op basis van relevantie in plaats van beleidsconformiteit. Dit is cruciaal voor applicaties die de ruwe modelcapaciteit nodig hebben zonder kunstmatige beperkingen.
Onze API serveert één open-weight model dat specifiek is afgestemd op dit gedrag. Het routeert niet tussen leveranciers en biedt geen keuze uit meerdere modellen. Je krijgt consistente, voorspelbare uitvoeren van één afgestemde engine. Dit vereenvoudigt debugging en prestatietuning omdat je niet te maken hebt met variabele modelpersoonlijkheden of verborgen filterlagen.
In tegenstelling tot algemene aanbieders bundelen we geen embeddings, image generation of audio processing. Dit houdt de API lichtgewicht en snel. Als je applicatie multi-modal capabilities vereist, moet je deze apart integreren en deze API uitsluitend gebruiken voor tekstgeneratie. De focus ligt hier puur op ongecensureerde tekstuitvoer met een contextvenster van 100.000 tokens.
Je omgeving instellen
Integratie begint met het configureren van je ontwikkelomgeving om te verwijzen naar onze basis-URL. Dit is een standaard OpenAI-compatible endpoint, dus je kunt elke officiële OpenAI SDK of compatibele clientbibliotheek gebruiken. Je hoeft alleen de basis-URL aan te passen en een API-sleutel te verstrekken.
De basis-URL is https://api.nofilteraichat.com/v1. De model-ID die je in je verzoeken moet versturen, is uncensored. Dit model draait op onze eigen servers en is geen GPT, Claude of een model van een andere leverancier. Het is een open-weight model dat is afgestemd op ongecensureerde antwoorden.
Zorg dat je omgeving streaming ondersteunt via Server-Sent Events (SSE) als je realtime-uitvoer wilt gebruiken. De API ondersteunt standaardparameters zoals temperature, top_p, stop en seed. Je kunt ook JSON-modus inschakelen door response_format in te stellen op {"type": "json_object"}.
Contextvenster: 100.000 tokens totaal (prompt + completion). Er is geen aparte limiet voor de uitvoer en als max_tokens niet is ingesteld, kan de respons tot het einde van het venster lopen.
Authenticatie met API-sleutels
Authenticatie wordt afgehandeld via een API-sleutel die wordt doorgegeven in de Authorization header. Je kunt je aanmelden met Continue with Google of een e-mail en wachtwoord op de Get API key pagina. Er is geen telefoonnummer nodig.
Wanneer je een account aanmaakt, ontvang je één actieve API-sleutel. Deze sleutel wordt direct bij het aanmaken getoond. Als je een nieuwe sleutel genereert, wordt de oude vervangen; we ondersteunen geen meerdere gelijktijdige sleutels per account. Dit vereenvoudigt het sleutelbeheer, maar betekent dat je geen aparte sleutels voor verschillende omgevingen op hetzelfde account kunt hebben.
De sleutel wordt gebruikt om verzoeken te autoriseren naar het /v1/chat/completions endpoint. Fouten en refusals (met uitzondering van de harde limiet voor minderjarige seksuele inhoud) verbruiken je prepaid tegoed niet. Tegoed wordt alleen gefactureerd voor daadwerkelijk token-gebruik.
Privacy: Prompts worden niet gebruikt voor training. Een account vereist alleen een e-mailadres.
Je eerste verzoek doen
Je eerste verzoek moet een eenvoudige chatvoltooiing zijn om de verbinding te verifiëren. Gebruik het POST /v1/chat/completions endpoint met de model-ID uncensored.
Hier is een voorbeeld van een basisverzoek:
curl https://api.nofilteraichat.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."}]
}'Dit verzoek stuurt een prompt en ontvangt een tekstantwoord. Het model zal antwoorden zonder te filteren op wettelijke volwassen inhoud. Als je een specifieke toon of indeling wilt afdwingen, gebruik dan het system bericht om instructies in te stellen.
Onthoud dat de API een limiet heeft van 300 verzoeken per minuut per sleutel en 8 gelijktijdige verzoeken toestaat. Als je deze limieten overschrijdt, ontvang je een rate limit-fout. De grootte van de request body is beperkt tot 8 MB. Zorg dat je client deze limieten op een beheersbare manier afhandelt door exponentiële backoff te implementeren voor herhaalde pogingen.
Streaming-responsen implementeren
Streaming wordt ondersteund via Server-Sent Events (SSE). Hiermee kun je tokens ontvangen zodra ze worden gegenereerd, wat een betere gebruikerservaring biedt voor lange responsen. Elke chunk bevat een gedeeltelijke delta van de respons.
Belangrijk: Statistieken over token-gebruik (invoer- en uitvoertokens) worden alleen opgenomen in de laatste chunk van de stream. Je moet de deltas aggregeren en vervolgens de laatste chunk verwerken om accurate gebruiksgegevens voor facturatie te krijgen.
Hier is een voorbeeld van hoe je streaming in je code kunt afhandelen:
from openai import OpenAI
client = OpenAI(base_url="https://api.nofilteraichat.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)Deze aanpak zorgt ervoor dat je tekst in realtime kunt weergeven terwijl je token-verbruik nog steeds nauwkeurig bijhoudt. Als er een fout optreedt tijdens streaming, kan de stream voortijdig eindigen. Controleer de laatste chunk of foutstatus voor details.
Function calling gebruiken
Function calling wordt ondersteund via de parameters tools en tool_choice. Dit stelt het model in staat gestructureerde gegevens te genereren die je applicatie kan uitvoeren. Definieer je functies in de tools array, en het model retourneert een tool_calls veld in de response wanneer dit gepast is.
Stel tool_choice in op "auto" om het model te laten beslissen wanneer het een functie moet aanroepen, of geef een specifieke functie-ID op om een aanroep af te dwingen. Het model retourneert de functienaam en argumenten in JSON-formaat.
Voorbeeldstructuur:
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nofilteraichat.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 dat je client de tool_calls array parseert en de functies uitvoert. Het model voert de functies niet zelf uit; het genereert alleen de aanroepinstructies. Dit is een standaard OpenAI-compatible patroon, dus elke bibliotheek die function calling met OpenAI ondersteunt, zou hier moeten werken.
JSON-modus afhandelen
JSON-modus zorgt ervoor dat het model strikt geldige JSON uitvoert. Dit is nuttig voor applicaties die gestructureerde gegevens nodig hebben, zoals API-responsen of configuratiebestanden. Stel response_format in op {"type": "json_object"} in je verzoek.
Wanneer JSON-modus is ingeschakeld, zal het model proberen een enkel geldig JSON-object te genereren. Als de output ongeldig is, kan de API een fout of een malformed response retourneren. Valideer de JSON altijd aan de clientkant.
Voorbeeld:
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)Deze modus is bijzonder nuttig voor het bouwen van agents of applicaties die deterministische uitvoerformaten vereisen. Het vermindert de behoefte aan post-processing om gestructureerde gegevens uit vrije tekst te extraheren. Houd er rekening mee dat JSON-modus de latentie licht kan verhogen door de extra beperking op de uitvoer van het model.
Rate limits en fouten beheren
Rate limits worden afgedwongen met 300 verzoeken per minuut per sleutel en 8 gelijktijdige verzoeken per sleutel. De grootte van de request body is beperkt tot 8 MB. Als je deze limieten overschrijdt, ontvang je een 429-statuscode. Implementeer exponentiële backoff in je client om herhaalde pogingen af te handelen.
Fouten zoals ongeldige parameters of serverproblemen verbruiken geen tegoed. Weigeringen voor wettelijk volwassen inhoud verbruiken ook geen tegoed. De enige harde limiet die altijd van toepassing is, is de weigering van seksuele inhoud met minderjarigen, die tokens verbruikt als het verzoek wordt verwerkt.
Prijzen zijn transparant: $0,15 per 1M input tokens en $0,50 per 1M output tokens. Tegoed is prepaid en vervalt nooit. Fouten zijn gratis, dus je kunt experimenteren zonder je zorgen te maken over kosten. Als je een billing issue tegenkomt, gebruik dan de Support pagina voor hulp.
