4 पॉइंट द्वारा GN⁺ 2024-05-15 | 2 टिप्पणियां | WhatsApp पर शेयर करें
  • needle-in-a-needlestack एक सार्वजनिक पेज है जहाँ GPT-4o, Llama, Jamba, Sonnet, Gemini से जुड़े प्रयोग लेख और कोड एक जगह इकट्ठा किए गए हैं
  • प्रोजेक्ट का code repository भी दिया गया है, जिससे Needle in a Needlestack के प्रयोगों की सामग्री सीधे देखी जा सकती है
  • अलग-अलग मॉडलों पर लेख long context processing और scalability के अंतर पर केंद्रित हैं, और Llama 3.1 8B, Jamba 1.5 आदि के परिणामों की तुलना करते हैं
  • GPT-4o-mini को GPT-4 Turbo के लगभग समान लेकिन 98.5% कम कीमत वाले उदाहरण के रूप में, और Sonnet 3.5 को NIAN में Sonnet 3.0 से बेहतर उदाहरण के रूप में पेश किया गया है
  • यह पेज स्वयं open source है, इसलिए GitHub के “Improve this page” लिंक के जरिए दस्तावेज़ सुधार में भाग लिया जा सकता है

Needle in a Needlestack संबंधित लिंक

मॉडल-वार तुलना लेख

ओपन सोर्स दस्तावेज़

  • यह साइट open source है
  • Improve this page लिंक के जरिए GitHub पर इस पेज को संपादित किया जा सकता है

2 टिप्पणियां

 
wedding 2024-05-18

