מדריך פתרון תקלות ב-API של Ollama
מדריך זה מסביר כיצד להגדיר, לפתור תקלות ולאבטח את נקודת הקצה של ממשק API של LLM שלך, בין אם אתה מריץ מופע מקומי או משתמש בספק צד שלישי כמו השירות שלנו התואם ל-OpenAI וללא צנזורה. אנו מכסים שגיאות חיבור נפוצות, תצורות סטרימינג, וחשבונאות טוקנים כדי לעזור לך לקבל את הקוד שלך לעבודה מיד.
עודכן לאחרונה
סיכום
- אמת שכתובת הבסיס ומפתח ה-API שלך תואמים את התיעוד של הספק לפני ניפוי באגים בקוד מורכב.
- הגדר גבולות טוקנים מפורשים כדי להימנע מקיטע לא צפוי או יתרונות חשבון בתגובות streaming.
- השתמשו ב-Google או במייל/סיסמה ליצירת מפתח מיידי ללא המתנה לאימות טלפון.
- אבטח את הנקודה הסופית המקומית שלך על ידי שינוי פורטים מוגדרים והגבלת גישות למניעת שימוש לא מורשה במחשוב.
הבנת מבנה נקודת הקצה של ה-API של Ollama
ה ollama endpoint עוקב אחר תבנית RESTful קפדנית המשקפת את מבנה ה-API של OpenAI. אתם מתקשרים איתו על ידי שליחת בקשות POST ל /v1/chat/completions וכדי לשאול מודלים זמינים דרך GET /v1/models. סטנדרטיזציה זו מאפשרת לכם להחליף מודלים בסיסיים ללא צורך לשכתב את קוד הלקוח.
מפתחים רבים מניחים שהנקודה (endpoint) תומכת בהטמעות (embeddings) או ביצירת תמונות כברירת מחדל. זה לא המצב. השירות המאוחסן שלנו, לדוגמה, מספק רק השלמות טקסט עם מודל אחד ללא צנזורה. תמיד בדוק את GET /v1/models תגובה כדי לראות בדיוק אילו יכולות חשופות. אם אתה רואה רשימה של מודלים, אשר את המזהים שלהם לפני שליחת בקשות.
בעת שימוש במוסד מקומי, נקודת הקצה בדרך כלל פועלת על http://localhost:11434. עבור ספקי ענן, תשתמש בכתובת בסיס מותאמת אישית. ודא שהלקוח HTTP שלך מטפל בכותרות נכון, במיוחד Content-Type: application/json. כותרת חסרה גוררת לעיתים קרובות כשלים שקטים שנראים כשגיאות מודל.
אלמנטים מבניים של מפתח:
model: המזהה המחרוזתי של ה-LLM הספציפי.messages: מערך של אובייקטי תוכן מבוססי תפקיד.stream: דגל בוליאני המאפשר אירועים ממוצרי שרת (SSE).
למה קריאות ה-API שלך ל-ollama עשויות להיכשל
קריאות API נכשלות בדרך כלל עקב כתובות בסיס שגויות, מפתחות שפג תוקפם או מטעני JSON לא תקינים. השגיאה הנפוצה ביותר היא תגובת 401 Unauthorized, שמשמעותה שהמפתח שלך חסר או לא תקין. בעיה נפוצה נוספת היא 404 Not Found, המציינת שהנקודה הקצה אינה תומכת בנתיב או במזהה המודל המבוקשים.
בדקו את גוף הבקשה שלכם בקפידה. אם אתם שולפים פרמטר שהנקודה הקצה לא תומכת בו, כמו modalities למודל טקסט בלבד, השרת עשוי לדחות את הבקשה. השירות שלנו, למשל, לא תומך בקלט תמונה. שליחתו גורמת לשגיאה מיידית.
ניתוקים גם הם גורמים לכשלונות. אם מופע ה-Ollama המקומי שלכם במצב מנוחה, הוא עשוי לטעון מחדש את המודל מ-VRAM. הבקשה הראשונה לאחר התחלה קרה (cold start) יכולה לקחת מספר שניות. הגדירו פסק זמן נדיב בלקוח ה-HTTP שלכם כדי למנוע ניתוקים מוקדמים.
קודי שגיאה נפוצים:
400: בקשה שגויה (JSON מעובד לא נכון או פרמטרים לא תקינים).401: Unauthorized (מפתח API לא חוקי או חסר).429: Too Many Requests (חריגת מגבלת קצב).500: שגיאת שרת פנימית (כשל בטעינת המודל).
הגדרת מודלי Ollama לא מסוננים נכון
מודלים ללא צנזורה לעיתים קרובות דורשים פרמטרים ספציפיים כדי להתנהג כמצופה. ההבדל העיקרי טמון ב system פקודה. עליך להנחות במפורש את המודל לעקוף דחיות סטנדרטיות. ללא פקודת מערכת חזקה, המודל עשוי לחזור להתנהגויות בטיחות ברירת מחדל.
הנקודה הקשה שלנו משתמשת במזהה המודל uncensored. אתה שולח בקשות לזהות, והשרת מטפל בבחירת המודל הבסיסית. זה מנתק את המורכבות של ניהול גרסאות מודל. אין צורך לדעת אם הארכיטקטורה הבסיסית מבוססת Llama או Mistral.
התאם את temperature פרמטר כדי לשלוט ביצירתיות. ערך של 0.7 הוא נקודת התחלה טובה לתגובות מאוזנות. ערכים גבוהים יותר מגדילים אקראיות, מה שימושי לכתיבה יצירתית אך עשוי להפחית דיוק עובדתי. ערכים נמוכים יותר הופכים את הפלט לדטרמיניסטי יותר.
טיפים לתצורה:
- שימוש
top_pבצמודtemperatureלשליטה טובה יותר. - הגדר
stopרצפים למניעת לולאות אינסופיות. - תמיד כלול את
systemהודמה להגדרת תפקיד.
טיפול בזרם ובמגבלות אסימונים
תגובות בזרם מחזירות נתונים בנתחים באמצעות אירועים שנשלחו מהשרת (SSE). כל נתח מכיל השלמה חלקית. עליך להרכיב נתחים אלה כדי לקבל את התגובה המלאה. השירות שלנו כולל סטטיסטיקות שימוש באסימונים בנתח הסופי, המאפשרות לך לעקוב אחר עלויות בזמן אמת.
מגבלות הטוקנים קריטיות לשיחות ארוכות. הנקודה שלנו תומכת בחלון הקשר של 100,000 טוקנים, המשלב גם פרומפט וגם השלמה. עם זאת, הפלט המקסימלי לכל בקשה הוא 16,000 טוקנים. אם לא מגדירים max_tokens, ברירת המחדל היא 2,048 טוקנים. זה יכול לגרום לקיטוע של תשובות ארוכות באופן בלתי צפוי.
בעת זרימה, טפלו בהפרעות רשת בצורה חכמה. אם החיבור נופל, ניתן להמשיך מהבלוק האחרון שהתקבל אם השרת תומך בכך. אחרת, ייתכן שתצטרכו לנסות שוב את הבקשה כולה. עקבו תמיד אחר ה usage field in the final chunk to avoid billing surprises.
תרגולות מומלצות לזרימה:
- ניתוח אירועי SSE נכון, התעלמות משורות ריקות.
- צבור נתונים בזיכרון או במאגר.
- בדקו את
usageאובייקט בפס הקצה האחרון למספרי אסימונים.
שגיאות חיוב וחשבון אסימונים
שגיאות חשבון נובעות לעיתים קרובות מהבנה שגויה כיצד טוקנים נספרים. טוקנים נגבים עבור קלט (prompt) ופלט (completion). המחיר שלנו הוא $0.15 לכל 1M טוקני קלט ו-$0.50 לכל 1M טוקני פלט. שגיאות ודחיות הן בחינם, מה שמפחית עלויות לניפוי באגים.
מטקנזרים לא תמיד ממופים 1:1 עם תווים. מילה בודדת יכולה להיות מספר טוקנים. אם אתה מעריך עלויות על סמך ספירת תווים, אתה עלול להפיק את החשבון. השתמש בספירת טוקנים אמינה בלקוח שלך כדי לקבל ספירות מדויקות לפני שליחת בקשות.
אשראי אינו פג. אם תעלה באמצעות קריפטו, יתרתך תישמר עד שתשתמש בה. זה שימושי לפרויקטים לטווח ארוך. עם זאת, שים לב שכל בקשה צורכת אסימונים מיתרתך. אם יתרתך נמוכה, בקשות עוקבות עשויות להיכשל.
טיפים לחיוב:
- עקבו אחר שימוש בטוקנים בכל תגובה.
- הגדירו התראות לספים נמוכים של יתרה.
- שימוש
max_tokensכדי לקזז עלויות פוטנציאליות.
בעיות אבטחה וסריקת פורטים
נקודות קצה מקומיות של Ollama נחשפות לרשת כברירת מחדל. זה הופך אותן לרגישות לסורקי פorts המחפשים חישוב חינם. אם אתה חושף את port 11434 ללא אימות, כל אחד יכול להשתמש במשאבי ה-GPU שלך. זה יכול להוביל לחשבונות חשמל גבוהים וביצועים איטיים.
אבטח את הנקודה הסופית שלך על ידי שינוי הפורט המוגדר או שימוש בפרוקסי הפוך עם אימות. השירות המאוחסן שלנו מטפל באבטחה עבורך, כך שלא תצטרך לדאוג לחשיפת פורט. עליך רק לשמור על פרטיות מפתח ה-API שלך.
לתצורות מקומיות, השתמש בחומת אש כדי להגביל גישה לכתובות IP אמינות. אתה יכול גם לאפשר אימות מבוסס טוקן בקובץ התצורה של Ollama. זה מונע ממשתמשים לא מורשים לבצע בקשות.
שלבי אבטחה:
- שינוי הפורט המוגדר אם חושפים לאינטרנט.
- השתמשו בפרוקסי הפוך עם HTTPS ואימות.
- עקבו אחר תעבורת הרשת שלכם אחר פעילות חריגה.
שימוש ב-API ollama מקומי מול ענן
שימוש מקומי נותן לך שליטה מלאה על פרטיות הנתונים ובחירת המודל. אתה יכול להריץ מספר מודלים בו זמנית ולעבור ביניהם מיד. עם זאת, אתה אחראי לתחזוקת חומרה, עדכונים ואבטחה. שימוש בענן מעביר אחרויות אלו לספק.
שירות הענן שלנו מציע מודל ללא צנזורה, המותאם ליצירת תוכן ללא הגבלות. אתה מקבל גישה מיידית ללא צורך בהורדת קבצי מודל גדולים. המחיר הוא שהנתונים שלך עוברים דרך השרתים שלנו. עבור נתונים רגישים, עדיף להשתמש בהרצה מקומית.
שירותי ענן לעיתים קרובות כוללים השהייה גבוהה עקב מסעות הלוך-וחזור ברשת. מופעים מקומיים כוללים השהייה אפסית כמעט אם ה-GPU מהיר מספיק. עם זאת, מופעים מקומיים דורשים VRAM משמעותי. אם ה-GPU שלכם נגמר לו הזיכרון, המודל עשוי לעבור ל-CPU, מה שיאט משמעותית את התגובות.
השוואה:
- מקומי: פרטיות, שליטה, תלות בחומרה.
- בענן: נוחות, קנה מידה, העברת נתונים.
טעויות נפוצות בצד הלקוח
מפתחים רבים שוכחים לטפל במגבלות קצב. השירות שלנו מאפשר 300 בקשות לדקה לכל מפתח. אם תחרוג ממגבלה זו, תקבל שגיאת 429. ממש backoff מעריכי בלקליינט שלך כדי לטפל בשגיאות אלו בצורה חלקה.
טעות נוספת היא אי-הגדרת ה- stream פרמטר כראוי. אם אתם מצפים לזרימה (streaming) אך לא מגדירים stream: true, תחכה לתגובה המלאה לפני קבלת כל נתון. זה יכול לגרום לאפליקציה שלך להיראות איטית.
שגיאות מצב JSON גם נפוצות. אם אתה מגדיר response_format: {type: "json_object"}, המודל חייב להחזיר JSON תקין. אם לא, המנתח שלך ייכשל. הוסף טיפול בשגיאות כדי לתפוס ולנסות שגיאות פיענוח JSON.
רשימת בדיקה:
- הטמעת טיפול במגבלות קצב.
- הגדר
stream: trueלעדכונים בזמן אמת. - אימות פלט JSON בעת שימוש במצב JSON.
שאלות נפוצות
איך מקבלים מפתח API לנקודת קצה של ollama ללא צנזורה?
ניתן ליצור מפתח API מיד על ידי הרשמה עם Google או אימייל וסיסמה. השירות שלנו אינו דורש מספר טלפון ומספק את המפתח מיד עם היצירה. זה מאפשר לך להתחיל לבדוק את הקוד שלך תוך שניות.
האם מודל ה-ollama ללא צנזורה תומך בקלט תמונה?
לא, נקודת הקצה שלנו מספקת רק השלמות טקסט. היא לא תומכת בקלט תמונה, אודיו או וידאו. אם אתה צריך יכולות רב-מודאליות, תצטרך שירות אחר או מודל מקומי רב-מודאלי.
מה קורה אם אעבור את מגבלת הקצב?
אם תעברו את מגבלת 300 הבקשות לדקה, תקבלו שגיאת 429 Too Many Requests. מפתח ה-API שלך נשאר תקף, אך עליך להמתין עד שחלון מגבלת הקצב יתאפס. מומלץ ליישם חזרה מעריכית בלקוח שלך.
האם הנתונים שלי משמשים לאימון כשאני משתמש בממשק ה-API הזה?
לא, ההנחיות שלך אינן משמשות לאימון. אנו מכבדים את הפרטיות שלך ואיננו שומרים את הנתונים שלך לשיפור המודל. זה הופך את השירות שלנו למוצלח ליצירת תוכן סודי או רגיש.
קבל את מפתח ה-API שלך
הירשמו, קבלו את המפתח, צביכו לכתובת ה-URL הבסיסית החדשה. סיימנו.