כתובת URL בסיסית ואימות
התחבר ל- openai compatible API על ידי עדכון תצורת הלקוח שלך כדי להפנות ל https://api.openaicompatibleapiendpoints.com/v1. אתה צריך מפתח API תקף שנשלח ב- Authorization כותרת כטוקן Bearer. הגדרה זו עובדת עם ה-SDKים הרשמיים של OpenAI וכל ספריית לקוח תואמת. אין צורך בתצורת שער מורכבת.
curl https://api.openaicompatibleapiendpoints.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Return 500 status code"}]
}'כל בקשה חייבת לכלול את המפתח הייחודי שלך. אם המפתח חסר או לא חוקי, השרת מחזיר שגיאת 401 מיד. זה מבטיח שהקריאות שלך יגיעו ל-LLM ללא צנזורה הנכון ללא עיכובי ניהול.
נקודת קצה להשלמות צ'אט
שלם הודעות ל POST /v1/chat/completions נקודת קצה (endpoint) לקבלת תגובות טקסט מה- uncensored מודל. נקודת הקצה הזו מטפלת בסבבי שיחה סטנדרטיים ותומכת בחלון הקשר של עד 100,000 טוקנים. ניתן לקבוע מקסימום פלט של 16,000 טוקנים לכל בקשה. המודל עונה ללא סירובי תוכן לנושאי מבוגרים חוקיים.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicompatibleapiendpoints.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)השתמשו בסטנדרטי messages מערך. ה-API מתעלם משדות נוספים שהוא לא מזהה, מה שהופך את המעבר לקל. אתה משלם רק עבור טוקנים שצרכו בפועל על ידי המודל.
תגובות בסטרימינג
אפשרו מסירת אסימונים בזמן אמת על ידי הגדרת stream: true בקשתך. השרת שולף סדרה של אירועים שנשלחים מהשרת (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)אגור את הטוקנים הנכנסים בצד הלקוח כדי לשחזר את הטקסט המלא. שגיאות במהלך סטרימינג נדירות אך יש לטפל בהן על ידי בדיקת האירוע האחרון לקוד שגיאה. הזרם נעצר אוטומטית כאשר מגיעים למגבלת ההקשר או למקסימום הטוקנים.
מצב JSON וכלים
כף פלט מבני על ידי הגדרת response_format אל {"type": "json_object"}. זה מבטיץ שהמודל יחזיר JSON במקום טקסט markdown. אתה יכול גם להשתמש ב tools פרמטר לקריאת פונקציות. ה-API תומך ב tool_choice לשליטה מדויקת באילו פונקציות המודל יפעיל.
שימוש temperature וגם top_p להתאים אקראיות. הגדירו seed לשם תוצאות שחזוריות במהלך ניפוי באגים. פרמטרים אלה עובדים בדיוק כמצופה באינטגרציות סטנדרטיות התואמות ל-OpenAI.
טיפול בשגיאות ומגבלות
טפלו בשגיאות HTTP סטנדרטיות כדי לנהל כשלונות בצד הלקוח בצורה תקינה. סטטוס 401 אומר שהמפתח שלכם לא תקין. סטטוס 402 מצביע על אשראי קדום שנגמר. שגיאת 429 מציין שחרגתם ממגבלת 300 הבקשות לדקה.
כל מפתח מאפשר שמונה בקשות מקבילות. גודל הגוף של הבקשה מוגבל ל-8 MB. החזרים לא ניתנים עבור קרדיט שצרך, אך שגיאות במהלך העיבוד הן חינמיות. תמיד בדוק את ה- error אובייקט בתגובת ה-JSON לפרטים.
חלון ההקפר ופרטי המודל
המודל תומך בחלון הקשר של 100,000 טוקנים לשילוב של פלט ושלם. זה מאפשר שמירה עמוקה של הקשר למסמכים ארוכים או שיחות ממושכות. מקסימום הפלט המוגדר מראש הוא 2,048 טוקנים אם לא ציינתם max_tokens. ניתן להגדיל זאת עד ל-16,000 טוקנים בכל בקשה.
המודל הוא לא GPT, Claude או מודל של ספק אחר. זהו מודל בעל משקל פתוח שכוון לתגובות בלתי-מנוטרות. לא משתמשים בנתונים מהפרומפטים שלך לאימון. זה מבטיח פרטיות לנתונים הקנייניים שלך.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openaicompatibleapiendpoints.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);