तकनीकी प्रगति सच में बहुत जबरदस्त है.. sobs

 
GN⁺ 2024-05-15
Hacker News की राय
  • यह टेस्ट 2021 में जारी किए गए limerick dataset पर आधारित है: https://zenodo.org/records/5722527
    मुझे लगता है कि इस बात की बहुत अधिक संभावना है कि GPT-4o ने इस डेटा पर training ली हो। क्योंकि इसे न शामिल करने की कोई खास वजह नहीं है। मुझे हैरानी है कि NIAN टीम कई models से limerick क्यों नहीं बनवाती और यह verify क्यों नहीं करती कि वे results dataset में मौजूद नहीं हैं। इससे यह संभावना खारिज की जा सकती है कि models ने उन्हीं limericks पर training ली थी

    • हमने test किया कि अगर limerick न दिया जाए तो क्या LLMs सवाल का जवाब दे सकते हैं। 4o को छोड़कर, इस benchmark पर performance बहुत खराब है, इसलिए मुझे नहीं लगता कि training data में शामिल होने की वजह से test invalidate हो जाता है
    • क्या बस पूरी तरह random text बनाकर उसमें खोजने को नहीं कहा जा सकता?
    • NIAN बहुत शानदार idea है, लेकिन क्या बस N अलग-अलग भाषाओं में translate करके सवाल नहीं पूछा जा सकता? DeepL, Google Translate, LLM की अपनी translation आदि को mix करके भी इस्तेमाल किया जा सकता है
  • मैंने दो छोटे legal documents की तुलना करके देखी, और इसने पूरी तरह hallucinate कर दिया कि एक clause एक में है और दूसरे में नहीं। contract के तीन अलग-अलग sections में ऐसा हुआ
    ctrl-f से check किया तो वह दोनों में बिल्कुल समान रूप से मौजूद था। यह सिर्फ एक sample है, लेकिन 90% वाला आंकड़ा plausible नहीं लगता। कुल मिलाकर लगभग 80k tokens थे

    • मेरा भी कुछ वैसा ही अनुभव है। 6,000 items की list में duplicates ढूंढने को कहा तो इसने पूरे जवाब को कई बार लगभग hallucinate कर दिया। कभी-कभी कुछ duplicates ढूंढ लेता है, लेकिन बीच-बीच में hallucinated items भी मिला देता है
      fixed number के attention heads के साथ यह मुश्किल task है, इसलिए मुझे सही जवाब की उम्मीद नहीं थी, लेकिन यह Claude Opus या GPT-4 से काफी खराब लगा
    • वह haystack में needle ढूंढना नहीं है
      LLM दो documents को छोटे sections में तोड़कर, section-wise repeat processing करे तो यह task बेहतर करता है। inference ability या memory न होने के कारण यह अपेक्षाकृत छोटे chunks से आगे दो बड़े text blocks को structurally analyze नहीं कर पाता। इसके बजाय, अगर semantically independent और relevant छोटे chunks को step by step scan किया जाए तो यह काफी अच्छा काम करता है
      इन्हें magic machines मान लेना गलत है। इनकी limits और capabilities हैं, और दूसरे tools की तरह यह समझना चाहिए कि क्या हो सकता है और क्या नहीं, और ideally क्यों। developers के 99.9% के लिए यह अभी भी काफी नया development है, फिर भी expectations practically infinite क्यों हैं, यह समझ नहीं आता। पिछली technologies के लिए “ठीक है, इसे सही तरह से use करना सीखते हैं” वाला standard ज्यादा reasonable था। शायद इसलिए कि ये इंसान की तरह बात करते हैं, तो इनमें वे abilities भी दिखने लगती हैं जो हैं नहीं; या क्योंकि ये इंसानों जैसी बहुत लगती हैं, इसलिए हम इन्हें इंसान न होने के लिए दोष देते हैं। hype भी है और साथ-साथ underestimation भी। XML तक ने कभी ऐसा ही hype cycle देखा था, मानो वह दुनिया की भूख खत्म कर देगा
    • वह needle-in-a-needlestack से अलग test है, लेकिन यह अच्छी तरह दिखाता है कि models कितने fragile हैं। कुछ क्षेत्रों में capable हैं, लेकिन दूसरे क्षेत्रों में बेहद खराब
      needle-in-a-needlestack, needle-in-a-haystack से अलग है, जहां अलग-अलग चीजों के बीच ढूंढना होता है; इसमें समान data के बीच specific data ढूंढना होता है। जैसे हजारों limericks में से किसी एक को ढूंढना
    • मैंने local regulations के साथ वही experiment किया और GPT को fines और fees hallucinate करते पकड़ा। यह सचमुच मौजूद problem है
    • दिलचस्प है, कम से कम officially GPT-4o की context window 128k है
  • needle-in-a-haystack test model की वास्तविक long-context handling ability को बहुत सीमित तरीके से ही दिखाता है। शुरुआती models इस task में बहुत खराब थे और इसे test करना आसान था, इसलिए इसका ज्यादा इस्तेमाल हुआ
    असल में ज्यादातर latest models इस एक task में काफी अच्छे हैं, लेकिन वास्तव में 32K tokens से आगे complex काम करने की ability काफी गिर जाती है। RULER कहीं बेहतर test है: https://github.com/hsiehjackson/RULER

    basic needle-in-a-haystack (NIAH) test में लगभग perfect performance हासिल करने के बावजूद, सभी models (Gemini-1.5-pro को छोड़कर) RULER tasks में sequence length बढ़ने पर बड़ी performance गिरावट दिखाते हैं
    सभी models 32k tokens से ज्यादा context size का दावा करते हैं (Llama3 को छोड़कर), लेकिन केवल आधे ही qualitative threshold यानी Llama2-7b की 4K performance (85.6%) से ऊपर जाकर 32K sequence length को effectively handle कर पाते हैं। threshold पार करने वाली performance को underline किया गया है

    • हो सकता है, लेकिन पहली बात, यह article NIHS नहीं बल्कि अपने variant test पर है, इसलिए यह ज्यादा relevant हो सकता है। दूसरी बात, article का core claim यह है कि GPT-4o बेहतर करता है, जबकि आपने जिस test का जिक्र किया उसमें GPT-4o benchmark नहीं किया गया था
    • RULER द्वारा benchmark किए गए models needle-in-a-needlestack में और खराब निकले। जिज्ञासा है कि 4o RULER में कैसा करेगा
  • इसे Gemini Pro 1.5 पर भी देखना चाहूंगा। पिछले हफ्ते मैंने पूरा Moby Dick डाला था, और एक बार Byung Chul-Han की प्रकाशित सभी किताबें डालकर देखीं। दोनों मामलों में इसने हर बार मेरे सवाल का उल्लेख करने या उसका जवाब देने वाले वाक्य के हिस्से को हूबहू ढूंढ निकाला, और hallucination भी नहीं हुआ

    • लैब में कई लोग फिक्शन रचनाओं पर LLM के लंबे context evaluation पर रिसर्च कर रहे हैं। Moby Dick के training data में होने की संभावना बहुत ज़्यादा है। इसलिए लैब के लोग ऐसी समस्या से बचने के लिए हाल में प्रकाशित किताबें खोजते रहे हैं
      पिछले हफ्ते ICLR में पेश किए गए BooookScore(https://openreview.net/forum?id=7Ttk3RzDeu) और हालिया preprint FABLES(https://arxiv.org/abs/2404.01261) को देख सकते हैं
    • वह सामग्री शायद training set में नहीं है? मॉडल की आखिरी release से भी बाद में प्रकाशित किताबों के सेट पर यही काम करना दिलचस्प होगा
    • लेख में linked 2500 examples को Gemini 1.5 Flash में डाला, और इसने सही जवाब “The tree has diseased leaves and its bark is peeling.” पहचान लिया: https://aistudio.google.com/
    • मेरे पास उस मॉडल का access है, और मैंने प्रभावशाली context extraction भी देखी है। एक बड़ा codebase पूरा डाला तो इसने summary भी बहुत अच्छी बनाई
      मैंने किसी को विशाल log file analyze करते भी देखा, लेकिन यह पहचानने के लिए कि मॉडल कब कुछ miss कर रहा है, ऐसे needle-in-a-needlestack जैसी चीज़ सच में चाहिए। कम से कम मॉडल developers proposed model को analyze करने के लिए इसका इस्तेमाल कर सकते हैं
    • अब लगता है 2–5 साल बाद ePub डालकर कुछ ही मिनटों में सटीक graphic novel version मिल सकेगा। Tolkien-स्टाइल पेड़ों की 4 हज़ार तस्वीरें देखने के लिए तैयार हूं
  • किसी को ऐसा “haystack में synthesis” test बनाना चाहिए जो सिर्फ search नहीं, बल्कि अलग-अलग जानकारी के बीच समझ की गहराई, connections और abstraction को test करे
    इंसान जब कोई किताब पढ़ता है, तो उसके बारे में एक “overall intuition” बनती है। इसे quantify करने का कोई तरीका चाहिए। needle-in-haystack test बहुत सरल है और लगता है कि काफी आगे तक नहीं जाता

    • बारीक Agatha Christie-स्टाइल culprit finding संभव लगती है। कई twists और alibis डालकर, और रचना के आखिरी हिस्से को काट देने पर सबसे संभावित suspect बदल जाए—ऐसा तरीका
    • needles मिलकर एक graph बनाएं, और prompt graph-based task पूछे—यह भी संभव है
    • एक unpublished novel या screenplay खरीदने का idea है, जिसमें detailed और internally consistent worldbuilding हो और well-designed motivations वाले characters हों; फिर बीच के बाद किसी random point से ऐसे दो characters को जोड़ते हुए नया plot लिखवाया जाए जो अभी तक मिले नहीं हैं
      अगर context समझता है तो कहानी का नया हिस्सा लिख पाने में सक्षम होना चाहिए, और पाठक intuitively जो character motivations महसूस करते हैं, उनका इस्तेमाल करके उनकी narrative आगे बढ़ा सकना चाहिए। हालांकि उपयोगी होने के लिए पूरी चीज़ को सख्ती से private रखना होगा, इसलिए इसे लगभग personal benchmark की तरह ही इस्तेमाल किया जा सकता है। या फिर methodology को public करके field सुधारने में लगाने के बजाय इसे ऐसे प्रतिष्ठित award जैसा बनाया जा सकता है जिसका मूल्यांकन निष्कर्षों की credibility से ही हो
    • मैंने भी ऐसा ही सोचा था। सवाल का एक हिस्सा LLM को limerick ढूंढने के लिए पर्याप्त जानकारी दे, और दूसरे हिस्से में उस limerick या किसी दूसरे text की गहरी समझ मांगने वाली बात पूछी जाए
    • समझ जैसी कोई चीज़ होती ही नहीं, इसलिए वह नहीं कर सकता
      GPT-4o भी training set में न मौजूद दो अलग-अलग ideas के intersection को अभी handle नहीं कर सकता। यहां तक कि दो अलग-अलग ideas के intersection की random variations भी नहीं बना सकता। आगे बढ़कर कहें तो मॉडल से ऐसा करने की उम्मीद नहीं करनी चाहिए। यह model, उसकी वास्तविक usefulness, और बिना समझ के भी वह जो अद्भुत चीजें कर लेता है—इन सबके प्रति fair नहीं है। मॉडल समझता है, ऐसा मानना खुद को धोखा देना है
  • अब GPT का इस्तेमाल करके raw dynamic data को मौके पर ही अच्छे दिखने वाले HTML layout में बदला जा सकता है। कम traffic वाली changelog या audit log जैसी pages में development time बहुत घटाया जा सकता है, और data structure बदलने पर भी HTML को updated रखा जा सकता है
    पहले की कोशिशें consistently काम नहीं करती थीं, क्योंकि GPT-4-Turbo कभी-कभी context और instructions को लगभग पूरी तरह ignore कर देता था

  • यह लेख दिखाता है कि input window के पूरे हिस्से पर ध्यान देने की GPT-4o की क्षमता GPT-4 Turbo और Claude-3 Sonnet से कितनी बेहतर हो गई है
    needle-in-a-haystack का upgrade कुछ समय से चाहिए था, और यह “Needle In A Needlestack” अच्छा next step है। NIAN हज़ारों limericks वाला prompt बनाता है, और किसी खास position की limerick पर सवाल पूछता है

    • सहमत हूं। मैंने कुछ समय तक Claude के लिए पैसे दिए। यह बड़े context का support जोर देकर बताता है, और बड़ा context इस्तेमाल करने पर tokens जबरदस्त खा जाता है, लेकिन context में बस कुछ pages पहले का source code भी हो तो लगभग बेकार था
      बाकी सभी पहलू ठीक थे और vibe भी पसंद थी, इसलिए और ज्यादा frustration हुई। कल रात 4o इस्तेमाल किया, और 20 सवाल पहले paste की गई C++ class को यह अभी भी पूरी तरह पहचान रहा था। मुझे फर्क नहीं पड़ता कि यह smart है या नहीं; important है कि यह useful है, और यह usefulness में सच में बहुत बड़ा योगदान देता है
  • मेरा यकीन बढ़ता जा रहा है कि public internet पर ढंग का LLM evaluation करना किसी को नहीं आता

    • फिर भी यह राहत की बात है कि हम आखिरकार 2022–2023 में सबके किए जाने वाले “अमेरिका के 29वें राष्ट्रपति कौन हैं”, “Van Gogh style में draw करो” जैसे LLM evaluations से आगे निकल आए हैं
  • इस test के meaningful होने के लिए यह जानना ज़रूरी है कि test set data training data में शामिल नहीं था

    • अगर limerick पहले provide किए बिना सवाल पूछें तो यह कभी सही जवाब नहीं दे पाता। LLM जब गलत होता है, तो आम तौर पर training data पर लौटकर ऐसा generic जवाब देता है जो limerick से match नहीं करता
    • ज़रूरी नहीं। material upload करने से पहले और बाद की model performance compare कर लें
    • मुझे लगा test limericks automatically generated थे
  • सुनने में अच्छा है। GPT-4.0 की सबसे बड़ी समस्या यह थी कि conversation लंबी होने पर quality गिरती जाती थी, और खासकर coding projects में यह important था
    उत्सुक हूं कि अब यह बेहतर हुआ है या नहीं। आज test करने वाला हूं

    • अब तक मेरा experience भी ऐसा ही रहा है। मौजूदा conversations पुराने GPT-4 conversations से हास्यास्पद रूप से लंबी हो गई हैं। पहले अक्सर context copy करके नए chat में फिर से शुरू करना पड़ता था
    • मेरा भी यही experience था। 16k prompts में Turbo लगभग perfect था, लेकिन 32k पर अच्छा नहीं था और 100k+ पर usable नहीं था। लंबे prompts से अच्छे results पाने के लिए जानकारी बार-बार डालनी पड़ती है