เริ่มต้นอย่างรวดเร็ว: คำขอครั้งแรก
เริ่มต้นโดยชี้ client ของคุณไปยัง base URL ของคุณ ใช้ https://api.grockapi.com/v1 และตั้งค่า API key ของคุณใน header ตัวระบุโมเดลคือ uncensored. สิ่งนี้ทำงานกับ SDK ที่เข้ากันได้กับ OpenAI ใดๆ
การตรวจสอบสิทธิ์ต้องการโทเค็นแบร์เออร์ที่ถูกต้อง ส่งมันในรูปแบบ Authorization: Bearer YOUR_API_KEY. หากคีย์หายไปหรือไม่ถูกต้อง คุณจะรับข้อผิดพลาด 401 ทันที
ส่งการเรียกใช้ครั้งแรกของคุณเพื่อตรวจสอบการเชื่อมต่อ body ของคำขอต้องรวมชื่อ model และอาร์เรย์ messages
พารามิเตอร์และโหมดที่รองรับ
กำหนดค่าพฤติกรรมการสร้างข้อมูลโดยใช้พารามิเตอร์มาตรฐาน คุณสามารถปรับ temperature เพื่อความสร้างสรรค์ หรือใช้ top_p สำหรับการสุ่มแบบ nucleus ใช้พารามิเตอร์ stop เพื่อกำหนดลำดับเฉพาะที่จะหยุดการสร้างข้อมูล
ตั้งค่า seed สำหรับเอาต์พุตที่แน่นอนระหว่างการดีบัก presence และ frequency penalties ช่วยลดการทำซ้ำ โมเดลรองรับโทเค็นได้สูงสุด 100,000 โทเค็นในหน้าต่างบริบท
จำนวนโทเค็นสูงสุดที่ส่งออกคือ 16,000 โทเค็นต่อคำขอ หากไม่ได้ตั้งค่า max_tokens จะใช้ขีดจำกัดเอาต์พุตเริ่มต้นที่ 2,048 ข้อผิดพลาดและการปฏิเสธไม่ใช้เครดิต
การใช้งานโทเค็นและการสตรีม
เปิดใช้งานการสตรีมโดยตั้งค่า stream: true. API ส่ง chunk ผ่าน Server-Sent Events (SSE) แต่ละ chunk มีเนื้อหาบางส่วนและข้อมูลเมตา
รายละเอียดการใช้งานโทเค็นปรากฏในชิ้นสุดท้าย สิ่งนี้ช่วยให้คุณติดตามค่าใช้จ่ายได้อย่างแม่นยำแบบเรียลไทม์ ชิ้นสุดท้ายรวมถึงสถิติการใช้งานที่สมบูรณ์สำหรับคำขอ
จัดการการปิดสตรีมอย่างเหมาะสมเพื่อหลีกเลี่ยงการรั่วไหลของทรัพยากร ควรประมวลผลชิ้นสุดท้ายเสมอเพื่อให้ได้ข้อมูลการเรียกเก็บเงินที่ถูกต้อง
การเรียกใช้ฟังก์ชัน (เครื่องมือ)
กำหนดเครื่องมือใน body ของคำขอ ระบุชื่อเครื่องมือ คำอธิบาย และสคีมาพารามิเตอร์ โมเดลจะตอบสนองด้วยการเรียกใช้เครื่องมือเมื่อเหมาะสม
ใช้พารามิเตอร์ tool_choice เพื่อบังคับหรืออนุญาตพฤติกรรมเฉพาะ คุณสามารถตั้งค่าเป็น auto, required หรือ ID ของเครื่องมือเฉพาะ
ประมวลผลฟังก์ชันคอล์ลในตรรกะแอปพลิเคชันของคุณ ส่งผลลัพธ์ของเครื่องมือกลับไปยังโมเดลเพื่อดำเนินการสนทนาต่อ วิธีนี้เปิดใช้งานเวิร์กโฟลว์หลายขั้นตอนที่ซับซ้อนโดยไม่ต้องมีการแยกวิเคราะห์จากภายนอก
โหมด JSON และข้อจำกัด
บังคับใช้เอาต์พุตที่มีโครงสร้างโดยตั้งค่า response_format เป็น json_object. โมเดลจะคืนค่า JSON โดยไม่มีบล็อกโค้ด markdown
โหมดนี้เหมาะสำหรับการแยกวิเคราะห์ข้อมูลเข้าสู่แอปพลิเคชัน ตรวจสอบให้แน่ใจว่า schema ของคุณชัดเจนเพื่อปรับปรุงความแม่นยำ โครงสร้าง JSON ที่ไม่ถูกต้องอาจทำให้เกิดข้อผิดพลาดในการแยกวิเคราะห์ในไคลเอนต์ของคุณ
ผสานโหมด JSON กับการควบคุมอุณหภูมิเพื่อให้รูปแบบสม่ำเสมอ ใช้ลำดับหยุด (stop sequences) เพื่อป้องกันอักขระส่วนเกินหลังวงเล็บปิด
อัตราจำกัดและโควตา
คีย์ API แต่ละตัวจำกัดอยู่ที่ 300 คำขอต่อนาที คุณสามารถรันคำขอพร้อมกันได้สูงสุด 8 คำขอ ขนาดสูงสุดของ body คำขอคือ 8 MB
รหัสข้อผิดพลาด 429 ระบุว่าคุณเกินขีดจำกัดอัตราแล้ว รอก่อนลองใหม่หรือลดความพร้อมกันของคุณ คีย์ที่ใช้งานอยู่หนึ่งคีย์มีต่อหนึ่งบัญชี การสร้างคีย์ใหม่จะแทนที่คีย์เก่า
ตรวจสอบการใช้งานของคุณผ่าน chunk สตรีมสุดท้ายหรือ response headers ข้อผิดพลาดเช่น 402 (ไม่มีเครดิต) หรือ 401 (คีย์ไม่ถูกต้อง) ถือว่าฟรีและไม่นับรวมในโควตาของคุณ
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);การสตรีม
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)