nsfwllms.comDocumenti
LLM NSFW: Guida rapida all'API LLM senza censura
Inizia con la nostra API LLM senza censura in pochi minuti. Questa guida copre l'autenticazione, le chat completions, lo streaming e la chiamata di funzioni utilizzando client standard compatibili con OpenAI.
- per 1M token di input
- $0.25
- Token di output / 1M
- $1.00
- finestra di contesto del token
- 100,000
- credito di prova gratuito
- $0.50
- richieste al minuto
- 300
URL base e Autenticazione
La nostra API segue lo standard OpenAI, rendendo l'integrazione semplice. Utilizza l'URL base https://api.nsfwllms.com/v1 per tutte le richieste. L'autenticazione avviene tramite un token Bearer nell'intestazione Authorization. Puoi generare la tua chiave nella pagina Ottieni chiave API utilizzando solo email e password. Non è necessario un numero di telefono o una carta di credito per iniziare con il credito di prova gratuito.
Prima Richiesta
Invia una richiesta standard di chat completion per testare la connettività. L'identificatore del modello è uncensored. Questa richiesta dimostra il flusso base di testo in, testo out senza parametri speciali.
curl https://api.nsfwllms.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."}]
}'
Questo restituisce un oggetto di risposta standard contenente il testo generato. Se ricevi un 401, verifica la tua chiave API. Un 402 indica che il tuo saldo di credito prepagato è insufficiente.
Integrazione SDK Python
Utilizza il pacchetto Python ufficiale openai per interagire con l'endpoint. Imposta l'URL base per puntare ai nostri server e fornisci la tua chiave API. Questo ti permette di sfruttare i pattern SDK familiari per le tue applicazioni LLM senza censura.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwllms.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)
Il client gestisce automaticamente la serializzazione e la logica di ritentativo. Puoi passare model="uncensored" per assicurarti di raggiungere il modello abliterato corretto.
Utilizzo SDK Node.js
Per progetti JavaScript o TypeScript, inizializza il client OpenAI con l'URL base personalizzato. Questo approccio funziona con qualsiasi libreria client compatibile con OpenAI che supporti endpoint personalizzati.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwllms.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);
Assicurati di utilizzare una versione recente dell'SDK che supporti la configurazione di baseUrl. Questo garantisce la compatibilità con le funzionalità di streaming e tool calling.
Risposte in Streaming (SSE)
Abilita lo streaming impostando stream: true nella tua richiesta. L'API restituisce Server-Sent Events (SSE) che puoi elaborare in modo incrementale. Questo riduce la latenza percepita per le interfacce chat.
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)
Ogni chunk contiene delta di testo parziali. Concatena questi delta per ricostruire la risposta completa. Lo streaming funziona identicamente al protocollo standard OpenAI, quindi i parser di stream esistenti dovrebbero funzionare senza modifiche.
Limiti di Richiesta e Vincoli
Ogni chiave API è limitata a 300 richieste al minuto. La dimensione massima del corpo della richiesta è 8 MB. La finestra di contesto supporta fino a 100.000 token totali per prompt e completamento combinati. Se superi il limite di richieste, riceverai un errore 429. Puoi rigenerare la tua chiave API in qualsiasi momento, il che revoca immediatamente la chiave precedente.
Scheda tecnica dell'API
Tutti i limiti e le funzioni reali dell'API in un unico posto: controllali prima di ricaricare.
| Voce | Valore |
|---|---|
| Formato | compatibile OpenAI: qualsiasi SDK OpenAI funziona cambiando base URL e chiave |
| Autenticazione | Authorization: Bearer YOUR_KEY |
| ID modello | uncensored |
| Endpoint | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.nsfwllms.com/v1 |
| Parametri | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Finestra di contesto | 100.000 token (input + output) |
| Streaming | sì — server-sent events; l'ultimo blocco riporta l'uso dei token |
| Modalità JSON | response_format: {"type": "json_object"} |
| Output massimo | fino al resto della finestra di 100.000 token; max_tokens opzionale (nessun limite separato) |
| Function calling | sì — tools, tool_choice; risposte con tool_calls anche in streaming; risultati come role: tool |
| Header | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Concorrenza | 8 richieste contemporanee per chiave |
| Dimensione | fino a 8 MB per richiesta |
| Limite di frequenza | 300 richieste al minuto per chiave |
| Fatturazione | credito prepagato in base all'uso reale; errori e rifiuti gratuiti |
| Prova gratuita | $0,50 per 7 giorni, senza carta · Chiave di prova: 2 richieste parallele, 60 al minuto; limiti completi (8 e 300) dopo la prima ricarica |
| Scadenza | il credito pagato non scade, nessun abbonamento |
| Prezzo | $0,25 per 1M token in input · $1,00 per 1M in output |
| Ricarica | USDT (TRC20) o USDC (Base), qualsiasi importo intero da $10 a $500 |
| Bonus | +5% da $50, +10% da $100 |
| Contenuti | contenuti per adulti consentiti; rifiutati i contenuti sessuali con minori |
| Accesso | Google oppure e-mail e password |
| Chiavi | una chiave attiva per account; una nuova sostituisce la precedente |
Codici di errore
Gli errori arrivano in JSON con un type fisso; le richieste fallite o rifiutate non si pagano.
| Codice | Tipo | Significato |
|---|---|---|
400 | bad_request | JSON non valido, messaggi vuoti, parametro errato o contesto troppo lungo |
401 | missing_key · invalid_key · key_revoked | chiave mancante, errata o sostituita |
402 | no_credit | credito esaurito — ricarica e riparti subito |
403 | content_blocked | contenuti sessuali con minori — rifiutato, non addebitato |
404 | not_found | endpoint sconosciuto |
413 | request_too_large | corpo oltre 8 MB |
429 | rate_limited · concurrency | oltre 300/min o 8 in parallelo — attendi e riprova |
503 | upstream_busy | modello occupato — riprova tra pochi secondi |
Domande e risposte
Cosa succede se il mio credito prepagato si esaurisce?
Riceverai un errore 402 sulle richieste successive. Puoi ricaricare il tuo account a partire da $10 utilizzando criptovalute (USDT o USDC). Crediti bonus vengono aggiunti automaticamente ai livelli superiori.
Il modello senza censura è GPT-4?
No. L'ID del modello è <code>uncensored</code>. È un modello a pesi aperti ottimizzato per la generazione di testo senza restrizioni, in esecuzione sui nostri server GPU. Non è GPT, Claude o il modello di alcun altro fornitore.
Come gestisco gli errori di streaming?
Controlla il codice di stato HTTP del flusso di risposta. Se lo streaming termina prematuramente o restituisce un oggetto di errore, ispeziona il campo <code>error</code> per dettagli come i limiti di richieste o parametri non validi.