RAG पाइपलाइन्स ऐसे बनाना बंद करें... इसके बजाय MarkItDown का उपयोग करें

BBetter Stack
컴퓨터/소프트웨어AI/미래기술

Transcript

00:00:00हम अपने AI ऐप्स बनाने से कहीं ज्यादा समय दस्तावेज़ों को प्रोसेस करने में बिताते हैं।
00:00:05हम कई लाइब्रेरीज़ को जोड़ते हैं, आखिरकार एक PDF को पाइपलाइन में लाते हैं, और LLM फिर भी गलत जवाब देता है।
00:00:11मॉडल खराब होने के कारण नहीं, बल्कि मार्कडाउन खराब होने के कारण।
00:00:14यह मार्कडाउन (MarkItDown) है।
00:00:16माइक्रोसॉफ्ट का एक टूल जो GitHub पर 110,000 से ज्यादा स्टार्स के साथ बहुत लोकप्रिय हुआ है,
00:00:21और यह पूरी पाइपलाइन को बस एक लाइन के कोड में ठीक कर देता है।
00:00:24मैं आपको दिखाऊंगा कि यह सब बस कुछ ही मिनटों में कैसे काम करता है।
00:00:30[संगीत]
00:00:33ठीक है, तो बेसिकली हर AI प्रोजेक्ट की शुरुआत एक जैसी होती है।
00:00:36आपके पास हर जगह फाइलें होती हैं, वर्ड डॉक्स, स्लाइड्स, स्प्रेडशीट्स, PDF स्क्रीनशॉट्स, शायद ऑडियो फाइलें भी।
00:00:43और फिर आता है वो मजेदार हिस्सा, जो हम डेवलपर्स को बहुत पसंद है।
00:00:46हम टूल्स को स्टैक करना शुरू कर सकते हैं।
00:00:49तो हमारे पास PDF के लिए एक टूल होगा, एक्सेल के लिए, वर्ड के लिए, है ना?
00:00:54ये सभी लाइब्रेरीज़ जिन्हें हम इस पाइपलाइन को बनाने के लिए आपस में जोड़ रहे हैं।
00:00:59पहले तो यह ठीक लगता है, काम करता है, बिल्कुल।
00:01:02फिर चीजें टूटने लगती हैं।
00:01:04टेबल्स का स्ट्रक्चर खराब हो जाता है, हेडिंग्स गायब हो जाती हैं, और जाहिर है टोकन का इस्तेमाल बढ़ जाता है।
00:01:10और अब RAG पाइपलाइन बस कचरा खींच रही है और एजेंट गलत जवाब दे रहा है।
00:01:16और हम असल में प्रोडक्ट शिप करने के बजाय इंजेक्शन को डीबग करने में लगे हैं।
00:01:19और वास्तव में, यह क्या कर रहा है?
00:01:21यह सिर्फ समय बर्बाद कर रहा है।
00:01:22मिनटों नहीं, बल्कि हर हफ्ते घंटों।
00:01:25तो अपने मॉडल को ठीक करने के बजाय, आपको वास्तव में अपने इनपुट को ठीक करने की जरूरत है।
00:01:29मैं आपको दिखाता हूं कि यह असल में कैसा दिखता है।
00:01:31यदि आप अपने वर्कफ़्लो को तेज करने वाले टूल्स पसंद करते हैं, तो सब्सक्राइब करना न भूलें।
00:01:35हमारे वीडियो लगातार आते रहते हैं।
00:01:37ठीक है, अब मुझे इसे जल्दी से समझा लेने दीजिए।
00:01:39यह पूरी तरह से पायथन है, इसलिए यह काफी सरल है।
00:01:42सबसे पहले, मैं इसे अपने वर्चुअल एनवायरनमेंट में पिप इंस्टॉल करता हूं।
00:01:45मेरे पास यहां एक PDF है, बस एक doc.pdf।
00:01:48और मैं इसे अपने टर्मिनल में चला सकता हूं।
00:01:50मैं 'markitdown doc.pdf output.md' चलाऊंगा।
00:01:55बस इतना ही।
00:01:56यह अपने आप मेरे लिए एक फाइल बना देता है।
00:01:58हम उस फाइल को खोल सकते हैं और अंदर वही है जिसकी हम उम्मीद कर रहे थे।
00:02:03हेडिंग्स साफ हैं, टेबल वास्तव में टेबल की तरह दिखते हैं, स्ट्रक्चर अभी भी बरकरार है।
00:02:08और अब जब हम इसके लिए पायथन में कुछ कोड लिखते हैं, तो हम इसके साथ और भी बहुत कुछ कर सकते हैं।
00:02:13तो अपने इम्पोर्ट्स के साथ और OpenAI का उपयोग करके, मैं एक क्लाइंट और फिर एक मार्कडाउन ऑब्जेक्ट बना सकता हूं।
00:02:20मैं अपनी API की और वह मॉडल पास करूंगा जिसे हम चलाना चाहते हैं।
00:02:25जब मैं कोड चलाता हूं, तो आउटपुट मेरे टर्मिनल में जनरेट हो जाता है, इसलिए यह बहुत साफ है।
00:02:29और इससे भी बेहतर, जो वास्तव में कूल है, वह यह है कि मैं एक PNG इमेज भी प्राप्त कर सकता हूं।
00:02:33इसके लिए, मुझे NVIDIA से एक चार्ट मिला।
00:02:35यह रही मेरी इमेज जिसमें कुछ डेटा है।
00:02:39अब मैं चार्ट को मार्कडाउन में बदल सकता हूं।
00:02:42तो मैं बस फिर से कन्वर्ट फंक्शन का उपयोग करके मार्कडाउन को अपना काम करने दे सकता हूं।
00:02:47इस बार हम इसे अपनी इमेज, अपनी PNG दे रहे हैं।
00:02:50और यहां अब हमें उस चार्ट का सारांश मिलता है कि वह क्या है और हम RAG के लिए क्या निकाल सकते हैं और उपयोग कर सकते हैं।
00:02:56यह बहुत बड़ा है, क्योंकि यह हमें अपने कोड में ही तेजी से जो चाहिए उसे निकालने की अनुमति देता है
00:03:01ताकि हम बहुत सारे अलग-अलग टैब्स के बीच कूदे बिना काम करना जारी रख सकें।
00:03:05तो मार्कडाउन वास्तव में क्या है?
00:03:07यह माइक्रोसॉफ्ट रिसर्च का एक ओपन सोर्स पायथन टूल है।
00:03:11यह MIT लाइसेंस प्राप्त है, यह विशेष रूप से LLM वर्कफ़्लो के लिए बनाया गया है।
00:03:16इसका काम गन्दी फाइलों को लेना और उन्हें साफ मार्कडाउन में बदलना है।
00:03:19ताकि मॉडल वास्तव में उन्हें समझ सकें।
00:03:22यह हमारी उम्मीद से कहीं ज्यादा सपोर्ट करता है।
00:03:25Word, PowerPoint, Excel, PDF, ऑडियो, इमेजेस, और लिंक्स जैसी चीजें भी, आप नाम लें, सब कुछ।
00:03:32इसमें अब एक MCP सर्वर भी है, इसलिए आप इसे सीधे Claude डेस्कटॉप या अपने खुद के एजेंट में प्लग कर सकते हैं।
00:03:40प्लस प्लगइन्स।
00:03:41तो इंजेक्शन पाइपलाइन्स बनाने के बजाय, हम अब बस एक टूल को कॉल कर रहे हैं।
00:03:47डेवलपर्स मॉडल के साथ नहीं जूझ रहे थे, वे इनपुट के साथ जूझ रहे थे।
00:03:51और उम्मीद यह थी कि, ठीक है, बस बेहतर मॉडलों का उपयोग करें।
00:03:55लेकिन इस सब की पूरी सच्चाई यह है कि बेहतर इनपुट बराबर है बेहतर आउटपुट।
00:04:00तो अब ऐसी स्क्रिप्ट लिखने के बजाय जो टूट रही हैं, लोग अब सब कुछ के लिए एक टूल का उपयोग कर रहे हैं, MarkItDown।
00:04:06RAG पाइपलाइन्स, एजेंट्स, फाइन-ट्यूनिंग डेटासेट्स, नॉलेज बेस, डॉक्यूमेंट एनालिसिस, यह सब हम पहले से ही कर रहे हैं।
00:04:13और जो महत्वपूर्ण विवरण ज्यादातर लोग मिस कर जाते हैं, वह यह है कि यह स्ट्रक्चर्ड, टोकन-एफिशिएंट मार्कडाउन तैयार करता है।
00:04:20तो इसमें कम शोर जा रहा है, लेकिन हमें बेहतर जवाब मिल रहे हैं, वो बेहतर आउटपुट।
00:04:24लेकिन इसका मतलब यह नहीं है कि यह एकदम सही है।
00:04:26अब आइए इसकी तुलना उससे करें जो आप शायद पहले से उपयोग कर रहे हैं या आपने आसपास देखा है।
00:04:31अब हमारे पास Pandoc नाम का एक टूल है, तो आप उम्मीद करेंगे कि Pandoc यहां जीतेगा, ठीक है?
00:04:36लेकिन यह MarkItDown से अलग समस्या को हल कर रहा है।
00:04:40Pandoc इंसानों के लिए है, जैसे पब्लिशिंग, फॉर्मेटिंग, लाटेक (LaTeX)।
00:04:44MarkItDown मशीनों के लिए है, LLMs, पाइपलाइन्स, ऑटोमेशन।
00:04:48यह एक तरह का एक जैसा विचार है, लेकिन लक्ष्य अलग है।
00:04:51और फिर हमारे पास 'Unstructured' या 'Docling' जैसी चीजें हैं।
00:04:55ये बहुत अच्छे हैं, लेकिन ये बहुत भारी भी हैं।
00:04:58वे ML मॉडलों का उपयोग करते हैं, उन्हें ज्यादा सेटअप की जरूरत होती है, और वास्तव में जटिल दस्तावेज़ों के लिए बेहतर हैं।
00:05:03MarkItDown इन सबके विपरीत दृष्टिकोण अपनाता है।
00:05:05इसमें कम सेटअप है, बेहद आसान है, तेजी से परिणाम मिलते हैं, और यह ज्यादातर फाइलों के लिए काफी अच्छा है।
00:05:11तो यहाँ असली ट्रेड-ऑफ है।
00:05:12क्या आप परफेक्ट एक्सट्रैक्शन चाहते हैं, या आप कुछ ऐसा चाहते हैं जो बहुत तेजी से और भरोसेमंद तरीके से काम करे?
00:05:18हम में से अधिकांश के लिए, गति जीतेगी।
00:05:20अब, निश्चित रूप से, नुकसान यह है कि जटिल PDF अभी भी इसे तोड़ देंगे, है ना?
00:05:24विशेष रूप से घने टेबल या अजीब लेआउट।
00:05:27यदि आप हर दिन गंदे स्टैंडर्ड दस्तावेज़ों से निपटते हैं, तो Docling या Unstructured बहुत बेहतर करेंगे।
00:05:32लेकिन अगर आपको इमेज डिस्क्रिप्शन चाहिए, तो आपको एक LLM प्लग इन करना होगा।
00:05:36तो यह परफेक्ट नहीं है, लेकिन यह एक बहुत ही कूल टूल है जो एक वास्तविक समस्या को हल कर रहा है।
00:05:41तो क्या इसका उपयोग करना सार्थक है?
00:05:43हां, ज्यादातर लोगों के लिए, बिल्कुल।
00:05:45यदि आप अभी AI ऐप्स बना रहे हैं, तो यह शायद वही है जो आपकी इंजेक्शन लेयर को दिखना चाहिए।
00:05:50आपको MarkItDown का उपयोग करने की कोशिश करनी चाहिए।
00:05:52बस इसे आजमाएं यदि आप RAG या एजेंट्स के लिए साफ इनपुट चाहते हैं।
00:05:56आप मिश्रित फाइल प्रकारों से निपटते हैं।
00:05:58यह उन चीजों के लिए वास्तव में अच्छा है।
00:05:59और आप ढेर सारी नाजुक स्क्रिप्ट्स बनाए नहीं रखना चाहते जो टूट सकती हैं, है ना?
00:06:03अगर आप हर दिन अत्यधिक जटिल PDF के साथ काम कर रहे हैं, तो इसे छोड़ दें या इसके साथ मिलाएं।
00:06:08वहां अन्य टूल्स भी मौजूद हैं।
00:06:09यदि आप ओपन सोर्स टूल्स और इस तरह की कोडिंग टिप्स पसंद करते हैं, तो Better Stack चैनल को सब्सक्राइब करना न भूलें।
00:06:15हम आपको अगले वीडियो में देखेंगे।

