𝗠𝗮𝘀𝘁𝗿𝗮లో 𝗔𝗜 𝗢𝗯𝘀𝗲𝗿𝘃𝗮𝗯𝗶𝗹𝗶𝘁𝘆ని సరిచేయడం

ఆధునిక వ్యవస్థలను పర్యవేక్షించడానికి OpenTelemetry ఒక ప్రమాణం (standard). సాంప్రదాయక traces చాలా సాఫ్ట్‌వేర్‌లకు ఉపయోగపడతాయి. కానీ అవి AI అప్లికేషన్‌ల విషయంలో విఫలమవుతాయి.

మీరు AIని నిర్మించినప్పుడు, మీకు కొన్ని నిర్దిష్టమైన సమాధానాలు అవసరం: • ఏ మోడల్ అవుట్‌పుట్‌ను రూపొందించింది? • మీరు ఏ ప్రొవైడర్‌ను ఉపయోగించారు? • మీరు ఎన్ని టోకెన్లను ఉపయోగించారు? • మీ డాక్యుమెంట్లను ఏ ఎంబెడ్డింగ్ మోడల్ ప్రాసెస్ చేసింది? • ఆ ఆపరేషన్ యొక్క ఖర్చు ఎంత?

Retrieval-Augmented Generation (RAG) సిస్టమ్స్‌లో ఈ ప్రశ్నలు చాలా ముఖ్యమైనవి.

Mastraకు సహకరిస్తున్నప్పుడు (contributing), RAG embedding observabilityలో ఒక లోపాన్ని నేను గమనించాను. Mastra అనేక AI పనుల కోసం metadataను ఎగుమతి (export) చేస్తుంది, కానీ RAG embedding spans లో ప్రామాణికమైన attributes లేవు.

Observability టూల్స్ ఎంబెడ్డింగ్ ఆపరేషన్‌ను గుర్తించాయి. కానీ అవి సందర్భాన్ని (context) అర్థం చేసుకోలేకపోయాయి. అవి మోడల్ వివరాలు, ప్రొవైడర్ సమాచారం మరియు టోకెన్ వినియోగాన్ని గుర్తించలేకపోయాయి.

ఒక RAG పైప్‌లైన్ ఈ దశలను అనుసరిస్తుంది: • డాక్యుమెంట్లు (Documents) • చంకింగ్ (Chunking) • ఎంబెడ్డింగ్ మోడల్ (Embedding Model) • వెక్టర్ డేటాబేస్ (Vector Database) • సిమిలారిటీ సెర్చ్ (Similarity Search) • LLM జనరేషన్ (LLM Generation)

ఎంబెడ్డింగ్ దశ చాలా కీలకం. ఇక్కడ డేటా లేకపోతే, పనితీరును (performance) డీబగ్ చేయడం కష్టమవుతుంది.

ఒక ఉమ్మడి భాషను సృష్టించడానికి OpenTelemetry 'semantic conventions'ను ఉపయోగిస్తుంది. ప్రతి టూల్ సొంత పేర్లను ఉపయోగించే బదులు, అందరూ ఒకే ప్రమాణాన్ని అనుసరిస్తారు. దీనివల్ల టూల్స్ ఈ క్రింది attributesలను చదవగలుగుతాయి: • gen_ai.system • gen_ai.request.model • gen_ai.usage.input_tokens

Mastra RAG embedding డేటాను ఈ OpenTelemetry ప్రమాణాలకు అనుగుణంగా మ్యాప్ చేయడానికి నేను ఒక pull request సమర్పించాను.

ఈ పనిలో ఇవి ఉన్నాయి: • ఎంబెడ్డింగ్ మోడల్ metadataను ఎగుమతి చేయడం • ప్రొవైడర్ సమాచారాన్ని ఎగుమతి చేయడం • టోకెన్ వినియోగ మెట్రిక్స్‌ను మ్యాప్ చేయడం • attributesలను గ్లోబల్ ప్రమాణాలతో అనుసంధానించడం

దీనివల్ల ఎటువంటి కస్టమ్ కోడ్ లేకుండానే observability సిస్టమ్స్ ఎంబెడ్డింగ్‌లను అర్థం చేసుకోగలవు.

ప్రొడక్షన్ AI సిస్టమ్స్‌కు విజిబిలిటీ (visibility) అవసరం. ఏ మోడల్ వల్ల ఆలస్యం (latency) జరుగుతోంది లేదా ఏ ప్రొవైడర్ వల్ల ఖర్చు ఎక్కువగా ఉంది అనేది మీరు తెలుసుకోవాలి. ప్రామాణికమైన telemetry ఈ సమాధానాలను ఆటోమేటిక్‌గా అందిస్తుంది.

ఓపెన్ సోర్స్ ఒక గొప్ప పాఠాన్ని నేర్పుతుంది. ప్రతి మంచి సహకారం (contribution) కొత్త ఫీచర్‌ను జోడించదు. కొన్నిసార్లు, ఉన్న వ్యవస్థలను పర్యవేక్షించడం మరియు నడపడం సులభతరం చేయడమే అత్యుత్తమమైన పని.

మీరు 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