URL base e autenticazione
L'API Unrestricted AI è ospitata su https://api.unrestrictedai.top/v1. Segue la struttura delle chat completion di OpenAI, il che significa che puoi utilizzare gli SDK OpenAI esistenti aggiornando semplicemente il base_url e fornendo la tua chiave API. Hai bisogno di una sola chiave attiva per account, che ti garantisce accesso immediato al modello senza censura. L'autenticazione viene gestita tramite l'intestazione Authorization utilizzando lo schema Bearer. Assicurati di mantenere la chiave al sicuro, poiché controlla l'utilizzo del tuo credito prepagato. A differenza dei servizi in abbonamento, paghi solo per i token elaborati, con errori e rifiuti fatturati a zero token.
La tua prima richiesta
Invia una richiesta standard di chat completion per testare la connettività. L'ID del modello è sempre uncensored. Questo endpoint accetta input testuali e restituisce output testuali, supportando fino a 100.000 token nella finestra di contesto. Se non specifichi max_tokens, l'API utilizza come default 2.048 token di output. Questa semplice richiesta POST dimostra la funzionalità principale: inviare un prompt e ricevere una risposta generata senza filtri sui contenuti per argomenti legali per adulti o controversi.
Integrazione SDK Python
Utilizzare la libreria Python ufficiale di OpenAI è il modo più veloce per integrare il servizio. Indicare al client il nostro URL base e passare la chiave. Il codice seguente mostra una richiesta sincronica di base. Questo approccio gestisce automaticamente l'analisi JSON, consentendo di accedere direttamente ai contenuti della risposta nelle variabili Python. È ideale per servizi backend o elaborazioni in batch dove la latenza dello streaming è meno critica della semplicità del codice.
Integrazione SDK Node.js
Per gli ambienti JavaScript, configura il client OpenAI Node.js per puntare al nostro endpoint. La natura asincrona di Node.js si abbina bene ai tempi di risposta dell'API. Imposta correttamente l'URL base e l'SDK gestirà la formattazione della richiesta. Ricorda che questa API non supporta endpoint per immagini, audio o embedding, quindi attieniti alle completazioni basate su testo. Questo metodo è adatto per server web o funzioni edge dove è necessario iniettare risposte LLM senza censura in contenuti dinamici.
Risposte in streaming
Abilita lo streaming impostando stream: true nella tua richiesta. L'API restituisce i dati tramite Server-Sent Events (SSE), consentendoti di ricevere i token in tempo reale. L'utilizzo dei token e le metriche di fatturazione sono inclusi nell'ultimo blocco dello stream. Questo riduce la latenza percepita per gli utenti finali, soprattutto per output lunghi. Si consiglia lo streaming per le interfacce chat dove il rendering immediato del testo migliora l'esperienza utente. Monitora l'ultimo blocco per i conteggi totali dei token per tracciare accuratamente il tuo credito prepagato.
Limiti, errori e contesto
Ogni chiave API è limitata a 300 richieste al minuto e 8 richieste parallele. Il corpo della richiesta non deve superare gli 8 MB. Gli errori comuni includono 401 per chiavi non valide, 402 quando il credito prepagato è esaurito e 429 per i limiti di richieste. La finestra di contesto supporta 100.000 token in totale, inclusi sia prompt che completamento. Se superi questi limiti, implementa un'attesa esponenziale. Il credito non scade mai e errori come le addebiti doppi sono gestiti tramite la pagina Supporto, garantendo che tu mantenga il valore del credito prepagato indefinitamente.
cURL
curl https://api.unrestrictedai.top/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
from openai import OpenAI
client = OpenAI(base_url="https://api.unrestrictedai.top/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.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.unrestrictedai.top/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
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)