Începe rapid: Prima Cerere
Începeți prin a direcționa clientul către URL-ul de bază. Utilizați https://api.grockapi.com/v1 și setează cheia ta API în antet. Identificatorul modelului este întotdeauna uncensored. Acest lucru funcționează cu orice SDK compatibil OpenAI.
Autentificarea necesită un token Bearer valid. Transmite-l ca Authorization: Bearer YOUR_API_KEYDacă cheia lipsește sau este invalidă, primești imediat o eroare 401.
Efectuați primul dvs. apel pentru a testa conectivitatea. Corpul cererii trebuie să includă numele modelului și un array de mesaje.
Parametrii și modurile suportate
Configurează comportamentul de generare folosind parametri standard. Poți ajusta temperatura pentru creativitate sau top_p pentru eșantionarea nucleului. Folosește parametrul stop pentru a defini secvențe specifice care opresc generarea.
Setează seed pentru outputuri deterministe în timpul depanării. Penalizările de prezență și frecvență ajută la reducerea repetiției. Modelul suportă până la 100.000 de tokeni în fereastra de context.
Ieșirea maximă este limitată la 16,000 de tokeni per solicitare. Lasă max_tokens nesetat pentru a utiliza limita implicită de ieșire de 2,048. Erorile și refuzurile nu consumă credit.
Streaming și Utilizarea Tokenilor
Activați streaming-ul setând stream: true. API returnează fragmente prin Evenimente trimise de server (SSE). Fiecare fragment conține conținut parțial și metadate.
Detaliile de consum de tokenuri apar în ultimul fragment. Acest lucru vă permite să urmăriți costurile cu precizie în timp real. Ultimul fragment include statisticile complete de consum pentru solicitare.
Gestionați închiderea fluxului corect pentru a evita scurgerile de resurse. Procesează întotdeauna ultimul fragment pentru a obține datele de facturare precise.
Apelarea funcțiilor (Instrumente)
Definește instrumentele în corpul cererii. Specifică numele instrumentelor, descrierile și schemele de parametri. Modelul răspunde cu apeluri de instrumente când este potrivit.
Folosește parametrul tool_choice pentru a forța sau a permite anumite comportamente. Poți seta la auto, required sau ID-uri specifice de tool-uri.
Procesează apelurile de instrumente în logica aplicației tale. Trimite output-ul instrumentului înapoi la model pentru a continua conversația. Acest lucru permite fluxuri de lucru complexe multi-etapă fără parsare externă.
Mod JSON și Constrângeri
Forțează ieșire structurată setând response_format la json_object. Modelul va returna JSON fără blocuri de cod markdown.
Această modalitate este ideală pentru analizarea datelor în aplicații. Asigurați-vă că schema este clară pentru a îmbunătăți acuratețea. Structurile JSON invalide pot cauza erori de analiză în clientul dvs.
Combină modul JSON cu controalele de temperatură pentru un format constant. Folosește secvențele de oprire pentru a preveni caracterele trailing după paranteza buclă de închidere.
Limite de rată și cote
Fiecare cheie API este limitată la 300 de cereri pe minut. Puteți executa până la 8 cereri concurente simultan. Dimensiunea maximă a corpului cererii este de 8 MB.
Eroarea 429 indică faptul că ai depășit limita de rată. Așteaptă înainte de a reîncerca sau reduce concurența. Există o singură cheie activă per cont; generarea unei noi chei înlocuiește pe cea veche.
Monitorați-vă utilizarea prin intermediul ultimului fragment de streaming sau al antetelor de răspuns. Erorile precum 402 (fără credit) sau 401 (cheie invalidă) sunt gratuite și nu se numără în limita de utilizare.
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)