1 पॉइंट द्वारा GN⁺ 2024-09-26 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • XKCD 1425 “Tasks” एक ऐसी comic है जो software development की समझ को दिखाती है: जो काम ऊपर से आसान लगते हैं, उनकी असली कठिनाई बिल्कुल अलग हो सकती है; 24 सितंबर 2024 को इसकी 10वीं वर्षगांठ हुई
  • comic में “यह जांचना कि फोटो में पक्षी है या नहीं” उस समय PhD-स्तर की कठिन समस्या थी, लेकिन आज vision LLM, CLIP, ResNet+ImageNet आदि से यह आसानी से हल होने वाला काम बन गया है
  • खास उदाहरण technology के विकास से बदल गया है, लेकिन यह तय करने के लिए कि कौन-सी समस्या आसान है और कौन-सी कठिन, अब भी गहरा अनुभव चाहिए
  • LLM के कुछ कमजोर क्षेत्र हैं, जैसे गणित या तथ्य खोज, इसलिए intuitively यह तय करना और मुश्किल हो गया है कि कौन-से काम उन्हें भरोसेमंद तरीके से सौंपे जा सकते हैं
  • Claude Artifact में image analysis की सीमा की तरह, AI-assisted programming में model की क्षमता के साथ-साथ CSP headers जैसी web security constraints को भी समझना पड़ता है

XKCD 1425 ने 10 साल बाद भी जो सवाल छोड़ा

  • XKCD 1425 “Tasks” एक comic है जो दिखाती है कि software development में कौन-सा काम आसान है और कौन-सा कठिन, यह अनुभव के बिना समझना मुश्किल है
  • comic का प्रतिनिधि उदाहरण “यह जांचना कि फोटो में पक्षी है या नहीं” पहले PhD-स्तर की समस्या था, लेकिन अब कई computer vision technologies से आसानी से हल किया जा सकता है
  • उदाहरण खुद technology के विकास से बदल गया है, लेकिन आसान और कठिन समस्याओं में फर्क करने की क्षमता के लिए अब भी काफी अनुभव चाहिए

LLM और AI-assisted programming से बनी नई मुश्किलें

  • LLM किन कामों को भरोसेमंद तरीके से हल कर सकते हैं, यह आंकना intuitive नहीं है
    • LLM computer systems हैं, लेकिन गणित में कमजोर हैं
    • तथ्य खोज भी वे स्थिर रूप से नहीं कर पाते
  • AI-assisted programming tools के फैलने के साथ, ज्यादा लोग अपना custom software बनाना शुरू कर रहे हैं
  • नए उभरे AI-assisted beginner programmers ऐसी स्थिति में हैं जहां उन्हें आसान और कठिन कामों का फर्क जल्दी सीखना होगा
  • Claude खुद image analysis कर सकता है, लेकिन Claude Artifact में image analysis tool नहीं बनाया जा सकता—ऐसा एक उदाहरण है
    • इसे समझने के लिए यह जानना जरूरी है कि Artifacts देने में इस्तेमाल होने वाले CSP headers, generated code से external LLM API calls को रोकते हैं