Key Takeaway

RAG पाइपलाइन्स में कई जटिल लाइब्रेरीज़ के बजाय माइक्रोसॉफ्ट के MarkItDown टूल का उपयोग करने से इनपुट डेटा साफ होता है, जिससे LLM के उत्तरों की सटीकता बढ़ती है और डेवलपमेंट का समय बचता है।

Highlights

MarkItDown माइक्रोसॉफ्ट का एक ओपन सोर्स पायथन टूल है जो गन्दी फाइलों को साफ मार्कडाउन में बदलकर LLM वर्कफ़्लो को बेहतर बनाता है।

यह टूल Word, PowerPoint, Excel, PDF, ऑडियो, इमेजेस और लिंक्स सहित कई फाइल फॉर्मेट्स को सपोर्ट करता है।

GitHub पर इस टूल को 110,000 से अधिक स्टार्स मिले हैं।

MarkItDown का उपयोग RAG पाइपलाइन में इंजेक्शन लेयर को सरल बनाने और टोकन की खपत कम करने के लिए किया जाता है।

यह टूल सीधे इमेज को मार्कडाउन में बदलकर इमेज का सारांश (summary) प्रदान करने में सक्षम है।

Pandoc पब्लिशिंग के लिए उपयुक्त है, जबकि MarkItDown विशेष रूप से मशीन-आधारित ऑटोमेशन और LLM के लिए बनाया गया है।

