2 पॉइंट द्वारा GN⁺ 2024-04-08 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • जटिल कार्यों में LLM की accuracy डगमगा सकती है, और यह अध्ययन जांचता है कि अतिरिक्त structure के बजाय सिर्फ sampling-voting से performance बढ़ाई जा सकती है या नहीं
  • Agent Forest एक सरल ensemble तरीका है, जिसमें वही query कई बार चलाकर जवाब इकट्ठे किए जाते हैं और फिर majority vote से final जवाब चुना जाता है
  • GSM8K में ensemble size 15 पर Llama2-13B ने Llama2-70B जैसी accuracy हासिल कर ली, और Llama2-70B व GPT-3.5-Turbo भी अपने अधिक शक्तिशाली counterpart models के करीब पहुंच गए
  • यह तरीका CoT-based methods या multi-agent collaboration frameworks के साथ स्वतंत्र रूप से combine किया जा सकता है, इसलिए मौजूदा techniques के ऊपर अतिरिक्त performance gains दे सकता है
  • सुधार खासकर कठिन कार्यों और कमजोर models में बड़ा दिखता है, और complex prompt design के बिना भी cost-performance बेहतर करने की गुंजाइश देता है

जटिल कार्यों में डगमगाती LLM accuracy

  • LLM language generation, understanding, reasoning जैसी कई applications में मजबूत क्षमता दिखाते हैं, लेकिन जटिल कार्यों में सही जवाब देना मुश्किल होता है
  • मौजूदा performance improvement research ने broadly ensemble methods और multi-LLM agent collaboration frameworks का इस्तेमाल किया है
    • LLM-Debate में कई LLM agents arithmetic tasks के final answer पर debate करते हैं, जिससे single agent की तुलना में reasoning performance बढ़ती है
    • CoT-SC कई thought chains generate करता है और सबसे self-consistent answer चुनता है; इससे single thought chain इस्तेमाल करने वाले CoT की तुलना में reasoning performance बेहतर होती है
  • पिछले results में भी agent count या thought chain count बढ़ने पर performance बढ़ती देखी गई थी, लेकिन base LLM agents की संख्या की scaling characteristics को अलग research topic के रूप में पर्याप्त रूप से नहीं देखा गया था

Agent Forest कैसे काम करता है

  • Agent Forest, LLM agents की संख्या बढ़ने का performance पर असर देखने के लिए एक सरल sampling-voting procedure इस्तेमाल करता है
  • इसका काम दो steps में बंटा है
    • task query को single LLM या multi-LLM agent collaboration framework में बार-बार input देकर कई outputs generate किए जाते हैं
    • generated outputs पर majority voting लागू करके final result तय किया जाता है
  • procedure CoT-SC से inspired है, लेकिन complex CoT path design पर निर्भर नहीं करता
  • इसका नाम classical Random Forest को एक homage है

GSM8K और कई tasks पर results

  • experiments अलग-अलग sizes के विभिन्न LLMs और reasoning·generation tasks शामिल करने वाले कई datasets पर किए गए
  • कुल मिलाकर ensemble size, यानी agents की संख्या, बढ़ने पर LLM performance बेहतर हो सकती है
  • Figure 1 के GSM8K results में Llama2-13B, Llama2-70B, GPT-3.5-Turbo सभी की accuracy ensemble size बढ़ने के साथ बढ़ती है
    • ensemble size 15 पर Llama2-13B ने Llama2-70B से comparable accuracy हासिल की
    • ensemble size 15 और 20 पर Llama2-70B और GPT-3.5-Turbo ने क्रमशः अपने अधिक शक्तिशाली counterpart models से comparable accuracy दिखाई
    • figure में error bars standard error दिखाते हैं
  • छोटे LLMs भी simple ensemble लागू करने पर बड़े LLMs से comparable या बेहतर performance दे सकते हैं

