Los mejores modelos para Pi Coding Agent dependen de la tarea: empieza con Claude Sonnet 5.5 para programación cotidiana o GPT-6.1 Sol como opción de OpenAI. Prueba Claude Opus 5.5 en depuración difícil, compara MiniMax M3 y DeepSeek V4.1 Flash para trabajo rutinario, y prueba Qwen3.8 27B cuando el código deba permanecer en tu máquina.

Pi es un entorno de agente extensible que se ejecuta en tu terminal. El entorno gestiona la conversación y las herramientas; el modelo decide qué archivos leer, qué comandos ejecutar y qué modificar. Pi te permite cambiar de modelo dentro de ese flujo de trabajo, para que puedas compararlos en el mismo repositorio en lugar de elegir a partir de clasificaciones no relacionadas entre sí.

Los IDs de modelo y la disponibilidad se verificaron contra el catálogo de Haimaker el 14 de octubre de 2026. Las recomendaciones combinan información actual de los proveedores con una pequeña evaluación independiente de Pi. No hemos ejecutado un nuevo benchmark de Haimaker de estos modelos en Pi.

¿Con qué modelo deberías empezar en Pi?

Empieza con Sonnet 5.5 o GPT-6.1 Sol en una tarea que ya sepas verificar. Mantén fijos el acceso a herramientas y el estado del repositorio, y luego compara un candidato económico en la misma tarea. Pasa a Opus cuando el modelo más barato repita un enfoque fallido o necesite demasiada corrección humana.

Carga de trabajo en PiModelo a probarID de modelo en HaimakerCompromiso
Ediciones del día a día, tests y trabajo de repositorioClaude Sonnet 5.5anthropic/claude-sonnet-5-5Cuesta más por token que las opciones económicas
Programación y planificación con un modelo de OpenAIGPT-6.1 Solopenai/gpt-6.1-solCompara el esfuerzo de razonamiento y el total de tokens
Depuración difícil o requisitos poco clarosClaude Opus 5.5anthropic/claude-opus-5-5Tarifas por token más altas; puede requerir menos intentos
Programación rutinaria con presupuesto ajustadoMiniMax M3minimax/minimax-m3Prueba los argumentos de herramientas y la recuperación ante fallos
Tareas en segundo plano de bajo costeDeepSeek V4.1 Flashdeepseek/deepseek-v4.1-flashLos reintentos y la latencia pueden superar el ahorro de las tarifas bajas
Otra comparación económicaGLM-5.3 Flashz-ai/glm-5.3-flashComprueba salidas largas y el tiempo total de la tarea
Investigación y entradas de documentos grandesGemini 3.8 Flashgoogle/gemini-3.8-flashLa gran capacidad de entrada aún necesita verificación de la respuesta
Investigación y razonamiento difícilesGemini 4 Argongoogle/gemini-4-argonNuevo candidato de pago, ausente de la evaluación de Pi a continuación

La visión general de modelos de Anthropic describe los niveles actuales de Claude. La documentación de Sol de OpenAI cubre su papel en programación y agentes, y la lista de modelos de Google cubre las opciones de Gemini. Esas descripciones ayudan a formar una lista de candidatos; no establecen un ganador sobre tu base de código.

Este es el mismo enfoque basado en tareas que usamos en nuestra guía de modelos de Hermes. La configuración de Pi, la alternancia de modelos y los controles de razonamiento son diferentes, así que usa la configuración de Pi que aparece a continuación en lugar de copiar una configuración de Hermes.

¿Qué muestran las comparaciones reales de programación con Pi?

Una evaluación reducida de Pi respalda probar Sonnet, Sol y Opus antes de asumir que un modelo económico terminará más rápido o más económico. También muestra que más razonamiento puede añadir comprobaciones y llamadas a herramientas sin mejorar la finalización en una tarea sencilla. La comparación útil es el trabajo terminado, incluidos los intentos fallidos y el tiempo de revisión.

La evaluación personal de programación de Ibragim Badertdinov usó 10 tareas con 3 ejecuciones por configuración. Los resultados del 30 de septiembre indican:

Modelo y esfuerzoÉxito en un solo intentoTiempo reportado por tarea
Sonnet 5.5, alto100 %46 segundos
GPT-6.1 Sol, medio100 %1 minuto 7 segundos
Opus 5.5, bajo100 %37 segundos
DeepSeek V4.1 Flash, máximo93,3 %4 minutos 30 segundos
GLM-5.3 Flash, máximo96,7 %7 minutos 1 segundo

Estos son los resultados del autor, no los nuestros. La metodología describe tareas claramente definidas a partir del trabajo del autor, comprobaciones automatizadas y acceso por API. Las tareas permanecen privadas y los resultados se obtuvieron con Pi 0.85.1, no con la versión actual Pi 1.x. Que las tasas de éxito sean iguales tampoco implica que la calidad del código sea la misma.

