תיעוד ה-API של OpenRouter
חברו את היישום שלכם ל-LLM ללא צנזורה שלנו באמצעות הממשק הסטנדרטי התואם ל-OpenAI. מדריך זה מכיל אימות, פורמטים של בקשות וזרימה לשילוב מהיר.
התחלה מהירה: חיבור עם Python
התחל בהתקנת ה-SDK הרשמי והצבע אותו אל כתובת הבסיס שלנו.
ה-API שלנו מתנהג כמו ממשק OpenAI הסטנדרטי אך מפנה למודל ללא צנזורה יחיד. גישה זו מבטלת מורכבות של פרוקסי תוך שמירה על ניידות הקוד שלך.
- התקן את הספרייה באמצעות pip.
- הגדר את מפתח ה-API שלך בסביבה.
- הגדירו את כתובת ה-URL הבסיסית לנקודת הקצה שלנו.
from openai import OpenAI
client = OpenAI(base_url="https://api.apiopenrouter.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)החליף את מפתח המקום עם האישורים שלך. אתה יכול לשלוח הנחיות פשוטות או נתונים מבניים מורכבים.
אימות ומפתחות
צור מפתח בלוח הבקרה והעבר אותו ב-header ההרשאה.
כל חשבון תומך במפתח פעיל אחד בכל זמן. כאשר יוצרים מפתח חדש, הישן מפסיק לעבוד מיד. זה מפשט את ניהול האבטחה ללא צורך בלוגיקה מורכבת להחלפת מפתחות.
curl https://api.apiopenrouter.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the top 5 dependencies for a Go web server"}]
}'הבקשה לעיל משתמשת בסכמת Bearer. ודא שהמפתח שלך מתחיל עם sk- ולא מכיל רווחים נוספים.
נקודת קצה להשלמות צ'אט
שלם הודעות ל /v1/chat/completions נקודת קצה (endpoint) באמצעות JSON סטנדרטי.
המודל מקבל user וגם assistant תפקידים. ניתן להגדיר טמפרטורה, top-p ורצפי עצירה כדי לשלוט בסגנון הפלט. התגובות מחזירות שימוש בטוקנים בחלק הסיום אם סטרימינג מופעל.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apiopenrouter.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);הגדר max_tokens לשליטה באורך הפלט. אם לא צוין, ברירת המחדל היא 2,048 טוקנים. המודל תומך בעד 16,000 טוקנים לכל בקשה.
תגובות בסטרימינג
אפשרו זרימה על ידי הגדרת stream: true בגוף הבקשה שלך.
פרטי צריכת הטוקנים מופיעים רק בפסגה האחרונה של הזרם. זה מאפשר עדכוני ממשק משתמש בזמן אמת תוך שמירה על נתוני חיוב מדויקים. שגיאות במהלך סטרימינג עדיין מדווחות על צריכה עבור טוקנים ששולמו עליהם.
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)טפלו בתגובות חלקיות בצורה תקינה. הזרמה מסתיימת באופן תקין כאשר המודל מסיים את היצירה או פוגש במגבלת ההקשר.
Tool Calling & JSON Mode
שימוש response_format: {type: "json_object"} לפלטות JSON מחמירות.
הגדירו כלים ב- tools מערך ו- tool_choice כדי לאכוף קריאות לפונקציות. המודל מחזיר נתונים מבניים המתאימים לעיבוד תכנותי. זה עובס באמינות עם המשקלים הלא-מסוננים שלנו.
curl https://api.apiopenrouter.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the top 5 dependencies for a Go web server"}]
}'שלבו קריאת פונקציות עם סטרימינג לחוויות אינטראקטיביות. אמתו את פלט JSON לפני העברתו ללוגיקה של האפליקציה שלכם.
מגבלות ומכסות
נטר את השימוש שלך מול המגבלות לכל מפתח כדי למנוע הפרעות.
כל מפתח מאפשר 300 בקשות לדקה ו-8 בקשות מקבילות. מגבלת גודל הגוף של הבקשה היא 8 MB. אם תחרגו ממגבלות אלו, ה-API מחזיר סטטוס 429. שגיאות אימות מחזירות 401, וקרדיט לא מספיק מחזיר 402.
curl https://api.apiopenrouter.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the top 5 dependencies for a Go web server"}]
}'חלון ההקשר הוא 100,000 טוקנים בסך הכל. שגיאות לא צורכות קרדיט. סירובים להפרות תוכן קטנות גם כן נשארים חינם.
שאלות נפוצות
כיצד ממשק ה-API של openrouter שונה מ-OpenAI סטנדרטי?
ה-API שלנו משתמש במודל יחיד ללא צנזורה המותאם לתוכן מבוגר חוקי ויצירתי ללא סירובים. הוא שומר על אותו מבנה בקשה ותגובה כמו ב-OpenAI, מה שמאפשר לך להחליף נקודות קצה ללא שינוי בקוד.
מה קורה אם נגמרים לי האשראים?
הבקשות נכשלות עם שגיאה 402 כאשר יתרת האשראי המוקדם שלך היא אפס. האשראי לא פג תוקף, כך שתוכל להוסיף אשראי באמצעות קריפטו בכל עת. שגיאות ודחיות אינן צורכות את יתרתך.
האם ניתן להשתמש במספר מפתחות לפרויקטים שונים?
כל חשבון תומך במפתח פעיל אחד. יצירת מפתח חדש מבטלת אוטומטית את הקודם. ניתן ליצור מפתח חדש מיד מהלוח ללא אובדן היסטוריית החיובים.
שחזר את מפתח ה-API שלך
הירשמו, העתיקו את האסימון, ועדכנו את כתובת הבסיס שלכם. זו כל התצורה.