FR ▾
Obtenir une clé API

Guide de démarrage pour les utilisateurs de Qwen

Connectez votre client compatible OpenAI existant à notre endpoint sans censure. Modifiez l'URL de base, injectez votre clé et commencez à envoyer des requêtes.

uncensoredhttps://api.qwenapi.cc/v1

Sur cette page
  1. Authentification et URL de base
  2. Première requête
  3. Intégration du SDK Python
  4. Intégration du SDK Node.js
  5. Réponses en streaming
  6. Limites, erreurs et contexte
  7. Questions et réponses
qwenapi.cc/docs/#text

Authentification et URL de base

Notre API utilise l'authentification standard par token Bearer. Vous recevez votre clé immédiatement après vous être connecté via Google ou e-mail. Conservez cette clé en sécurité ; elle donne accès à votre crédit prépayé. L'URL de base pour toutes les requêtes est https://api.qwenapi.cc/v1. Mettez à jour la configuration de votre client pour pointer vers cet endpoint au lieu de l'URL OpenAI par défaut.

L'authentification est gérée en passant l'en-tête Authorization avec chaque requête. Sans clé API, le modèle ne peut pas vérifier le solde de votre compte, ce qui entraîne une erreur 401. Aucun en-tête caché ni schéma d'authentification personnalisé n'est requis.

Première requête

Envoyez une requête standard de complétion de chat pour tester la connectivité. Remplacez YOUR_API_KEY par votre clé réelle. L'endpoint accepte des charges utiles JSON standard avec les champs model, messages et content.

  • Identifiant du modèle : uncensored
  • Endpoint : POST /v1/chat/completions
  • Format : JSON

Cette requête consommera des tokens d'entrée de votre solde. Assurez-vous que votre client gère correctement la réponse JSON pour vérifier que la connexion fonctionne.

Intégration du SDK Python

Utilisez la bibliothèque Python officielle OpenAI. Elle nécessite une configuration minimale pour acheminer le trafic vers notre endpoint. Initialisez le client avec votre clé et la bonne URL de base. Cette approche exploite les bases de code existantes sans réécrire la logique des requêtes.

Transmettez l'identifiant du modèle uncensored lors de la création de la réponse. La bibliothèque gère automatiquement la sérialisation et la désérialisation. Cette méthode est recommandée pour la plupart des intégrations backend et des workflows basés sur des scripts.

Intégration du SDK Node.js

Pour les environnements JavaScript ou TypeScript, utilisez le package @anthropic-ai/sdk ou le package standard OpenAI Node. Configurez l'URL de base pour pointer vers notre API. Cela vous permet d'intégrer notre service dans les applications Node existantes sans refonte majeure.

Assurez-vous d'utiliser une version récente du SDK qui prend en charge les URL de base personnalisées. Transmettez l'identifiant du modèle uncensored pour sélectionner notre modèle sans censure. Cette configuration fonctionne parfaitement avec les routes Express ou les fonctions serverless.

Réponses en streaming

Activez le streaming en définissant stream: true dans votre requête. L'API renvoie des Server-Sent Events (SSE) lorsque le modèle génère du texte. Cela offre une latence plus faible pour les utilisateurs finaux et permet l'affichage en temps réel de la sortie.

Les statistiques d'utilisation des tokens sont incluses dans le dernier fragment du flux. Traitez chaque delta de manière incrémentale pour construire la réponse complète. Cette fonctionnalité est essentielle pour les interfaces de chat et les applications nécessitant une rétroaction immédiate.

Limites, erreurs et contexte

Respectez les limites de débit pour éviter les perturbations du service. L'API autorise 300 requêtes par minute et 8 requêtes simultanées par clé. La taille maximale du corps de la requête est de 8 Mo. Si vous dépassez ces limites, vous recevrez une erreur 429.

Les erreurs d'authentification renvoient 401, indiquant une clé invalide ou manquante. Les erreurs de solde renvoient 402, signifiant que votre crédit prépayé est épuisé. La fenêtre de contexte prend en charge 100 000 tokens au total, avec une sortie maximale de 32 000 tokens par requête. Les erreurs et les refus ne consomment pas de crédits.

