Documentazione API Character AI Senza Restrizioni
Distribuisci l'API LLM uncensored in minuti utilizzando gli SDK OpenAI standard. Ottieni la tua chiave, imposta l'URL base e invia testo senza filtri di contenuto.
URL Base e Autenticazione
La chiave API autentica le tue richieste. Utilizza Continue with Google o registrazione email per generarne una istantaneamente. Imposta l'URL di base su https://api.unrestrictedcharacterai.com/v1 nella configurazione del tuo client. Questo funziona con qualsiasi SDK compatibile con OpenAI.
curl https://api.unrestrictedcharacterai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Set the temperature to 0.7 for stable replies."}]
}'
Endpoint Chat Completions
Invia messaggi a POST /v1/chat/completions. L'ID del modello è uncensored. Risponde a temi adulti legali, fiction o controversi senza rifiuti. Testo in, testo out. Nessun servizio extra affolla la richiesta.
from openai import OpenAI
client = OpenAI(base_url="https://api.unrestrictedcharacterai.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)
Integrazione SDK Node
Utilizza l'SDK ufficiale Node per un'integrazione senza interruzioni. Passa l'URL di base e la chiave. Il client gestisce il livello HTTP. Ricevi risposte JSON strutturate. La gestione degli errori è standard. Controlla il codice di stato.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.unrestrictedcharacterai.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);
Risposte in streaming e SSE
Abilita lo streaming impostando stream: true. Ricevi Server-Sent Events (SSE). L'utilizzo dei token appare nell'ultimo chunk. Questo riduce la latenza percepita per gli output lunghi. Il modello genera testo token per token.
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)
Modalità JSON e chiamata di funzioni
Usa response_format: {"type": "json_object"} per JSON rigoroso. Il function calling supporta tools e tool_choice. Definisci gli schemi nei tuoi messaggi. Il modello aderisce alla struttura. Analizza l'output in modo programmatico.
Limiti ed Errori
Il limite di frequenza è di 300 richieste al minuto. La finestra di contesto è di 100.000 token. L'errore 401 indica una chiave non valida. L'errore 402 indica assenza di credito. L'errore 429 indica che il limite di frequenza è stato superato. La dimensione massima del corpo della richiesta è di 8 MB. Usa questi codici per il debug rapido.
Domande comuni
L'API character AI senza restrizioni è compatibile con OpenAI?
Sì. Utilizza gli stessi endpoint e SDK di OpenAI. Modifica l'URL base e la chiave API. Il tuo codice esistente funziona senza modifiche.
Qual è la dimensione della finestra di contesto?
La finestra di contesto è di 100.000 token. Include sia prompt che completamento. Puoi inviare documenti lunghi o cronologie di chat.
Come gestisco gli errori?
Usa i codici di stato HTTP standard. 401 indica un errore di autenticazione. 402 indica credito insufficiente. 429 indica il rate limiting. Controlla il corpo della risposta per i dettagli.
Ottieni la tua chiave ora
Iscriviti, copia il token e aggiorna l'endpoint. È tutto qui.