- MiMo-7B dari Xiaomi adalah seri model bahasa 7B yang dilatih dari nol untuk tugas penalaran, dan checkpoint model base, SFT, serta RL dirilis sebagai open source
- Pada pembaruan 30 Mei 2025, dataset SFT ditingkatkan dari sekitar 500 ribu menjadi 6 juta entri dan ukuran jendela pelatihan RL diperluas dari 32K ke 48K, sehingga performa AIME 2024 MiMo-7B-RL-0530 mencapai 80.1
- Pra-pelatihan menggunakan sekitar 25 triliun token dan strategi pencampuran data 3 tahap, termasuk pemfilteran data, data penalaran sintetis, dan Multiple-Token Prediction untuk meningkatkan kepadatan pola penalaran
- Pasca-pelatihan menggunakan 130 ribu soal matematika dan kode, validator berbasis aturan, reward akurasi berbasis aturan, reward berbasis tingkat kesulitan tes untuk soal kode, serta strategi resampling untuk soal mudah
- Deployment menyediakan contoh untuk SGLang, fork vLLM milik Xiaomi, dan HuggingFace; verifikasi MiMo pada engine inferensi lain belum selesai dan kontribusi diterima
Tujuan dan cakupan rilis seri MiMo-7B
- MiMo-7B adalah seri model yang bertujuan memaksimalkan potensi penalaran model bahasa dari pra-pelatihan hingga pasca-pelatihan
- Checkpoint yang dirilis ada 4 jenis berikut
- MiMo-7B-Base: model base dengan potensi penalaran
- MiMo-7B-RL-Zero: model yang dilatih dengan RL dari model base
- MiMo-7B-SFT: model yang dilatih dengan SFT dari model base
- MiMo-7B-RL: model yang dilatih dengan RL dari model SFT
- Model tersedia di HuggingFace dan ModelScope
- Laporan teknis dipublikasikan di arXiv
Pembaruan 30 Mei 2025
- MiMo-7B-RL-0530 mencerminkan hasil perluasan dataset SFT dari sekitar 500 ribu menjadi 6 juta entri, serta perluasan lanjutan ukuran jendela pelatihan RL dari 32K ke 48K
- Pada AIME 2024, MiMo-7B-RL-0530 mencatat 80.1, melampaui 79.8 milik DeepSeek R1
- Perubahan benchmark utama adalah sebagai berikut
- 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, evaluasi GPT-4.1: 6.9 → 7.4
Pra-pelatihan: model base untuk penalaran
- MiMo-7B-Base adalah model base yang dilatih dari nol untuk tugas penalaran
- Pra-pelatihan menggunakan sekitar 25 triliun token
- Dalam pemrosesan data, alat ekstraksi teks ditingkatkan dan pemfilteran data multidimensi diterapkan untuk meningkatkan kepadatan pola penalaran pada data pra-pelatihan
- Berbagai strategi digunakan untuk menghasilkan data penalaran sintetis berskala besar
- Strategi pencampuran data 3 tahap diterapkan dalam pra-pelatihan
- Multiple-Token Prediction ditambahkan sebagai tujuan pelatihan tambahan untuk meningkatkan performa model dan kecepatan penalaran
Pasca-pelatihan dan metode pelatihan RL
- Pasca-pelatihan menggunakan 130 ribu soal matematika dan kode yang dapat diverifikasi dengan validator berbasis aturan sebagai data pelatihan RL
- Setiap soal melalui proses kurasi dan evaluasi tingkat kesulitan untuk menjamin kualitas
- Reward yang digunakan hanya reward akurasi berbasis aturan untuk menghindari potensi reward hacking
- Untuk mengurangi masalah sparse reward pada soal kode yang sulit, diperkenalkan reward kode berbasis tingkat kesulitan tes
- Skor yang lebih rinci diberikan pada test case dengan tingkat kesulitan berbeda
- Policy dapat dioptimalkan dengan sinyal reward yang lebih padat
- Untuk soal mudah, strategi resampling data diterapkan guna meningkatkan efisiensi sampling rollout dan terutama menstabilkan pembaruan policy pada tahap akhir pelatihan RL
Infrastruktur RL dan struktur model
- Seamless Rollout Engine dikembangkan untuk mempercepat pelatihan RL dan verifikasi
- Desainnya menggabungkan rollout berkelanjutan, perhitungan reward asinkron, dan penghentian dini untuk mengurangi waktu idle GPU
- Angka peningkatan performanya adalah sebagai berikut
- Kecepatan pelatihan meningkat 2.29x
- Kecepatan verifikasi meningkat 1.96x
- Layer MTP pada MiMo-7B dituning selama pra-pelatihan dan SFT, lalu dibekukan selama RL
- Saat 1 layer MTP digunakan untuk speculative decoding, tingkat penerimaannya sekitar 90%
- MTP didukung di vLLM, dan ketahanan engine inferensi pada sistem RL diperkuat
Hasil evaluasi
- MiMo-7B-RL disebut menunjukkan performa yang sebanding dengan OpenAI o1-mini pada tugas penalaran matematika dan kode
- Dalam perbandingan model utama, hasil matematika dan kode MiMo-7B-RL adalah sebagai berikut
- 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
- Dalam perbandingan internal seri MiMo-7B, performa meningkat signifikan setelah penerapan 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
- Pengaturan evaluasi adalah
temperature=0.6 - Kondisi evaluasi berulang adalah sebagai berikut
- AIME24 dan AIME25 adalah rata-rata 32 kali pengulangan
- LiveCodeBench v5, LiveCodeBench v6, GPQA-Diamond, IF-Eval adalah rata-rata 8 kali pengulangan
- MATH500 dan SuperGPQA adalah sekali jalan
Deployment dan penggunaan inferensi
- SGLang mendukung MiMo secara mainstream melalui dukungan model MiMo dan dukungan MTP
- PR terkait: MiMo model support, MTP
- Dokumentasi penggunaan tersedia di SGLang documents
- Untuk inferensi vLLM, disarankan menggunakan fork vLLM milik Xiaomi
- Fork yang direkomendasikan: XiaomiMiMo/vllm
- Fork tersebut dikembangkan berbasis vLLM 0.7.3
- Loader vLLM juga dapat didaftarkan dengan cara tidak memuat parameter MTP
- File registrasi: registry/register_mimo_in_vllm.py
- Contoh inferensi HuggingFace menggunakan
AutoModelForCausalLM.from_pretraineddanAutoTokenizer.from_pretrained - Pengaturan prompt yang direkomendasikan adalah system prompt kosong
- Verifikasi MiMo pada engine inferensi lain belum selesai, dan kontribusi berdasarkan definisi model di repositori HuggingFace diterima
1 komentar
Opini Hacker News
Menarik melihat bagaimana makalah ini menangani tahap reinforcement learning untuk data kode. Mereka melatihnya dengan menjalankan tugas pembuatan kode yang sulit tetapi masih bisa dipecahkan melalui unit test, dan saya penasaran apakah model lain juga melewati tahap pelatihan seperti ini
Dalam makalahnya, mereka mengatakan menghapus soal yang tidak memiliki test case, mengecualikan soal yang meski memiliki kode jawaban tetap tidak lulus semua test, dan untuk soal tanpa kode jawaban, membuangnya jika tidak ada test yang bisa diselesaikan dari 16 kali sampling model penalaran tingkat lanjut. Soal yang mudah juga disaring menggunakan versi SFT MiMo-7B, hingga akhirnya menghasilkan 30 ribu soal kode
Selain itu, karena setiap iterasi reinforcement learning harus mengevaluasi ribuan soal dan ratusan test case per soal, mereka membuat lingkungan online judge yang menjalankan unit test dalam skala sangat besar secara paralel untuk menghilangkan waktu menganggur GPU
Ini mungkin bisa dilakukan untuk masalah kecil yang modular, tetapi untuk masalah dengan input 200 ribu token, pendekatan seperti ini mungkin sulit
Saya penasaran mengapa begitu banyak model AI dari Tiongkok merupakan model yang mengutamakan bahasa Inggris. Entah mereka tidak berniat menargetkan pengguna dalam negeri, atau mungkin karena model yang mengutamakan bahasa Mandarin sulit mendapat perhatian di Barat meski dirilis secara terbuka
https://commoncrawl.org/
Jelas tidak mungkin mencoba sesuatu langsung dalam bahasa Mandarin, jadi diperlukan terjemahan
Contohnya seperti lawan kata “small” dalam bahasa Inggris adalah big, lawan kata “petit” dalam bahasa Prancis adalah grand, dan lawan kata “小” dalam bahasa Mandarin adalah “大”. Gambar terkaitnya juga cukup keren
Bahasa Inggris adalah lingua franca internet dan mencakup korpus terbesar, tetapi model arus utama dapat menggunakan dataset bahasa Inggris untuk membangun keterkaitan antarbahasa. Karena itu, komunitas bahasa yang kekurangan data, teknologi, dan sumber daya sehingga sulit membuat model lokal sendiri pun bisa memperoleh AI dan kemampuan penalaran yang jauh lebih kuat
https://www.anthropic.com/research/tracing-thoughts-language...
https://www.anthropic.com/_next/image?url=https%3A%2F%2Fwww-...
Banyak situs web populer juga hanya tersedia melalui aplikasi, sehingga mustahil mendapatkan korpus yang diperlukan untuk melatih LLM yang bagus
Untuk model 7B, performa coding-nya luar biasa kuat hingga sulit dipercaya. Gemini Pro 2.5 yang saya pakai skornya 67,8, sedangkan model ini 57,8, dan sangat dekat dengan Gemini 2.5 Flash yang skornya 60,6
Setelah melihat pembahasan soal llama4, saya jadi cukup skeptis terhadap hasil evaluasi, jadi kita perlu melihat posisinya di evaluasi privat, tetapi angka saat ini sangat mengesankan
Versi GGUF yang bisa dipakai di LM Studio, Ollama, dan lainnya: https://huggingface.co/jedisct1/MiMo-7B-RL-GGUF
Saat memakai file gguf di Ollama, saya penasaran apakah biasanya orang membuat dan memakai sendiri Modelfile yang digunakan bersama, atau berharap nilai bawaan Ollama juga cocok untuk model baru
https://github.com/ollama/ollama/blob/main/docs%2Fmodelfile....
Semua informasi yang diperlukan untuk memuat model ada di dalam file model, dan pengguna tidak perlu memberikan informasi tambahan
https://github.com/ggml-org/ggml/blob/master/docs/gguf.md
Sayang sekali, setelah susah payah menghilangkan kebingungan multi-file, Ollama malah menambahkannya kembali
ollama pull, Modelfile juga diunduh bersama blob. Untuk memodifikasi model secara permanen, kita bisa menyalin Modelfile ke editor teks, lalu memasukkan perubahan yang diperlukan dan membuat model baru dari Modelfile lamaAlur kerja saya di Open WebUI adalah memeriksa dengan
ollama show qwen3:30b-a3b-q8_0 --modelfile, menempelkan isi Modelfile keadmin -> models -> OpenwebUI, lalu mengganti namanya menjadi sepertiqwen3:30b-a3b-q8_0-monkversion-1, menyesuaikan jumlah layer dengan parameter sepertinum_gpu 90, kemudian mempertahankan atau menghapus file lamaDi dalam Modelfile ada petunjuk bahwa untuk membuat Modelfile baru,
FROMharus diubah menjadi seperti# FROM qwen3:30b-a3b-q8_0, dan kita juga perlu memastikan path-nya benar. Ini penting bagi saya karena saya menyimpan model di drive NVMe besar, bukan di lokasi default OllamaSebagai tambahan, saya tidak suka alur kerja Modelfile karena benar-benar merepotkan dan merupakan pola yang buruk. Beberapa model berukuran 30–60GB, jadi menyalin semuanya hanya untuk mengubah satu parameter adalah cara yang bodoh
Meski begitu, Ollama punya banyak kelebihan dan membuat orang mudah memulai. vLLM, SGLang, Mistral.rs, dan llama.cpp membutuhkan jauh lebih banyak pekerjaan konfigurasi
Agak lucu melihat benchmark yang mengecualikan model papan atas seperti O3, Gemini Pro, atau Claude 3.7, yang saat ini berkinerja terbaik di berbagai evaluasi
Perlu dilihat bahwa sebagian besar pembandingnya adalah model 7B. Pengecualiannya pun Qwen-2.5-32B-RL-Zero, model berbobot terbuka, dan MiMo-7B bahkan lebih baik daripada model 32B parameter
MiMo-7B diklaim melatih model 7B dari nol, melampaui model yang lebih besar seperti Qwen-32B, dan setara dengan OpenAI o1-mini pada benchmark matematika dan kode. Saya penasaran apakah ini sinyal bahwa prapelatihan + optimisasi RLHF akhirnya mulai mengalahkan kekuatan skala, atau hanya berarti kemampuan melakukan benchmarking pada kapabilitas yang sempit semakin baik
README tidak menjelaskan jenis reinforcement learning apa, hanya menuliskannya sebagai RL. Saya tahu para peneliti sibuk dan tulisan yang baik butuh waktu, tetapi saya berharap detail seperti ini tidak dihilangkan
Saya penasaran apakah model ini akan dipakai di asisten AI pada ponsel seri Xiaomi 15. Kemungkinan besar sepertinya iya, tetapi saya kurang tahu hasilnya akan seperti apa
Sulit dipercaya angka benchmark seperti ini muncul dari model 7B
Beberapa waktu lalu saya menjalankan model 12B acak di Ollama, dan mengingat mesin yang saya pakai, saya terkejut karena rasanya sangat bagus dan cepat. Sekitar setahun lalu, mungkin tidak akan seperti itu
https://qwenlm.github.io/blog/qwen3/