Avvio rapido API: Connetti il tuo client al nostro modello uncensored
Questa guida rapida mostra come puntare un client compatibile con OpenAI al nostro modello di testo uncensored. Hai bisogno di un solo URL base, di un solo model id e della tua chiave.
Autenticazione e Base URL
Ogni richiesta viene inviata a https://doesgrokhaveanapi.com/v1 e trasporta la tua chiave nel Authorization header come token bearer. Copia la chiave dalla pagina Ottieni chiave API; viene mostrata una volta effettuato l'accesso e puoi sostituirla in qualsiasi momento.
Breve e diretto: l'URL di base e la chiave sono gli unici due valori che cambiano quando sposti un client esistente.
curl https://api.doesgrokhaveanapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the current API endpoint for the model?"}]
}'
L'endpoint Chat Completions
Invia POST /v1/chat/completions con un elenco di messaggi. La risposta ha la stessa struttura della risposta delle chat completions di OpenAI, quindi i parser esistenti continuano a funzionare.
- Usa il ruolo
userper il tuo prompt esystemper le istruzioni. - Leggi la risposta da
choices[0].message.content. - I conteggi dei token vengono restituiti in
usage, ed è per questo che il tuo credito viene addebitato.
from openai import OpenAI
client = OpenAI(base_url="https://api.doesgrokhaveanapi.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)
Modello supportato: 'uncensored'
Imposta il campo model a uncensored. Questo è l'unico model id disponibile sul servizio, quindi non c'è nulla da scegliere. GET /v1/models lo restituisce, che è un modo rapido per confermare che la chiave funziona.
Il modello è un modello open-weight che gira sui nostri server. Non rifiuta richieste legali per adulti, di finzione o controverse. L'unico limite rigido riguarda i contenuti sessuali che coinvolgono minori.
Streaming e Function Calling
Aggiungi stream: true per ricevere token come eventi server-sent. L'ultimo chunk trasporta i numeri di utilizzo, così puoi registrare il costo per richiesta senza una seconda chiamata.
Il function calling funziona attraverso lo standard tools e tool_choice campi. Definisci ogni funzione con uno schema JSON e leggi il tool_calls array della risposta.
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)
Parametri: Temperatura, Top P e Stop
I parametri di campionamento supportati sono temperature, top_p, stop, seed, presence_penalty e frequency_penalty. Usa una temperatura bassa per il codice e l'estrazione, e una più alta per la narrativa.
Se non imposti max_tokens, il limite predefinito di output è di 2.048 token. Il massimo assoluto per richiesta è di 16.000 token.
Modalità JSON e formati di risposta
Imposta response_format a { 'type': 'json_object' } quando hai bisogno di un output leggibile dalla macchina. Chiedi il JSON nel prompt, perché il modello segue l'istruzione e il formato insieme.
- Descrivi i campi di cui hai bisogno nel messaggio di sistema.
- Mantieni l'esempio breve, due o tre chiavi.
- Convalida il risultato nel tuo codice prima di archiviarlo.
Limiti di frequenza e gestione degli errori
Ogni chiave può inviare 300 richieste al minuto e 8 richieste simultaneamente. Le richieste con un corpo superiore a 8 MB vengono rifiutate. Un 401 indica che la chiave è errata, un 402 significa che il credito è esaurito e un 429 indica che hai raggiunto il limite di velocità: attendi e riprova con backoff.
Errori e rifiuti non vengono addebitati. Tieni presente la finestra di contesto di 100.000 token per le conversazioni lunghe: prompt e completamento contano insieme.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.doesgrokhaveanapi.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);Domande frequenti
Quale URL base devo utilizzare?
Usa https://doesgrokhaveanapi.com/v1 come URL di base. Qualsiasi SDK compatibile con OpenAI lo accetta quando modifichi l'URL di base e la chiave, senza che sia necessario modificare altro nel tuo codice.
Quale ID modello devo inviare?
Invia senza filtri. È l'unico modello disponibile sul servizio. Chiama GET /v1/models per confermare l'ID e che la tua chiave è attiva prima di eseguire job più grandi.
Perché la mia richiesta restituisce 402?
Una risposta 402 indica che il credito prepagato sull'account è esaurito. Aggiungi fondi con USDT su TRC20 o USDC su Base a partire da $20, e la richiesta successiva andrà a buon fine. Le richieste fallite non vengono addebitate.
La tua API key è a un passo di distanza
Registrati, copia il tuo token, aggiorna l'endpoint. È tutto il processo.