होमफुटबॉलजिस रिपोर्ट में एक भी तथ्य नहीं था: फुटबॉल डेटा पाइपलाइन का ख़ामोश फ़ेल्योर

जिस रिपोर्ट में एक भी तथ्य नहीं था: फुटबॉल डेटा पाइपलाइन का ख़ामोश फ़ेल्योर

**मुख्य उत्तर**: Stage-1 आउटपुट इसलिए अनुपयोगी था क्योंकि Information Points सूची ख़ाली लौटी, जबकि लॉग ने success दर्ज किया। तथ्यों के बिना Entities Involved और चारों मुख्य-तर्क फ़ील्ड भरे नहीं जा सकते — ऊपर की हर मंज़िल गढ़ी हुई होती। **मुख्य तथ्य**: - नौ में से पाँच फ़ील्ड ख़ाली: शीर्षक N/A, स्रोत N/A, प्रकार Unclassified, चारों मुख्य-तर्क फ़ील्ड रिक्त। - Information Points ने ख़ाली सूची [ ] लौटाई; Entities Involved फ़ील्ड में एंटिटी की जगह निर्देश था। - सबसे संभावित कारण: बॉडी एक्सट्रैक्शन विफलता, चंकिंग त्रुटि, पार्सर विफलता का चुपचाप ख़ाली ढाँचे में बदलना, और टैग का स्वतंत्र अनुमान। - सुधार: Stage-1 निर्गम पर कम से कम तीन सूचना-बिंदु और शीर्षक ≠ N/A की शर्त लागू करना। - कच्चे टेक्स्ट की लंबाई और हैश सहेजना, ताकि "नहीं मिला" और "मिला पर नहीं निकाला" अलग पहचाने जाएँ। **स्रोत**: आंतरिक Stage-1 आउटपुट विश्लेषण रिपोर्ट। प्रकाशन तिथि दर्ज नहीं — मूल आउटपुट में तिथि फ़ील्ड ख़ाली थी। **संबंधित प्रश्न**: प्रश्न: क्या ख़ाली आउटपुट पर गहरा विश्लेषण लिखा जा सकता है? उत्तर: नहीं, क्योंकि बिना सूचना-बिंदुओं के हर एंटिटी और हर दावा गढ़ा हुआ होगा और सत्यापित नहीं किया जा सकेगा। प्रश्न: सबसे ख़तरनाक विफलता कौन-सी है? उत्तर: पार्सर का टूटा हुआ JSON चुपचाप ख़ाली संरचना में बदल जाना, क्योंकि पाइपलाइन त्रुटि नहीं दर्ज करती और पूरी प्रक्रिया सफल दिखती है। प्रश्न: विश्लेषण फिर से शुरू करने के लिए न्यूनतम क्या चाहिए? उत्तर: मूल लेख का सादा पाठ, या शीर्षक के साथ मीडिया नाम, प्रकाशन तिथि, बॉडी और बॉडी की लंबाई।

मंगलवार की सुबह मैंने एक फ़ोल्डर खोला जिसका नाम था: Stage-1 output. उसमें नौ ख़ाने थे — साफ़-सुथरी एक टेबल, मोटे हाशिये वाली। पहला ख़ाना, लेख का शीर्षक: N/A. दूसरा, स्रोत: N/A. तीसरा, लेख का प्रकार: Unclassified. अगले चार ख़ाने उस लेखक की मुख्य दलीलों के लिए बने थे जिसे मैं पढ़ने वाला था; चारों में सन्नाटा था। छठा ख़ाना — Information Points — जिस पर बाक़ी सब टिका था, सिर्फ़ दो कोष्ठक लौटा कर आया: [ ]. सातवें ख़ाने में किसी एंटिटी का नाम नहीं, एक निर्देश लिखा था: "identify from the information points above." आठवें ख़ाने में तारीख़ की जगह ख़ाली जगह। और नौवें ख़ाने में एक शब्द: success.

हाँ, सफलता। टेबल ख़ाली थी और लॉग कह रहा था कि काम हो गया। जिस पाठक को यह स्टोरी मिलने वाली थी, उसे एक बेहद साफ़-सुथरे ढाँचे में लिपटा हुआ कुछ भी नहीं मिलता — बिना नाम, बिना तारीख़, बिना एक भी ऐसी बात जिसे जाकर जाँचा जा सके।

एक सब-एडिटर का काम, अब एक ख़ाने में

Stage-1 को वही काम करना था जो कभी मैदान के बीट पर बैठा सब-एडिटर करता था: किसका नाम है, कहाँ से आया है, कब आया है, और सबसे ज़रूरी — क्या हुआ। कलकत्ता के पुराने दफ़्तरों में बिना नाम और बिना तारीख़ वाली कॉपी डेस्क तक पहुँचती ही नहीं थी। यह नैतिक नियम नहीं था, यह प्रक्रिया थी। अब वही प्रक्रिया एक आउटपुट स्कीमा है — शीर्षक, स्रोत, प्रकार, चार उप-ख़ानों में लेखक के मुख्य तर्क, फिर Information Points, और आख़िर में Entities Involved.

इस ढाँचे की एक ही शर्त है: Information Points सबसे नीचे की ईंट है, और उसके बिना ऊपर की हर मंज़िल या तो ख़ाली रहेगी या नक़ली। Entities Involved का ख़ाना भी साफ़ शब्दों में कह रहा था — "identify from the information points above" — यानी पहले तथ्य, फिर तथ्यों से लोग। जब सूची ख़ाली हो तो यह निर्देश पूरा नहीं किया जा सकता; और जब कोई कहता है कि वह कर सकता है, तो वह असल में गढ़ रहा होता है।

मामला सिर्फ़ एक आंतरिक फ़ोल्डर का नहीं है। आज फुटबॉल की ख़बर का बहुत बड़ा हिस्सा इसी तरह बनता है — ट्रांसफ़र एग्रीगेटर, लाइव ब्लॉग, ऑटो-जनरेटेड मैच समरी। न्यूज़रूम में जिसे हम "पुरानी पद्धति" कहते हैं, वह पद्धति सिर्फ़ इंसान के हाथ से मशीन के हाथ में गई है। और स्रोतों की सीढ़ी वही रही है: क्लब की आधिकारिक घोषणा सबसे ऊपर, उसके बाद बीट रिपोर्टर, फिर बड़ा अख़बार, उसके बाद ट्रांसफ़र-विशेष वेबसाइट, और सबसे नीचे वह अकाउंट जो सिर्फ़ जोड़ता है। समस्या यह है कि इस सीढ़ी का सबसे निचला हिस्सा टूट जाए तो ऊपर तक आवाज़ नहीं पहुँचती।

चार कारण, और उनमें सबसे ख़तरनाक

एक football टैग लगी हुई फ़ाइल से कोई भी सूचना-बिंदु न निकले, इसकी वजहें संभाव्यता के क्रम में यह हैं।

पहली, बॉडी एक्सट्रैक्शन का फ़ेल होना। आज की साइटें सर्वर से ख़ाली शेल भेजती हैं और लेख ब्राउज़र में जाकर बनता है; कहीं टेक्स्ट