1 टिप्पणियां

 
GN⁺ 2024-09-26
Hacker News की रायें
  • यह देखकर हैरानी होती है कि AI/ML में प्रभावशाली माने जाने का पैमाना कितना बदल चुका है
    10 साल पहले जब GAN पेपर आया था, तब generated images की quality को लेकर सब बेहद उत्साहित थे: https://arxiv.org/abs/1406.2661
    इस बीच हुई प्रगति सचमुच अविश्वसनीय है

    • एक यादगार मज़ाक है: आम लोग अक्सर कंप्यूटर की क्षमताओं को मानव-समकक्ष में बदलकर गलत समझते हैं
      जैसे, बच्चा basic arithmetic कर सकता है और कंप्यूटर भी basic arithmetic कर सकता है, तो अगर बच्चा बोल भी सकता है, लोगों को लगता है कि कंप्यूटर भी ज़रूर बोल सकता होगा
      लेकिन कंप्यूटर की क्षमताएँ पूरी तरह अलग तरीके से हासिल हुए परिणाम हैं। दिलचस्प बात यह है कि LLM में क्षमताओं की रूपरेखा इंसानों के ज़्यादा करीब हो गई है, लेकिन नतीजे तक पहुँचने का तरीका अब भी पूरी तरह अलग है
    • 10–15 साल पहले मेरे business में आज के LLM होते, तो कितना श्रम बचता, यह शब्दों में नहीं कह सकता
      सबसे भयावह उदाहरण था करीब 1.8 लाख user-generated text recipes, जिन्हें ग्राहक normalize करवाना चाहता था। portions adjust करने, nutrition information calculate करने आदि के लिए quantities, units, ingredients, steps वगैरह निकालने थे
      preprocessing के लिए regex के ढेर और interns की फौज द्वारा एक-एक करके normalize करने वाली tool chain चाहिए थी, और interns द्वारा पैदा की गई गड़बड़ियों को ठीक करने में उससे भी ज़्यादा समय लगा
      LLM होता तो यह काम लगभग तुरंत खत्म हो गया होता। ऐसे अनगिनत कामों में, जहाँ पूरी तरह कचरे के ढेर को usable data में बदलना था, LLM शायद बस कर देता
      उस दौर की तकलीफ़ थोड़ी इसलिए कम हुई कि इस trend को देखकर उसी समय के आसपास NVDA खरीद लिया था
    • OpenAI ने ChatGPT जारी करने के बाद, सबने पैसे की उम्मीद में research बंद कर दी, इसलिए लगता है कि development speed अचानक कम हो गई
    • उम्मीदों में बदलाव का audience में बदलाव से काफ़ी संबंध दिखता है
      पहले नए machine learning models पर background knowledge रखने वाले practitioners चर्चा करते थे, इसलिए वे समझ पाते थे कि देखने में छोटा improvement भी क्यों बड़ी बात है और reasonable expectations क्या होनी चाहिए
      अब नए machine learning, या कहें “AI” models को आम जनता judge करती है, जिसे technical background नहीं पता, लेकिन marketing hype पता है। आप उन्हें language-related benchmarks पर भारी पड़ने वाला शानदार language model भी दे दें, फिर भी expectations बेतुकी होने के कारण वे हमेशा निराश होंगे
      जब language model grammar और syntax में अपेक्षाकृत “simple” काम भी कर लेता है, जैसे समझना कि pronoun किस object की ओर इशारा कर रहा है, तब भी मैं हैरान होता हूँ। लेकिन ज्यादातर लोगों ने language या computers को उस नज़रिए से कभी सोचा ही नहीं, इसलिए वे नहीं देख पाते कि यह कितना कठिन और प्रभावशाली है
    • “लोग 1 साल में हो सकने वाली चीज़ों को overestimate करते हैं, और 5 या 10 साल में हो सकने वाली चीज़ों को underestimate करते हैं” — यह बात AI expectations पर भी ठीक बैठती लगती है
  • यह comic हमेशा थोड़ी अजीब लगी। इंसानों ने navigation problem हल करने में हजारों साल लगाए
    यह comic उस छोटे-से दौर में मौजूद है, जब एक task आखिरकार “solve” हुआ था और दूसरा task बस शुरू ही हुआ था
    अगर आपको लगता है कि model training में बहुत energy लगती है, तो satellite constellations बनाए रखने के लिए rockets का बेड़ा launch करने के बारे में भी सोचिए

    • मैंने इसे इस रूप में देखा कि non-technical लोगों को कौन-सी चीज़ मुश्किल लगती है, उसमें फर्क होता है
      अपने career में कई बार meetings में अचानक आई एक requirement ने project estimates को महीनों तक बदल दिया
    • navigation problem में भी ऐसी मुश्किलें अब भी हैं, जिन्हें ज्यादातर apps ठीक से handle नहीं करतीं
      उदाहरण के लिए, retail websites या apps में store finder आमतौर पर current location और store के बीच सिर्फ straight-line distance calculate करता है और एक निश्चित range के अंदर stores को distance के हिसाब से दिखाता है
      Puget Sound के पश्चिम में Seattle के पास Kingston जैसी जगहों में यह समस्या बनती है। Walgreens store finder Kingston के पास search करने पर 10 stores दिखाता है, जिनमें से 9 Puget Sound के पार Seattle side में हैं। कार लेकर जाएँ तो one-way लगभग 20 डॉलर और 30 मिनट की ferry लेनी पड़ती है
      पश्चिम में दिखने वाला एक store Bainbridge Island store है, जो Kingston के किसी व्यक्ति के जाने लायक जगह नहीं है। असल में Silverdale store road distance के हिसाब से अधिक करीब है, लेकिन straight-line distance में थोड़ा दूर है
      Silverdale, Bremerton के 3 stores, और Port Orchard का 1 store समय और travel cost के हिसाब से Seattle side के stores की तुलना में Kingston के बहुत अधिक करीब हैं, लेकिन map पर दिखने के लिए “load more” button दबाना पड़ता है
      local inventory check feature भी ऐसा ही है: सामान “nearby” में बताया जाता है, लेकिन वास्तव में अक्सर वह केवल Puget Sound के उस पार वाले stores में होता है
    • बात लगभग वही है। आम लोगों को navigation जैसी चीज़ बहुत ज्यादा जटिल लगती है, लेकिन आज कोई भी इसे कुछ घंटों में कर सकता है
      इसके उलट, ऊपर से ज्यादा simple दिखने वाला काम आसानी से solve होकर API के रूप में उपलब्ध नहीं था, इसलिए उसमें सालों लग सकते थे। बेशक, अब यह संभव है
    • मेरे हिसाब से मुद्दा GPS नहीं, GIS है। यानी यह navigation problem नहीं, बल्कि “क्या यह point इस polygon के अंदर है” वाली problem है, और वह थोड़ी आसान है
    • यह observation comic के point से विरोधाभास नहीं रखती। कुल मिलाकर कौन-सा task कठिन है, यह बात नहीं है; बात यह है कि मौजूदा technology से क्या कठिन है
      मतलब, non-developers के लिए यह जानना मुश्किल है कि current technology किन tasks को trivial तरीके से solve कर देती है और किन tasks को नहीं कर पाती। समय के साथ इन दोनों categories का distribution बदलता है, लेकिन आम व्यक्ति के लिए इसे आसानी से समझ पाना वैसा ही रहता है
      आज हम जो कुछ भी करते हैं, उसे अगर शुरुआत से फिर बनाना पड़े तो वह बेहद कठिन होगा, लेकिन असल में शुरुआत से फिर बनाने की ज़रूरत नहीं होती, इसलिए वह करने में कठिन काम नहीं है
  • कोई कह सकता है कि यह “अच्छी तरह पुराना नहीं हुआ”, लेकिन मुझे लगता है कि असली बात—“आसान चीज़ और व्यावहारिक रूप से असंभव चीज़ के बीच का फर्क समझाना मुश्किल है”—बल्कि और मज़बूत हो गई है
    लगभग विडंबना की तरह, मुश्किल काम और आसान काम आपस में बदल गए हैं। 10 साल पहले किसने सोचा होगा

    • मुझे लगता है यह अच्छी तरह पुराना हुआ। असल में वह समस्या पोस्ट होने के 5 साल बाद आसान हो गई थी
    • xkcd का अपना वैकल्पिक टेक्स्ट देखने लायक है: 60 के दशक में Marvin Minsky ने कुछ अंडरग्रेजुएट्स से कहा था कि वे गर्मियों के दौरान ऐसा प्रोग्राम बनाएं जो कैमरे से सीन में मौजूद ऑब्जेक्ट्स की पहचान करे। उन्हें लगा था कि गर्मियों के अंत तक समस्या हल हो जाएगी, लेकिन आधी सदी बाद भी हम अब भी उसी समस्या से जूझ रहे हैं
    • 2014 में भी यह साफ था कि नई रिसर्च की जरूरत से ज्यादा, पक्षियों की पहचान के लिए बहुत सारे पक्षी learning data की जरूरत है
      https://en.wikipedia.org/wiki/DeepFace
    • व्यक्तिगत रूप से मैं यह सोचने से खुद को रोक नहीं पाता कि शायद इसी कॉमिक ने AI revolution को ट्रिगर किया
      अगर मेरी याद सही है, तो कुछ हफ्तों या महीनों बाद Yahoo/Flickr की तरफ से इसी समस्या, यानी पक्षी पहचान, पर एक पेपर आया और उसके बाद से सब कुछ मानो रातोंरात फट पड़ा। मुझे पता है कि असल में ऐसा नहीं था, लेकिन मुझे ऐसा ही लगा
    • हर task में लगने वाली compute और energy को देखें तो अब भी यह कहना सही है कि जो समस्याएं इंसानों को सरल लगती हैं, वे हल करने में ज्यादा कठिन होती हैं
  • LLM कौन-से काम भरोसेमंद तरीके से कर सकते हैं और कौन-से नहीं, यह समझना अब भी बहुत मुश्किल और गैर-सहज है
    कुछ समय पहले मेरी बेटी एक presentation तैयार कर रही थी और उसने पूछा, “पापा, क्या आप मेरे लिए ऐसी तस्वीर ढूंढ सकते हैं जिसमें सब्जियों से HELLO शब्द बना हो?”
    मैंने सोचा, “हां बिल्कुल, यह तो ChatGPT का काम है”, लेकिन ChatGPT स्पेससूट पहने बिल्ली को martini पीते हुए बना सकता है, फिर भी सब्जियों से HELLO बना हुआ चित्र निश्चित रूप से नहीं बना पाया
    आखिर में मैंने उससे alphabet के हर अक्षर को सब्जियों से बनी अलग-अलग images बनवाए, और मेरी बेटी ने उन्हें जोड़कर presentation में इस्तेमाल करने वाला शब्द बनाया

    • अगर आप जानते हैं कि ChatGPT असल में कैसे काम करता है, तो ऐसी कहानियां हमेशा मजेदार लगती हैं। tokenization समझते ही तुरंत समझ आ जाता है कि यह ChatGPT के लिए सही काम क्यों नहीं है
      यह ठीक वही वजह है जिसकी वजह से वह STRAWBERRY की spelling में अक्षरों की गिनती ठीक से नहीं कर पाता। इसलिए नहीं कि उसे फल या सब्जियों की अवधारणा नहीं पता, या वह metaphor या meme जैसे जटिल concepts नहीं समझता
      मॉडल “hello” को अलग-अलग अक्षरों से बने शब्द के रूप में नहीं देखता, बल्कि एक single token के रूप में देखता है—gpt-4o में ID 24912 वाला token। वह इस token का अर्थ और दूसरे tokens से उसके संबंध जानता है, लेकिन उस शब्द को बनाने वाले अक्षरों के बारे में मूल रूप से नहीं जानता। अपवाद वे मामले हैं जहां उसे अलग से train किया गया हो या training data में मौजूद किसी संयोगवश अतिरिक्त संबंध का उपयोग हो रहा हो
    • flux.1 से यह संभव है। मेरी जानकारी में text handling के लिए अभी यह सबसे अच्छा image model है
      Replicate पर flux-pro इस्तेमाल करके “vegetables spelling out the word "HELLO"” डालने का नतीजा: https://ibb.co/1RVKmdk
    • Ideogram v2 में पहले प्रयास में ऐसा आया:
      https://ideogram.ai/assets/image/lossless/response/v_LgyXI1Q...
      https://ideogram.ai/assets/image/lossless/response/V4RRDJZJS...
      पहली image में गाजर थोड़ी मजेदार है
      बोनस Hacker News: https://ideogram.ai/assets/image/lossless/response/SW0B7y4jR...
    • Grok 2 Mini Beta ने काफी अच्छा किया
      https://i.imgur.com/mvnusFd.jpeg
    • अभी ChatGPT 4o से करके देखा, और सिर्फ पहले prompt से ही काफी अच्छा result आया
      prompt ऊपर वाले comment से ज्यों का त्यों copy किया था: https://chatgpt.com/share/66f530b0-3fb8-800a-8af9-8a3e48a31a...
  • बस यह detect करके launch कर दो कि photo में आम तौर पर दिखने वाले पक्षी के रंग हैं या नहीं। competitors को ध्वस्त करने के बाद बाद में ठीक कर लेना

  • deep learning का context और basics समझने के लिए मैंने यह tutorial series की थी, और पहली class में इसी comic वाला bird classifier बनाना था
    यह सच में आसान और मजेदार था, और पूरा course भी शानदार है। जिन लोगों का programming background है और जो deep learning की मजबूत शुरुआत करना चाहते हैं, उन्हें जोरदार recommend करूंगा
    https://course.fast.ai/

  • कोई इस पर ध्यान नहीं दे रहा, लेकिन LLM request के दूसरे हिस्से जितना ही पहले हिस्से में भी आगे बढ़े हैं
    ChatGPT is_point_in_national_park function लिख देता है और संबंधित shapefile भी लगभग 30 सेकंड में बता देता है। यानी comic में बताए “कई घंटे” से सैकड़ों गुना तेज

  • vision LLM सचमुच कमाल हैं
    मेरे पास 20,000 से ज्यादा images को describe और catalog करने का project था
    इंसान से पारंपरिक तरीके से करवाते तो इसमें कई महीने और भारी खर्च लगता। descriptions ऐसी quality की होनी थीं जिन्हें customers पढ़ सकें
    OpenAI के vision API ने प्रति image कुछ cents में काम कर दिया, और कुल cost शायद 200 dollars से भी कम रही होगी

    • जानना चाहूंगा कि OpenAI की descriptions की accuracy की human review हुई थी या नहीं
  • सोचता/सोचती हूँ कि क्या कभी ऐसा दिन आएगा जब तकनीकी साक्षरता उस critical point तक पहुँच जाएगी कि ऐसी गलतफहमियाँ ज़्यादातर खत्म हो जाएँ
    10 साल पहले होता तो मैं हाँ कहता/कहती, लेकिन अब मुझे लगता है कि UX/UI की तरक्की और हर चीज़ के app बन जाने ने औसत व्यक्ति को बारीकियों से दूर कर दिया है
    अलग-अलग product के नज़रिए से यह अच्छी बात है, लेकिन कुल मिलाकर यह अवास्तविक उम्मीदें पैदा कर सकती है। मैंने युवा लोगों को “x बस y क्यों नहीं कर देता?” पूछते सुना है, और पहले मुझे लगता था कि ऐसा सवाल सिर्फ बहुत non-technical माता-पिता की पीढ़ी से ही सुनने को मिलेगा
    80 के दशक में computer बहुत लोगों के लिए लगभग जादू जैसा था, लेकिन ज़्यादातर लोगों को असल में computer से interact करने की ज़रूरत नहीं थी। computer से जुड़ी उम्मीदों का असर उतना ही कम था जितना extraterrestrial life को लेकर मेरी उम्मीदों का
    लेकिन डर है कि technology को लेकर magical thinking व्यक्तिगत और सामाजिक दोनों स्तरों पर कहीं बड़े परिणाम ला सकती है

  • @simonw, अगर आप इसे पढ़ रहे हैं, तो सोच रहा/रही हूँ कि क्या एक छोटी-सी गुज़ारिश कर सकता/सकती हूँ
    क्या publicly share किए जा सकने वाले coding work को live streaming करना बहुत बड़ी मांग होगी?
    खासकर आज के ecosystem—Python, SQLite data, JavaScript—के आसपास सीखने के लिए सच में बहुत कुछ होगा