كيف بنيت صفحات مقارنة الذكاء الاصطناعي بميزانية محدودة
كنت بحاجة لبناء صفحات مقارنة لدليل أدوات الذكاء الاصطناعي الخاص بي.
كانت الحسابات مرعبة. مع وجود 200 نموذج، واجهت ما يقرب من 20,000 زوج محتمل. استخدام Claude Haiku لإنشاء محتوى لكل زوج سيكلف الكثير إذا قمت بتشغيله يوميًا.
إليك كيف حللت المشكلة باستخدام المنطق والقيود.
الاستراتيجية
ركزت على الاستعلامات ذات النية العالية. يريد المستخدمون معرفة "Llama 3 vs Mistral". إنهم يريدون اتخاذ قرار، وليس قراءة مقال طويل.
استخدمت هذه القواعد للتحكم في التكاليف:
• تجميع النماذج حسب وسم خط الإنتاج (pipeline tag) الخاص بها. • اختيار أفضل 4 نماذج فقط حسب عدد التنزيلات في كل مجموعة. • وضع حد أقصى صارم لإجمالي عدد الأزواج.
قلل هذا عدد الأزواج من 20,000 إلى حوالي 50 زوجًا فقط. هذا يحافظ على انخفاض تكاليفي مع تغطية النماذج الأكثر شهرة.
الإعداد التقني
قمت ببناء عملية ETL تعمل كل ليلة. وهي عملية idempotent (متماثلة النتائج)، مما يعني أنه إذا كان الزوج موجودًا بالفعل في قاعدة بياناتي، فإن البرنامج يتخطاه.
في معظم الليالي، يستغرق البرنامج 3 ثوانٍ وتكلفته 0 دولار لأنه يتخطى كل شيء.
أستخدم عدة حيل للحفاظ على كفاءته:
• تخزين المطالبات مؤقتًا (Prompt Caching): أستخدم عميل Claude Haiku مشتركًا. نظرًا لأن مطالبات النظام (system prompt) تظل كما هي، فإن التخزين المؤقت يجعل الاستدعاءات اللاحقة مجانية تقريبًا. • مطالبات موجزة (Lean Prompts): أقوم باختصار ملخصات النماذج إلى 400 حرف. هذا يحافظ على صغر حجم المدخلات وسرعتها. • التوليد الثابت (Static Generation): أستخدم Astro لتحويل البيانات إلى ملفات JSON ثابتة. لا توجد استدعاءات قاعدة بيانات بطيئة أو تأخيرات في وظائف الحافة (edge functions) للمستخدم.
ماذا يحدث عندما يفشل الأمر؟
يمكن أن يكون الذكاء الاصطناعي غير متوقع. أحيانًا يعيد Claude تنسيق JSON غير صحيح.
كتبت نظام بديل (fallback system). إذا فشل الذكاء الاصطناعي، لا تتعطل الصفحة. بدلاً من ذلك، تعرض قالبًا قياسيًا، وتطلب من المستخدم التحقق من صفحات النماذج الفردية. أقوم بتتبع هذه الإخفاقات في قاعدة بياناتي حتى أتمكن من إعادة محاولتها لاحقًا.
ما كنت سأفعله بشكل مختلف
لو بدأت من جديد اليوم، سأغير شيئين:
- مقارنات عبر خطوط الإنتاج المختلفة (Cross-pipeline comparisons): مقارنة نموذج نصي بنموذج رؤية (vision model) أكثر قيمة من مقارنة نموذجين نصيين متشابهين.
- الاختيار القائم على البحث (Search-driven selection): بدلاً من استخدام عدد التنزيلات، سأستخدم سجلات بحث المستخدمين الفعلية لتحديد الأزواج التي يجب بناؤها.
البناء في ظل القيود يجبرك على البناء بذكاء أكبر.
Optional learning community: https://t.me/GyaanSetuAi
