בפוסט הזה, נסביר לכם כיצד להתקין את LiteLLM ולאחד מספר ממשקי API של בינה מלאכותית לאחד. זה שימושי במיוחד אם אתם עובדים עם מספר מודלי שפה (LLM) וצריכים... ליישם מערכת ניהול ריכוזית ומאורגנת יותרLiteLLM היא אחת החלופות הטובות ביותר לשימוש בממשק API יחיד תואם OpenAI המספק גישה לספקים מרובים.
התקנת LiteLLM: API יחיד לגישה למספר ספקי בינה מלאכותית

האם יש לך פרויקט אחד שמשתמש ב-OpenAI, אחר עם Claude, עוד אחד עם Gemini, ועוד אחד שפועל באופן מקומי עם Ollama? אז אתה יודע כמה זה יכול להיות קשה. ניהול ממשקי API מרובים, ערכות SDK שונות ומצבי חיבור שונים בין ספקיםהפתרון? התקנת LiteLLM ושילוב של מספר ממשקי API של בינה מלאכותית לאחד יכולים לשים קץ לכאוס ולהחזיר לכם את השליטה.
כמו OpenRouter, LiteLLM שואפת לפתור את אותה בעיה בסיסית: להציע API יחיד תואם OpenAI כדי לגשת לספקי מודלים מרובים של בינה מלאכותיתשניהם מציגים א נקודת קצה תואמים ל-OpenAI, הם מספקים גישה לעשרות מודלים וספקים ומאפשרים בקרת הוצאות, בין היתר.
ובמה הם שונים? בעיקר, במודל הפריסהבעוד ש-OpenRouter הוא נקודת קצה בניגוד לשרת מרוחק שאליו אתם מתחברים ישירות, LiteLLM פועל על המחשב או השרת שלכם (דרך Docker או Python). זה הופך את LiteLLM לבחירה המועדפת עבור אלו שצריכים לעמוד בדרישות מחמירות של אחסון נתונים או פרטיות.
הדבר המעניין הוא ש צוותים רבים משלבים את שני הכליםהם משתמשים ב- LiteLLM כ- כְּנִיסָה באופן פנימי ולהגדיר את OpenRouter כספק נוסף ברקע. זה נותן להם שליטה מלאה על שלהם נקודת קצה תוך ניצול קטלוג OpenRouter מ- backend (ראה את הערך) כיצד ליצור ולקבוע תצורה של חשבון OpenRouterעם זאת, בואו נדבר עכשיו על איך להתקין את LiteLLM ולאחד מספר ממשקי API של בינה מלאכותית לאחד.
כיצד להתקין את LiteLLM ולשלב מספר ממשקי API של בינה מלאכותית לאחד

LiteLLM הוא מציע שתי דרכים להשתמש בוניתן להתקין אותו כ-SDK בסיסי של Python באמצעות pip install litellmאו לפרוס אותו כשרת פרוקסי (עבור צוותים וייצור). אם ברצונך להתקין את LiteLLM ולאחד מספר ממשקי API של בינה מלאכותית לאחד, תזדקק לפרוקסי, מכיוון שהוא חושף... נקודת קצה HTTP מרכזי שבו אתה מגדיר את כל המודלים שלך. לכן, נתמקד באחרון.
La דרך יעילה יותר כדי להריץ את LiteLLM כשרת פרוקסי, עליך לפרוס אותו במכולה של Docker. זה מבטיח שהוא יפעל כשירות עצמאי ברקע במחשב או בשרת שלך. יתר על כן, Docker מאפשר לך לתאם ניתוב מורכב, מגבלות הוצאה לכל מכשיר וסבב מפתחות בתוך קובץ YAML יחיד.
הצעד הראשון בהתקנת LiteLLM ושילוב מספר ממשקי API של בינה מלאכותית לאחד הוא צור את מבנה הפרויקטלשם כך, פתחו את הטרמינל שלכם וצרו תיקייה ייעודית לתצורת פרוקסי על ידי הפעלת הפקודה הבאה mkdir litellm-proxy && cd litellm-proxyלאחר שתסיים, תוכל לעבור להגדרת קובץ המודל של YAML, שהוא הנקודה המרכזית לאיחוד.
תצורת קובץ מודל YAML
בשלב הבא, עלינו הגדר את קובץ ה-YAML כדי להגדיר אילו מודלי שפה ברצונך לחשוף וכיצד להתחבר אליהם.באופן טבעי, אתם צריכים את מפתחות ה-API עבור כל אחד מהם: מה שאנחנו הולכים לעשות הוא לאחד את כולם לתצורה אחת. אתם צריכים גם את השם המדויק של כל דגם.
בנוסף לרישום המודלים, קובץ ה-YAML צריך גם להגדיר אילו מודלים ישמשו כגיבויים במקרה שהמודל הראשי ייכשל. בדוק היטב את המבנה הבא כדי לראות פרטים אלה. בקובץ הבא נאחד את ספקים מסחריים (OpenAI, Anthropic, Gemini), שירותים כמו OpenRouter, ומודלים מקומיים הפועלים על Ollama. מבנה קובץ ה-YAML ייראה כך:
model_list: # מודל עסקי 1: OpenAI - model_name: gpt-4o litellm_params: model: gpt-4o api_key: os.environ/OPENAI_API_KEY # מודל עסקי 2: Anthropic Claude - model_name: claude-3-5-sonnet litellm_params: model: claude-3-5-sonnet-20240620 api_key: os.environ/ANTHROPIC_API_KEY # צובר חיצוני: OpenRouter - model_name: openrouter-llama litellm_params: model: openrouter/meta-llama/llama-3.1-70b-instruct api_key: os.environ/OPENROUTER_API_KEY # מודל מקומי: Ollama - model_name: llama3-local litellm_params: model: llama/llama3 api_base: http://host.docker.internal:11434 router_settings: num_retries: 3 timeout: 15 fallbacks: - gpt-4o: ["claude-3-5-sonnet", "openrouter-llama"]
הגדר את משתני הסביבה ופרוס את המכולה של LiteLLM
בשלב הבא, עליך ליצור קובץ .env באותה ספרייה כדי לאחסן את מפתחות ה-API הפרטיים שלך מבלי לחשוף אותם בקוד. תבחין שהמפתחות אינם מסומנים בקובץ confi.yaml הקודם כדי למנוע חשיפה שלהם. לכן, יש צורך לאסוף את כולם לקובץ אחד. קובץ .env כמו הבא:
OPENAI_API_KEY=sk-proj-your-key-here ANTHROPIC_API_KEY=sk-ant-your-key-here OPENROUTER_API_KEY=sk-or-your-key-here LITELLM_MASTER_KEY=sk-my-master-proxy-key
וזהו! כך מתקינים את LiteLLM ומשלבים מספר ממשקי API של בינה מלאכותית לאחד. מה שנותר לעשות הוא... הפעילו את המכולה הרשמית של LiteLLM, וודאו שאתם מקשרים אותה למשתני התצורה והסביבה הנ"ל.ניתן לעשות זאת על ידי הפעלת הפקודה הבאה:
docker run -d \ --name litellm-proxy \ -p 4000:4000 \ --env-file .env \ -v $(pwd)/config.yaml:/app/config.yaml \ ghcr.io/berriai/litellm:main-latest \ --config /app/config.yaml --port 4000
אימות ובדיקה של כְּנִיסָה אָחִיד

