اگر امروز در حال توسعهی عاملهای کدنویس خودکار هستید، معیار انتخاب مدل پایه برای شما تغییر کرده است. در ۹ ژوئن ۲۰۲۶، شرکت Cohere مدل North Mini Code را منتشر کرد تا ثابت کند تعداد پارامترها دیگر پیشبینیکنندهی اصلی موفقیت در مهندسی نرمافزار نیست. این مدل که تحت مجوز Apache 2.0 در Hugging Face در دسترس است، نخستین عضو از خانوادهی جدید مدلهای Cohere است که بهطور ویژه برای وظایف «عاملمحور» (Agentic) در مهندسی نرمافزار آموزش دیده است.
سالها تصور میشد برای کارهای پیچیده — مثل پیمایش در ترمینال یا رفع باگ در چندین فایل مختلف — به مدلهای غولپیکر و متراکم نیاز است. اکثر توسعهدهندگان مجبور بودند بین تأخیر بالای یک غول ۱۰۰ میلیارد پارامتری یا شکنندگی یک مدل کوچک که در فراخوانی ابزارها دچار توهم (Hallucination) میشود، یکی را انتخاب کنند. Cohere با بهینهسازی برای «حلقهی عامل» (Agentic Loop) بهجای تولید متن ساده، این تضاد را از بین برده است.
معماری کارایی
North Mini Code یک مدل ترکیب متخصصان (Mixture-of-Experts یا MoE) با ۳۰ میلیارد پارامتر است. اگرچه مجموع پارامترها ۳۰ میلیارد است، اما در هر توکن تنها ۳ میلیارد پارامتر فعال هستند که سرعت استنتاج را بدون کاهش عمق تحلیل بالا میبرد.

این مدل یک Transformer تک-رمزگشای (Decoder-only) پراکنده است. Cohere یک استراتژی توجه (Attention) منحصربهفرد را به کار گرفته که در آن «توجه خود-پنجرهای» (Sliding-window self-attention) با RoPE و «توجه جهانی» (Global attention) بدون جاسازیهای موقعیتی (Positional embeddings) با نسبت ۳ به ۱ ترکیب شدهاند. این رویکرد ترکیبی به مدل اجازه میدهد الزامات متنی طولانی در مخازن کد بزرگ را مدیریت کند.
ساختار MoE این مدل شامل ۱۲۸ متخصص است که در هر توکن ۸ مورد فعال میشوند. هر بلوک متخصص، یک بلوک FFN با فعالساز SwiGLU است. مسیریاب (Router) پیش از انتخاب top-k، یک تابع فعالساز سیگموئید را روی لوجیتها اعمال میکند. برای تضمین پایداری، Cohere یک لایهی متراکم (Dense) واحد قبل از لایههای پراکنده اضافه کرده است.
عملکرد در برابر غولها
طبق گزارشی که در huggingface.co منتشر شد، North Mini Code در شاخص کدنویسی Artificial Analysis به امتیاز ۳۳.۴ رسید. این عدد آن را از چندین نام شناختهشده در صنعت پیشتاز میکند:
- این مدل از Qwen3.5 (۳۵ میلیارد-A3B)، Gemma 4 (۲۶ میلیارد-A4B) و Devstral Small 2 (۲۴ میلیارد متراکم) بهتر عمل کرده است.
- نکتهی تکاندهنده این است که مدلهایی را شکست داده که تقریباً چهار برابر بزرگتر از آن هستند، از جمله Nemotron 3 Super (۱۲۰ میلیارد-A12B)، Mistral Small 4 (۱۱۹ میلیارد-A6B) و Devstral 2 (۱۲۳ میلیارد).

