PDF से Markdown

एक PDF को असली '#' हेडिंग, बुलेट और नंबर वाली सूचियों, और GitHub-स्टाइल टेबल के साथ साफ़ Markdown में बदलें - पेज के वास्तविक फ़ॉन्ट साइज़ और कॉलम स्थितियों से फिर से बनाया गया, सादे टेक्स्ट डंप से अंदाज़ा नहीं लगाया गया। उन लोगों के लिए बनाया गया जो ChatGPT, Claude, Gemini, DeepSeek या Grok में पेस्ट करने से पहले टोकन बचाने के लिए PDF को Markdown में बदलते हैं।

संरचना वास्तव में कैसे पहचानी जाती है

एक PDF में कोई हेडिंग, कोई लिस्ट और कोई टेबल नहीं होती। इसमें सिर्फ़ निर्देशांकों पर ग्लिफ़ होते हैं। इसलिए टेक्स्ट को सीधे निकालने के बजाय, यह कन्वर्टर हर टेक्स्ट रन को उसकी पोज़िशन, फ़ॉंट साइज़ और फ़ॉंट नाम के साथ पढ़ता है, और उसी से संरचना फ़िर से बनाता है:

  • फ़ॉंट-साइज़ क्लस्टरिंग से हेडिंग्स। पूरे दस्तावेज़ में सबसे ज़्यादा कैरेक्टर कवर करने वाला साइज़ बॉडी टेक्स्ट होता है। उससे स्पष्ट रूप से बड़े साइज़ घटते क्रम में #, ##, ### बन जाते हैं। बॉडी साइज़ की छोटी, बोल्ड, अकेली लाइनें भी सब-हेडिंग के रूप में पहचानी जाती हैं।
  • उनके शुरुआती ग्लिफ़ से लिस्ट्स। •, -, * या "1." / "2)" से शुरू होने वाली लाइन एक असली मार्कडाउन लिस्ट आइटम बन जाती है, और रैप होने वाली कंटिन्यूएशन लाइनें वापस उसी आइटम में जोड़ दी जाती हैं जिससे वे संबंधित हैं।
  • x-पोज़िशन क्लस्टरिंग से टेबल्स। वह x-निर्देशांक जहाँ कई अलग-अलग पंक्तियां सभी एक टेक्स्ट रन शुरू करती हैं, एक असली कॉलम होता है। किसी ब्लॉक को टेबल के रूप में दिखाने से पहले कम से कम दो कॉलम पर सहमत रखने वाली तीन या अधिक लगातार पंक्तियों की ज़रूरत होती है - और यदि बना हुआ ग्रिड ज़्यादातर खाली है, तो उसे अनिश्चित बताकर गलत दिखने वाली टेबल बनाने की बजाय सादा टेक्स्ट के रूप में छोड़ दिया जाता है।
  • नॉइज़ हटाना। ज़्यादातर पेजों के ऊपर या नीचे दोहराई जाने वाली लाइनें बार-बार आने वाले हेडर और फ़ुटर होती हैं, इसलिए उन्हें हटा दिया जाता है (पेज नंबर उनकी बनावट से पहचाने जाते हैं, इसलिए "Page 3 of 12" और "Page 4 of 12" एक ही लाइन मानी जाती हैं)। लाइन के अंत में हाइफ़न से टूटे शब्दों को फ़िर से जोड़ दिया जाता है।

पेज की सीमाओं को दिखने वाली हेडिंग्स के बजाय HTML कमेंट <comment/> के रूप में सुरक्षित रखा जाता है, क्योंकि "## Page 2" को एक मार्कडाउन पार्सर - और एक लैंग्वेज मॉडल - असली दस्तावेज़ संरचना मानकर पढ़ लेगा, जबकि असल में एसी कोई संरचना मौजूद नहीं होती।

अक्सर पूछे जाने वाले प्रश्न

ChatGPT या Claude इस्तेमाल करने से पहले PDF को Markdown में क्यों बदलें?

क्योंकि Markdown कम शोर और अधिक संरचना के साथ वही बात कहता है। एक कच्चा PDF टेक्स्ट डंप हर पेज पर हेडर और फ़ुटर दोहराता है, हाइफ़न के साथ लाइन ब्रेक पर शब्दों को तोड़ता है, और मॉडल को हर विज़ुअल लाइन के लिए एक छोटी लाइन देता है बिना यह बताए कि क्या हेडिंग थी, सूची थी या टेबल थी। Markdown हेडिंग और टेबल मॉडल को बिल्कुल बताते हैं कि दस्तावेज़ कैसे व्यवस्थित है, जो आपको मिलने वाले जवाबों को बेहतर बनाता है - और पेज के सजावटी हिस्सों को हटाने का मतलब है कि आप ऐसे टेक्स्ट के लिए टोकन नहीं चुका रहे जिसका कोई अर्थ नहीं है।

