Avvio rapido: Prima richiesta
Inizia puntando il tuo client al nostro URL base. Utilizza https://api.grockapi.com/v1 e impostare la tua chiave API nell'intestazione. L'identificatore del modello è sempre uncensored. Questo funziona con qualsiasi SDK compatibile con OpenAI.
L'autenticazione richiede un token Bearer valido. Passalo come Authorization: Bearer YOUR_API_KEY. Se la chiave è mancante o non valida, ricevi immediatamente un errore 401.
Esegui la tua prima chiamata per testare la connettività. Il corpo della richiesta deve includere il nome del modello e un array di messaggi.
Parametri supportati e modalità
Configura il comportamento di generazione utilizzando parametri standard. Puoi regolare la temperatura per la creatività o il top_p per il campionamento del nucleo. Usa il parametro stop per definire sequenze specifiche che interrompono la generazione.
Imposta seed per output deterministici durante il debug. Le penalità di presenza e frequenza aiutano a ridurre le ripetizioni. Il modello supporta fino a 100.000 token nella finestra di contesto.
L'output massimo è tipicamente di 16.000 token per richiesta. Lascia max_tokens non impostato per utilizzare il limite di output predefinito di 2.048. Errori e rifiuti non consumano credito.
Streaming e Utilizzo dei Token
Abilita lo streaming impostando stream: true. L'API restituisce chunk tramite Server-Sent Events (SSE). Ogni chunk contiene contenuto parziale e metadati.
I dettagli sull'utilizzo dei token appaiono nell'ultimo chunk. Questo ti permette di monitorare i costi in tempo reale. L'ultimo chunk include le statistiche complete di utilizzo per la richiesta.
Gestisci correttamente la chiusura dello stream per evitare perdite di risorse. Elaborare sempre l'ultimo chunk per ottenere dati di fatturazione accurati.
Function Calling (Tools)
Definisci gli strumenti nel corpo della richiesta. Specifica i nomi degli strumenti, le descrizioni e gli schemi dei parametri. Il modello risponde con chiamate agli strumenti quando appropriato.
Utilizza il parametro tool_choice per forzare o consentire comportamenti specifici. Puoi impostarlo su auto, required o ID degli strumenti specifici.
Elabora le chiamate agli strumenti nella logica della tua applicazione. Invia l'output dello strumento al modello per continuare la conversazione. Questo abilita flussi di lavoro complessi multi-step senza analisi esterna.
Vincoli modalità JSON
Forza un output strutturato impostando response_format su json_object. Il modello restituirà JSON senza blocchi di codice markdown.
Questa modalità è ideale per l'analisi dei dati nelle applicazioni. Assicurati che il tuo schema sia chiaro per migliorare l'accuratezza. Strutture JSON non valide possono causare errori di parsing nel tuo client.
Combina la modalità JSON con i controlli di temperatura per una formattazione coerente. Utilizza le sequenze di stop per prevenire caratteri residui dopo la parentesi graffa di chiusura.
Limiti di frequenza e quote
Ogni chiave API è limitata a 300 richieste al minuto. Puoi eseguire fino a 8 richieste concorrenti contemporaneamente. La dimensione massima del corpo della richiesta è di 8 MB.
Un errore 429 indica che hai superato il limite di velocità. Attendi prima di riprovare o riduci la tua concorrenza. Esiste una chiave attiva per account; generare una nuova chiave sostituisce quella vecchia.
Monitora il tuo utilizzo tramite l'ultimo chunk di streaming o le intestazioni di risposta. Gli errori come 402 (credito insufficiente) o 401 (chiave non valida) sono gratuiti e non vengono conteggiati nel tuo quota.
cURL
curl https://api.grockapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "calculate the sum of two and three"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.grockapi.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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.grockapi.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
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)