برای اعتبارسنجی این نتایج، مدل با استفاده از harness نسخه ۱.۱.۰ Swe-Agent برای SWE-Bench و یک harness مدل ReAct بر اساس پیادهسازی جلسه Tmux شرکت Harbor برای Terminal-Bench v2 ارزیابی شد. برای Terminal Bench Hard، از harness مدل Terminus-2 استفاده شد. قابلیتهای اضافی از طریق SciCode برای مسائل علمی و LiveCodeBench v6 برای استدلال الگوریتمی ردیابی شدند.
شرکت Cohere هر بنچمارک را با ۳ دانه (Seed) مختلف اجرا کرد و میانگین عملکرد را با دمای ۱.۰ و top_p برابر با ۰.۹۵ گزارش داد. برای نتایج رقبا، آنها از امتیازات گزارششده در گزارشهای اصلی یا شاخص هوش Artificial Analysis استفاده کردند. در مواردی که گزارشهای عمومی موجود نبود، Cohere بنچمارکها را بهصورت داخلی با پیکربندیهای پیشنهادی مدل اجرا کرد.
راز آموزش سه مرحلهای
شرکت Cohere فقط دادهها را مقیاس نکرد؛ آنها یک خط لوله تخصصی ساختند تا «تداخلهای رفتاری» بین استدلال عمومی و وظایف کدنویسی را حذف کنند. خط لوله پس از آموزش شامل دو مرحله تنظیم دقیق نظارتشده (SFT) و یک مرحله یادگیری تقویتشده عاملمحور با پاداشهای قابل تأیید (RLVR) است.

مرحله اول SFT: استحکام بنیادین
اولین مرحله SFT بر قابلیتهای کدنویسی متمرکز است که در یک ترکیب گستردهتر برای کاربردپذیری ادغام شدهاند. ترکیب دادهها شامل برنامهنویسی، استدلال و پیروی از دستورات است. در این مرحله، مجموعهدادههای کد ۷۰٪ از توکنهای قابل آموزش، ۴۳٪ دادههای استفاده از ابزار عاملمحور و ۲۷٪ دادههای برنامهنویسی علمی یا رقابتی تک-گام را تشکیل میدهند. طول متن (Context length) در این مرحله ۶۴ هزار توکن است.
مرحله دوم SFT: تخصص عاملمحور
در مرحله دوم، Cohere از ترکیبی از ۴.۵ میلیارد توکن استفاده کرد که منحصراً از نمونههای استدلالی و عاملمحور مشتق شده بودند. دادههای کد ۶۱٪ از توکنهای قابل آموزش را تشکیل میدهند. این ترکیب شامل دادههای باکیفیتی است که در آن فراخوانی ابزارها و تکمیلها بهعنوان «قابل اجرا» و «صحیح» تأیید شدهاند. طول متن در اینجا به ۱۲۸ هزار توکن افزایش یافت.
آبشار بلند به بلندتر (Long-to-Longer Cascade)
شرکت Cohere یک آبشار متنی «بلند به بلندتر» (از ۶۴ هزار به ۱۲۸ هزار) را پیاده کرد. این کار از غلبه ۲۰ میلیارد توکن غیرکدِ مرحله اولیه بر ۱.۵ میلیارد توکن کد باکیفیت در مراحل بعدی جلوگیری میکند. این رویکرد از تداخلهای رفتاری جلوگیری کرده و مانع از این میشود که مدل در هنگام ارزیابی، مسیرهای نهایی کوتاهتری تولید کند (اتفاقی که اغلب هنگام آموزش روی توزیعهای کوتاه شده رخ میدهد).
RLVR: پاداشهای قابل تأیید
پس از SFT، مدل تحت RLVR با هدف وظایف مهندسی نرمافزار و ترمینال قرار گرفت. بهجای بهینهسازی معیارهای کمی در طول SFT، شرکت Cohere از SFT صرفاً بهعنوان پیشنیاز (Priming) برای RLVR استفاده کرد. ترکیب دادهها برای تنوع نمونهبرداری و pass@K (برای K بالا) بهینه شد.
از فیلترینگ در سطح نمونه برای حذف فراخوانیهای نامعتبر ابزار، فاصلههای خالی اشتباه، توکنهای خاص بدشکل یا ارجاعات توهمی استفاده شد. آرتیفکتها یا هایپرپارامترهایی که رفتارهای نامطلوب RLVR ایجاد میکردند — مانند آنتروپی پایین یا تولیدات ساختاریافته نامعتبر — از طریق تحلیلهای حذف (Ablations) پاکسازی شدند.
حل مشکل «هارنس» (Harness)
یکی از بزرگترین موانع برای عاملهای کدنویس، «هارنس» است — یعنی روش خاصی که یک مدل با CLI یا ویرایشگر تعامل میکند. اکثر مدلها روی یک فرمت آموزش میبینند و وقتی به فرمت دیگری منتقل میشوند، شکست میخورند. North Mini Code با استفاده از چندین داربست (Scaffold) آموزش دید تا در محیطهای ابزاری متنوع مقاوم باشد:
- SWE-Agent: یک رابط غنی Agent-CLI با دستورات تخصصی (bash، str_replace_editor و ابزارهای submit) و مشاهدات قالببندی شده فراهم میکند.
- mini-SWE-agent: نسخهای سادهشده که از یک ابزار bash واحد با خروجی خام stdout بهعنوان تنها بازخورد استفاده میکند.
- OpenCode: از ابزارهای ریزدانه با تایپ مجزا (edit، grep، todowrite، task و غیره) استفاده میکند که پاسخهای ساختاریافته JSON برمیگردانند.
- Terminus 2: برای Terminal-Bench استفاده شد، جایی که تعاملات بهجای فراخوانی ابزار بومی، از طریق نوبتهای چت متن ساده منتقل میشوند.
با معرفی مقدار کمی از دادههای متنوع هارنس (۶٪ از ترکیب SFT در مقایسه با ۵۰٪ برای هارنس SWE-Agent)، Cohere به ۱۰٪ بهبود در هارنس OpenCode دست یافت بدون اینکه عملکرد در سایرین کاهش یابد. بهطور قابل توجهی، این مدل به ۶۱.۰٪ pass@1 با استفاده از mini-SWE-Agent رسید. برای جلوگیری از اینکه مدل صرفاً قالبها را تکرار کند، Cohere تغییراتی در هارنسها ایجاد کرد تا پیوندی واقعی بین دستورات و رفتارها ایجاد شود.
برای هارنس Terminus 2، شرکت Cohere مقدار کمی داده (کمتر از ۲۰٪) را با فرمت متن ساده در ترکیب دادهها قرار داد. این مقدار برای مدل کافی بود تا بهطور طبیعی در سراسر رابط تعمیم یابد.
مقیاسبندی RL با حلقههای غیرهمزمان
اجرای عاملها (Rollouts) بهدلیل اینکه برخی مسیرها ده برابر طولانیتر از بقیه هستند، بهشدت کند است. برای جلوگیری از بیکار ماندن آموزشدهنده، Cohere نمونهبرداری را از یادگیری جدا کرد.

