URL de base et authentification
Démarrez chaque requête en pointant votre SDK vers notre URL de base et en fournissant votre clé API dans l'en-tête d'autorisation.
Le point de terminaison est https://api.openrouterabliteratedmodels.com/v1. Vous vous authentifiez à l'aide d'un jeton Bearer généré sur le tableau de bord de votre compte. Cette clé est l'unique identifiant requis pour tous les appels suivants, garantissant que vos requêtes sont acheminées directement vers notre infrastructure de modèle sans censure sans couches de routage intermédiaires.
Première demande
Envoyez votre première complétion en publiant un message sur le point de terminaison des complétions de chat en utilisant votre client HTTP préféré.
L'identifiant du modèle est strictement uncensored. Vous pouvez envoyer des prompts textuels avec des paramètres standard tels que la température ou le top_p. L'API renvoie une réponse textuelle sans refus de contenu pour les sujets adultes licites, maintenant le comportement « ablitéré » que vous attendez des modèles à poids ouverts ajustés pour une sortie non restreinte.
curl https://api.openrouterabliteratedmodels.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Calculate the factorial of 5."}]
}'
SDK Python
Intégrez l'API dans vos projets Python en définissant l'URL de base et le nom du modèle dans la configuration de votre client OpenAI.
Cette approche vous permet de réutiliser le code existant qui attend un point de terminaison compatible OpenAI. Passez votre clé API via des variables d'environnement ou une initialisation directe. Le client gère automatiquement la sérialisation et l'analyse des erreurs, délivrant des tokens de texte brut ou du JSON structuré selon vos paramètres de format de réponse.
from openai import OpenAI
client = OpenAI(base_url="https://api.openrouterabliteratedmodels.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)
SDK Node
Connectez vos applications Node.js en configurant le package OpenAI pour pointer vers notre URL de base spécifique au lieu de celle par défaut.
Définissez le apiKey et baseURL propriétés avant d'effectuer tout appel. Cela garantit que vos appels de fonction, réponses en streaming et requêtes en mode JSON sont dirigés vers notre infrastructure non censurée. Vous pouvez continuer à utiliser des méthodes familières comme chat.completions.create avec une compatibilité totale.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openrouterabliteratedmodels.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);
Streaming avec SSE
Recevez une génération de texte en temps réel en activant le mode streaming, qui délivre les jetons dès qu'ils sont disponibles via Server-Sent Events.
Définissez le paramètre stream sur true dans votre requête. L'API renvoie une série de chunks, vous permettant de rendre le texte de manière incrémentale dans votre interface utilisateur. Les statistiques d'utilisation des jetons sont incluses dans le dernier chunk, afin que vous puissiez suivre la consommation avec précision sans attendre que toute la réponse soit générée.
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)
Mode JSON et appel de fonctions
Garantissez une sortie structurée ou activez l'utilisation d'outils en configurant le format de la requête et les définitions d'outils dans votre charge utile.
Utiliser response_format défini à json_object pour s'assurer que le modèle renvoie du JSON valide sans enveloppes markdown. Pour l'appel de fonction, définissez vos outils dans le corps de la requête et laissez le modèle décider quand les invoquer. Cela prend en charge des workflows complexes où le modèle uncensored doit renvoyer des données structurées pour le traitement en aval.