src/model_tiers.json). على عكس البوابة التي تتخذ القرار
داخل الوكيل (proxy) وقت الطلب، فإن قرار التوجيه هنا مرئي وقابل للمقارنة في git.
التوصية بفئة — forge route
- Hinglish) وفق مقياس تشابه بالتداخل مع بوابة ثقة — وليست مجرد بحث بالكلمات المفتاحية.
ابدأ من
route.tier الموصى به ولا تصعّد إلا بعد فشل مُحقِّق خارجي، لا بشكل استباقي أبدًا.
هذا يبقي الإنفاق منخفضًا دون تقييد القدرة عندما تحتاج المهمة إليها فعلًا.النية أولًا، ثم الفئة
يشترك التوجيه في الحسابات مع اكتشاف النية (src/intent.js): يُطابَق الموجّه (prompt) مع
نية معينة عبر مقدِّر k-NN القائم على الأمثلة النموذجية ذاته. لاحظ أن الاثنين يستخدمان
مجموعات إيقاف مختلفة — التوجيه يعامل الأفعال العامة (fix / add / build)
كضوضاء تعقيد، بينما هذه الأفعال بالضبط هي إشارة النية.
جدول الفئات
يُثبِّت جدول الفئات (src/model_tiers.json) معرفات نماذج Anthropic العامة حسب العائلة
(haiku / sonnet / opus / fable). تُوفَّق أسعار المستندات مع هذا الملف عبر فحص المستندات،
بحيث لا يمكن أن ينحرف النص عن الجدول.
إعادة التعيين للبوابات المستضافة ذاتيًا
بوابة LiteLLM أو وكيل مستضاف ذاتيًا يقدّم أسماء نماذجه الخاصة، لذا فإن إرسال معرف قياسي حرفيًا سيؤدي إلى خطأ 404. عند تكوين عنوان URL أساسي لبوابة غير افتراضية، يقوم Forge (src/gateway_model_map.js) بجلب GET /v1/models مرة واحدة لكل عملية ويسجّل نقاطًا
لكل معرف مُعلَن مقابل عائلة كل فئة:
1
بوابة عائلة صارمة
يجب أن تتطابق كلمة العائلة (haiku / sonnet / opus / fable) — وهي بوابة صارمة.
2
يفوز أفضل تداخل
ضمن العائلة، يختار معامل
setOverlap لرموز اسم الفئة أفضل تطابق.3
كسر التعادل نحو الاسم القانوني
يُحسم التعادل لصالح المعرف الأقرب إلى الاسم القانوني.
forge doctor تعيين tier → model المُحَل للتحقق.
المزودون والتكلفة
يُبلِّغ
forge cost --stages عن المراحل المُقاسة فقط — المرحلة التي لا تحتوي على
أحداث تقول “no data”، ولا تعرض قيمة افتراضية أبدًا. أي رقم يظل افتراضًا حتى يُقاس.