آنها از یک vLLM sidecar برای ارائه مداوم Rolloutها استفاده کردند. وزنهای پالیسی هر چند گام یادگیرنده (K=4) به vLLM صادر میشوند. برای مدیریت جریان داده، از یک صف FIFO پنجرهای استفاده کردند: بخش کوچکی در ابتدای صف برای تخلیه «عقبماندهها» (Stragglers) بر اساس ترتیب تکمیل مصرف میشود، در حالی که بقیه در ترتیب ورودی باقی میمانند.
آنها از CISPO استفاده کردند، یک هدف احتمال-لگاریتمی با اصلاح نمونهبرداری اهمیت در سطح توکن. برخلاف PPO یا GRPO، روش CISPO وزن اهمیت را در لگاریتم-احتمال ضرب کرده و RLOO را با منظمسازی قویتر تقویت میکند. ضرر (Loss) در سطح توکن بهجای سطح پرامپت تجمیع میشود تا اطمینان حاصل شود که ردپاهای طولانی عامل — جایی که سیگنال تخصیص اعتبار قویترین است — در مقایسه با ردپاهای کوتاه، کموزن نشوند.
آموزش RL در محیطهای چندگانه
شرکت Cohere یک اجرای آموزش RL آنلاین چند-محیطی را اجرا کرد که دو محیط را در بر میگرفت: وظایف مبتنی بر ترمینال و وظایف مهندسی نرمافزار.
جزئیات پیکربندی RL:
- پیکربندی دسته (Batch): هر دسته شامل ۵۱۲ رولاوت است و اندازه گروه ۸ رولاوت نمونهبرداری شده برای هر پرامپت است.
- متن: تمام رولاوتها یک پنجره متنی جهانی ۱۲۸ هزار توکنی را به اشتراک میگذارند.
- بودجهها: به هر وظیفه بر اساس فیلترینگ pass@k، یک بودجه گام-عاملی متمایز اختصاص داده شد. این کار از پرگویی غیرضروری و «پرشهای زیاد» در رولاوتها جلوگیری میکند.
- زیرساخت: وظایف ترمینال از یک harness مدل ReAct با یک ابزار واحد بر اساس پیادهسازی جلسه Tmux شرکت Harbor استفاده میکنند. وظایف SWE از harness مدل SWE-agent استفاده میکنند. هر دو از تصاویر Docker پیشساخته و تستهای واحد برای تأیید استفاده میکنند.
دادهها و تأییدیه:
آموزش از ترکیبی از مجموعهدادههای داخلی و متنباز استفاده کرد که بیش از ۷۰ هزار وظیفه قابل تأیید در حدود ۵ هزار مخزن منحصربهفرد را شامل میشد. برای جلوگیری از نشت منبع (Source leakage)، محیطها در برابر منابع مخازن SWE-Bench و SWE-Bench-Pro حذف تکرار شدند. پاداشهای باینری از تأییدکنندههای تست واحد استخراج شدند، بهطوری که برای فراخوانیهای نامعتبر ابزار پاداش ۰ در نظر گرفته شد که این امر توهمات را در گامهای اولیه بهشدت کاهش داد.
اعتبارسنجی در دنیای واقعی
آموزش RLVR عملکرد مدل نهایی را نسبت به مقداردهی اولیه SFT در Terminal-Bench v2 به اندازه ۷.۹٪ (مطلق) در pass@1 و در SWE-Bench به اندازه ۳.۰٪ (مطلق) بهبود بخشید. مدل SFT-only به ۸۰.۲٪ pass@10 در SWE-Bench Verified و ۵۵.۱٪ pass@10 در Terminal-Bench v2 رسیده بود.

