2 पॉइंट द्वारा GN⁺ 2023-10-05 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • HN की पुस्तक सिफारिश थ्रेड्स में बिखरी टिप्पणियों को इकट्ठा करके, कौन-सी किताबें सबसे ज़्यादा सुझाई जाती हैं यह जानने के लिए Chat Completions API से शीर्षक, लेखक और URL निकाले गए
  • 2023 के आधार पर, जिन लगभग 200 HN स्टोरीज़ के शीर्षक में “book” एक अलग शब्द के रूप में था और जो बाहरी लिंक नहीं थीं, उनमें से पुस्तक सिफारिश जैसी दिखने वाली पोस्टों को चुना गया; 57k टिप्पणियों को प्रोसेस करने की लागत gpt-3.5-turbo के हिसाब से लगभग $40 थी
  • कुल गणना में ऊपर रहने वाली किताबों में Structure and Interpretation of Computer Programs 376 बार, Gödel, Escher, Bach 365 बार, और How to Win Friends and Influence People 292 बार जैसी वे किताबें थीं जिनका HN पर लंबे समय से बार-बार ज़िक्र होता रहा है
  • वास्तविक प्रोसेसिंग में गलत JSON, केवल लेखक का ज़िक्र करने वाली टिप्पणियाँ, एक ही शीर्षक वाली अलग किताबें, लिंक टेक्स्ट की गलत पहचान, और temperature 0 पर भी बदलने वाली non-determinism ने गुणवत्ता को प्रभावित किया
  • कच्चा GPT आउटपुट और इनपुट CSV सार्वजनिक किए गए, और शीर्षक को lowercase करना, शुरुआत का “the” हटाना, उपशीर्षक हटाना जैसी normalization से नामों के असंगत होने की वजह से छूटने वाली प्रविष्टियों को कम करने की कोशिश की गई

HN टिप्पणियों से पुस्तक जानकारी निकालने का तरीका

  • HN की पुस्तक सिफारिश थ्रेड्स पढ़ते समय यह काम इस उद्देश्य से शुरू हुआ कि सबसे ज़्यादा सुझाई या उल्लेख की गई किताबों का पता लगाया जा सके
  • 2023 तक HN में लगभग 200 ऐसी स्टोरीज़ थीं जिनके शीर्षक में “book” एक अलग शब्द के रूप में शामिल था और जो किसी दूसरी पेज से लिंक नहीं थीं
  • HN API से लाए गए डेटा में से पुस्तक सिफारिश थ्रेड्स जैसा दिखने वाला subset चुना गया और उसकी टिप्पणी टेक्स्ट को प्रोसेस किया गया
  • हर टिप्पणी से Chat Completions API द्वारा निम्न जानकारी निकाली गई
    • पुस्तक का शीर्षक
    • लेखक
    • URL

सबसे ज़्यादा उल्लेखित किताबें

गणना की गलतियाँ और डेटा सफाई

  • शुरुआती सूची में कुछ लेखक मिलान त्रुटियाँ थीं
    • Dune के लेखक Brian Herbert नहीं बल्कि Frank Herbert हैं
    • Meditations, Descartes की नहीं बल्कि Marcus Aurelius की है
    • Calculus को Michael Spivak की किताब के रूप में पकड़ा गया, लेकिन उस गणना में Apostol की Calculus के 14 उल्लेख भी शामिल थे
  • SQL query को हर शीर्षक के लिए min(author) लौटाने के बजाय सबसे अधिक बार आने वाले लेखक को लौटाना चाहिए था
  • 12 अक्टूबर 2023 के अपडेट में शीर्ष 50 सूची को सुधारा गया
    • Javascript और Calculus में एक ही नाम वाली कई किताबें मिल जाने से उन्हें त्रुटिपूर्ण माना गया
    • Javascript: The Good Parts का नाम डेटा प्रोसेसिंग कोड में “javascript” कर दिया गया था, लेकिन उसी नाम की दूसरी किताबें भी थीं
    • deduplication के बाद ये प्रविष्टियाँ शीर्ष 50 से बाहर हो गईं

