Qwen AgentWorld-35B: corré un simulador de entornos de agente en tu propia máquina (vLLM, SGLang, Apache-2.0)

Qwen AgentWorld-35B: corré un simulador de entornos de agente en tu propia máquina (vLLM, SGLang, Apache-2.0)

Arranquemos siendo honestos con lo que es esto, porque el nombre “world model” da para confusión y es fácil leerlo mal.

Qwen liberó Qwen-AgentWorld-35B-A3B el 24 de junio. No es un coding agent que apuntás a tu repo. Es un simulador: le pasás una acción (por ejemplo, “ejecutá ls -la /home/user/project/”) más el historial de interacción, y predice el próximo estado del entorno —qué te devolvería la terminal—. Eso es todo el juego. Aprendió a modelar cómo responden los entornos a las acciones, y lo hace sobre siete dominios a la vez.

Los siete dominios en un solo modelo: MCP (tool calling), Search, Terminal, SWE, Android, Web y OS —cubriendo interacción tanto de texto como de GUI—. Qwen lo presenta como el primer language world model que abarca los siete en un único set de weights.

¿Para quién es esto entonces? No para tu flujo diario de git commit. Es para quien esté entrenando o evaluando agentes —y ahí está el payoff práctico, que ya vamos a llegar.

Las specs que importan

  • MoE, 35B totales / ~3B activos por token —así que rinde por encima de lo que sugiere una huella de 3B activos.
  • Contexto de 262.144 tokens (por defecto). El model card avisa: si te topás con OOM, bajá la ventana, pero mantenela en 128K como mínimo, porque la simulación multi-turno de entornos se come el contexto.
  • Apache-2.0 —uso comercial permitido, sin asteriscos.
  • Compatible con Transformers, vLLM y SGLang.
  • Viene con AgentWorldBench (el benchmark de evaluación) y system prompts por dominio en el repo.

Hay también un hermano mayor, 397B-A17B, que es el modelo de performance estrella en el paper pero que no forma parte del release abierto. El 35B es el que podés bajar y correr de verdad, y por eso es el que nos interesa.

Servirlo (la parte hands-on)

Los dos comandos salen de la propia doc de Qwen. SGLang:

python -m sglang.launch_server \
  --model-path Qwen/Qwen-AgentWorld-35B-A3B \
  --port 8000 \
  --tensor-parallel-size 4 \
  --context-length 262144 \
  --reasoning-parser qwen3

vLLM:

vllm serve Qwen/Qwen-AgentWorld-35B-A3B --port 8000

Fijate el --reasoning-parser qwen3 en SGLang: AgentWorld razona con un long chain-of-thought antes de emitir el próximo estado predicho, así que el server necesita parsear el bloque de thinking. Si no llegás a Hugging Face, el repo documenta ModelScope como fallback (SGLANG_USE_MODELSCOPE=true o VLLM_USE_MODELSCOPE=true).

Una vez levantado, lo llamás como cualquier endpoint de chat compatible con OpenAI. El patrón del model card: un system prompt que enmarca el dominio (“predecí la salida de la terminal”), después un turno de usuario con la acción —por ejemplo, Action: execute_bash / Command: ls -la /home/user/project/— y el modelo devuelve lo que ese entorno plausiblemente produciría.

Casos de uso prácticos: dónde se gana el espacio en disco

Esta es la parte que importa, y es por qué lo archivaría bajo “herramienta que conviene conocer” y no “modelo de la semana”.

1. Entrenar agentes sin levantar infra real. Normalmente, hacer RL sobre un agente implica un entorno vivo: una terminal real, un emulador de Android real, un browser real, todo cableado y reseteado entre episodios. Eso es lento, frágil y caro. AgentWorld te deja usar el simulador como entorno. Qwen lo validó sobre Tool Decathlon, MCPMark y WideSearch, reportando que la simulación controlable superó tanto a la simulación no controlada como al entrenamiento en entorno real.

2. Evaluar agentes barato y de forma repetible. Un entorno simulado es controlable y casi determinístico —podés reproducir el mismo escenario, inyectar perturbaciones, e incluso construir entornos ficticios para estresar casos borde que son un dolor de cabeza de reproducir en vivo. (Como dato de color: el modelo generaliza zero-shot a entornos fuera de dominio, OpenClaw entre ellos —algo de lo que ya hablamos en yoDEV.)

3. Cazar las fallas que los benchmarks de task-completion no ven. Acá está el insight filoso. La mayoría de los benchmarks de coding solo preguntan “¿pasó el PR?”. AgentWorldBench puntúa la capa de interacción sobre cinco dimensiones: formato, factualidad, consistencia, realismo y calidad. Los agentes fallan de maneras sucias: una salida de terminal plausible con el nombre de archivo equivocado, un estado de página web que se va desviando entre turnos, un resultado de tool fabricado que rompe el schema. Esas son exactamente las fallas que un modelo de predicción de estado está hecho para sacar a la luz.

Una salvedad honesta del propio análisis de Qwen: la factualidad es la dimensión más difícil —mostró la mayor mejora durante el entrenamiento, pero quedó como la de menor puntaje en todo momento—. Traducción: el simulador es bueno generando estados plausibles, menos confiable en estados factualmente exactos. Tenelo presente antes de confiar a ciegas en un resultado simulado.

¿Te conviene prestarle atención?

Si shippeás agentes —tools MCP, agentes de terminal, automatización de browser o Android—, esto es una forma de abaratar y volver más controlable tu loop de entrenamiento y evaluación, con weights Apache-2.0 que hosteás vos. Si lo que querés es algo para escribir código, no es esto, y está perfecto. Es una herramienta de especialista, y de las buenas.

¿Ya estás entrenando o evaluando agentes con simuladores, o seguís atado a infra real? Contanos cómo lo venís resolviendo.