Avvio rapido per sviluppatori: API senza censura
Integra il LLM senza censura nella tua applicazione utilizzando un endpoint compatibile con OpenAI. Questa guida copre l'autenticazione, la formattazione delle richieste, lo streaming e l'uso degli strumenti per l'API ospitata.
Base URL e Autenticazione
Inizia impostando il tuo base_url su https://api.abliteratedmodels.cc/v1. Autentica ogni richiesta includendo la tua chiave API nell'intestazione Authorization come token Bearer. Puoi generare una chiave immediatamente dopo la registrazione tramite Google o email nella pagina Ottieni chiave API. La chiave viene visualizzata una sola volta; conservala in modo sicuro nelle variabili di ambiente.
- Intestazione:
Authorization: Bearer YOUR_API_KEY - Non sono richiesti parametri di query aggiuntivi per l'autenticazione.
Assicurati che la tua libreria client supporti URL base personalizzati. Questo ti permette di sostituire l'endpoint OpenAI predefinito senza modificare la struttura del codice.
Prima Richiesta
Invia una richiesta POST a /v1/chat/completions con l'ID del modello uncensored. L'API accetta parametri standard di completamento chat. Il testo entra, il testo esce. Non ci sono endpoint per embedding o generazione di immagini.
- Modello:
uncensored - Endpoint:
POST /v1/chat/completions
Usa il seguente comando curl per verificare la connettività:
curl https://api.abliteratedmodels.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."}]
}'
Integrazione SDK Python
L'SDK Python ufficiale di OpenAI funziona direttamente con questa API. Inizializza il client con il base URL corretto e la tua chiave. Questo approccio astrae i dettagli HTTP mantenendo il controllo completo su parametri come temperature e top_p.
- Usa
OpenAI(base_url=..., api_key=...) - Chiama
client.chat.completions.create()
Ecco un esempio minimo per un'attività di coding llm:
from openai import OpenAI
client = OpenAI(base_url="https://api.abliteratedmodels.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)
Integrazione SDK Node
Per gli ambienti Node.js, usa il pacchetto npm openai. Configura il baseURL per puntare al nostro server. Questo metodo è ideale per servizi backend o funzioni serverless dove hai bisogno di accesso programmatico al modello senza censura.
- Installa il pacchetto
openai - Imposta
baseURLsuhttps://api.abliteratedmodels.cc/v1
Implementazione di esempio:
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.abliteratedmodels.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);
Risposte in Streaming (SSE)
Abilita lo streaming impostando stream: true nella tua richiesta. L'API restituisce Server-Sent Events (SSE). Le statistiche di utilizzo dei token sono incluse nell'ultimo chunk. Questo riduce la latenza percepita per gli utenti finali durante la generazione del contenuto.
- Imposta
stream: true - Analizza gli eventi SSE sul client o sul server
Snippet di codice per lo streaming:
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)
Limiti di Richiesta e Finestra di Contesto
Ogni chiave API consente 300 richieste al minuto e 8 richieste simultanee. Il corpo della richiesta non deve superare gli 8 MB. La finestra di contesto è di 100.000 token in totale. Non esiste un limite separato per l'output; se max_tokens non è impostato, la risposta può estendersi fino alla fine della finestra. Se superi il limite, le tue richieste verranno accodate o falliranno. Gestisci la concorrenza per rimanere entro la soglia di 8 richieste simultanee. Consulta la pagina dei prezzi per i dettagli sul credito.
Domande e risposte
Come gestisce il modello senza censura i rifiuti di contenuto?
Il modello è ottimizzato per rispondere senza rifiuti per uso adulto lecito, inclusi argomenti controversi o di finzione. Non applica gli stessi filtri aziendali di altri fornitori. Tuttavia, un limite rigido blocca i contenuti sessuali che coinvolgono minori, sempre rifiutati indipendentemente dal prompt.
Cosa succede se supero il mio credito prepagato?
Quando il tuo credito prepagato si esaurisce, le richieste successive falliranno. Puoi ricaricare utilizzando criptovalute (USDT TRC20, USDC Base) con importi tra $20 e $500. Il credito non scade mai, quindi puoi aggiungere fondi in qualsiasi momento senza costi di abbonamento.
Questa API supporta la chiamata di funzioni?
Sì, puoi usare i parametri tools e tool_choice per la chiamata di funzioni. Puoi anche forzare l'output JSON usando response_format: {"type": "json_object"}. Questo è utile per generare dati strutturati o integrare altri sistemi.
La tua chiave è a un modulo di distanza
Crea un account, copia la chiave, cambia il base URL. È tutta la configurazione.
Specifiche tecniche
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 |
| Base URL | https://api.abliteratedmodels.cc/v1 |
| Endpoint | POST /v1/chat/completions · GET /v1/models |
| Autenticazione | Authorization: Bearer YOUR_KEY |
| ID modello | uncensored |
| Modalità JSON | response_format: {"type": "json_object"} |
| Output massimo | fino al resto della finestra di 100.000 token; max_tokens opzionale (nessun limite separato) |
| Finestra di contesto | 100.000 token (input + output) |
| Parametri | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Function calling | sì — tools, tool_choice; risposte con tool_calls anche in streaming; risultati come role: tool |
| Streaming | sì — server-sent events; l'ultimo blocco riporta l'uso dei token |
| Dimensione | fino a 8 MB per richiesta |
| Limite di frequenza | 300 richieste al minuto per chiave |
| Concorrenza | 8 richieste contemporanee per chiave |
| Header | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| 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 |
| Ricarica | cripto: USDT su TRON o USDC su Base, $20–$500, qualsiasi importo intero |
| Prezzo | $0,15 per 1M token in input · $0,50 per 1M in output |
| Scadenza | il credito pagato non scade, nessun abbonamento |
| Bonus | +5% da $50, +10% da $100, +15% da $200 |
| Fatturazione | credito prepagato in base all'uso reale; errori e rifiuti gratuiti |
| Chiavi | una chiave attiva per account; una nuova sostituisce la precedente |
| Accesso | Google oppure e-mail e password |
| Contenuti | contenuti per adulti consentiti; rifiutati i contenuti sessuali con minori |
Codici di errore
Gli errori arrivano in JSON con un type fisso; le richieste fallite o rifiutate non si pagano.
| HTTP | 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 |