Saltar al contenido
WP-Bench: el benchmark oficial para medir cómo de bien entiende la IA WordPress
María García
María García 20 dEurope/Budapest January dEurope/Budapest 2026 · 9 min de lectura

WP-Bench: el benchmark oficial para medir cómo de bien entiende la IA WordPress

Si estás construyendo un plugin con funcionalidades de IA, o simplemente dependes de un copiloto para picar código en el día a día, hay una pregunta incómoda que tarde o temprano aparece: ¿qué tal se le da a este modelo con WordPress de verdad? No con ejercicios genéricos de programación, sino con APIs del core, arquitectura de plugins, estándares de código y patrones de seguridad típicos del ecosistema.

Para atacar ese hueco, el proyecto WordPress ha presentado WP-Bench, un benchmark oficial para evaluar modelos de lenguaje (LLMs) específicamente en tareas de desarrollo WordPress. La idea es simple: medir con criterios comparables qué modelos “se defienden” y cuáles se quedan cortos cuando el terreno es WordPress.

Qué es exactamente WP-Bench (y qué no)

WP-Bench es un conjunto de pruebas y una infraestructura de evaluación pensadas para puntuar modelos de IA en dos frentes: conocimiento (si conocen conceptos, APIs y buenas prácticas) y ejecución (si son capaces de generar código que realmente funciona dentro de un WordPress real).

No pretende ser un test de “programación general”. Justo al revés: su valor está en ser WordPress-specific. Eso incluye desde el uso correcto de hooks (acciones y filtros) hasta decisiones de seguridad (capabilities, nonces, sanitización/escapado) y estándares de codificación.

Por qué un benchmark de IA centrado en WordPress es relevante

WordPress sigue siendo una pieza central de la web, pero la mayoría de evaluaciones públicas sobre modelos se apoyan en tareas genéricas (algoritmos, Python, problemas de LeetCode, etc.). Eso no refleja la realidad de un dev que mantiene un plugin, un theme o una integración WooCommerce con restricciones reales.

  • Ayuda a elegir tooling con criterio. Si comparas modelos para asistencia de código, WP-Bench apunta a darte una señal más cercana a tu día a día en WordPress.
  • Presiona para que los proveedores optimicen en WordPress. La intención declarada es que el benchmark se convierta en una referencia que los laboratorios ejecuten en sus evaluaciones internas, idealmente antes de lanzar modelos.
  • Camino hacia un leaderboard abierto. El equipo plantea avanzar hacia una clasificación pública con resultados transparentes, útil tanto para la comunidad como para entender cómo se posicionan distintos modelos en tareas WordPress.

Cómo evalúa WP-Bench: conocimiento vs ejecución

WP-Bench separa la evaluación en dos dimensiones complementarias:

1) Knowledge: preguntas tipo test sobre WordPress

La parte de Knowledge consiste en preguntas de opción múltiple que cubren conceptos de WordPress: APIs, hooks, patrones de seguridad y estándares de código. Según el anuncio, hay énfasis en incorporaciones modernas como Abilities API y Interactivity API, precisamente porque ahí es donde muchos modelos suelen fallar (por ser más nuevas o menos presentes en datos de entrenamiento).

2) Execution: generación de código validada por un runtime real

La parte más interesante para el perfil “ingeniería” es Execution: tareas de generación de código que se corrigen ejecutándolo en un entorno WordPress, con análisis estático y aserciones en runtime. Es decir, no basta con sonar convincente: el código tiene que pasar por una evaluación automática que intenta comprobar sintaxis, estándares y comportamiento.

El detalle clave: WordPress actúa como corrector

Uno de los puntos diferenciales es que el grader (corrector) se apoya en WordPress y ejecuta el código en un entorno aislado. El flujo de evaluación que describe el proyecto es, a alto nivel, este:

  1. El harness (la herramienta de ejecución del benchmark) envía un prompt al modelo pidiendo código WordPress.
  2. El código generado se envía al runtime de WordPress a través de WP-CLI (la herramienta de línea de comandos de WordPress).
  3. El runtime hace análisis estático (por ejemplo: sintaxis, estándares y señales de seguridad).
  4. Se ejecuta el código en sandbox con aserciones/test.
  5. El resultado vuelve en JSON con puntuaciones y feedback detallado.

Este enfoque intenta equilibrar dos cosas: evaluar si el modelo conoce la teoría (APIs, convenciones) y si puede producir código utilizable y compatible con el ecosistema.

Quick start: cómo levantar WP-Bench en local

El repositorio incluye un harness en Python y un runtime basado en un proyecto con wp-env (el entorno de desarrollo local habitual en contrib/core). El arranque rápido que proponen es bastante directo.

1) Instalación del harness (Python)

python3 -m venv .venv && source .venv/bin/activate
pip install -e ./python

2) Configurar claves de API

Necesitas un fichero .env con las claves del proveedor (o proveedores) que vayas a evaluar. Ejemplo:

OPENAI_API_KEY=sk-...
ANTHROPIC_API_KEY=sk-ant-...
GOOGLE_API_KEY=...

3) Arrancar el runtime de WordPress (grader)

