תיעוד ה-API של נקודת הקצה של Ollama
התחילו לבנות עם ה-LLM API שלנו ללא צנזורה תוך שניות. מדריך זה מכסה את כתובת ה-URL הבסיסית, אימות ושילוב ה-SDK עבור זרימות עבודה של ה-API התואם ל-OpenAI שלכם.
כתובת URL בסיסית ואימות
השתמשו בכתובת ה-URL הבסיסית שסופקה ובמפת API לכל בקשה. נקודת הקצה היא https://api.ollamaendpoint.com/v1הרשאה header כערך Bearer token. המפתח נוצר מיד לאחר ההתחברות עם Google או אימייל. המפתח ייחודי לכל חשבון ומחליף כל מפתח פעיל קודם.
בקשה ראשונה
שלח השלמת צ'אט סטנדרטית כדי לייצר טקסט. מזהה המודל הוא uncensored וקבל את אותם הפרמטרים כמו לקוחות OpenAI סטנדרטיים. זה עובד למשימות LLM NSFW או יצירת תוכן ללא הגבלות.
- שיטה: POST
- נקודת קצה:
/v1/chat/completions - מודל:
uncensored
curl https://api.ollamaendpoint.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Get the local ip address of this machine"}]
}'
תגובה מוצלחת מחזירה את הטקסט שנוצר במערך choices. בדוק את usage שדה לראות את ספירת הטוקנים.
אינטגרציית SDK Python
התקן את הספרייה הרשמית של OpenAI והגדר את כתובת הבסיס. זה מאפשר לך להשתמש במודל ה-ollama ללא צנזורה עם קוד פייתון מוכר. הגדר את base_url וגם api_key לפני אתחול הלקוח. הקוד נשאר תואם ל-SDKs הקיימים של OpenAI.
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaendpoint.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)
בצע שיחה ל chat.completions.create שיטה בדיוק כמו שאתה עושה ל-GPT. מבנה התגובה תואם ציפיות סטנדרטיות. אתה יכול לזרום או לקבל תגובות מלאות.
שילוב Node SDK
השתמשו בחבילת OpenAI ל-Node.js כדי לתקשר עם ה-API. הגדירו את הלקוח עם כתובת הבסיס המותאמת אישית ומפתח ה-API שלכם. גישה זו עובדת ליישומי צד שרת או פונקציות קצה. החבילה מטפלת ברישום וניסיונות חוזרים באופן אוטומטי.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ollamaendpoint.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);
הפעל את נקודת הסיום של השלמה עם הפומפט שלך. הספרייה מחזירה Promise שמתפטר לתגובת האובייקט. טפל בשגיאות בהתאם לקודי סטטוס HTTP סטנדרטיים.
תגובות בסטרימינג עם SSE
אפשרו זרימה על ידי הגדרת 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)
צבור את חלקי התוכן מכל נתח כדי לשחזר את התגובה המלאה. עבד שגיאות כפי שהן מגיעות בזרם. הנתח האחרון מאשר את ספירת הטוקנים עבור האשראי שלך.
מגבלות קצב ואילוצים
כל מפתח API תומך ב-300 בקשות לדקה ו-8 בקשות מקבילות. גודל גוף הבקשה המקסימלי הוא 8 MB. חלון ההקשר הוא 100,000 טוקנים לשילוב של פלט ושלם משולב. מגבלות הפלט הן 16,000 טוקנים לבקשה. שגיאות ודחיות אינן צורכות אשראי. שגיאת 401 משמעה שהמפתח שלך לא חוקי. שגיאת 402 מציינת אשראי מוקדם לא מספיק. שגיאת 429 משמעה שחצית את מגבלת הקצב. התאם את הרב-מקבילות כדי להישאר בתוך המגבלות.
שאלות נפוצות
מהי כתובת הבסיס (base URL) של נקודת הקצה של ollama?
כתובת ה-URL הבסיסית היא HTTPS://api.ollamaendpoint.com/v1. השתמש בזה לכל קריאות ה-API. זה תואם ללקוחות OpenAI סטנדרטיים.
כיצד לטפל בתגובות סטרימינג?
הגדירו את הפרמטר stream לערך true. ה-API מחזיר אירועים מוגשים על ידי השרת. עבדו על כל קטץ' כדי לבנות את הטקסט הסופי. הקטע האחרון כולל נתוני שימוש.
מה קורה אם אפגע במגבלת קצב?
אתה מקבל קוד סטטוס 429. המגבלה היא 300 בקשות לדקה למפתח. הפחת את המקבילות שלך או המתן לפני ניסיון חוזר. בקשות במקביל מוגבלות ל-8.
קבל את מפתח ה-API שלך
הירשמו, קבלו את המפתח, צביכו לכתובת ה-URL הבסיסית החדשה. סיימנו.