أدلة الانتقالمن LiteLLM
من وكيل LiteLLM تشغّله، إلى وكيل لا تشغّله
LiteLLM شيئان: Python SDK يتحدث إلى أكثر من 100 مزوّد، ووكيل تنشره مع Postgres و Redis يضيف مفاتيح افتراضية وميزانيات وبدائل احتياطية وتخزينًا مؤقتًا. كلاهما يعمل على مفاتيح مزوّديك الخاصة، كما تفعل INFRO. والذي يتغير هو من يشغّل الوكيل. تربط هذه الصفحة إعداد الوكيل بـ INFRO وتوضح كيف تُبقي SDK.
مفتوح المصدر بترخيص MIT من BerriAI، إضافةً إلى نسخة Enterprise مرخَّصة؛ مستضاف ذاتيًا
التسجيل في INFRO ذاتي، دون وسيط. الكتالوج والتوثيق وعقد API متاحة للعموم، والبوابة قيد التشغيل، وكل ما يتجاوز v1 موسوم بـ «لاحقًا». الباقات والفترة التجريبية
أين وصلت الأمور
الترخيص والنسخ
كل ما خارج المجلد enterprise/ مرخَّص بـ MIT؛ و Enterprise هي الصورة نفسها بمفتاح ترخيص، تضيف SSO و SCIM وسجلات التدقيق ومديري الأسرار والدعم.
التنبيهات الأمنية في 2026
تسرد مدونة LiteLLM نفسها اختراقًا لـ litellm 1.82.7 و1.82.8 على PyPI في 2026-03-24 (لم تتأثر صورة Docker الرسمية؛ وصدر الإصدار النظيف 1.83.0 في 2026-03-30)، وحقن SQL في التحقق من المفاتيح في الوكيل أُصلح في 1.83.7 (2026-04-29)، وتجاوزًا للمصادقة عبر ترويسة Host أُصلح في 1.84.0 (2026-06-01). وتشغيل الوكيل يعني متابعة ذلك بنفسك.
على حساب مَن يُخدَم الطلب
حسابك أنت، في كلا المنتجين. لا يملك LiteLLM حساب مزوّد أبدًا، ولا INFRO؛ ويحاسبك مزوّدوك مباشرة.
LiteLLM مجاني ومفتوح ويعمل في أي مكان. إن كانت تلك أسباب اختيارك له، فلا تزال أسبابًا وجيهة.
- يجب ألا تغادر الحركة شبكتك، أو يجب أن تستطيع قراءة كود البوابة وترقيعه. INFRO مستضافة ومغلقة المصدر؛ والاستضافة الذاتية أو الهجينة اتفاق مؤسسات.
- تستخدم التخزين المؤقت الدلالي، أو بدائل احتياطية لنافذة السياق أو سياسة المحتوى، أو بوابة وكلاء A2A، أو استدعاءات رجعية إلى مورّد تسجيل بعينه. لدى INFRO تخزين مؤقت بالمطابقة التامة وقواعد فشل للمسارات وبوابة MCP وتصدير OpenTelemetry.
- تستدعي مزوّدين لا تربطهم INFRO، أو نقاط نهاية لا تخدمها: الدفعات والملفات والضبط الدقيق وRealtime والتضمينات لدى مزوّدين غير OpenAI وAzure OpenAI وMistral أو نقطة نهاية متوافقة مع OpenAI.
- تشغيله لا يكلّفك كثيرًا، لأن لديك فريق منصة يتولى Postgres وRedis والترقيات أصلًا.
التعديلات، صف لكل منها. كل ما لم يُذكر هنا يبقى كما هو.
| LiteLLM | INFRO | |
|---|---|---|
| عنوان URL الأساسي | وكيلك، مثل http://0.0.0.0:4000. | https://api.infro.io/v1 |
| المفتاح | مفتاح LiteLLM افتراضي (sk-...) من /key/generate. | مفتاح بوابة INFRO، يُنشأ في لوحة التحكم أو في واجهة الإدارة API. تنتقل مفاتيح المزوّدين من litellm_params إلى اتصالات INFRO. |
| معرّف النموذج | model_name من model_list، مثل gpt-4o. | مسار بالاسم نفسه، فيواصل المستدعون إرساله، أو vendor/model مباشرة. |
| حقول الجسم | metadata { tags, trace_id, trace_user_id, generation_name }, cache { ttl, namespace }, user. | metadata { user_id, session_id, tags } وcache لذاكرة الاستجابة المؤقتة وX-INFRO-Trace-Id لمعرّف التتبّع. |
قبل · LiteLLM proxy
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "http://0.0.0.0:4000",
apiKey: process.env.LITELLM_API_KEY, // virtual key
});
await client.chat.completions.create({
model: "claude-default", // model_name in model_list
messages: [{ role: "user", content: "Hello" }],
user: "user-123",
// @ts-expect-error LiteLLM extension
metadata: { tags: ["production"] },
});بعد · INFRO
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.infro.io/v1",
apiKey: process.env.INFRO_API_KEY,
});
await client.chat.completions.create({
model: "claude-default", // an INFRO route, same name
messages: [{ role: "user", content: "Hello" }],
// @ts-expect-error INFRO extension
metadata: { user_id: "user-123", tags: { env: "production" } },
});`model_list` يصبح مسارات
كل model_name له عدة عمليات نشر يتحول إلى مسار بتلك الأهداف؛ وتتحول أوزان rpm إلى أهداف موزونة؛ وتتحول router_settings.fallbacks إلى الأهداف اللاحقة في المسار أو إلى fallbacks.
أبقِ SDK
يرسل مزوّد LiteLLM المتوافق مع OpenAI كل ما بعد openai/ على أنه معرّف النموذج، فيصل openai/anthropic/claude-sonnet-5.5 إلى INFRO بصيغة anthropic/claude-sonnet-5.5. وتحدث البدائل الاحتياطية حينها في INFRO لا في SDK.
أو أبقِ الوكيل (proxy) خلف INFRO
اربط الوكيل الوسيط كاتصال openai-compatible خلال فترة الانتقال. لاحظ أن INFRO ترى حينها الوكيل الوسيط مزوّدًا واحدًا فقط، فيبقى التحويل عند الأعطال وحساب التكلفة لكل مزوّد داخل LiteLLM إلى أن تربط المزوّدين مباشرةً.
كائنات LiteLLM مقابل كائنات INFRO، استنادًا إلى توثيق LiteLLM العام كما اطّلعنا عليه في 19 أكتوبر 2026، ومطابقةً مع ما تدعمه البوابة فعلًا. يشير صف واحد إلى أن INFRO لا يوفّر ذلك.
| LiteLLM | ما تفعله هناك | في INFRO |
|---|---|---|
| `model_list` و`litellm_params`الصيغة نفسها | عمليات نشر لكل اسم نموذج، ومفاتيح المزوّدين في ملف الإعداد. | اتصالات المزوّدين (مفاتيح مشفّرة، وأكثر من مفتاح لكل مزوّد) والمسارات المبنية عليها. |
| المفاتيح الافتراضيةالصيغة نفسها | مفاتيح يصدرها الوكيل (proxy) مع تحديد النماذج المسموح بها والميزانية وtpm وrpm والفريق والمستخدم. | مفاتيح بوابة مع نماذج ومزوّدين مسموح بهم ونطاقات IP وبيئة وحد إنفاق وفئة لمعدل الطلبات؛ وتدوير ومفتاح إيقاف. |
| الفرق والمستخدمون والميزانياتالصيغة نفسها | max_budget وbudget_duration لكل مفتاح أو فريق أو مستخدم. | ميزانيات لكل مؤسسة ومشروع وعضو ومفتاح وعميل نهائي، تُفرض مع التزامن، و402 عند السقف قبل استدعاء المزوّد. |
| حدود tpmمختلف | حدود الرموز في الدقيقة لكل مفتاح أو عملية نشر. | مستويات لمعدل الطلبات لكل مفتاح، وميزانيات بالدولار. لا يوجد حد لعدد الرموز في الدقيقة. |
| البدائل الاحتياطية وإعادات المحاولةالصيغة نفسها | fallbacks وnum_retries وفترات التبريد وallowed_fails. | أهداف المسار وقواعد الأعطال حسب نوع الخطأ (إعادة المحاولة أو الانتقال إلى البديل أو التوقف)؛ وfallbacks لكل طلب. |
| بدائل احتياطية عند تجاوز نافذة السياق أو رفض سياسة المحتوىمختلف | نموذج مختلف حين تكون المطالبة طويلة جدًا أو ترفضها سياسة المزوّد. | يمكن لقاعدة الفشل moderation أن تنقل الطلب إلى الهدف التالي. لا يوجد بديل عند تجاوز نافذة السياق. |
| التخزين المؤقتمختلف | ذاكرات مؤقتة مطابقة ودلالية على Redis و S3 و GCS و Qdrant وغيرها. | مطابقة تامة، اختيارية، لإكمالات المحادثة، مستضافة. بلا ذاكرة دلالية. |
| ضوابط الحمايةمختلف | ضوابط حماية قابلة للتركيب، وبعض التكاملات يتطلب Enterprise. | قواعد أنماط تحظر أو تخفي أو تعلّم، وفحوص بنموذج قرار، في كل باقة تتضمن ضوابط الحماية. |
| استدعاءات التسجيل (callbacks)مختلف | استدعاءات رجعية إلى Langfuse وأدوات أخرى؛ وسجلات إنفاق في Postgres. | سجل الطلبات وعمليات التصدير وspans إلى مجمّع OpenTelemetry لديك. |
| تتبّع الإنفاقمختلف | التكلفة من خريطة أسعار النماذج في LiteLLM. | التكلفة التقديرية لدى المزوّد من أسعارك المتفاوض عليها أو السعر المعلن للمورّد، و unpriced حين لا تُعرف، مع مطابقة مقابل واجهتي التكلفة API لدى OpenAI و Anthropic. |
| بوابة MCPالصيغة نفسها | خوادم MCP خلف الوكيل (proxy). | بوابة MCP لخوادم MCP الخاصة بك، مع أدوات موافق عليها وصلاحيات لكل مفتاح. |
| بوابة وكلاء A2Aلا شيء | حركة بين الوكلاء تمر عبر الوكيل الوسيط. | لا شيء. |
| تشغيله بنفسكمختلف | ترخيص MIT، وتشغيل عبر Docker أو pip، في أي مكان. | مستضافة. الاستضافة الذاتية أو الهجينة اتفاقية مؤسسية.المؤسسات — متاح ضمن اتفاقية مؤسسية لا بالتسجيل الذاتي. |
هذه قراءتنا للوثائق التي نشرتها LiteLLM، لا نتيجة تجربة أو اختبار أداء. إن أخطأنا في فهم شيء، أخبرنا وسنصحّح الصف.
ما لا يفعله INFRO
- التشغيل على بنيتك التحتية دون اتفاقية مؤسسات، أو الاطلاع على الكود المصدري.
- التخزين المؤقت الدلالي، والانتقال إلى بديل عند تجاوز نافذة السياق، وA2A.
- تقديم الدفعات أو الملفات أو الضبط الدقيق أو Realtime، أو التضمينات لدى مزوّدين غير OpenAI وAzure OpenAI وMistral أو نقطة نهاية متوافقة مع OpenAI.
- حدود الرموز في الدقيقة؛ وتحدّ INFRO بمعدل الطلبات وبالدولارات.
ما الذي لا ينتقل
- سجلات الإنفاق وتاريخ الطلبات في قاعدة Postgres الخاصة بـ LiteLLM لديك. ولا توجد أداة استيراد.
- المفاتيح الافتراضية. أصدر مفاتيح بوابة INFRO وبدّل المستدعين إليها.
- الاستدعاءات الرجعية والخطافات المخصصة. استخدم تصدير OpenTelemetry، أو أبقِ ذلك المنطق في كودك.
الأسئلة
- هل يمكنني الاستمرار في استخدام LiteLLM Python SDK؟
- نعم. استدعِ INFRO عبر مزوّد LiteLLM المتوافق مع OpenAI:
model="openai/<INFRO model id>"معapi_base="https://api.infro.io/v1"ومفتاح INFRO الخاص بك. - هل INFRO مفتوحة المصدر مثل LiteLLM؟
- لا. INFRO خدمة مستضافة؛ والنشر بالاستضافة الذاتية أو الهجين متاح بموجب اتفاقية مؤسسية.
- من يدفع لمزوّدي النماذج؟
- أنت تدفع، مباشرة، كما مع LiteLLM. INFRO اشتراك ولا تضيف أي هامش (0%) على إنفاق النماذج.
انتقل معنا، أو بمفردك
يطابق برنامج الترحيل إعداداتك في LiteLLM مع اتصالات INFRO ومساراته وميزانياته خلال مكالمة، وينقل معك الخدمة الأولى. ويستمر مزوّدوك في محاسبتك مباشرة؛ وINFRO اشتراك يضيف 0% على الإنفاق على النماذج.
المصادر
كل معلومة عن LiteLLM في هذه الصفحة مصدرها أحد هذه المراجع، كما اطلعنا عليها في 19 أكتوبر 2026. لم نستنتج شيئًا من تجربة أو اختبار أداء أو محادثة.
- LiteLLM docs — homeاطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM docs — Proxy: user keys and client usageاطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM docs — Virtual keysاطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM docs — Reliability (fallbacks, retries)اطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM docs — Cachingاطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM docs — Cache controlsاطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM docs — Enterpriseاطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM — LICENSEاطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM blog — Security update, March 2026اطّلعنا عليه في 19 أكتوبر 2026
- LiteLLM blog — posts tagged securityاطّلعنا عليه في 19 أكتوبر 2026