cURL

curl https://api.qwenapi.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."}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.qwenapi.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)

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.qwenapi.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);

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)
qwenapi.cc/docs/#s1

Questions et réponses

Comment gérer les limites de débit ?

L'API impose une limite de 300 requêtes par minute et 8 requêtes simultanées par clé. Si vous dépassez ces limites, l'API renvoie un code d'état 429. Implémentez une stratégie de backoff exponentielle dans votre client pour gérer les tentatives de manière fluide.

L'API prend-elle en charge l'appel de fonctions ?

Oui, l'API prend en charge l'appel de fonctions via le format standard des outils. Vous pouvez spécifier les outils et tool_choice dans votre requête pour activer la sortie structurée ou l'intégration d'outils externes. Cette fonctionnalité fonctionne avec le schéma standard compatible OpenAI.

Que se passe-t-il si je dépasse ma fenêtre de contexte ?

Le modèle prend en charge une fenêtre de contexte totale de 100 000 tokens, incluant à la fois le prompt et la complétion. Si vous dépassez cette limite, la requête échouera. Assurez-vous que votre application suit l'utilisation des tokens pour rester dans ces limites.

Votre clé est à un formulaire de vous

Créez un compte, copiez la clé, modifiez l'URL de base. C'est toute la configuration.

Obtenir une clé API

Fiche technique de l'API

Toutes les limites et fonctions réelles de l'API au même endroit — vérifiez-les avant de recharger.

ÉlémentValeur
Formatcompatible OpenAI : tout SDK OpenAI fonctionne en changeant la base URL et la clé
ID du modèleuncensored
Base URLhttps://api.qwenapi.cc/v1
EndpointsPOST /v1/chat/completions · GET /v1/models
AuthentificationAuthorization: Bearer YOUR_KEY
Sortie max.jusqu'au reste de la fenêtre de 100 000 tokens ; max_tokens optionnel (pas de plafond distinct)
Appel de fonctionsoui — tools, tool_choice ; réponse avec tool_calls, aussi en streaming ; résultats en role: tool
Streamingoui — server-sent events ; le dernier bloc contient l'usage des tokens
Fenêtre de contexte100 000 tokens (entrée + sortie)
Paramètrestemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Mode JSONresponse_format: {"type": "json_object"}
Concurrence8 requêtes simultanées par clé
En-têtesX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Limite de débit300 requêtes par minute et par clé
Taillejusqu'à 8 Mo par requête
Essai gratuit0,50 $ pendant 7 jours, sans carte · Clé d'essai : 2 requêtes parallèles, 60 par minute ; limites complètes (8 et 300) après la 1re recharge
Facturationcrédit prépayé selon l'usage réel ; erreurs et refus gratuits
Prix0,25 $ par million de tokens en entrée · 1,00 $ par million en sortie
Bonus+5 % dès 50 $, +10 % dès 100 $
Validitéle crédit payé n'expire jamais, sans abonnement
RechargeUSDT (TRC20) ou USDC (Base), tout montant entier de 10 $ à 500 $
Contenucontenu adulte autorisé ; tout contenu sexuel impliquant des mineurs est refusé
ConnexionGoogle ou e-mail et mot de passe
Clésune clé active par compte ; une nouvelle remplace l'ancienne

Codes d'erreur

Les erreurs arrivent en JSON avec un type stable ; les requêtes échouées ou refusées ne sont pas facturées.

CodeTypeSignification
400bad_requestJSON invalide, messages vides, mauvais paramètre ou contexte trop long
401missing_key · invalid_key · key_revokedclé absente, erronée ou remplacée
402no_creditplus de crédit — rechargez, la reprise est immédiate
403content_blockedcontenu sexuel impliquant des mineurs — refusé, non facturé
404not_foundendpoint inconnu
413request_too_largecorps supérieur à 8 Mo
429rate_limited · concurrencyau-delà de 300/min ou 8 en parallèle — patientez
503upstream_busymodèle occupé — réessayez dans quelques secondes