Cohere presenta North Mini Code, un modelo pensado para desarrolladores que actúan como agentes en entornos terminales y de ingeniería de software. ¿Qué lo hace distinto? No es sólo tamaño: es una combinación de arquitectura sparse, entrenamiento dirigido a tareas agenticas y un pipeline de RL con recompensas verificables.
Qué es North Mini Code
North Mini Code es un modelo Mixture-of-Experts (MoE) de 30B parámetros totales pero con ~3B parámetros activos por token. Cohere lo lanzó bajo licencia Apache 2.0 y lo publica en Hugging Face, además de integrarlo en OpenCode y su API.
Es la primera pieza de la familia North y está diseñada específicamente para agentic software engineering tasks: ejecutar comandos en terminal, usar herramientas tipadas, editar repositorios y generar código complejo con contexto largo.
Arquitectura y diseño técnico
- Es un Transformer decoder, sparse MoE, con bloques FFN implementados como expertos (128 expertos totales, 8 activados por token).
- Atención intercalada: mezcla sliding-window con RoPE y atención global sin embeddings posicionales en una proporción 3:1. Cohere usa una implementación de atención eficiente para escalar largos contextos.
- Cada expert usa una FFN con activación
SwiGLU. El router aplica unasigmoida los logits antes de seleccionar el top-k. Hay además una capa densa antes de las capas sparse.
¿Resultado práctico? Menos cómputo activado por token y mayor capacidad para mantener comportamientos distintos según contexto y herramientas.
Entrenamiento: dos SFT y RLVR
El post-entrenamiento es en cascada: dos fases de Supervised Fine-Tuning (SFT) seguidas de Reinforcement Learning con Recompensas Verificables (RLVR).
- Primera SFT: mezcla amplia (70% tokens de código en el trainable mix original) con datos de programación, razonamiento e instrucciones. Contextos de
64Ktokens. - Segunda SFT: 4.5B tokens centrados en muestras agenticas y de razonamiento (61% código). Contextos de
128Ktokens — estrategia "long-to-longer" para consolidar habilidades en trazas largas. - RLVR: entrenamiento online multi-entorno (Terminal y SWE) con rewards binarios derivados de tests unitarios verificables. Usan CISPO como objetivo (corrección de importancia a nivel token, distinto de PPO), y token-level aggregation para mantener la señal en trayectorias largas.
Además usan un diseño práctico para el RL: muestreo desacoplado con un sidecar vLLM que genera rollouts mientras el trainer aprende, y una cola FIFO ventana para evitar que los rollouts largos bloqueen el entrenamiento.
Robustez en harnesses y generalización
Una idea clave: entrenar con varios "harnesses" (interfaces de agente) en vez de optimizar para uno solo. Incluyeron datos de SWE-Agent, mini-SWE-Agent, OpenCode y Terminus-2, con pequeñas porciones de cada formato para forzar generalización.
¿La ganancia? Transferencia cruzada barata: añadir 6% de datos de harnesses alternos dio +10% en OpenCode sin degradar SWE-Agent. En mini-SWE-Agent alcanzan 61.0% pass@1.
También aplican filtrado a nivel de muestra para eliminar llamadas de herramienta inválidas, tokens malformados y otros patógenos que generan malos comportamientos en RL.
Métricas y benchmarks (lo que sí importa)
- Artificial Analysis Coding Index: North Mini Code logra 33.4, superando modelos de tamaño similar y a varios modelos mucho más grandes en tareas agenticas y generación compleja de código.
- SFT final: 80.2% pass@10 en
SWE-Bench Verifiedy 55.1% pass@10 enTerminal-Bench v2. - Mejora tras RLVR: +7.9 puntos absolutoss en pass@1 en
Terminal-Bench v2y +3.0 puntos enSWE-Benchrespecto al checkpoint SFT. - Evaluación humana (pairwise): RLVR mejora especialmente en code editing; la versión final gana 66.1% de las veces frente al checkpoint SFT en muestras evaluadas.
También reportan menos trayectoria repetitiva, menos llamadas inválidas y rollouts más cortos — en la práctica, el agente resuelve más rápido y con menos pasos inútiles.
Entrenamiento y recursos prácticos
- Usaron más de 70k tareas verificables sacadas de ~5k repositorios, con deduplicación contra SWE-Bench y SWE-Bench-Pro para evitar fuga de datos.
- Contextos globales de
128Ktokens en RL; batches de RL con 512 rollouts y group size 8. - Pesos disponibles en BF16 y FP8 (quantized) en Hugging Face para uso práctico.
¿Qué significa esto para ti como desarrollador o product manager?
Si construyes agentes que manejan terminales, pipelines CI o automatización de repositorios, North Mini Code ofrece una base orientada a tareas reales: larga ventana de contexto, robustez cross-harness y entrenamiento explícito para interacción con herramientas verificables.
¿Vas a reemplazar a un dev senior con esto mañana? No. ¿Puedes acelerar tareas de reparación de bugs, generación de tests y asistentes de edición dentro de flujos de trabajo reales? Sí, y con menos ajustes de harness de los que esperabas.
Disponibilidad
North Mini Code está disponible en OpenCode, la API de Cohere y en Hugging Face con pesos en bf16 y fp8.
Fuente original
https://huggingface.co/blog/CohereLabs/introducing-north-mini-code