क्या Markdown में बदलना AI के लिए वाक़ई टोकन कम करता है?

यह दस्तावेज़ पर निर्भर करता है, और यह टूल आपको मार्केटिंग दावे की बजाय असली संख्या दिखाता है। स्पष्ट फ़ायदे दोहराए गए हेडर और फ़ुटर हटाने, ज़बरदस्ती रैप की गई लाइनों को फिर से व्यवस्थित करने, और हाइफ़न से टूटे शब्दों को फिर से जोड़ने से आते हैं ("थ्रू-" और "पुट" के रूप में टूटा एक शब्द एक की बजाय कई टुकड़ों में टोकनाइज़ होता है)। इसके विरुद्ध, टेबल की पाइप और हेडिंग मार्कर कुछ अक्षर वापस जोड़ देते हैं। हर पेज पर सजावटी हिस्सों वाली एक लंबी रिपोर्ट पर बचत असली है; एक छोटी, साफ़, टेबल-भरी PDF पर Markdown लगभग उतने ही आकार में आ सकता है - और फिर भी मॉडल के लिए कहीं अधिक उपयोगी रहता है। टूल एक अनुमान दिखाता है (लगभग चार अक्षर प्रति टोकन) जिसे स्पष्ट रूप से अनुमान लेबल किया गया है।

क्या यह मेरी PDF में हेडिंग और टेबल पहचानेगा?

हेडिंग तब पहचानी जाती हैं जब भी दस्तावेज़ उनके लिए बड़े या बोल्ड टाइप का उपयोग करता है, जो Word, Google Docs, LaTeX या InDesign से एक्सपोर्ट किए गए लगभग हर रिपोर्ट, पेपर, मैनुअल और कॉन्ट्रैक्ट को कवर करता है। टेबल तब पहचानी जाती हैं जब उनके कॉलम पेज पर लगातार एक पंक्ति में आते हैं - सामान्य मामला। केवल खींची गई सीमाओं वाली टेबल जिनमें लगातार टेक्स्ट अलाइनमेंट नहीं है, और भारी डिज़ाइन की गई मैगज़ीन-स्टाइल लेआउट, कठिन मामले हैं; जब ग्रिड अविश्वसनीय लगती है, टूल इसे स्पष्ट रूप से बताता है और टेबल बनाने की बजाय टेक्स्ट रखता है।

क्या मैं पहचान के कुछ हिस्से बंद कर सकता हूँ?

हाँ। हेडिंग पहचान, सूची पहचान, टेबल पहचान, हाइफ़नेशन पुनर्मिलन, बोल्ड/इटैलिक और दोहराई गई हेडर को हटाना सभी अलग-अलग टॉगल हैं, साथ ही '<!-- page N -->' मार्कर जोड़ने का विकल्प। PDF केवल एक बार पढ़ी जाती है, इसलिए हर टॉगल तुरंत फिर से कन्वर्ट करता है और टोकन अनुमान उसके साथ अपडेट होता है।

स्कैन की गई PDF के साथ क्या होता है?

स्कैन की गई PDF बिना टेक्स्ट लेयर वाले पेज की एक तस्वीर है, और यहाँ कोई OCR चरण नहीं है, इसलिए उससे कुछ भी नहीं निकाला जा सकता। टूल आपको स्पष्ट रूप से बताता है कि किन पेजों में टेक्स्ट लेयर नहीं थी बजाय चुपचाप एक खाली फ़ाइल लौटाने के। पहले PDF को किसी OCR टूल से गुज़ारें और फिर परिणाम को बदलें।

क्या मेरी PDF सर्वर पर अपलोड होती है?

नहीं। PDF को pdf.js के साथ पूरी तरह आपके ब्राउज़र के अंदर पार्स किया जाता है, और Markdown भी वहीं बनाया जाता है। फ़ाइल कभी आपकी डिवाइस नहीं छोड़ती, जिसका मतलब यह भी है कि गोपनीय अनुबंध और आंतरिक रिपोर्ट यहाँ बदलने के लिए सुरक्षित हैं।

क्या मैं RAG पाइपलाइन में Markdown इस्तेमाल कर सकता हूँ?

यह इसे इस्तेमाल करने का एक मुख्य कारण है। Markdown हेडिंग एक चंकर को स्वाभाविक विभाजन बिंदु देती हैं - पहले ## सीमाओं पर विभाजित करें, फिर पैराग्राफ़ पर - इसलिए चंक वाक्य के बीच काटने की बजाय असली सेक्शन से मेल खाते हैं, और चंकिंग के बाद टेबल मॉडल के लिए पठनीय रहती हैं। .md डाउनलोड करें, या इसे टूल से सीधे कॉपी करें।

संबंधित टूल