cd runtime
npm install
npm start

4) Ejecutar el benchmark

cd ..
wp-bench run --config wp-bench.example.yaml

Los resultados se escriben en output/results.json, y también se generan logs por test en output/results.jsonl.

Comparar varios modelos en una sola pasada

Una necesidad muy real es comparar “mi modelo actual” contra alternativas. WP-Bench soporta multi-model benchmarking listándolos en el YAML de configuración:

models:
  - name: gpt-4o
  - name: gpt-4o-mini
  - name: claude-sonnet-4-20250514
  - name: claude-opus-4-5-20251101
  - name: gemini/gemini-2.5-pro
  - name: gemini/gemini-2.5-flash

El harness ejecuta los modelos de forma secuencial y genera una tabla comparativa. Los nombres de modelo siguen las convenciones de LiteLLM (útil si ya estandarizas proveedores detrás de ese wrapper).

Configuración: lo que importa del YAML

La configuración se basa en copiar wp-bench.example.yaml y ajustar dataset, modelos, grader y parámetros de ejecución. Un ejemplo típico:

dataset:
  source: local              # 'local' or 'huggingface'
  name: wp-core-v1           # suite name

models:
  - name: gpt-4o

grader:
  kind: docker
  wp_env_dir: ./runtime      # path to wp-env project

run:
  suite: wp-core-v1
  limit: 10                  # limit tests (null = all)
  concurrency: 4

output:
  path: output/results.json
  jsonl_path: output/results.jsonl

Detalles prácticos: limit te sirve para un smoke test rápido (en lugar de correr toda la suite) y concurrency controla la concurrencia de ejecución de tests (dependiendo de recursos y límites de tu proveedor de IA).

Comandos útiles del CLI

wp-bench run --config wp-bench.yaml          # run with config file
wp-bench run --model-name gpt-4o --limit 5   # quick single-model test
wp-bench dry-run --config wp-bench.yaml      # validate config without calling models

Suites de tests y estructura del repo

La estructura del repositorio ayuda a entender cómo se separan responsabilidades:

.
├── python/          # Benchmark harness (pip installable)
├── runtime/         # WordPress grader plugin + wp-env config
├── datasets/        # Test suites (local JSON + Hugging Face builder)
├── notebooks/       # Results visualization and reporting
└── output/          # Benchmark results (gitignored)

Las suites viven en datasets/suites/<suite-name>/ y se separan por tipo:

  • execution/: tareas de generación de código con aserciones (normalmente un JSON por categoría).
  • knowledge/: preguntas de opción múltiple (también organizadas por categoría).

La suite por defecto, wp-core-v1, cubre APIs del core, hooks, operaciones de base de datos y patrones de seguridad.

Cargar datasets desde Hugging Face

Además del dataset local, se contempla cargar suites desde Hugging Face con esta configuración:

dataset:
  source: huggingface
  name: WordPress/wp-bench-v1

Estado actual y limitaciones conocidas

WP-Bench se presenta como un lanzamiento temprano, y el propio equipo deja claras varias limitaciones que conviene tener en mente si vas a interpretar resultados:

  • Tamaño del dataset. La suite actual es relativamente pequeña; harán falta más casos para cubrir de forma amplia APIs y patrones reales de WordPress.
  • Cobertura por versiones. Hay un sesgo hacia funcionalidades modernas (mencionan WordPress 6.9 y APIs como Abilities/Interactivity). Esto es intencional en parte, pero también introduce un sesgo porque muchas de esas piezas son posteriores al entrenamiento de varios modelos.
  • Saturación del benchmark. En pruebas tempranas, algunos modelos puntúan muy alto en conceptos antiguos, lo que reduce la señal: hay que diseñar problemas que sean realmente discriminantes, no solo “preguntas fáciles” del ecosistema.

Dónde encaja WP-Bench en un flujo real de desarrollo

Aunque el objetivo declarado es convertirse en un estándar (y eventualmente tener un leaderboard público), en el corto plazo WP-Bench ya puede ser útil como herramienta interna si en tu equipo:

  • Estáis eligiendo proveedor/modelo para asistencia de código en proyectos WordPress.
  • Queréis comparar modelos con vuestras convenciones (por ejemplo, exigencia en sanitización/escape, uso correcto de capabilities, etc.).
  • Necesitáis una forma reproducible de evaluar mejoras cuando cambiáis de modelo o ajustáis prompts.

Y si contribuyes al ecosistema, el punto crítico es evidente: el valor del benchmark depende de la calidad y diversidad de los casos de prueba y de la robustez del grading.

Recursos oficiales

  • Repositorio de WP-Bench: https://github.com/WordPress/wp-bench
  • AI Building Blocks for WordPress: https://make.wordpress.org/ai/2025/07/17/ai-building-blocks/
  • #core-ai en Slack: https://wordpress.slack.com/archives/C08TJ8BPULS

¡Únete a la comunidad de HelloWP!

Chatea con nosotros sobre WordPress, desarrollo web y comparte experiencias con otros desarrolladores.

- miembros
- en línea
Unirse

Usamos cookies para mejorar tu experiencia. Al continuar, aceptas nuestra Política de cookies.