La comparación da una razón para probar el esfuerzo de razonamiento además del modelo. Opus con esfuerzo bajo completó esta pequeña suite más rápido que las otras configuraciones mostradas. Eso no significa que un esfuerzo bajo baste para una migración difícil. Ejecuta la tarea con sus restricciones reales y luego comprueba si un razonamiento adicional cambia el parche o solo añade comprobaciones repetitivas.

Para tu propia comparación, registra la finalización exitosa, los argumentos de herramientas incorrectos, los reintentos, el tiempo transcurrido y la factura final. Nuestra guía de costes de API para agentes de programación explica por qué las tarifas por token solas pueden dar la respuesta equivocada.

¿Cómo conectas Pi a estos modelos?

Usa Haimaker Connect para conectar Pi sin escribir la configuración del proveedor a mano. Instala Pi primero y luego ejecuta Connect para configurar sus archivos nativos y verificar la conexión.

Para una instalación nueva, la guía de inicio rápido de Pi usa el paquete npm actual que aparece a continuación y requiere Node.js 22.19 o superior:

npm install -g --ignore-scripts @earendil-works/pi-coding-agent
pi --version

Recomendado: Haimaker Connect

Ejecuta el asistente de configuración y elige Pi:

npx -y @haimaker/connect

Para Pi con la recomendación de Sonnet anterior, selecciona ambos explícitamente:

npx -y @haimaker/connect --pi --model anthropic/claude-sonnet-5-5
pi --provider haimaker --model anthropic/claude-sonnet-5-5

Connect abre un inicio de sesión en el navegador o usa un HAIMAKER_API_KEY existente. Escribe el proveedor de Haimaker en models.json, almacena la clave en el auth.json de Pi y verifica una solicitud. Después, Pi envía las solicitudes directamente a Haimaker. Consulta la documentación del paquete Connect para ver las opciones.

Sin --model, Connect configura haimaker/auto. Usa un modelo con nombre para las comparaciones, de modo que el enrutamiento no cambie el modelo entre solicitudes. Connect escribe una única entrada de modelo; usa la configuración manual que aparece a continuación para mantener varios candidatos en el selector de Pi. Hace copia de seguridad de los archivos existentes, pero reescribe models.json como JSON sin comentarios.

Usa Haimaker Connect para configurar Pi y luego compara modelos en la misma tarea de repositorio.

CONECTAR PI A HAIMAKER

Configuración manual: mantener varios modelos en el selector

Establece tu clave en el shell que iniciará Pi:

export HAIMAKER_API_KEY=your-haimaker-key

Añade este proveedor a ~/.pi/agent/models.json. Fusiónalo en un objeto providers existente si ya tienes uno:

{
  "$schema": "https://pi.dev/schemas/models.schema.json",
  "providers": {
    "haimaker": {
      "baseUrl": "https://api.haimaker.ai/v1",
      "api": "openai-completions",
      "apiKey": "${HAIMAKER_API_KEY}",
      "models": [
        {
          "id": "anthropic/claude-sonnet-5-5",
          "name": "Claude Sonnet 5.5",
          "reasoning": true,
          "input": ["text", "image"],
          "contextWindow": 1000000,
          "maxTokens": 128000
        },
        {
          "id": "openai/gpt-6.1-sol",
          "name": "GPT-6.1 Sol",
          "reasoning": true,
          "input": ["text", "image"],
          "contextWindow": 922000,
          "maxTokens": 128000
        },
        {
          "id": "minimax/minimax-m3",
          "name": "MiniMax M3",
          "reasoning": true,
          "input": ["text", "image"],
          "contextWindow": 1000000,
          "maxTokens": 128000
        }
      ]
    }
  }
}

Los límites anteriores describen el catálogo de Haimaker verificado, que puede diferir de la API directa de un proveedor. Pi acepta interpolación de entorno en las credenciales del proveedor; consulta su guía de configuración de modelos. Empieza con una tarea acotada antes de enviar un contexto de repositorio grande.

Selecciona el modelo con ambos identificadores:

pi --provider haimaker --model anthropic/claude-sonnet-5-5

Dentro de Pi, abre /model para seleccionar otro modelo configurado. El selector recarga models.json. Los metadatos de precios personalizados se omiten en este ejemplo porque las tarifas cambian; consulta la factura del proveedor en lugar de tratar una visualización de coste de sesión no configurada como una ejecución de coste cero medida.

Una cuenta de proveedor que ya tienes

Para un proveedor integrado, ejecuta /login y sigue el flujo de autenticación de Pi, luego elige un modelo con /model. La referencia de proveedores de Pi lista las variables de clave de API y las opciones específicas de cada proveedor. Una suscripción y una clave de API de pago por uso pueden tener acceso y facturación diferentes, así que usa el método de conexión que tu cuenta realmente soporta.

¿Cómo deberías configurar los niveles de razonamiento y cambiar de modelo?