Timeline

RAG पाइपलाइन्स में समस्या और मार्कडाउन का महत्व

  • AI डेवलपर्स अक्सर कई लाइब्रेरीज़ को जोड़ने में बहुत समय बिताते हैं, जिसके कारण RAG पाइपलाइन में एरर आते हैं।
  • खराब मार्कडाउन स्ट्रक्चर और खोई हुई हेडिंग्स के कारण LLM गलत जवाब देते हैं।
  • बेहतर इनपुट ही बेहतर आउटपुट की गारंटी देता है, न कि केवल अधिक उन्नत मॉडल का उपयोग करना।

कई फाइल प्रकारों जैसे वर्ड, एक्सेल और PDF को प्रोसेस करते समय डेवलपर्स अक्सर अलग-अलग टूल्स को स्टैक करते हैं। यह प्रक्रिया जटिलता पैदा करती है, टेबल्स का स्ट्रक्चर खराब करती है और टोकन खपत बढ़ाती है। अंततः, यह मॉडल की विफलता नहीं, बल्कि इनपुट डेटा की गुणवत्ता में कमी है जो गलत परिणामों का कारण बनती है।

MarkItDown का उपयोग और कार्यक्षमता

  • MarkItDown को एक लाइन के पायथन कमांड के जरिए आसानी से इंस्टॉल और उपयोग किया जा सकता है।
  • यह टूल जटिल फाइलों को साफ हेडिंग्स और बरकरार टेबल्स वाले मार्कडाउन में बदल देता है।
  • पायथन में मार्कडाउन ऑब्जेक्ट बनाकर इसे सीधे OpenAI API के साथ एकीकृत किया जा सकता है।