לבסוף, נוודא שתהליך התקנת LiteLLM ומיזוג מספר ממשקי API של בינה מלאכותית לאחד הצליח. אם הכל הלך כשורה והמכולה כבר פועלת, LiteLLM יאזין http://localhost:4000מנקודה זו ואילך, כל יישום או סקריפט מסחרי התואמים ל-OpenAI API יוכלו להשתמש ב- שלך פרוקסי מ- LiteLLM.
תרצה לנסות את זה? נסה לשלוח בקשת HTTP באמצעות מפתח המאסטר המוגדר בקובץ ה-.env שלך. זה ייראה בערך כך:
curl --location 'http://localhost:4000/v1/chat/completions' \ --header 'אישור: Bearer sk-my-master-key-proxy' \ --header 'סוג תוכן: application/json' \ --data '{ "model": "gpt-4o", "messages": [ {"role": "user", "content": "יוצר רשימה של 3 שיטות עבודה מומלצות עבור מיקרו-שירותים."} ] }'
LiteLLM: ממשק API יחיד לשליטה בכולם

כפי שאתם רואים, התקנת LiteLLM ושילוב מספר ממשקי API של בינה מלאכותית לאחד הם תהליך פשוט ושימושי באמת. LiteLLM, המותקן כפרוקסי עם Docker, מציע לכם... נקודת גישה אחת, הנשלטת על ידי המשתמש, עבור כל ממשקי ה-API של הבינה המלאכותית שלכםבניגוד ל-OpenRouter (שהוא שירות SaaS מנוהל), LiteLLM מעניק לך שליטה מלאה על הנתונים והעלויות שלך. עם זאת, בתמורה, עליך לתחזק את התשתית שלך בעצמך.
התקנה עם Docker היא הנתיב המומלץ עבור צוותים. תוכלו לקבל שער מרכזי תוך דקות היכן ש-OpenAI, Anthropic, Gemini, מודלים מקומיים ואפילו OpenRouter נפגשים, כולם חשופים תחת נקודת קצה אחת תואמת OpenAI. נסו זאת: מרכזו את המפתחות והמודלים שלכם עם LiteLLM. הקוד שלכם והשפיות שלכם יודו לכם.
מגיל צעיר, הוקסמתי מכל מה שקשור למדע וטכנולוגי, במיוחד מההתקדמויות שהופכות את חיינו לקלים ומהנים יותר. אני אוהב להתעדכן בחדשות ובטרנדים האחרונים, ולשתף את החוויות, הדעות והטיפים שלי לגבי המכשירים והגאדג'טים שאני משתמש בהם. זה הוביל אותי להיות כותב אתרים לפני קצת יותר מחמש שנים, תוך התמקדות בעיקר במכשירי אנדרואיד ומערכות הפעלה Windows. למדתי להסביר מושגים מורכבים במונחים פשוטים כדי שהקוראים שלי יוכלו להבין אותם בקלות.

