1 पॉइंट द्वारा GN⁺ 2025-05-01 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Xiaomi का MiMo-7B रीजनिंग कार्यों के लिए शुरू से प्रशिक्षित 7B language model series है, और इसने base·SFT·RL model checkpoints को open source के रूप में जारी किया है
  • 30 मई 2025 के अपडेट में SFT dataset को लगभग 5 लाख से 60 लाख तक बढ़ाया गया और RL training window size को 32K से 48K तक विस्तारित किया गया, जिससे MiMo-7B-RL-0530 का AIME 2024 प्रदर्शन 80.1 तक पहुंचा
  • pretraining में लगभग 25 ट्रिलियन tokens और 3-स्टेज data mixing strategy का उपयोग किया गया, जिसमें रीजनिंग pattern density बढ़ाने के लिए data filtering·synthetic reasoning data·Multiple-Token Prediction शामिल हैं
  • post-training में math·code समस्याओं के 1.3 लाख उदाहरण, rule-based verifier, rule-based accuracy reward, code समस्याओं के लिए test difficulty-based reward, और आसान समस्याओं के लिए resampling strategy का उपयोग किया गया
  • deployment के लिए SGLang, Xiaomi का vLLM fork, और HuggingFace examples दिए गए हैं; अन्य reasoning engines पर MiMo validation अभी पूरा नहीं हुआ है और contributions आमंत्रित हैं

MiMo-7B सीरीज़ का लक्ष्य और सार्वजनिक दायरा

  • MiMo-7B एक model series है जिसका उद्देश्य language model की reasoning क्षमता को pretraining से लेकर post-training तक अधिकतम करना है
  • जारी किए गए checkpoints ये 4 प्रकार हैं
    • MiMo-7B-Base: reasoning क्षमता वाला base model
    • MiMo-7B-RL-Zero: base model पर RL से प्रशिक्षित model
    • MiMo-7B-SFT: base model पर SFT से प्रशिक्षित model
    • MiMo-7B-RL: SFT model पर RL से प्रशिक्षित model
  • मॉडल HuggingFace और ModelScope पर उपलब्ध हैं
  • technical report arXiv पर प्रकाशित है

30 मई 2025 अपडेट

  • MiMo-7B-RL-0530 में SFT dataset को लगभग 5 लाख से 60 लाख तक विस्तारित करने और RL training window size को 32K से 48K तक बढ़ाते रहने के परिणाम शामिल हैं
  • AIME 2024 में MiMo-7B-RL-0530 ने 80.1 स्कोर किया, जो DeepSeek R1 के 79.8 से आगे है
  • मुख्य benchmark बदलाव इस प्रकार हैं
    • MATH500 Pass@1: 95.8 → 97.2
    • AIME 2024 Pass@1: 68.2 → 80.1
    • AIME 2025 Pass@1: 55.4 → 70.2
    • LiveCodeBench v5 Pass@1: 57.8 → 60.9
    • LiveCodeBench v6 Pass@1: 49.3 → 52.2
    • GPQA-Diamond Pass@1: 54.4 → 60.6
    • Alignbench1.1, GPT-4.1 मूल्यांकन: 6.9 → 7.4

pretraining: reasoning के लिए base model

  • MiMo-7B-Base reasoning कार्यों के लिए शुरू से प्रशिक्षित base model है
  • pretraining में लगभग 25 ट्रिलियन tokens का उपयोग किया गया
  • data processing में text extraction tools को बेहतर बनाया गया और multi-dimensional data filtering लागू की गई ताकि pretraining data की reasoning pattern density बढ़े
  • बड़े पैमाने पर विविध synthetic reasoning data बनाने के लिए कई strategies का उपयोग किया गया
  • pretraining में 3-स्टेज data mixing strategy लागू की गई
  • अतिरिक्त training objective के रूप में Multiple-Token Prediction जोड़ा गया ताकि model performance और reasoning speed बेहतर हो