آموزش مشترک در هر دو محیط، نتایج قویتر و تعمیم بهتری به وظایف خارج از توزیع (Out-of-distribution) نسبت به آموزش جداگانه هر یک ایجاد کرد. مدل RLVR مسیرهای کوتاهتر، فراخوانیهای ابزار نامعتبر کمتر و تکرارهای کمتر تولید میکند. این مدل اکنون بهطور قابلاعتمادی مسیرها را با ارسال یک راه حل یا پاسخ به کاربر به پایان میرساند.
بنچمارک ارزیابی انسانی داخلی
مکمل بنچمارکهای موجود، Cohere یک مجموعه داخلی را با استفاده از ارزیابی جفتبهجفت توسط حاشیهنویسان انسانی توسعه داد. مدلها در OpenCode از طریق Harbor قرار گرفتند و در یک مقیاس لیکرت پنجدرجهای در چهار قابلیت ارزیابی شدند:
- توضیح کد: توضیح جنبههای فنی یک مخزن در یک README یا برای کاربر.
- ویرایش کد: پیادهسازی یک ویژگی بر اساس کدبیس موجود.
- بصریسازی دادهها: ایجاد بصریسازیها با یک چارچوب خاص از نمونههای داده؛ هیچ کد اضافی ارائه نمیشود.
- پیادهسازی از صفر: ایجاد یک پروژه از مشخصات طراحی و بستهها، با تمرکز اصلی بر طراحی front-end.

ارزیابان از سؤالات امتیازدهی مبتنی بر دستورالعمل (Rubric) برای سنجش معیارهای پاسخهای فردی و رتبهبندی تلاشهای مجزا قبل از ارائه رتبهبندی ترجیحی نهایی استفاده کردند. ارزیابیها در ۸۵ نمونه نشان میدهد که RLVR بهویژه وظایف ویرایش کد را بهبود بخشیده و منجر به نرخ پیروزی مجموع ۶۶.۱٪ برای مدل نهایی در برابر همتای SFT-only شده است.
تحلیل: چرخش به سمت مدلهای کوچک تخصصی
این عرضه نشاندهندهی چرخش در روایت «بزرگتر یعنی بهتر» است. با تمرکز بر پاداشهای قابل تأیید (RLVR) و آموزش مستقل از هارنس (Harness-agnostic)، Cohere مدلی ساخته است که برای توسعهدهندگان کاربردیتر از مدلهایی است که پنج برابر آن حجم دارند.
برای متخصصان، این به معنای تأخیر کمتر و هزینههای پایینتر برای گردشکارهای عاملمحور است. ما شاهد ظهور معماریهای «عامل-اول» (Agent-First) هستیم که در آن هدف، هوش عمومی نیست، بلکه توانایی اجرای قابلاعتماد توالی ابزارها در یک محیط ایزوله (Sandbox) است.
گام بعدی شما
توسعهدهندگان اکنون میتوانند North Mini Code را از طریق API شرکت Cohere تست کنند یا وزنهای BF16 و FP8 (کوانتایز شده) را از Hugging Face دانلود کنند تا آن را در چارچوبهای عاملمحور خود ادغام نمایند.




گفتگو