मौजूदा techniques के ऊपर जोड़ी जा सकने वाली performance improvement

  • Agent Forest मौजूदा complex LLM performance improvement methods के साथ स्वतंत्र रूप से combine किया जा सकने वाला approach है
  • CoT-based methods में इसे plugin की तरह जोड़कर अतिरिक्त performance improvement हासिल की जा सकती है
  • complex methods से तुलना करने पर भी, सिर्फ Agent Forest ज्यादातर मामलों में comparable performance हासिल कर सकता है
  • अतिरिक्त manual prompt design या complex collaboration framework के बिना भी competitive results मिल सकते हैं

difficulty के हिसाब से effect और optimization

  • performance gains कठिन कार्यों और कमजोर models में ज्यादा बड़े दिखाई देते हैं
  • problem difficulty का Agent Forest effect पर असर तीन dimensions में बांटकर analyze किया गया
    • problem की intrinsic difficulty
    • reasoning steps की length
    • correct answer की prior probability
  • हर dimension को adjust करने वाले experiments के जरिए Agent Forest effect को प्रभावित करने वाली properties की पहचान की गई
  • पहचानी गई properties के आधार पर “More Agents” के effect को बेहतर तरीके से उभारने के लिए optimization strategies भी आगे develop की गईं
  • public code https://github.com/MoreAgentsIsAllYouNeed/AgentForest पर उपलब्ध है