post-training और RL training तरीका

  • post-training में rule-based verifier से सत्यापित की जा सकने वाली math·code समस्याओं के 1.3 लाख उदाहरण RL training data के रूप में उपयोग किए गए
  • हर समस्या को quality सुनिश्चित करने के लिए refinement और difficulty evaluation से गुजारा गया
  • संभावित reward hacking से बचने के लिए reward के रूप में केवल rule-based accuracy reward का उपयोग किया गया
  • कठिन code समस्याओं में sparse reward की समस्या कम करने के लिए test difficulty-based code reward पेश किया गया
    • अलग-अलग कठिनाई वाले test cases को अधिक सूक्ष्म स्कोर दिए गए
    • policy को अधिक dense reward signals के साथ optimize किया जा सकता है
  • आसान समस्याओं पर data resampling strategy लागू की गई ताकि rollout sampling efficiency बढ़े और खासकर RL training के बाद के चरण में policy updates स्थिर रहें

RL infrastructure और model architecture

  • Seamless Rollout Engine को RL training और validation तेज करने के लिए विकसित किया गया
  • इसका design continuous rollout, asynchronous reward calculation, और early stopping को जोड़ता है ताकि GPU idle time कम हो
  • performance improvement के आंकड़े इस प्रकार हैं
    • training speed में 2.29x सुधार
    • validation speed में 1.96x सुधार
  • MiMo-7B की MTP layer को pretraining और SFT के दौरान tune किया जाता है, और RL के दौरान fixed रखा जाता है
  • speculative decoding के लिए 1 MTP layer इस्तेमाल करने पर acceptance rate लगभग 90% है
  • vLLM में MTP support दिया गया है और RL system के inference engine की robustness को मजबूत किया गया है

evaluation results

  • MiMo-7B-RL को math और code reasoning tasks में OpenAI o1-mini के बराबर प्रदर्शन करने वाला बताया गया है
  • मुख्य model comparison में MiMo-7B-RL के math·code परिणाम इस प्रकार हैं
    • MATH-500 Pass@1: 95.8
    • AIME 2024 Pass@1: 68.2
    • AIME 2025 Pass@1: 55.4
    • LiveCodeBench v5 Pass@1: 57.8
    • LiveCodeBench v6 Pass@1: 49.3
  • MiMo-7B series के आंतरिक comparison में RL लागू होने के बाद प्रदर्शन में बड़ा सुधार दिखा
    • MATH500: Base 37.4 → RL-Zero 93.6 → SFT 93.0 → RL 95.8
    • AIME 2024: Base 32.9 → RL-Zero 56.4 → SFT 58.7 → RL 68.2
    • LiveCodeBench v5: Base 32.9 → RL-Zero 49.1 → SFT 52.3 → RL 57.8
  • evaluation setting temperature=0.6 है
  • repeated evaluation conditions इस प्रकार हैं
    • AIME24 और AIME25 में 32 runs का औसत
    • LiveCodeBench v5, LiveCodeBench v6, GPQA-Diamond, IF-Eval में 8 runs का औसत
    • MATH500 और SuperGPQA में single run

deployment और inference उपयोग

  • SGLang MiMo model support और MTP support के जरिए MiMo को mainstream support देता है
  • vLLM inference के लिए Xiaomi का vLLM fork उपयोग करने की सिफारिश की गई है
    • अनुशंसित fork: XiaomiMiMo/vllm
    • यह fork vLLM 0.7.3 पर आधारित विकसित किया गया है
  • MTP parameters लोड न करने वाले तरीके से vLLM loader भी register किया जा सकता है
  • HuggingFace inference example AutoModelForCausalLM.from_pretrained और AutoTokenizer.from_pretrained का उपयोग करता है
  • अनुशंसित prompt setting empty system prompt है
  • अन्य reasoning engines पर MiMo validation अभी पूरा नहीं हुआ है, और HuggingFace repository की model definitions के आधार पर contributions आमंत्रित हैं

