Mastra में AI observability को ठीक करना

OpenTelemetry आधुनिक सिस्टम की निगरानी के लिए एक मानक है। पारंपरिक traces अधिकांश सॉफ़्टवेयर के लिए काम करते हैं, लेकिन AI एप्लिकेशन के लिए वे विफल हो जाते हैं।

जब आप AI बनाते हैं, तो आपको विशिष्ट उत्तरों की आवश्यकता होती है: • आउटपुट किस मॉडल ने जेनरेट किया? • आपने किस प्रोवाइडर का उपयोग किया? • आपने कितने टोकन का उपयोग किया? • आपके दस्तावेज़ों को किस embedding मॉडल ने प्रोसेस किया? • ऑपरेशन की लागत क्या थी?

Retrieval-Augmented Generation (RAG) सिस्टम में ये प्रश्न सबसे अधिक महत्वपूर्ण होते हैं।

Mastra में योगदान करते समय, मुझे RAG embedding observability में एक कमी मिली। Mastra कई AI कार्यों के लिए metadata एक्सपोर्ट करता था, लेकिन RAG embedding spans में मानक attributes की कमी थी।

Observability टूल्स embedding ऑपरेशन को देख पा रहे थे, लेकिन वे संदर्भ (context) को नहीं समझ पा रहे थे। वे मॉडल विवरण, प्रोवाइडर जानकारी और टोकन उपयोग को मिस कर रहे थे।

एक RAG pipeline इन चरणों का पालन करती है: • Documents • Chunking • Embedding Model • Vector Database • Similarity Search • LLM Generation

Embedding चरण महत्वपूर्ण है। यदि आपके पास यहाँ डेटा की कमी है, तो परफॉरमेंस को डीबग करना कठिन हो जाता है।

OpenTelemetry एक सामान्य भाषा बनाने के लिए semantic conventions का उपयोग करता है। हर टूल द्वारा कस्टम नाम का उपयोग करने के बजाय, हर कोई एक मानक का पालन करता है। इससे टूल्स को इस तरह के attributes पढ़ने की अनुमति मिलती है: • gen_ai.systemgen_ai.request.modelgen_ai.usage.input_tokens

मैंने Mastra RAG embedding डेटा को इन OpenTelemetry मानकों से मैप करने के लिए एक pull request सबमिट किया।

इस कार्य में शामिल था: • Embedding model metadata को एक्सपोर्ट करना • प्रोवाइडर जानकारी को एक्सपोर्ट करना • टोकन उपयोग मेट्रिक्स को मैप करना • Attributes को वैश्विक मानकों के साथ संरेखित (align) करना

यह observability सिस्टम को कस्टम कोड के बिना embeddings को समझने की अनुमति देता है।

प्रोडक्शन AI सिस्टम को विजिबिलिटी की आवश्यकता होती है। आपको यह जानने की ज़रूरत है कि कौन सा मॉडल latency का कारण बनता है या किस प्रोवाइडर की लागत सबसे अधिक है। मानकीकृत (Standardized) telemetry ये उत्तर स्वचालित रूप से प्रदान करती है।

ओपन सोर्स एक महान सबक सिखाता है। हर अच्छा योगदान नया फीचर नहीं जोड़ता है। कभी-कभी सबसे अच्छा काम मौजूदा सिस्टम को मॉनिटर और चलाना आसान बनाता है।

यदि आप AI इंफ्रास्ट्रक्चर बनाते हैं, तो observability को नज़रअंदाज़ न करें। सबसे अच्छे AI सिस्टम observable होते हैं।

Source: https://dev.to/akash_santra_3c96613546c6/fixing-ai-observability-how-i-added-genai-semantic-support-for-rag-embedding-spans-in-mastra-4db9

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