شغّل Open Interpreter على نقطة نهاية مخصصة متوافقة مع OpenAI.
Updated 2026-07-30
يعرض Open Interpreter api_base مباشرة. وجّهه إلى https://api.apisrouter.com/v1، ضع بادئة openai/ على معرّف النموذج حتى يتحدث LiteLLM بروتوكول chat completions، ويصبح النموذج الذي يكتب ويُشغِّل الكود على جهازك أي معرّف في الكتالوج تحت مفتاح واحد.
إجابة سريعة: api_base مع بادئة نموذج openai/.
يوثّق Open Interpreter مسار نقطة نهاية مخصصة في كلتا الواجهتين. في CLI، مرّر --api_base بنقطة النهاية وmodel-- ببادئة openai/ على المعرّف. في Python، اضبط interpreter.llm.api_base وinterpreter.llm.api_key وinterpreter.llm.model قبل استدعاء chat(). البادئة ليست زخرفة. يعمل Open Interpreter على LiteLLM، وLiteLLM يحل أي عميل مزوّد يستخدم من سلسلة النموذج. openai/claude-sonnet-4-6 تعني "تحدّث ببروتوكول chat-completions الخاص بـ OpenAI إلى أياً كان ما يقوله api_base، بـ claude-sonnet-4-6 كحقل النموذج." أسقط البادئة ويستنتج LiteLLM المزوّد من الاسم العاري بدلاً من ذلك، مُوجِّهاً معرّف claude-* نحو عميل Anthropic ومُتجاهِلاً نقطة النهاية التي أعددتها.
export OPENAI_API_KEY=sk-APIsRouter-...
interpreter \
--api_base https://api.apisrouter.com/v1 \
--model openai/claude-sonnet-4-6ما الذي يفعله Open Interpreter بنموذجه.
Open Interpreter (openinterpreter على GitHub، بنحو 66 ألف نجمة) يمنح نموذج لغة مُفسِّر كود على جهازك: تذكر هدفاً بلغة طبيعية، يكتب النموذج Python أو shell، يُنفِّذه Open Interpreter محلياً، ويُغذِّي المُخرَج المحادثة للخطوة التالية. تلك الحلقة تجعله مختلفاً نوعياً عن عميل دردشة. النموذج لا يُنتِج نثراً؛ بل يُنتِج كوداً يعمل بصلاحيات مستخدمك، ويُكرِّر مقابل أخطاء حقيقية من نظامك الحقيقي. نتيجتان تتبعان للتوجيه. أولاً، جودة النموذج خاصية سلامة وصحة مباشرة: نموذج يهلوس بأعلام أو يُسيء قراءة تتبع خطأ يُنتِج جولة ذهاب وإياب فاشلة أخرى، وفي وضع التشغيل التلقائي يُنتِج واحدة لم تُراجِعها. ثانياً، الحلقة جائعة لـ tokens بطريقة محددة: كل جولة تُعيد إرسال المحادثة والكود والمُخرَج المُلتقَط المتنامية، لذا جلسات التصحيح الطويلة تُراكِم السياق بسرعة. إعداد api_base يُحرِّك هذه الحلقة بأكملها إلى نقطة نهاية واحدة. بما أن حقل النموذج يُمرَّر كسلسلة عادية بعد بادئة openai/، معرّف Claude ومعرّف GPT ومعرّف DeepSeek خيارات قابلة للتبديل بعلم واحد بدلاً من إعدادات مزوّد منفصلة.
الإعداد الكامل: واجهة Python وملف تعريف.
مسار Python يضبط نفس القيم الثلاث على interpreter.llm ويضيف الإعدادين اللذين لا يستطيع LiteLLM اكتشافهما لمعرّف مخصص: context_window وmax_tokens. يستخدم Open Interpreter context_window ليقرر كمية سجل المحادثة التي يحتفظ بها قبل التقليم، لذا تركه غير مضبوط أو افتراضياً على نموذج بـ 200 ألف يُقلِّم قبل الأوان بكثير؛ أعلن ما يدعمه النموذج فعلياً. لإعداد مستمر، تعيش نفس المفاتيح في ملف YAML تعريفي تحت كتلة llm: (افتح مجلد التعريفات بـ interpreter --profiles). يُبقي التعريف نقطة النهاية والنموذج وإعدادات النافذة خارج تاريخ shell الخاص بك ويجعل الإعداد قابلاً للمشاركة عبر الأجهزة، مع بقاء المفتاح مُقدَّماً من البيئة.
import os
from interpreter import interpreter
interpreter.llm.api_base = "https://api.apisrouter.com/v1"
interpreter.llm.api_key = os.environ["APISROUTER_API_KEY"]
interpreter.llm.model = "openai/claude-sonnet-4-6"
# LiteLLM cannot infer these for a custom id; declare them:
interpreter.llm.context_window = 200000
interpreter.llm.max_tokens = 8192
interpreter.llm.supports_functions = True
interpreter.chat("Profile data.csv and plot the top 10 rows by revenue.")اختيار النموذج الذي يكتب كودك.
مقارنة النماذج هنا ملموسة بشكل غير معتاد: أعطِ نموذجَين نفس المهمة وعُدَّ جولات الذهاب والإياب حتى نتيجة تعمل. عرض الاستخدام لكل مفتاح يضيف تكلفة tokens لكل جلسة، وهذا مع عدد الجولات هو المقارنة بأكملها. خلف نقطة نهاية واحدة، كل مرشّح علم واحد.
- الحلقة الرئيسية تريد نموذجاً يكتب كوداً قابلاً للتشغيل ويقرأ تتبعات الأخطاء جيداً من المحاولة الأولى؛ claude-sonnet-4-6 وgpt-5.5 هما الوسط الموثوق، وكل جولة ذهاب وإياب فاشلة يتجنّبها نموذج أفضل هي tokens ووقت جدار زمني موفَّران.
- deepseek-v4-pro مرشّح قوي للجلسات كثيفة الكود حيث يهم الحجم؛ عبر نقطة نهاية واحدة، تجربته مقابل مهامك الخاصة هي تغيير --model واحد.
- جلسات المرافق السريعة (إعادة تسمية ملفات، تحويلات لمرة واحدة، تحويلات صيغ) لا تحتاج استدلالاً طليعياً؛ claude-haiku-4-5-20251001 أو glm-5.2 تُبقيها سريعة وغير مكلفة.
- وضع التشغيل التلقائي (-y) يُزيل خطوة المراجعة البشرية بين توليد الكود وتنفيذه. إذا استخدمته على الإطلاق، استخدمه مع أقوى نموذج تُشغِّله، في بيئة معزولة أو حاوية، أبداً مع نموذج لا تزال تُقيِّمه.
ادفع حسب الاستخدام · أقل من السعر الرسمي
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 |
| GPT-5.5 | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
| DeepSeek V4 Pro | $0.43 / $0.87 per M | $0.40 / $0.90 per M |
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| GLM-5.2 | $1.14 / $4.00 per M | $1.10 / $4.00 per M |
أنماط الفشل الخاصة بـ Open Interpreter.
معرّف نموذج عارٍ يتوجّه حول نقطة نهايتك. بدون بادئة openai/، يحل LiteLLM المزوّد من الاسم: معرّفات claude-* تتجه نحو عميل Anthropic، والنتيجة خطأ مصادقة أو توجيه مقابل مضيف لم تُعِدَّه أبداً. إذا ذكرت الأخطاء SDK بائع بدلاً من بوابتك، فالبادئة مفقودة. افتراضات السياق الافتراضية تُقلِّم جلساتك. لمعرّف لا يعرفه LiteLLM، لا شيء يملأ نافذة السياق؛ يعود Open Interpreter إلى سلوك محافظ ويُقلِّم السجل مبكراً. أعلن context_window صراحة، لأن جلسة تصحيح كود تفقد محاولاتها السابقة تُعيد نفس الأخطاء. جلسات متنامية، فواتير متنامية. كل جولة تُعيد إرسال المحادثة بالإضافة إلى الكود والمُخرَج المُلتقَط. جلسة تلصق dataframe كبيراً أو سجلاً طويلاً في الحلقة تحمله في كل طلب لاحق. فضِّل جعل النموذج يكتب كوداً يفحص الملفات على لصق محتويات الملفات في الدردشة، وابدأ جلسات جديدة عندما تتغيّر المهمة. عدم تطابق استدعاء الدالة. يمكن لـ Open Interpreter استخدام استدعاءات دالة مُهيكَلة حيث تُدعَم؛ علم supports_functions موجود للمعرّفات التي يُخطئ الاكتشاف فيها التخمين. إذا وصلت كتل كود مشوَّهة على نموذج تعرف أنه قادر، اضبطه على True صراحة؛ إذا كان نموذج يفتقر فعلياً لدعم الأدوات، اضبطه على False حتى يعمل مسار الاحتياط. جانب التنفيذ هو مسؤوليتك. api_base يُحرِّك حركة النموذج؛ الكود لا يزال يعمل محلياً بصلاحياتك. البوابة لا تعزل شيئاً، لذا أبقِ التشغيل التلقائي محصوراً في الحاويات ودع المراجعة الأمنية تبقى في الحلقة في كل مكان آخر.
من يوجّه Open Interpreter عبر بوابة.
- المطورون الذين يستخدمون Open Interpreter كأداة أتمتة يومية ويريدون توليد كود بجودة Claude، وتنوّع GPT، ومعرّفات مرافق سريعة خلف مفتاح واحد.
- أهل البيانات الذين يُشغِّلون حلقات تحليل استكشافي، حيث يمكن أن تستهلك جلسة سياقاً مفاجئاً والاستخدام لكل مفتاح يجعل التكلفة لكل ما يعادل دفتراً مرئية.
- المهندسون الذين يقارنون نماذج كتابة الكود على جولات-حتى-تعمل، أصدق معيار متاح، بعلم --model واحد لكل مرشّح.
- الهواة الذين يُشغِّلون مهام مُفسِّر مجدولة أو مُحتواة، حيث نقطة نهاية بمتغيّر بيئة وسر واحد أفضل من مجموعة بيانات اعتماد لكل بائع.
- المطورون الذين لا يملكون وصولاً إلى فوترة بائع معيّن. الوصول القائم على تعبئة الرصيد بدون شرط بطاقة يزيل الاعتماد على التسجيل لكل مزوّد.
تحقق من نقطة النهاية وصحّح أخطاء أول جلسة.
اسرد نماذج البوابة أولاً؛ المعرّف بعد openai/ يجب أن يطابق معرّفاً مخدوماً تماماً، بما في ذلك لاحقة الإصدار. أخطاء أول جلسة تتبع نمطاً. أخطاء تذكر anthropic أو SDK بائع آخر تعني أن بادئة openai/ مفقودة وأن LiteLLM وجّه بالاسم. 401 يعني أن المفتاح غير مرئي في shell الذي أطلق المُفسِّر، أو ضُبِط لمتغيّر مختلف عن المستخدَم؛ مع البادئة في مكانها، تعمل OPENAI_API_KEY أو api_key صريح كلاهما. خطأ model-not-found من البوابة هو خطأ إملائي في المعرّف. خطأ اتصال يعني عادة أن api_base فقد لاحقة /v1؛ يُلحِق العميل /chat/completions بأياً كان القاعدة التي تُقدِّمها. بمجرد تشغيل الحلقة، تعرض لوحة APIsRouter النموذج لكل طلب، وعدد tokens، والإنفاق. جلسات المُفسِّر هي الحالة الكلاسيكية لعبء عمل يبدو صغيراً ويُفوتِر متوسطاً، وعرض الاستخدام هو كيفية رؤية أي الجلسات حملت tokens فعلياً.
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50الأسئلة الشائعة
هل يمكن لـ Open Interpreter تشغيل نماذج Claude أو DeepSeek عبر نقطة نهاية واحدة؟
نعم. مع توجيه api_base إلى البوابة وبادئة openai/ على معرّف النموذج، يتحدث LiteLLM chat completions قياسية إلى تلك النقطة ويُمرِّر المعرّف كسلسلة عادية. معرّفات Claude وGPT وDeepSeek وGLM تعمل جميعاً بنفس الإعدادين.
لماذا يحتاج معرّف النموذج بادئة openai/؟
يعمل Open Interpreter على LiteLLM، الذي يختار عميل مزوّده من سلسلة النموذج. بادئة openai/ تفرض عميل بروتوكول OpenAI مُوجَّهاً إلى api_base الخاص بك. معرّف claude-* عارٍ يُحَل إلى عميل Anthropic بدلاً من ذلك ويتجاهل نقطة نهايتك.
أي متغيّر بيئة يحمل المفتاح؟
مع بادئة openai/ قيد الاستخدام، OPENAI_API_KEY هو الاختيار التقليدي، أو اضبط interpreter.llm.api_key صراحة في Python، أو مرّر --api_key في CLI. أبقِ المفتاح خارج التعريفات والنصوص البرمجية؛ البيئة هي المكان الصحيح له.
هل أحتاج ضبط context_window يدوياً؟
للمعرّفات المخصصة، نعم. لا يستطيع LiteLLM استنتاج النافذة لنموذج لا يعرفه، ويُقلِّم Open Interpreter سجل المحادثة مقابل هذا الرقم. أعلن النافذة الحقيقية للنموذج (200000 لمعرّفات Claude في الجدول) وإلا تفقد الجلسات الطويلة سياقها السابق.
هل التوجيه عبر بوابة يجعل التشغيل التلقائي (-y) آمناً؟
لا. البوابة تحمل حركة النموذج؛ الكود المُولَّد لا يزال يُنفَّذ محلياً بصلاحياتك. التشغيل التلقائي يُزيل خطوة المراجعة، لذا احصره في الحاويات أو البيئات المعزولة بغض النظر عن نقطة النهاية التي تخدم النموذج.
كم tokens تستهلك جلسة المُفسِّر؟
يتناسب مع الجولات وما يدخل الحلقة: كل جولة ذهاب وإياب تُعيد إرسال المحادثة والكود والمُخرَج المُلتقَط. المهام المرفقية القصيرة متواضعة؛ جلسات التصحيح الطويلة مع بيانات مُلصَقة تتراكم بسرعة. عرض الاستخدام لكل مفتاح في لوحة APIsRouter يُظهِر الرقم الحقيقي لكل جلسة.