1 टिप्पणियां

 
GN⁺ 2025-05-01
Hacker News राय
  • पेपर में code data के लिए reinforcement learning चरण को कैसे संभाला गया, यह दिलचस्प लगा। उन्होंने मुश्किल लेकिन हल किए जा सकने वाले code generation tasks को unit tests के साथ चलाकर train किया; सोच रहा हूं कि क्या दूसरे models भी ऐसे training चरण से गुजरते हैं
    पेपर में कहा गया है कि जिन problems में test cases नहीं थे उन्हें हटाया गया, जिनमें reference code था लेकिन वह सभी tests पास नहीं कर पाया उन्हें भी बाहर किया गया, और जिन problems में reference code नहीं था उन्हें तब फेंक दिया गया जब advanced reasoning model की 16 बार sampling में कोई भी test हल नहीं हुआ। आसान problems को भी MiMo-7B के SFT version से filter करके अंत में 30,000 code problems बनाए गए
    साथ ही, reinforcement learning के हर iteration में हजारों problems और प्रति problem सैकड़ों test cases evaluate करने पड़ते थे, इसलिए GPU idle time खत्म करने के लिए उन्होंने बहुत बड़े पैमाने पर unit tests parallel में चलाने वाला online judge environment बनाया

    • क्या unit tests के बिना reinforcement learning करने के मामले होते हैं? अगर नहीं, तो इसका मतलब होगा कि दूसरे model makers accuracy को नज़रअंदाज़ कर रहे हैं, जो थोड़ा आश्चर्यजनक होगा
      छोटे modular problems के लिए यह संभव होगा, लेकिन जिन problems का input 200,000 tokens का हो, उनमें यह तरीका मुश्किल हो सकता है
  • चीन से आए AI models में इतने सारे English-first models क्यों हैं, यह सोचने वाली बात है। क्या वे अपने घरेलू users को target करने का इरादा नहीं रखते, या फिर Chinese-first model release करने पर पश्चिमी दुनिया में ध्यान मिलना मुश्किल होता है, समझ नहीं आता

    • CommonCrawl 2008 से data collect कर रहा सबसे बड़ा और आसानी से उपलब्ध legal crawling dataset है। लगभग हर कोई इसे foundation large language model training के basic dataset के रूप में इस्तेमाल करता है, और इसका ज्यादातर हिस्सा English में है, इसलिए models English में अच्छे हो जाते हैं
      https://commoncrawl.org/
    • scientific research, खासकर AI benchmarks में, English लगभग de facto standard language बन चुकी है, ऐसा लगता है
      Chinese में सीधे कुछ test करना साफ तौर पर संभव नहीं है, translation की जरूरत होती है
    • LLMs को समझने की कोशिश करने वाले इस paper में दिलचस्प बात यह थी कि models अलग-अलग भाषाओं के शब्दों और concepts को Multilingual Circuits के जरिए जोड़ते हैं
      उदाहरण के तौर पर English में “small” का opposite big, French में “petit” का opposite grand, और Chinese में “小” का opposite “大” से जुड़ता है। संबंधित figure भी काफी शानदार है
      English internet की lingua franca है और सबसे बड़ा corpus बनाती है, लेकिन mainstream models English datasets का उपयोग करके भाषाओं के बीच associations बना सकते हैं। इसलिए जिन language communities के पास अपना regional model बनाने के लिए data, technology और resources कम हैं, उन्हें भी कहीं ज्यादा मजबूत AI और reasoning capabilities मिल सकती हैं
      https://www.anthropic.com/research/tracing-thoughts-language...
      https://www.anthropic.com/_next/image?url=https%3A%2F%2Fwww-...
    • मेरा मानना है कि high-quality training material का बड़ा हिस्सा English में होगा
    • Chinese internet काफी हद तक कुछ walled gardens से बना है जिन्हें बड़ी companies मजबूती से control करती हैं। जब हर company अपना data बचाने के लिए engineers की टीमें लगा देती है, तो crawlers ठीक से काम नहीं कर पाते
      लोकप्रिय websites में से काफी apps-only भी हैं, इसलिए अच्छे LLM training के लिए जरूरी corpus हासिल करना असंभव हो जाता है
  • 7B model के लिए इसकी coding performance अविश्वसनीय रूप से मजबूत है। मैं जो Gemini Pro 2.5 इस्तेमाल करता हूं वह 67.8 है, जबकि यह model 57.8 है, और 60.6 वाले Gemini 2.5 Flash के भी बहुत करीब है
    llama4 से जुड़ी बातों को देखकर मैं evaluation results को लेकर काफी skeptical हो गया हूं, इसलिए देखना होगा कि private evaluation में यह कहां आता है, लेकिन अभी के numbers बेहद impressive हैं

  • LM Studio, Ollama आदि में इस्तेमाल की जा सकने वाली GGUF version: https://huggingface.co/jedisct1/MiMo-7B-RL-GGUF

  • Ollama में gguf फ़ाइल इस्तेमाल करते समय आम तौर पर साथ में इस्तेमाल होने वाली Modelfile खुद बनाकर इस्तेमाल करते हैं, या उम्मीद करते हैं कि Ollama के default नए मॉडल पर भी ठीक बैठेंगे — यह जानने की जिज्ञासा है
    https://github.com/ollama/ollama/blob/main/docs%2Fmodelfile....

    • जब Georgi Gerganov ने GGUF डिज़ाइन किया था, तब मुख्य लक्ष्यों में से एक यह था कि किसी दूसरी फ़ाइल की ज़रूरत न पड़े। specification का पहला item ही सचमुच single-file distribution है
      मॉडल लोड करने के लिए ज़रूरी सारी जानकारी मॉडल फ़ाइल के अंदर होती है, और user को अतिरिक्त जानकारी देने की ज़रूरत नहीं होती — यही बात है
      https://github.com/ggml-org/ggml/blob/master/docs/gguf.md
      बड़ी मुश्किल से multiple-file वाली उलझन हटाई थी, और Ollama ने उसे फिर से जोड़ दिया — यह अफ़सोस की बात है
    • ollama pull करने पर Modelfile भी blob के साथ डाउनलोड हो जाती है। मॉडल को permanent रूप से बदलना हो तो Modelfile को text editor में copy करके, ज़रूरी बदलाव डालकर मौजूदा Modelfile से नया मॉडल बनाया जा सकता है
      Open WebUI में मेरा workflow यह है कि ollama show qwen3:30b-a3b-q8_0 --modelfile से देखता हूँ, Modelfile की सामग्री admin -> models -> OpenwebUI में paste करता हूँ, फिर नाम को qwen3:30b-a3b-q8_0-monkversion-1 जैसा बदलता हूँ, num_gpu 90 जैसे parameters से layers की संख्या adjust करता हूँ, और फिर पुरानी file को रखता या delete करता हूँ
      Modelfile के अंदर यह guidance आती है कि नई Modelfile बनाने के लिए FROM को # FROM qwen3:30b-a3b-q8_0 की तरह बदलें, और path सही है या नहीं यह भी check करना चाहिए। मैं models को default Ollama location की बजाय बड़े NVMe drive में store करता हूँ, इसलिए यह मेरे लिए important है
      साथ ही, Modelfile workflow वाकई झंझट भरा और खराब pattern है, इसलिए मुझे पसंद नहीं। कुछ models 30–60GB के होते हैं, और सिर्फ़ एक parameter बदलने के लिए पूरे को copy करना बेवकूफ़ी भरा तरीका है
      फिर भी Ollama कई चीज़ें अच्छी तरह करता है और शुरुआत करना आसान बनाता है। vLLM, SGLang, Mistral.rs, llama.cpp में setup के लिए कहीं ज़्यादा काम चाहिए
    • आम तौर पर शुरुआत में default इस्तेमाल करता हूँ, और अगर कोई model लगातार इस्तेमाल करना हो तो Modelfile इस्तेमाल करता हूँ। Ollama जो Modelfile इस्तेमाल करता है, उसे dump करके template के रूप में भी लिया जा सकता है
  • benchmarks में अभी कई evaluations में top-performing O3 या Gemini Pro, Claude 3.7 जैसे top models को छोड़ देना थोड़ा मज़ेदार लगता है

    • वे models कहीं ज़्यादा बड़े और closed models हैं। उनके providers ने distilled versions को identify करके public भी नहीं किया है
      यह देखना चाहिए कि comparison के ज़्यादातर targets 7B models हैं। exception भी open-weights model Qwen-2.5-32B-RL-Zero है, और MiMo-7B तो 32B-parameter model से भी बेहतर करता है
    • मुझे लगता है यहाँ लक्ष्य offline या mobile hardware पर चलाने के लिए optimized मिलते-जुलते models से तुलना करना है
  • MiMo-7B का दावा है कि उसने 7B model को scratch से train करके Qwen-32B जैसे बड़े models को पीछे छोड़ा है, और math/code benchmarks में OpenAI o1-mini के बराबर है। सोच रहा हूँ कि क्या यह इस बात का संकेत है कि pretraining + RLHF optimization आखिरकार scale की ताकत से आगे निकलना शुरू कर रहा है, या बस संकीर्ण capabilities को benchmark करने की कला बेहतर हो गई है

    • जिज्ञासा है कि यह Qwen 3 है या 2.5
  • README में यह नहीं बताया गया कि किस तरह का reinforcement learning है, बस RL लिखा है। researchers व्यस्त होते हैं और अच्छी writing में समय लगता है, यह जानता हूँ, लेकिन ऐसी details छूटनी नहीं चाहिए

    • technical report में modified GRPO objective function जैसे reinforcement learning के इस्तेमाल को काफ़ी गहराई से cover किया गया है। README की बात करें तो, मुझे लगता है इस क्षेत्र में काम करने वाले ज़्यादातर लोग समझते हैं कि reasoning models में “RL” का मतलब क्या होता है
    • मैंने “RL” को reinforcement learning माना, और university में AI पढ़े हुए करीब 10 साल हो गए हैं, लेकिन सिर्फ़ RL लिखना भी काफ़ी valid नहीं है क्या? क्या आप Q-Learning इस्तेमाल हुआ या कोई दूसरा algorithm जैसी specificity चाहते हैं, यह जानने की जिज्ञासा है
  • सोच रहा हूँ कि क्या इस model को Xiaomi 15 series phones के AI assistant में इस्तेमाल किया जाएगा। शायद संभावना काफ़ी ज़्यादा लगती है, लेकिन क्या results मिलेंगे यह ठीक से नहीं पता

  • 7B model से ऐसे benchmark numbers आना यक़ीन करना मुश्किल है

    • छोटे models की performance लगातार थोड़ा-थोड़ा बढ़ रही है। वे big tech के mainstream models को एक झटके में पार नहीं कर रहे, इसलिए headlines नहीं बनतीं, लेकिन सभी काफ़ी सक्षम हो गए हैं
      कुछ समय पहले Ollama पर एक random 12B model चलाकर देखा था, और जिस machine का इस्तेमाल कर रहा था उसे देखते हुए वह इतना अच्छा और तेज़ लगा कि हैरानी हुई। करीब एक साल पहले ऐसा नहीं होता
    • अगर ये numbers unrealistic लगते हैं, तो qwen3-4B के benchmark numbers देखने चाहिए
      https://qwenlm.github.io/blog/qwen3/
    • मेरा अनुमान है कि यह tests पर overfitted है
    • सभी LLM असल में benchmarks पर train हो रहे हैं, इसलिए LLM पर लागू होने पर “benchmark” शब्द का मतलब काफ़ी हद तक खत्म हो रहा है
    • आज का सबसे अच्छा model आपकी बाकी ज़िंदगी में लगातार और खराब model बनता जाएगा