شغّل Onyx على مزوّد LLM مخصص متوافق مع OpenAI.
Updated 2026-07-29
يشحن Onyx تدفق Add Custom LLM Provider في لوحته الإدارية: اضبط Provider Name على openai، وجّه Base URL نحو https://api.apisrouter.com/v1، أضف معرّفات نماذجك، وتجيب محادثة مساحة العمل والمساعدون عبر البوابة بكل نموذج في الكتالوج خلف مفتاح واحد.
إجابة سريعة: Add Custom LLM Provider في اللوحة الإدارية.
توثيق Onyx صريح بأن مزوّداً مخصصاً يعمل طالما يكشف نقاط نهاية متوافقة مع OpenAI، وشكل Base URL في مثاله بالضبط على طراز بوابة https://yourprovider.com/v1. التدفق: افتح Admin Panel من أيقونة ملفك الشخصي، اذهب إلى Configuration، ثم Language Models، واختر Add Custom LLM Provider. أربعة قرارات تهم في ذلك النموذج. Display Name تجميلي. يجب أن يطابق Provider Name مفتاح مزوّد LiteLLM، لأن Onyx يوجّه استدعاءات النموذج عبر LiteLLM تحت الغطاء؛ بالنسبة لبوابة متوافقة مع OpenAI ذلك هو openai. Base URL هو نقطة نهاية البوابة بما فيها لاحقة /v1. وقسم Model Configurations هو حيث تسجّل كل معرّف نموذج تريده متاحاً، مهجَّى بالضبط كما يخدمه الكتالوج. احفظ، اختر افتراضياً، وتتوجّه المحادثات عبر البوابة فوراً.
Admin Panel -> Configuration -> Language Models
-> Add Custom LLM Provider
Display Name: APIsRouter
Provider Name: openai (LiteLLM provider key)
Base URL: https://api.apisrouter.com/v1
API Key: sk-YOUR-APISROUTER-KEY
Model Configurations:
claude-sonnet-4-6
claude-haiku-4-5-20251001
deepseek-v4-proأين يجلس LLM في عمارة Onyx.
Onyx (onyx-dot-app على GitHub، بنحو 31 ألف نجمة، سابقاً Danswer) منصة AI مفتوحة المصدر لمعرفة الشركة: يفهرس مصادر مثل Slack وGoogle Drive وConfluence وعشرات الموصِّلات الأخرى، ثم يجيب على أسئلة حولها عبر واجهة محادثة ومساعدين وتدفقات عمل وكلاء. هي واحدة من أكثر مكدسات البحث المؤسسي ذاتية الاستضافة نشراً، وهذا بالضبط لماذا تستحق فاتورة LLM الخاصة بها قرار توجيه بدلاً من افتراضي. ينقسم الأنبوب بوضوح إلى نصفين. الفهرسة والاسترجاع، بما في ذلك تضمين المستندات وإعادة الترتيب، يعملان على خادم النماذج الخاص بـ Onyx بنماذج محلية افتراضياً؛ لا شيء من ذلك يلمس مزوّد LLM الخاص بك. توليد الإجابة هو النصف الآخر: بمجرد أن يجمع الاسترجاع المقاطع ذات الصلة، يقرأها LLM ويكتب الرد المبني على السياق، وذلك الاستدعاء يمر عبر LiteLLM إلى أياً كان المزوّد الذي أعدّه المسؤول. تدفق المزوّد المخصص يُبدِّل وجهة هذا النصف بالضبط. لأن LiteLLM يُمرِّر معرّف النموذج كسلسلة نصية عادية إلى مزوّد من نوع openai، يمكن أن تكون المعرّفات التي تسجّلها في Model Configurations أي شيء تخدمه نقطة النهاية خلف Base URL: Claude للإجابات الدقيقة المبنية على السياق، DeepSeek للحجم، Gemini لسياقات مصدر طويلة جداً. يمكن لمساعدين مختلفين الاعتماد افتراضياً على نماذج مختلفة، لذا يمكن لمساعد دعم ومساعد هندسي ركوب نقطتَي سعر مختلفتين عبر نفس مُدخَل المزوّد.
الإعداد الكامل، وما يبقى دون مساس.
نموذج المزوّد هو التكامل بأكمله؛ لا يوجد ملف إعداد لتعديله أو حاوية لإعادة بنائها من أجله. بعد الحفظ، اضبط النموذج الافتراضي لمساحة العمل، واختيارياً تجاوز النموذج لكل مساعد حيث تريد مستويات جودة مختلفة. ما يبقى دون مساس عمداً: تحتفظ الموصِّلات ببيانات اعتمادها الخاصة، والفهرس غير متأثر، ونموذج التضمين المُعَدّ للبحث لا يتحرك. هذا الفصل يستحق التوضيح لأنه يجعل هذا تغييراً منخفض المخاطر. لو أساءت البوابة التصرف، ما زال البحث والمصادر ستعمل؛ فقط توليد الإجابة سيخطئ، وتبديل الافتراضي إلى مزوّد سابق قائمة منسدلة واحدة. بالنسبة للفرق التي تُؤتمِت النشرات، يمكن زرع نفس تعريف المزوّد عبر API الخاص بـ Onyx بدلاً من النقر عبر الواجهة، لكن مسار اللوحة الإدارية هو السطح الموثَّق والمستقر، وإعداد لمرة واحدة نادراً ما يبرر أكثر من ذلك.
# confirm the gateway lists the ids you plan to register
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50
# confirm a chat completion works end to end
curl -s https://api.apisrouter.com/v1/chat/completions \
-H "Authorization: Bearer $APISROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"claude-sonnet-4-6",
"messages":[{"role":"user","content":"ping"}]}'اختيار النماذج لإجابات مؤسسية مبنية على السياق.
تقييم النموذج داخل Onyx ملموس بشكل غير معتاد: اسأل نفس السؤال مقابل نفس الموصِّلات بافتراضيَي مساعدين مختلفين وقارن أي إجابة تستشهد بالمقاطع الصحيحة. سجل الاستخدام لكل مفتاح يسعّر كلا المرشّحين على مزيج أسئلتك الحقيقي.
- الإجابة المبنية على السياق ثقيلة بالمدخل: يقرأ النموذج مقاطع مسترجَعة تفوق الإجابة التي يكتبها بكثير. سعر token المدخل إذاً يحدّد تكلفتك لكل سؤال أكثر من سعر المُخرَج.
- claude-sonnet-4-6 افتراضي قوي لمساحة العمل: منضبط في البقاء داخل المصادر المسترجَعة ومقاوم لاختراع سياسة غير موجودة في المستندات.
- المساعدون عالو الحركة (مكتب مساعدة تقنية، أسئلة موارد بشرية شائعة) يعملان جيداً على claude-haiku-4-5-20251001 أو deepseek-v4-pro، حيث تُبقي أسعار الحجم التكلفة لكل مقعد متوقَّعة.
- مستندات المصدر الطويلة تفضّل معرّفات طويلة السياق؛ gemini-3.1-pro-preview يستحق الاختبار للمساعدين الذين يجذبون مستندات تصميم أو عقوداً كبيرة إلى السياق.
- سجّل عدة معرّفات في مُدخَل مزوّد واحد وأسنِدها لكل مساعد. مستويات جودة لكل فريق تتفوق على نموذج توافق عالمي واحد.
ادفع حسب الاستخدام · أقل من السعر الرسمي
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| النموذج | السعر الرسمي | سعرنا |
|---|---|---|
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| GPT-5.6 Terra | $2.50 / $15.00 per M | $2.00 / $12.00 per M |
| Gemini 3.1 Pro Preview | $2.00 / $12.00 per M | $1.60 / $9.60 per M |
| DeepSeek V4 Pro | $0.43 / $0.87 per M | $0.40 / $0.90 per M |
أنماط الفشل الخاصة بـ Onyx.
Provider Name ليس تسمية نص حر. يجب أن يطابق مفتاح مزوّد LiteLLM، وبالنسبة لبوابة ذلك المفتاح هو openai. اسم مُختلَق يفشل وقت الطلب بخطأ مزوّد LiteLLM حتى لو حُفظ النموذج بسلام. يريد Base URL لاحقة /v1. يُظهِر توثيق Onyx الخاص أشكال نقاط نهاية تنتهي بـ /v1؛ بدونها، يُحَل مسار chat-completions خاطئاً وتُعيد الطلبات 404 عند البوابة. معرّفات النموذج تعيش في Model Configurations. نموذج لم تسجّله هناك لا يمكن اختياره كافتراضي، وخطأ إملائي في معرّف مُسجَّل يظهر كخطأ model-not-found عند أول استخدام، لا عند الحفظ. قائمة /v1/models الخاصة بالبوابة هي الهجاء المرجعي. إذا كانت واجهة المسؤول لديك تفتقد حقل Base URL في نموذج النماذج المخصصة، فقد صادفت تراجعاً موثَّقاً في الواجهة في بعض إصدارات 2026 بدلاً من ميزة مفقودة؛ الترقية تُعيد الحقل. وتذكّر أي نصف حرّكته: إذا بدت نتائج البحث خاطئة أو قديمة، فذلك الفهرسة والموصِّلات، التي لا تلمس المزوّد المخصص أبداً. فقط الإجابات المُولَّدة تتوجّه عبر البوابة.
من يوجّه Onyx عبر بوابة.
- الفرق ذاتية الاستضافة التي تستبدل حسابات لكل بائع بنقطة نهاية واحدة، ومفتاح واحد، واستخدام لكل مفتاح يُخطَّط بنظافة إلى مساحة عمل أو قسم.
- المؤسسات التي وحّدت Onyx للبحث الداخلي وتريد إجابات مبنية على السياق بجودة Claude دون علاقة فوترة منفصلة مع Anthropic.
- فرق المنصات التي تشغّل عدة مساعدين بمستويات جودة مختلفة، مُسعَّرة لكل مساعد عبر معرّفات نموذج مُسجَّلة على مزوّد واحد.
- المُقيِّمون الذين يقارنون جودة الإجابة عبر عائلات نماذج على نفس مجموعة المستندات، حيث كل مرشّح معرّف مُسجَّل بدلاً من تكامل مزوّد جديد.
- المطورون الذين لا يملكون وصولاً إلى فوترة بائع معيّن. الوصول القائم على تعبئة الرصيد بدون شرط بطاقة يزيل الاعتماد على التسجيل لكل مزوّد.
تحقق من نقطة النهاية وصحّح أخطاء أول محادثة.
فحصا curl أعلاه يغطيان نصف البوابة قبل لمس النموذج: المعرّفات التي تنوي تسجيلها يجب أن تظهر في /v1/models، وإكمال محادثة مباشر يجب أن يجيب. داخل Onyx، تتموضع الأعطال بسرعة. خطأ مزوّد يُسمّي LiteLLM يعني أن Provider Name ليس مفتاحاً صالحاً؛ اضبطه على openai. خطأ مصادقة عند أول محادثة يعني أن API Key لا ينتمي إلى نقطة النهاية في Base URL. خطأ model-not-found هو عدم تطابق معرّف بين Model Configurations والكتالوج. إجابات تُولَّد لكن تتجاهل مستنداتك مشكلة استرجاع أو موصِّل، أعلى في التسلسل من مزوّد LLM تماماً. بمجرد تدفّق المحادثات، تعرض لوحة APIsRouter النموذج لكل طلب، وعدد tokens، والإنفاق. بالنسبة لأداة مساحة عمل حيث يحمل كل سؤال سياقاً مسترجَعاً، ذلك الرقم لـ tokens لكل سؤال هو الأساس الصادق للتخطيط للسعة، ومفتاح واحد لكل مساحة عمل يحوّل سجل الاستخدام إلى تقرير تكلفة على مستوى القسم.
الأسئلة الشائعة
هل يدعم Onyx مزوّدي LLM مخصَّصين متوافقين مع OpenAI؟
نعم، كتدفق موثَّق: Admin Panel، Configuration، Language Models، Add Custom LLM Provider. ينص التوثيق على أن المزوّد يجب أن يكشف نقاط نهاية متوافقة مع OpenAI ويُظهِر أشكال Base URL تنتهي بـ /v1، وهو بالضبط ما توفّره البوابة.
ماذا أُدخِل كـ Provider Name لبوابة؟
openai. يوجّه Onyx الاستدعاءات عبر LiteLLM، ويجب أن يطابق Provider Name مفتاح مزوّد LiteLLM؛ openai هو المفتاح لأي نقطة نهاية متوافقة مع OpenAI يمكن الوصول إليها بـ Base URL مخصص.
هل يمكن لـ Onyx الإجابة بنماذج Claude أو DeepSeek عبر هذا الإعداد؟
نعم. سجّل المعرّفات (مثلاً claude-sonnet-4-6 أو deepseek-v4-pro) في قسم Model Configurations الخاص بالمزوّد. يُمرِّرها LiteLLM كسلاسل نصية عادية إلى Base URL، لذا أي شيء تخدمه البوابة قابل للاختيار.
هل يغيّر المزوّد المخصص فهرسة مستندات Onyx أو تضميناته؟
لا. تعمل الفهرسة والتضمين وإعادة الترتيب على خادم النماذج الخاص بـ Onyx، محلياً افتراضياً، وتحتفظ الموصِّلات ببيانات اعتمادها الخاصة. مزوّد LLM المخصص يُحرِّك فقط توليد الإجابة.
هل يمكن لمساعدين مختلفين استخدام نماذج مختلفة على مزوّد واحد؟
نعم. سجّل معرّفات متعددة في Model Configurations الخاصة بالمزوّد، ثم اضبط الافتراضيات لكل مساعد. يمكن لمساعد مكتب مساعدة عالي الحركة تشغيل معرّف سريع بينما يعتمد مساعد بحث افتراضياً على معرّف حديث، كلاهما عبر نفس نقطة النهاية والمفتاح.
هل كان هذا نفسه في Danswer؟
Onyx هو مشروع Danswer المُعاد تسميته، وانتقل مفهوم المزوّد المخصص معه. التوثيق الحالي يعيش تحت اسم Onyx، وتدفق اللوحة الإدارية الموصوف هنا هو السطح الحالي؛ أدلة Danswer الأقدم قد تُظهِر تخطيطات حقول قديمة.