मी कमी खर्चात AI तुलनात्मक पेजेस (Comparison Pages) कसे तयार केले

मला माझ्या AI टूल्स डिरेक्टरीसाठी तुलनात्मक पेजेस तयार करण्याची गरज होती.

गणित खूप भीतीदायक होते. २०० मॉडेल्ससह, माझ्यासमोर जवळपास २०,००० संभाव्य जोड्या (pairs) होत्या. जर मी दररोज प्रत्येक जोडीसाठी मजकूर तयार करण्यासाठी Claude Haiku वापरला असता, तर त्याचा खर्च खूप जास्त झाला असता.

तर्क (logic) आणि मर्यादांचा वापर करून मी हे कसे सोडवले ते खाली दिले आहे.

रणनीती (The Strategy)

मी 'high-intent' क्वेरीजवर लक्ष केंद्रित केले. वापरकर्त्यांना "Llama 3 vs Mistral" काय आहे हे जाणून घ्यायचे असते. त्यांना निर्णय हवा असतो, मोठा निबंध नाही.

खर्च नियंत्रित करण्यासाठी मी खालील नियम वापरले:

• मॉडेल्सना त्यांच्या pipeline tag नुसार गटबद्ध करा. • प्रत्येक गटातील डाउनलोड संख्येनुसार फक्त टॉप ४ मॉडेल्स निवडा. • एकूण जोड्यांवर एक कडक मर्यादा (hard limit) ठेवा.

यामुळे माझ्या जोड्या २०,००० वरून सुमारे ५० पर्यंत कमी झाल्या. यामुळे लोकप्रिय मॉडेल्स कव्हर करताना माझा खर्च कमी राहतो.

तांत्रिक सेटअप (The Technical Setup)

मी एक ETL प्रक्रिया तयार केली जी दररोज रात्री चालते. ती idempotent आहे. याचा अर्थ असा की जर ती जोडी माझ्या डेटाबेसमध्ये आधीच अस्तित्वात असेल, तर स्क्रिप्ट ती वगळते.

बहुतेक रात्री, स्क्रिप्ट ३ सेकंदात पूर्ण होते आणि तिचा खर्च $० येतो कारण ती सर्व गोष्टी वगळते.

ती कार्यक्षम ठेवण्यासाठी मी काही युक्त्या वापरतो:

• Prompt Caching: मी एक शेअर केलेला Claude Haiku क्लायंट वापरतो. सिस्टीम प्रॉम्प्ट (system prompt) तोच राहत असल्याने, कॅशिंगमुळे पुढील कॉल्स (calls) जवळपास मोफत होतात. • Lean Prompts: मी मॉडेलचे सारांश ४०० कॅरेक्टर्सपर्यंत मर्यादित करतो. यामुळे इनपुट लहान आणि वेगवान राहते. • Static Generation: मी डेटाला स्टॅटिक JSON फाइल्समध्ये रूपांतरित करण्यासाठी Astro वापरतो. यामुळे वापरकर्त्यासाठी डेटाबेस कॉल्स किंवा edge function मधील विलंब (latency) जाणवत नाही.

जेव्हा ते अपयशी ठरते तेव्हा काय होते?

AI अनपेक्षित असू शकते. कधीकधी Claude चुकीचा JSON परत करतो.

मी एक fallback सिस्टम तयार केली आहे. जर AI अपयशी ठरले, तर पेज क्रॅश होत नाही. त्याऐवजी, ते एक स्टँडर्ड टेम्पलेट दाखवते. ते वापरकर्त्याला वैयक्तिक मॉडेल पेजेस तपासण्यास सांगते. मी या त्रुटी माझ्या डेटाबेसमध्ये ट्रॅक करतो जेणेकरून मी नंतर पुन्हा प्रयत्न करू शकेन.

मी वेगळे काय केले असते

जर मी आज पुन्हा सुरुवात केली असती, तर मी दोन गोष्टी बदलल्या असत्या:

१. Cross-pipeline comparisons: दोन सारख्या टेक्स्ट मॉडेल्सची तुलना करण्यापेक्षा, एका टेक्स्ट मॉडेलची तुलना व्हिजन मॉडेलशी करणे अधिक मौल्यवान आहे. २. Search-driven selection: डाउनलोड संख्या वापरण्याऐवजी, कोणत्या जोड्या तयार करायच्या हे ठरवण्यासाठी मी वापरकर्त्यांच्या प्रत्यक्ष सर्च लॉग्सचा (search logs) वापर केला असता.

मर्यादांसह काम केल्यामुळे तुम्हाला अधिक हुशारीने काम करण्यास भाग पाडले जाते.

Source: https://dev.to/morinaga/how-i-built-pairwise-ai-model-compare-pages-with-claude-haiku-and-a-budget-cap-3hpm

Optional learning community: https://t.me/GyaanSetuAi