מודלי LLM ו-API
Verboo, Venice AI ו-Drael מול NotHoly לעבודת אבטחה
Verboo, Venice AI ו-Drael לצד NotHoly, נובמבר 2026: חיוב, פורמט API, רישיון, בסיס המודלים ואיפה הכלים רצים, עם מקורות.
מחליפים את ה-base URL, את המפתח ואת ה-ID של המודל. ה-SDK של OpenAI או Anthropic שכבר יש לכם, והכלים שמעליו, ממשיכים לעבוד מול NotHoly.
מעבר בין ספקי מודלים כמעט תמיד אומר כתיבה מחדש: קליינט אחר, שדות בקשה אחרים, streaming אחר. העלות הזאת היא מה שמשאיר צוות אצל ספק הרבה אחרי שיש לו סיבה לעזוב. NotHoly מורידה את העלות בכך שהיא מדברת את שתי צורות ה-API שהקוד שלכם כבר משתמש בהן.
ה-API תואם גם לפורמט של OpenAI וגם לזה של Anthropic. אתם מחליפים את ה-base URL, את המפתח ואת ה-ID של המודל, וספריית הקליינט, גופי הבקשה, הגדרות הכלים וה-streaming שכבר כתבתם ממשיכים לעבוד. אותו חשבון ואותו מפתח מגיעים לשתי הצורות. מפתחות, תקציבים ורשימת המודלים נמצאים בחשבון אחד, כך שצוות יכול להעביר שירות אחד בכל פעם.
כוונו את ה-SDK של OpenAI ל-NotHoly ובחרו ID של מודל מהקטלוג. שום דבר אחר בקריאה לא משתנה, כולל כלי הפונקציה שאתם מעבירים והדרך לקרוא תשובה ב-stream.
from openai import OpenAI
client = OpenAI(base_url="https://api.notholy.com/v1", api_key="nh_live_...")
r = client.chat.completions.create(
model="MODEL_ID",
messages=[{"role": "user", "content": "List the auth checks this endpoint is missing."}],
max_tokens=800,
)
print(r.choices[0].message.content)GET /v1/chat/completions, /v1/completions ו-/v1/responses עונים בצורה הזאת, עם server-sent events כשמדליקים stream, כל אירוע שורת data: שמסתיימת ב-data: [DONE]. גם Authorization: Bearer וגם x-api-key מתקבלים, כך שקליינט ששולח כל אחד מהם עובד בלי שינוי.
ה-SDK של Anthropic משתמשים ב-https://api.notholy.com כ-base URL, בלי /v1, וקוראים ל-POST /v1/messages. אתם שומרים על max_tokens ושומרים על ה-reasoning: thinking עם תקציב טוקנים, או output_config.effort לרמה בשם שממופה לקרובה ביותר שיש למודל. התורות user ו-assistant נושאים בלוקים text, tool_use ו-tool_result באותה צורה.
curl https://api.notholy.com/v1/messages \
-H "x-api-key: $NOTHOLY_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{"model": "MODEL_ID", "max_tokens": 800, "thinking": {"type": "enabled", "budget_tokens": 2000}, "messages": [{"role": "user", "content": "Explain this stack trace and name the likely bug class."}]}'התשובה היא צורת ההודעה של Anthropic, השגיאות משתמשות בסוגי השגיאה של Anthropic, ו-stream מחזיר אירועים של Anthropic. POST /v1/messages/count_tokens מעריך את גודל הקלט לפני השליחה, בלי לקרוא למודל.
מכיוון שהצורות תואמות, גם הספריות שמעליהן תואמות. ה-SDK של OpenAI ושל Anthropic בכל שפה מצביעים על NotHoly בהגדרה בלבד, וכך גם סוכני הקוד שמדברים את הפרוטוקולים האלה. ה-CLI כותב את ההגדרה הזאת לסוכנים כמו Claude Code, Codex ו-OpenCode, כך שאתם לא עורכים כל אחד ביד. מדריך ההגירה הוא הגרסה הקצרה: base URL, מפתח, מודל. השימוש נמדד לפי טוקן בתעריף המפורסם של כל מודל בכל אחד מה-endpoints האלה, כך שההחלפה לא משנה איך אתם חושבים על עלות. ה-harness להערכה, ה-wrapper ללוגים ולוגיקת ה-retry שלכם שומרים על המשמעות, כי הבקשה והתשובה שהם עוטפים לא השתנו.
חלק מהדברים לא עוברים יחד. ה-API של Responses הוא חסר מצב, אז previous_response_id מחזיר 400. cache_control מתקבל ומתעלמים ממנו, כי ה-caching רץ לבד. ב-endpoints הגולמיים השרת לא מריץ שום כלי משלו; הוא מריץ רק את כלי הפונקציה שאתם שולחים, והקוד שלכם מריץ אותם. n חייב להיות 1. אין עדיין מודל embedding, ואין endpoint של batch, fine-tuning, assistants, אודיו או יצירת תמונה. מקור document מסוג PDF בצורת Messages מחזיר 400, אז שלחו קבצים דרך הצ׳אט או דרך endpoint הקבצים.
אם הדבר היחיד שמחזיק אתכם אצל ספק הוא עבודת האינטגרציה, כאן יש ממנה מעט. הוסיפו יתרה קטנה בתמחור, החליפו שלושה ערכים, והריצו את הקוד שכבר יש לכם.
מודלי LLM ו-API
Verboo, Venice AI ו-Drael לצד NotHoly, נובמבר 2026: חיוב, פורמט API, רישיון, בסיס המודלים ואיפה הכלים רצים, עם מקורות.
מודלי LLM ו-API
תוכניות AI קבועות ללא הגבלה מגבילות בדרך כלל מהירות ולא טוקנים. Verboo, Venice.ai, Drael וקרדיט לפי טוקן מושוות בתנאים ובחיובים.
מודלי LLM ו-API
איך מעבירים זרימת עבודה תואמת OpenAI מ-Verboo, מ-Venice AI או מ-Drael ל-NotHoly: base URL, מפתח, מזהי מודל, חיוב, רישיון וכלים.