1 टिप्पणियां

 
GN⁺ 2024-04-08
Hacker News की राय
  • लगता है कुछ लोगों ने यह पेपर ठीक से नहीं पढ़ा है
    यह पेपर Chain-of-thought या LLM-Debate जैसे multi-agent setup के विचार का लगभग खंडन करता दिखता है
    पेपर में सुझाया गया विकल्प यह है कि उसी LLM से वही query कई बार पूछी जाए, लेकिन queries के बीच context साझा न किया जाए, फिर जवाबों के बीच समानता की गणना करके सबसे आम जवाब चुना जाए
    अगर LLM hallucination और सही जवाबों को मिलाकर देता है, तो सही जवाब आपस में मिलते-जुलते होंगे और hallucinations बेतरतीब तरीके से बिखरेंगे, इसलिए बात समझ में आती है
    लेकिन यह सरल algorithm दूसरे multi-agent algorithms जितना, और कभी-कभी उनसे बेहतर काम करता है
    यानी clever prompts इस्तेमाल करने वाली दूसरी multi-agent techniques कोई खास काम नहीं कर रहीं; सुधार का अधिकांश हिस्सा शायद LLM को कई बार चलाने और उससे “सबसे अच्छा जवाब चुनने” को कहने से आता है

    • https://en.wikipedia.org/wiki/Lorenz_system
      लंबे समय से weather simulations में input parameters को थोड़ा-थोड़ा बदलकर model को बार-बार चलाया जाता रहा है, outliers हटाकर average निकाला जाता रहा है, और यह काफी अच्छी तरह काम करता है
      LLM में भी आम तौर पर random seed, यानी temperature value होती है, इसलिए वही input देकर outputs का average निकालें तो बेहतर estimate मिल सकता है
      Lorenz system hallucination समस्या शायद हल न हो पाने की वजह पर भी संकेत, शायद explanation देता है
      इस नजरिए को अपनाएँ तो यह भी जल्दी साफ हो जाता है कि LLM सामान्य-उद्देश्य वाली artificial intelligence की राह में लगभग dead end है
      simulation emulation नहीं है, और LLM के intelligent बन जाने की संभावना लगभग उतनी ही है जितनी weather forecast के मौसम को control करने लगने की
    • GitHub Copilot इस्तेमाल करने के अनुभव से लगता है कि hallucination तब होता है जब किसी true fact की संभावना कम होती है, फिर भी Copilot सबसे plausible जवाब दे देता है
      आम तौर पर कोई खास library बहुत असामान्य और undocumented तरीके से काम करती है, और जब example पूछा जाता है तो उस library के वैसा काम करने की स्थिति में जिसकी जरूरत ही नहीं पड़ती, ऐसा शानदार और समझने में आसान fake function code मिल जाता है
      ऐसी query को कई बार चलाने से मदद मिलेगी, ऐसा नहीं लगता
    • यह idea machine learning में लंबे समय से इस्तेमाल होने वाले और अच्छा perform करना साबित हो चुके ensemble models से बहुत मिलता-जुलता है
      कई predictors के results को average करके या उनसे vote कराकर सबसे आम predicted value चुनें, तो कई predictions का common denominator चुनते हुए prediction noise को घटाया जा सकता है
    • temperature को 0 पर set करने पर model सबसे अधिक probability वाला token चुनता है और output हमेशा एक जैसा हो जाता है
      लेकिन हम पहले से जानते हैं कि इससे सही जवाब की guarantee नहीं मिलती, तो कई बार चलाना कैसे बेहतर हो सकता है?
    • “अगर LLM hallucination और सही जवाबों को मिलाकर देता है, तो सही जवाब आपस में मिलते-जुलते होंगे और hallucinations बेतरतीब तरीके से बिखरेंगे” वाला हिस्सा, base model के किसी खास दावे के बारे में रखे गए confidence के करीब कोई value देगा, ऐसा मैं उम्मीद करता हूँ
      अपने-आप में यह अच्छा है, लेकिन urban legends या cultural legends भी ऊँची rank पर आ सकते हैं
      यह बहुत इंसानी गलती है, फिर भी गलती ही है
      इससे आगे जाने के लिए world model बनाना, contradictions ढूँढना, और उन contradictions को resolve करने वाले नए evidence तलाशने होंगे, ऐसा मुझे लगता है
  • आखिरकार आ गया
    करीब 16 महीनों से कह रहा था कि single agent से सब कुछ सही करवाने पर ध्यान देने के बजाय agents को hierarchical बनाना चाहिए, इसलिए अब point करने के लिए एक paper मिलना अच्छा है
    यह भी दिलचस्प है कि task-wise diminishing returns लगभग ideal human meeting size जैसे आकार पर तेजी से flatten हो जाते हैं: https://www.researchgate.net/figure/18-Optimal-Meeting-Sizes...
    अगर agent count को ज्यादा granular steps में test किया जाता, तो curious हूँ कि वे numbers इनके कितने करीब match करते
    आगे चलकर जब हर agent को थोड़े अलग goals के लिए fine-tune किया जाएगा, तो performance कितनी और बढ़ेगी, यह भी देखना चाहूँगा
    सिर्फ हर agent की temperature value अलग रखने से भी performance improvement हो सकता है
    research community का इस दिशा में बढ़ना शुरू करना बहुत अच्छा लग रहा है

    • पूरी तरह सहमत
      LLMWare के SLIM agents भी देखने लायक हैं: https://github.com/llmware-ai/llmware/tree/main/examples/SLI...
      यह लगभग इसी topic पर focus करते हुए कई local LLMs को जोड़ता है
      इससे जुड़ा एक अच्छा topic यह भी है कि model के use case के हिसाब से deterministic sampling की जरूरत होती है
      शब्द थोड़ा गलत हो सकता है, लेकिन LLMWare team ने इस बारे में एक अच्छा 2-part video बनाया है: https://www.youtube.com/watch?v=7oMTGhSKuNY
      मेरे हिसाब से dedicated small LLMs ही आगे का रास्ता हैं
      वैसे मेरा उनसे कोई संबंध नहीं है, बस सच में project बहुत अच्छा लगता है
    • मुझे लगता है इंसान भी इसी तरह काम करते हैं
      हमारी खोपड़ी के अंदर अपने ही 5 या 8 versions घूम रहे होते हैं, और उनमें से एक कुछ हद तक supervisor की भूमिका निभाता है
    • पिछले साल कुछ महीनों तक https://github.com/agi-merge/waggle-dance के साथ problem-solving के लिए multi-agent system बना रहा था
    • “हर एक को थोड़ा अलग goals के लिए fine-tune” करना, यानी कहें तो mixture of experts जैसा ही नहीं है?
    • यह मजेदार है कि researchers उन चीजों पर research कर रहे हैं जिन्हें लोग experimental तौर पर बना रहे हैं
      crewAI इसका एक उदाहरण है
  • यह हाल की ACM ByteCast के Edward Chang एपिसोड से जुड़ा लगता है
    यह एपिसोड Stanford University के कंप्यूटर साइंस विभाग के adjunct professor Edward Chang के साथ है: https://learning.acm.org/bytecast/ep50-edward-y-chang
    अगर सुनना नहीं चाहते, तो transcript भी है
    उनका तरीका आजकल के LLM के आम question/answer format के बजाय यह है कि कई LLM किसी चर्चा विषय पर आपस में बातचीत करें और इंसान moderator की भूमिका निभाए
    उनका कहना है कि समान संसाधनों में, कई LLM की बातचीत से निकला अंतिम जवाब precision और accuracy दोनों में काफी बेहतर होता है

    • यह पेपर लगता है कह रहा है कि debate वाला हिस्सा जरूरी नहीं है
      बस LLMs से समस्या स्वतंत्र रूप से हल करवाएँ और फिर सबसे लोकप्रिय जवाब चुन लें
    • मैंने Haskell में कुछ मिलता-जुलता बनाया था
      benchmark नहीं किया, लेकिन यह काफी convincing लगा
      उदाहरण के लिए, मैंने हर agent को गणित के अलग subfield का अलग “expert” परिभाषित किया था: proof theorist, abstract algebra expert आदि
      मदद तो हुई, लेकिन signal-to-noise ratio ऊँचा था, और कई agents वही बात दोहरा रहे थे
    • क्या यह असल में crewAI जैसी चीजों को ही समझा रहा है?
  • इस पूरी mixture-of-experts research में एक बात ने मुझे खीझाया है
    randomized algorithms की introduction या basic probabilistic reasoning ही देख लें, अगर temperature parameter 0 से बड़ा है, तो LLM से N बार query करके majority-vote result चुनना, आम तौर पर एक बार पूछकर वही result चुनने से बेहतर performance देगा
    अलग-अलग LLM को specialize करके मिलाने से शायद अतिरिक्त सुधार मिल सकता है, और ऐसे case में temperature 0 पर भी चला सकते हैं
    या जैसा यह पेपर सुझाता है, task को subtasks में बेहतर तरीके से तोड़ना भी संभव है
    लेकिन मेरी नजर में किसी ने भी ऐसे hypothetical gains को simple randomized repetition method के मुकाबले सच में quantify नहीं किया है
    खासकर कोई voting strategy या mixture method, यहाँ तक कि किसी specific model में MoE जैसी approach भी naive repetition से strictly worse हो सकती है
    मैं LLM researcher नहीं हूँ, ज्यादा से ज्यादा एक चिंतित नागरिक हूँ, इसलिए हो सकता है कुछ miss कर रहा हूँ
    फिर भी अजीब लगता है कि LLM researchers Motwani/Raghavan का पहला chapter भूल गए हों

    • random रूप से चुने गए tokens में से सबसे अच्छा token चुनने और random रूप से चुनी गई token strings में से सबसे अच्छी string चुनने के बीच फर्क लगता है
  • graph को मोटे तौर पर देखने पर, फायदा ज्यादातर 10 agents पर ही आ जाता है, 20 पर थोड़ा और बढ़ता है, और उसके बाद diminishing returns दिखते हैं
    सिर्फ और agents जोड़ देने से समस्या हल नहीं होगी लगती

  • public repository है: https://anonymous.4open.science/r/more_agent_is_all_you_need...
    benchmark में इस्तेमाल किए गए prompts यहाँ हैं: https://anonymous.4open.science/r/more_agent_is_all_you_need...
    बहुत interesting
    इसी तरह, लेकिन tool set इस्तेमाल करने वाले LLM-based agents को benchmark करते हुए भी देखना अच्छा होगा

  • क्या यह बहुत महँगा और unsustainable तरीका नहीं है?
    latest models में शायद diminishing returns आएँगे, इसलिए MoE ही रास्ता है वाली भावना से सहमत हूँ
    लेकिन क्या एक single prompt का compute अचानक 7–15 गुना नहीं बढ़ जाता?

    • GPT-4, GPT-3.5 से 20 गुना महँगा है, लेकिन अगर मिलती-जुलती response quality पाने के लिए GPT-3.5 को 10 बार चलाना काफी हो, और शायद यह ज्यादा fast भी हो, तो फिर भी फायदा है
    • “जरूरत बस छह अंकों के OpenAI bill की है”
    • non-renewable resource usage और emissions भी 7–15 गुना बढ़ते हैं
    • तो problem क्या है? ऐसा तो नहीं कि GPU compute की कमी से जूझ रहे हों
    • सही, GPT-3.5 और GPT-4 की pricing देखनी चाहिए
  • अभी top comments में से कुछ ही पढ़कर भी LLM services देने वाली कंपनियों के business models अजीब लगते हैं
    जैसे कोई car service जो A से B तक ले जाने के लिए n calls चाहती हो, या detergent जिसे कपड़े “शायद” साफ करने के लिए n बार लगाना पड़े
    अगर कोई कंपनी पैसे लेकर “artificial intelligence” देती है, तो क्या सिर्फ सही जवाबों के लिए ही pay करना logical नहीं है?
    अगर car service दे रहे हैं, तो destination तक पहुँचाने पर ही पैसे देने चाहिए, नहीं?

    • सहमत
      अगर यह काफी frequently fail करता है, तो humans या general-purpose traditional automation के बेहतर हो जाने का threshold काफी कम नहीं हो जाता?
      लगता है यह bubble इसी तरह फूटेगा
      LLMs breakthrough tools हैं, इसमें शक नहीं, लेकिन बहुत granular applications को छोड़कर मैं सच में skeptical हूँ
      शायद lesson यह है कि LLM agents में जिम्मेदारी बाँटना, existing human organizations के failure model जैसा ही है
    • कंपनियाँ आम तौर पर service या product देती हैं
      अगर वे agreed चीज deliver नहीं करतीं, तो customer rectification माँग सकता है
      taxi driver अगर बेवजह complex route ले, ज्यादा charge करे, या destination तक न ले जाए, तो taxi company से शिकायत कर सकते हैं
      laundry ठीक से नहीं हुई तो दोबारा करने को कहते हैं
      लेकिन कई activities मूल रूप से risky होती हैं या उनका result uncertain होता है
      क्योंकि हमेशा ऐसे factors होते हैं जिन्हें कोई control नहीं कर सकता
      lawyer मुकदमा जीतने का वादा नहीं कर सकता, लेकिन उसे case को best effort से represent करना चाहिए
      doctor यह guarantee नहीं देता कि आप फिर से healthy हो जाएँगे
      कोई taxi driver यह guarantee नहीं देता कि आप time पर destination पहुँचेंगे, लेकिन destination तक ले जाता है
      Atlassian यह guarantee नहीं देता कि managed JIRA instance इस्तेमाल करने से release deadlines पूरी हो जाएँगी, लेकिन data loss रोकने की best effort करता है
      मूल रूप से chatbot access बेचने वाली company भी correct result देने की guarantee नहीं देगी
      शायद availability guarantee जितनी बात हो सकती है
    • counterexample के तौर पर, National Weather Service का forecast हमेशा सही नहीं होता, लेकिन हम NWS को सिर्फ उन दिनों pay नहीं करते जब forecast सही निकले
  • GPT-3.5 agents को जितना भी ensemble कर लें, accuracy GPT-4 की एक call से कम ही रहती है

    • मजेदार बात यह है कि GPT-4 असल में GPT-3.5s का एक pile ही है
      बस उसे सही तरीके से configure करना होता है