URL ฐานและการตรวจสอบสิทธิ์
API ของเราอยู่ที่ https://api.huggingfacellmapi.com/v1. คุณตรวจสอบสิทธิ์โดยใช้โทเค็น Bearer ที่ส่งใน Authorization header สร้างคีย์ของคุณทันทีผ่าน รับ API key หน้าเว็บโดยใช้ Google หรืออีเมล เก็บคีย์นี้ให้ปลอดภัย; ใครก็ตามที่มีคีย์นี้สามารถใช้จ่ายเครดิตที่เติมเงินของคุณได้ หากคุณทำหาย ให้สร้างคีย์ใหม่เพื่อแทนที่คีย์เก่าที่ใช้อยู่ ไม่ต้องใช้หมายเลขโทรศัพท์เพื่อเริ่มต้น
คำขอครั้งแรกด้วย cURL
ส่ง payload JSON ดิบเพื่อทดสอบ endpoint ทันที ใช้ model ID uncensored เพื่อข้ามตัวกรองมาตรฐาน คำสั่ง cURL ต่อไปนี้แสดงคำขอสร้างข้อความพื้นฐาน
curl https://api.huggingfacellmapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Summarize the release notes for version three point zero five"}]
}'สิ่งนี้ส่งคืนวัตถุ JSON ที่มีข้อความที่สร้างขึ้น ตรวจสอบ choices อาร์เรย์สำหรับเนื้อหาจริง หากคุณได้รับข้อผิดพลาด 401 ให้ตรวจสอบว่าคีย์ถูกต้องและเปิดใช้งาน
การผสานรวม SDK Python
ใช้ openai ไลบรารี Python สำหรับอินเทอร์เฟซที่สะอาดตา ชี้ไคลเอนต์ไปยัง URL ฐานของเราและตั้งค่า API key ของคุณ วิธีการนี้จัดการการลองใหม่และการแยกวิเคราะห์ JSON โดยอัตโนมัติ
from openai import OpenAI
client = OpenAI(base_url="https://api.huggingfacellmapi.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)ติดตั้งแพ็กเกจผ่าน pip จากนั้นคุณสามารถเรียกใช้ endpoint chat completions ได้เหมือนกับที่คุณทำกับ OpenAI ออบเจกต์การตอบกลับให้คุณเข้าถึงการใช้งานโทเค็นและเหตุผลการสิ้นสุด
การตั้งค่าไคลเอนต์ Node.js
นักพัฒนา JavaScript สามารถใช้ openai แพ็กเกจ Node กำหนดค่าไคลเอนต์ด้วย URL พื้นฐานเฉพาะของเรา สิ่งนี้ทำให้แน่ใจว่าคำขอทั้งหมดจะถูกจัดเส้นทางผ่านเซิร์ฟเวอร์แบบไม่จำกัดของเรา
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.huggingfacellmapi.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);รันโค้ดนี้ในสภาพแวดล้อม Node ของคุณ เพื่อแสดงตัวอย่างการเรียกแบบซิงโครนัส คุณสามารถนำไปรวมเข้ากับ Express routes หรือ serverless functions ได้อย่างง่ายดาย
การตอบกลับแบบสตรีมมิ่ง
เปิดใช้งานการสตรีมโดยตั้งค่า stream: true. เซิร์ฟเวอร์ส่ง Server-Sent Events (SSE) ที่มีโทเค็นบางส่วน ซึ่งช่วยลดความล่าช้าที่ผู้ใช้รู้สึก
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)แยกวิเคราะห์แต่ละส่วนเมื่อมาถึง ส่วนสุดท้ายจะรวมการใช้โทเค็นทั้งหมดสำหรับคำขอนี้ ซึ่งเหมาะสำหรับการสร้างอินเทอร์เฟซแชทที่แสดงผลลัพธ์แบบเรียลไทม์
ข้อจำกัด, ข้อผิดพลาด และบริบท
หน้าต่างบริบทมีขนาด 100,000 tokens รวม prompt และการตอบกลับ คุณสามารถขอ output tokens ได้สูงสุด 16,000 tokens Error เช่น 401 หมายถึง key ไม่ถูกต้อง ในขณะที่ 402 หมายถึงเครดิตไม่เพียงพอ ขีดจำกัดอัตราจำกัดคุณไว้ที่ 300 requests ต่อนาที requests ที่เกิน 8 MB จะถูกปฏิเสธ Error ระหว่างการประมวลผลไม่ใช้เครดิตของคุณ