Trata la elección de modelo y el nivel de razonamiento como variables independientes. Usa un esfuerzo moderado donde sea compatible para la primera comparación, y luego auméntalo en una tarea que necesite más razonamiento. Pi restringe los niveles a las capacidades del modelo seleccionado. Compara el uso de tokens y la finalización al elegir el esfuerzo; los proveedores interpretan el mismo nivel de forma diferente.

La referencia de CLI de Pi soporta un modelo y esfuerzo explícitos:

pi --provider haimaker --model openai/gpt-6.1-sol --thinking medium

En una sesión interactiva, /thinking cambia el esfuerzo y /scoped-models elige los modelos entre los que alternas con Ctrl+P. Empieza con 2 modelos en ese ciclo: un candidato para trabajo rutinario y una alternativa más potente. Añade otro solo cuando resuelva un fallo recurrente. Guarda un valor predeterminado de inicio desde el selector de modelos con Ctrl+S.

Cambiar de modelo manualmente mantiene la elección visible. El haimaker/auto de Haimaker gestiona el enrutamiento desde la API. Para el enrutamiento dentro de Pi, usa el enrutamiento de modelos virtuales a través de extensiones. Configura y prueba esa extensión por separado. Varias entradas en models.json te dan modelos seleccionables; la lista no elige entre ellos.

Pi también separa los modelos de programación de los modelos de clasificador e imagen. Su documentación actual lista GPT-6 Luna a través de la Decisions API como un clasificador usado por Codemode, en lugar del selector principal de conversación. Comprueba la API y el rol del modelo cuando sigas una recomendación de la comunidad, especialmente una hecha en una versión anterior de Pi.

¿Qué modelos locales merece la pena probar con Pi?

Compara Qwen3.8 27B, Muse Glimmer 30B y Qwen3 Coder 30B cuando tengas memoria de estación de trabajo y quieras inferencia local. Usa Gemma 4 E4B o Qwen3 8B en máquinas más pequeñas. Comprueba que el modelo local use correctamente las herramientas de Pi y que se recupere cuando un comando falla.

Pi tiene una integración documentada con el router de llama.cpp para modelos GGUF. Si ya usas Ollama, configura su endpoint separado compatible con OpenAI. Descarga un modelo que quepa en la máquina y luego añade su etiqueta exacta a models.json:

ollama pull qwen3.8:27b
{
  "providers": {
    "ollama": {
      "baseUrl": "http://localhost:11434/v1",
      "api": "openai-completions",
      "apiKey": "ollama",
      "models": [
        {
          "id": "qwen3.8:27b",
          "name": "Qwen3.8 27B local",
          "reasoning": true,
          "input": ["text", "image"],
          "contextWindow": 32768,
          "maxTokens": 8192
        }
      ]
    }
  }
}

La clave de marcador de posición permite a Pi resolver la autenticación para el proveedor local; Ollama la ignora. Fusiona este proveedor junto a cualquier configuración en la nube y luego selecciónalo:

pi --provider ollama --model qwen3.8:27b

La ficha de Qwen3.8 en Ollama muestra una descarga de aproximadamente 18 GB, antes del estado de contexto y los buffers de ejecución. Una GPU de 24 GB o una máquina con 32 GB o más de memoria unificada es un punto de partida para una sesión acotada. El contexto de 32K en este ejemplo es un ajuste inicial conservador, no una garantía de que quepa. Para máquinas más pequeñas y otros candidatos, consulta nuestra guía de modelos de programación con Ollama.

La inferencia local mantiene los prompts del modelo en tu máquina. Las herramientas externas aún pueden enviar datos a otro lugar, y un modelo con una etiqueta cloud usa inferencia alojada. Comprueba tanto el endpoint como las herramientas habilitadas cuando quieras mantener el código privado.

Preguntas frecuentes

¿Puedo cambiar de modelo sin perder mi sesión de Pi?

Sí. Usa /model para cambiar el modelo en una sesión existente de Pi. Pi registra los cambios de modelo y nivel de razonamiento, y al reanudar los restaura. Usa /scoped-models para elegir los modelos disponibles al alternar con Ctrl+P.

¿Por qué mi modelo personalizado no aparece en Pi?

Comprueba que Pi puede resolver las credenciales del proveedor y que el ID del modelo está en models.json. Debe existir una variable de entorno en el proceso que inicia Pi. Los modelos de clasificador e imagen usan herramientas separadas y no aparecen en el selector principal de /model.

¿Pi es compatible con Haimaker y modelos locales de Ollama?

Sí. Usa npx -y @haimaker/connect —pi para configurar Haimaker a través de los archivos nativos de Pi, o añade el proveedor manualmente en ~/.pi/agent/models.json. Ollama usa un proveedor local separado en http://localhost:11434/v1 con la etiqueta exacta del modelo local.

Empieza con una tarea de repositorio verificada, mantén fijas las herramientas y el contexto de Pi, y compara dos modelos. Quédate con el modelo que la complete correctamente con menos espera y trabajo de revisión. Repite esa comparación cuando un nuevo lanzamiento resuelva un fallo que realmente encuentres.