ChatGPT API के उपयोग में सामने आई सीमाएँ

  • वैध JSON न लौटने के मामले अक्सर तब होते थे जब HN टिप्पणी “thanks” जैसी बहुत छोटी होती थी या प्रश्न के रूप में होती थी
    • जवाब में “I apologize for the confusion…” या “You’re welcome!” जैसे वाक्य भी मिल जाते थे
  • prompt को इस तरह बनाया गया था कि खाली शीर्षक वाले जवाबों को हटाया जा सके
    • इसका उद्देश्य उस समस्या को कम करना था जिसमें ChatGPT केवल लेखक का ज़िक्र होने पर भी उसे पुस्तक उल्लेख मान लेता था, जबकि कोई खास शीर्षक मौजूद नहीं होता था
  • 57k टिप्पणियों को प्रोसेस करने की लागत gpt-3.5-turbo API के आधार पर लगभग $40 थी
  • temperature को 0 पर सेट करने के बाद भी GPT के नतीजे हर call पर बदलते थे
    • GPT-4 की non-determinism के उदाहरण पहले से ज्ञात हैं, लेकिन gpt-3.5-turbo में भी पुराने GPT-3 मॉडलों की तुलना में अधिक उतार-चढ़ाव दिखा
  • टेक्स्ट से लिंक पहचाने जा सकते थे, लेकिन HTML tags हटाकर केवल URL छोड़ा जाना ज़रूरी था
    • नहीं तो GPT असली URL के बजाय कटा हुआ लिंक टेक्स्ट उठा लेता था

JSON आउटपुट फ़ॉर्मेट और prompt की शर्तें

  • एक HN टिप्पणी के लिए ChatGPT द्वारा बनाया गया JSON उदाहरण फ़ॉर्मेट के हिसाब से सही था, लेकिन लिंक को छोड़कर बाकी सभी मान गलत थे
  • आउटपुट match, title, author, link फ़ील्ड वाले array फ़ॉर्मेट में था
  • prompt में निम्न शर्तें शामिल थीं
    • दस्तावेज़ से पुस्तक शीर्षक और लेखक की पहचान करना
    • शीर्षक से match हुए शब्द दिखाना
    • संक्षिप्त शीर्षकों का विस्तार करना
    • यदि केवल लेखक का ज़िक्र हो और पुस्तक न हो तो title खाली छोड़ना
    • यदि सिर्फ सिफारिश मांगी गई हो और किसी पुस्तक का ज़िक्र न हो तो खाली array लौटाना
    • उपशीर्षक शामिल न करना

सार्वजनिक डेटा और शीर्षक normalization

  • raw data produced by GPT शीर्षक के आधार पर sort किया गया GPT आउटपुट का कच्चा डेटा है
    • match कॉलम में उन टिप्पणियों के कुछ हिस्से शामिल हैं जिनमें पुस्तक की पहचान हुई थी
  • पुस्तक शीर्षकों पर normalization लागू की गई
    • lowercase करना
    • शीर्षक की शुरुआत का “the” हटाना
    • उपशीर्षक हटाना
  • यह normalization GPT द्वारा बनाए गए नामों के असंगत होने के कारण शीर्ष पुस्तक query से प्रविष्टियाँ छूटने की समस्या को कम करने के लिए की गई
  • इनपुट डेटा zipped csv format में उपलब्ध है, और unzip करने पर यह 24 MB की फ़ाइल बनती है
  • तालिका में Amazon URL पर सीखने के उद्देश्य से Amazon affiliate link जोड़ा गया है

