URL Base e Autenticazione
Utilizza l'URL base fornito e una chiave API valida per connettere il tuo client. L'endpoint è https://api.qwencodeapikey.com/v1. Devi includere la tua chiave nel Authorization header di ogni richiesta. Questo garantisce che il servizio identifichi correttamente il tuo account di credito prepagato.
curl https://api.qwencodeapikey.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Check my api key validity status"}]
}'
Puoi generare una chiave tramite Google o email nella pagina di registrazione. La chiave appare immediatamente. Tienila al sicuro, poiché controlla le tue spese.
Endpoint Chat Completions
Invia messaggi al /v1/chat/completions endpoint per ottenere risposte testuali. Questa è l'interfaccia standard per la maggior parte degli SDK OpenAI. Definisci il model come uncensored e fornisci un elenco di messaggi nell' messages array. L'API elabora il tuo input e restituisce un completamento generato.
from openai import OpenAI
client = OpenAI(base_url="https://api.qwencodeapikey.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)
Assicurati che la libreria client punti all'URL base corretto. L'ID del modello uncensored attiva il modello open-weight ottimizzato per ridurre i rifiuti. Gestisce i turni conversazionali esattamente come qualsiasi altra API chat.
Endpoint dei modelli
Query GET /v1/models a verificare i modelli disponibili e i loro dettagli. Questo endpoint restituisce un elenco di modelli accessibili alla tua chiave. Ti aiuta a confermare il uncensored modello è attivo e pronto per le richieste. Utilizza questo per il debug delle configurazioni del client prima di inviare payload completi.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.qwencodeapikey.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);
Verifica la struttura della risposta per assicurarti che il tuo SDK analizzi correttamente l'elenco dei modelli. Questo endpoint non consuma credito, rendendolo sicuro per i controlli di inizializzazione.
Parametri di richiesta e streaming
Supporta parametri standard come temperature, top_p, stop, e seed. Abilita lo streaming impostando stream: true. L'API invia i token tramite Server-Sent Events (SSE). Le statistiche sull'utilizzo dei token appaiono nell'ultimo chunk dello stream. Questo consente la visualizzazione in tempo reale del testo generato.
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)
Imposta max_tokens per controllare la lunghezza dell'output. Il valore predefinito è 2.048 token. Puoi aumentare questo valore fino a 16.000 token per richiesta. Regola i parametri per bilanciare creatività e precisione nelle tue risposte.
Limiti di frequenza e vincoli
Ogni chiave consente 300 richieste al minuto e 8 richieste concorrenti. La dimensione massima del corpo della richiesta è di 8 MB. Questi limiti prevengono gli abusi e garantiscono prestazioni stabili. Se superi il limite di frequenza, ricevi un errore 429. Regola la logica del client per gestire i ritentativi con backoff esponenziale.
La finestra di contesto supporta un totale di 100.000 token. Questo include sia prompt che completamento. Contesti grandi richiedono una gestione attenta dei token per rimanere entro i limiti.
Modalità JSON e chiamata di funzioni
Usa response_format: {"type": "json_object"} per output strutturato. Questo garantisce che il modello restituisca JSON valido, utile per l'integrazione programmatica. Il function calling funziona tramite il tools parametro. Definisci gli strumenti nel formato standard OpenAI. Il modello chiamerà le funzioni quando necessario.
Errori e rifiuti non consumano credito. Questo si applica anche se il modello rifiuta una richiesta a causa del limite rigido di contenuto. Paghi solo per l'utilizzo effettivo dei token. Il credito non scade mai, quindi puoi ricaricare quando è più conveniente.
Gestione degli errori e utilizzo
Gestisci gli errori HTTP in modo elegante. Un errore 401 indica una chiave API non valida o scaduta. Un errore 402 significa che il tuo credito prepagato è esaurito. Un errore 429 segnala il superamento del limite di frequenza. Controlla il corpo della risposta per messaggi di errore dettagliati.
L'utilizzo viene tracciato per chiave. Una chiave attiva per account semplifica la fatturazione. Se commetti un errore, come una doppia addebitazione, usa la pagina Supporto. Il credito non viene rimborsato ma rimane valido. Gli errori sono gratuiti, quindi le richieste fallite non prosciugano il tuo saldo.
Riepilogo e Best Practices
Inizia con l'URL di base e una chiave valida. Usa il uncensored ID del modello per meno rifiuti. Stream delle risposte per una migliore esperienza utente. Monitora i limiti di velocità per evitare interruzioni. Usa la modalità JSON per dati strutturati. Gestisci gli errori per mantenere l'affidabilità. Il credito è prepagato e non scade mai. Ricarica con crypto quando necessario. Questa API si integra perfettamente nei codebase OpenAI esistenti. Non sono richiesti nuovi SDK. Basta cambiare l'URL di base e la chiave.