MarkItDown का उपयोग टर्मिनल में 'markitdown doc.pdf output.md' कमांड चलाकर किया जा सकता है। यह फाइल को साफ मार्कडाउन में बदलता है, जिसे बाद में पायथन कोड के माध्यम से किसी भी LLM मॉडल में फीड किया जा सकता है। इसके अलावा, यह इमेज फाइलों का भी विश्लेषण कर सकता है, जिससे सीधे कोड के भीतर डेटा का सारांश निकालना संभव होता है।

टूल की विशेषताएं और अन्य विकल्पों से तुलना

  • MarkItDown माइक्रोसॉफ्ट रिसर्च द्वारा विकसित MIT लाइसेंस प्राप्त टूल है जो विशेष रूप से LLM के लिए बनाया गया है।
  • इसमें अब MCP सर्वर का सपोर्ट है, जिससे इसे Claude डेस्कटॉप या अन्य एजेंट्स के साथ सीधे जोड़ा जा सकता है।
  • Pandoc इंसानी पब्लिशिंग के लिए है, जबकि MarkItDown मशीनों और ऑटोमेशन के लिए बेहतर है।
  • अत्यधिक जटिल और घने टेबल्स वाले PDF के लिए Docling या Unstructured बेहतर विकल्प हो सकते हैं।

MarkItDown का उद्देश्य गति और विश्वसनीयता है, जो इसे अधिकांश साधारण दस्तावेजों के लिए आदर्श बनाता है। जहां Pandoc पब्लिशिंग और LaTeX फॉर्मेटिंग के लिए है, वहीं MarkItDown का ध्यान LLM पाइपलाइन्स पर है। यद्यपि यह अत्यंत जटिल लेआउट्स के लिए हमेशा सटीक नहीं हो सकता है, फिर भी यह डेवलपर्स के लिए एक तेज और प्रभावी समाधान प्रदान करता है।

Community Posts

View all posts