1 टिप्पणियां

 
GN⁺ 2023-10-05
Hacker News की राय
  • ChatGPT ने कुछ छोड़ दिए, और शायद और भी बहुत-से: https://hn.algolia.com/?q=A+non-standard+book+list+for+softw...
    comments में भी और हैं: https://news.ycombinator.com/item?id=30651273
    यह वेबसाइट Amazon affiliate links से ज्यादा clicks पैदा करने का एक चालाक तरीका लगती है

    • क्या अभी भी कोई Amazon affiliate program से पैसे कमा रहा है? मुझे लगा था यह करीब 10 साल पहले ही खत्म हो गया था
  • HN पर Hacker Recommended Books [0a] के बारे में [0b] से पता चला, और वहां की किताबें पढ़ना शुरू किया; कई किताबें आजमाईं और करीब 20 पढ़ डालीं। अनुभव बहुत अच्छा रहा, बहुत कुछ नया सीखा, और कुछ किताबों ने सोच का दायरा भी बढ़ाया
    अगर आपको किताबें पसंद हैं, तो HN पर बस books खोजकर "Ask HN" tag [1] या सिर्फ "books" से filter करने की जोरदार सलाह दूंगा। अब English books मैं लगभग ऐसे ही चुनता हूं, non-technical books भी। 2 साल से ज्यादा समय से ऐसा कर रहा हूं, और HN की book recommendations मुझे सच में बहुत पसंद हैं
    किताबों से जुड़े HN threads में कई सालों की high-quality reading जमा है, इसलिए वे लगभग सोने की खान जैसे हैं। Hacker News Books [2] भी है, और Top Books of All Time section [3] भी देखने लायक है
    [0a]: https://hacker-recommended-books.vercel.app/category/0/all-t...
    [0b]: https://news.ycombinator.com/item?id=28595967
    [1]: https://hn.algolia.com/?q=Ask+HN+books
    [2]:https://hackernewsbooks.com
    [3]: https://hackernewsbooks.com/top-books-on-hacker-news

    • आज मैंने HN द्वारा recommended कोई किताब पढ़ना शुरू करने का फैसला किया। [0a] link में हाल के 6 महीने चुने तो recommendations के 58 pages निकले, हर page पर 15 किताबें
      इसलिए 15-sided dice से एक page चुना, फिर दोबारा roll करके उस page की किताब चुनी। जो किताब पढ़ूंगा वह The Very Hungry Caterpillar है
    • https://news.ycombinator.com/item?id=28595967 ("Show HN: 40k HN comments mentioning books, extracted using deep learning") शानदार है, और मैं अभी भी इसे नियमित रूप से इस्तेमाल करता हूं
    • “Hacker Recommended Books” बहुत उपयोगी लग रहा था, इसलिए मैंने इसे अपने pinboard account में bookmark के तौर पर save करना चाहा, तो दिखा कि “2 साल पहले ही save किया जा चुका है
      यह site की आलोचना नहीं है; बल्कि अपने ऊपर अफसोस जैसा है कि ऐसी service मौजूद है, यह अच्छे इरादे से save कर के भी मैं भूल गया
  • सस्ते Amazon affiliate link spam को quality से और दूर ले जाने का तरीका: उसे “AI” से generate कर दो

  • Charles Petzold की Code का top 50 में न होना हैरान करता है। computers असल में कैसे काम करते हैं, यह सीखने के लिए यह सबसे accessible किताबों में से एक है
    HN पर मैंने Code का काफी mention देखा है, हालांकि sample उन links की तरफ biased हो सकता है जिन पर मैंने comments पढ़े थे

    • जिन लोगों को नींद नहीं आती, उनके लिए यह शानदार किताब है। मुझे नहीं पता था कि computer operation के basics जैसे दिलचस्प विषय को इतना बेजान और उबाऊ बनाया जा सकता है, और ऐसा करने के लिए इतने सारे शब्दों की जरूरत पड़ सकती है
      अभी पढ़ रहा हूं, लेकिन 3–4 pages से आगे बढ़ने से पहले ही lights out हो जाता है, इसलिए बहुत समय लग रहा है
    • उस किताब में “घोड़े का बाकी हिस्सा खुद बना लें” जैसा पहलू है। शानदार किताब है, लेकिन बाद के हिस्से में लेखक मान लेता है कि आपने पहले हिस्से को समझा ही नहीं, बल्कि components तक याद कर लिए हैं, ताकि बाकी explanation working memory में बैठने पर ही बात समझ आए
      बाद का हिस्सा ईमानदारी से कठिन था। “समझ गया था” फिर भी, क्योंकि पहले हिस्से को ठीक से याद नहीं किया था
      फिर भी 5 साल के बच्चे को समझाने जैसा सिखाने का approach मुझे पसंद है। आजकल लोग fundamentals को intrinsically काफी complex मानने के बजाय उन्हें सरसरी तौर पर पार कर जाने की कोशिश करते हैं
    • मुझे वह किताब सच में बहुत पसंद है। जो non-technical लोग यह theory जानना चाहते हैं कि पूरी चीज कैसे काम करती है, उन्हें मैं यही किताब recommend करता हूं
    • मेरी site HNLikes.com के हिसाब से, HN comments में दूसरा सबसे ज्यादा post किया गया Amazon link यही किताब है
    • ऊपर rito ने जिस Hacker News All Time Top Books list का reference दिया है, उसके बिल्कुल top पर है
  • यह चौंकाने वाला है कि Knuth की किताबें टॉप 5 में नहीं हैं, और यह भी बहुत चौंकाने वाला है कि Descartes की Meditations मौजूद है। फ्रांस में भी अब कोई उसे नहीं पढ़ता, इसलिए लगता है कि यह HN पर meditation से जुड़े पोस्ट्स के साथ मिलकर आया हुआ नतीजा होगा
    और Dune को Franck Herbert ने नहीं, Frank Herbert ने लिखा है। इस पोस्ट पर भरोसा करना मुश्किल है, और LLM के लोकप्रिय होने के बाद इंटरनेट पर आने वाली लगभग किसी भी चीज़ पर भरोसा करना मुश्किल हो गया है

    • इस पोस्ट ने GPT द्वारा दिए गए raw data को भी जोड़ा है ताकि data integrity को verify किया जा सके। methodology के लिहाज़ से इसलिए यह भरोसेमंद है
      माध्यम कोई भी हो, किसी भी publication में data और methods की integrity हमेशा verify करनी चाहिए थी। लेखक और पाठक की ज़िम्मेदारी LLM से पहले और बाद में नहीं बदली है। अगर LLM से पहले आप स्वाभाविक रूप से भरोसा करते थे, तो ऐसा नहीं करना चाहिए था; और LLM के बाद भी अगर आप भरोसेमंद लेखक पर भरोसा नहीं कर पा रहे हैं, तो वह भी समस्या है
    • Descartes की Meditations on First Philosophy पश्चिमी विचार-इतिहास की सबसे महत्वपूर्ण किताबों में से एक है। “फ्रांस में भी अब कोई नहीं पढ़ता” कहना कुछ ऐसा है जैसे London Underground में किसी को पढ़ते नहीं देखा, इसलिए The Origin of Species अप्रासंगिक है
    • Knuth की रचनाएँ urban planning के The Power Broker जैसी हैं: industry-specific canon, लेकिन असल में पढ़ने वाले लोग कम हैं
      मेरे पास कुछ volumes हैं, पर वे तोहफ़े में मिली थीं, और मैंने उन्हें कभी पढ़ा नहीं। इसलिए उनका टॉप 5 में न दिखना मुझे खास हैरान नहीं करता
    • Meditations के author का नाम गलत है। link सही किताब पर जाता है, लेकिन वह Marcus Aurelius की Meditations है
    • Descartes लिखा होना शायद गलत है। link Marcus Aurelius पर जाता है
  • समझ नहीं आता कि ChatGPT की ज़रूरत क्यों थी। Algolia और data analysis ही काफी होते; यहाँ नया और मुश्किल काम क्या था?

    • अगर comments के आधार पर यह analyze किया जाए कि हर किताब recommend करने वाले users किस तरह के झुकाव रखते हैं, तो कमाल होगा। जैसे “Ayn Rand recommend करने वालों में 80% right-wing हैं” जैसी percentage दिखाने का तरीका
  • HN book recommendations के उपयोगी होने की वजह बल्कि उलटी है। नीचे की तरफ जिन comments को recommendation table में जगह नहीं मिली, उनमें ऐसी किताबों की recommendations हैं जिनके बारे में मैंने पहली बार सुना, और वही valuable है। popular choices को इकट्ठा करने वाली यह list ज़्यादातर predictable है
    “किताब recommend करें” वाली posts में गहराई तक जाएँ, तो सबसे नीचे के आसपास सचमुच शानदार recommendations मिल सकती हैं

    • संगीत में भी यही बात है। अपनी पसंदीदा band के बारे में लोग जहाँ बात कर रहे हों वहाँ जाएँ, और तब तक नीचे scroll करें जब तक ऐसे नाम न दिखें जिन्हें आपने कभी नहीं सुना
  • क्या किसी और को भी लगता है कि अगर कोई How to Win Friends and Influence People को अपनी सबसे पसंदीदा या सबसे ज्यादा प्रभाव डालने वाली किताबों में से एक बताता है, तो यह red flag है?

    • मुझे ऐसा नहीं लगता। ऐसी प्रतिक्रिया मैंने अक्सर उन लोगों से देखी है जिन्होंने किताब वास्तव में पढ़ी नहीं है। लोग सोचते हैं कि यह किताब manipulation जैसी चीज़ों के बारे में है, जबकि असल में यह दोस्त बनाने और उन्हें बनाए रखने की बहुत basic guide है
      अगर आपके पास पहले से friend group है और उसे बनाए रखने की चिंता नहीं है, तो संभव है कि किताब की लगभग सारी बातें आपको पहले से पता हों। लेकिन हमेशा loner की तरह बड़े हुए व्यक्ति के रूप में, इस किताब की सलाह सचमुच उपयोगी लगी। यह उन social skills का सार जैसा था जो मुझे 10 साल की उम्र में सीखनी चाहिए थीं, पर नहीं सीख पाया
      इस किताब का ज़िक्र करने वाले व्यक्ति में दिखने वाला इकलौता “red flag” बस इतना है कि मेरी तरह वह शायद अतीत में किसी समय socially बहुत awkward रहा हो। शायद अभी भी हो, लेकिन कम से कम सुधार करने की कोशिश कर रहा है
    • social anxiety, autism spectrum, या दोनों के मिश्रण वाले लोगों पर इसका बड़ा असर होता है। इस किताब ने मुझे लोगों से बातचीत करना सिखाया, और गहरी social anxiety और isolation से हटाकर ऐसी ज़िंदगी की ओर मोड़ा जहाँ मैं दूसरे इंसानों से बात कर सकूँ और उन्हें जान सकूँ
      आसपास के ज़्यादातर लोगों को शायद इस किताब की ज़रूरत नहीं होगी, और शायद उन्हें यह थोड़ी बेवकूफी भरी लगे। लेकिन मेरे लिए यह turning point थी, और HN पर भी ऐसे अनुभव वाले बहुत लोग होंगे
    • नहीं। यह human behavior पर एक solid पढ़ने लायक किताब है
  • list में मौजूद Meditations, page के नीचे raw data देखने पर, Descartes की “Meditations on First Philosophy” नहीं बल्कि Marcus Aurelius की रचना की ओर इशारा करती लगती है
    यह बस partial check है, पूरा survey नहीं। raw data में Descartes का ज़िक्र करने के मामले भी कई हैं, लेकिन आम तौर पर वे दूसरी रचनाओं के बारे में हैं। इसे मैं एक दिलचस्प गलती मानता हूँ

  • आजकल खुद से पूछने लायक एक और बेहतर सवाल यह है: इसे LLM के सीधे उपयोग के बिना, बल्कि machine learning के बिना भी, कैसे किया जा सकता है? फिर दूसरे चरण में पूछा जा सकता है कि generative tools या machine learning की संभावित मदद उस solution को कैसे बेहतर बना सकती है

    • मैंने boring technology (Postgres, Django, Python) से इसका एक version बनाया था। इसमें गिना जाता था कि HN comments में book links के अलावा YouTube videos, arXiv papers आदि कितनी बार आए, और link post करने वाले व्यक्ति तथा उस link पर आए replies पर भी कई calculations किए गए
      reality यह है कि boring technology से interest और engagement पाना मुश्किल है
    • मुझे लगता है कि LLM से किए जाने वाले basic tasks में से काफी कुछ machine learning के बिना भी संभव है। फिर भी दिलचस्प बात यह है कि LLM से मज़ेदार चीज़ें करना सीखना, और यह कि traditional methods की तुलना में इसकी upper limit कहीं ज्यादा है
      पुराने प्रकार के tasks पर नए tools लागू करना सीखना भी उपयोगी और insight देने वाला है