Qwen AgentWorld-35B: execute um simulador de ambientes de agente em sua própria máquina (vLLM, SGLang, Apache-2.0)

Qwen AgentWorld-35B: execute um simulador de ambientes de agente na sua própria máquina (vLLM, SGLang, Apache-2.0)

Vamos ser honestos com o que é isso, porque o nome “world model” causa confusão e é fácil interpretar errado.

Qwen lançou Qwen-AgentWorld-35B-A3B em 24 de junho. Não é um coding agent que você aponta para seu repo. É um simulador: você passa uma ação (por exemplo, “execute ls -la /home/user/project/”) mais o histórico de interação, e ele prediz o próximo estado do ambiente — o que o terminal devolveria —. É tudo o que tem. Aprendeu a modelar como os ambientes respondem às ações, e faz isso sobre sete domínios ao mesmo tempo.

Os sete domínios em um único modelo: MCP (tool calling), Search, Terminal, SWE, Android, Web e OS — cobrindo interação tanto de texto quanto de GUI —. Qwen apresenta isso como o primeiro language world model que abrange os sete em um único conjunto de pesos.

Para quem é isso então? Não para seu fluxo diário de git commit. É para quem esteja treinando ou avaliando agentes — e aí está o payoff prático, que já vamos chegar.

As specs que importam

  • MoE, 35B totais / ~3B ativos por token — então renderiza acima do que sugere uma pegada de 3B ativos.
  • Contexto de 262.144 tokens (padrão). O model card avisa: se você bater em OOM, baixe a janela, mas mantenha em 128K no mínimo, porque a simulação multi-turno de ambientes consome o contexto.
  • Apache-2.0 — uso comercial permitido, sem ressalvas.
  • Compatível com Transformers, vLLM e SGLang.
  • Vem com AgentWorldBench (o benchmark de avaliação) e system prompts por domínio no repo.

Tem também um modelo maior, 397B-A17B, que é o modelo de performance estrela no paper mas que não faz parte do lançamento aberto. O 35B é o que você pode baixar e executar de verdade, e por isso é o que nos interessa.

Servi-lo (a parte hands-on)

Os dois comandos saem da própria doc do 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

Note o --reasoning-parser qwen3 em SGLang: AgentWorld raciocina com uma long chain-of-thought antes de emitir o próximo estado predito, então o servidor precisa fazer parsing do bloco de thinking. Se você não chegar ao Hugging Face, o repo documenta ModelScope como fallback (SGLANG_USE_MODELSCOPE=true ou VLLM_USE_MODELSCOPE=true).

Uma vez levantado, você o chama como qualquer endpoint de chat compatível com OpenAI. O padrão do model card: um system prompt que enquadra o domínio (“prediga a saída do terminal”), depois um turno de usuário com a ação — por exemplo, Action: execute_bash / Command: ls -la /home/user/project/ — e o modelo devolve o que esse ambiente plausiavelmente produziria.

Casos de uso práticos: onde se ganha o espaço em disco

Esta é a parte que importa, e é por que eu o arquivaria sob “ferramenta que convém conhecer” e não “modelo da semana”.

1. Treinar agentes sem levantar infra real. Normalmente, fazer RL sobre um agente implica um ambiente vivo: um terminal real, um emulador Android real, um browser real, tudo cabeado e resetado entre episódios. Isso é lento, frágil e caro. AgentWorld deixa você usar o simulador como ambiente. Qwen validou sobre Tool Decathlon, MCPMark e WideSearch, reportando que a simulação controlável superou tanto a simulação não controlada quanto o treinamento em ambiente real.

2. Avaliar agentes barato e de forma repetível. Um ambiente simulado é controlável e quase determinístico — você pode reproduzir o mesmo cenário, injetar perturbações, e até construir ambientes fictícios para estressar casos extremos que são um incômodo de reproduzir ao vivo. (Como curiosidade: o modelo generaliza zero-shot para ambientes fora do domínio, OpenClaw entre eles — algo de que já falamos no yoDEV.)

3. Caçar as falhas que os benchmarks de task-completion não veem. Aqui está o insight aguçado. A maioria dos benchmarks de coding só pergunta “o PR passou?”. AgentWorldBench pontua a camada de interação sobre cinco dimensões: formato, factualidade, consistência, realismo e qualidade. Os agentes falham de formas desagradáveis: uma saída de terminal plausível com o nome de arquivo errado, um estado de página web que vai se desviando entre turnos, um resultado de tool fabricado que quebra o schema. Essas são exatamente as falhas que um modelo de predição de estado foi feito para trazer à luz.

Uma ressalva honesta da própria análise do Qwen: a factualidade é a dimensão mais difícil — mostrou a maior melhoria durante o treinamento, mas ficou como a de menor pontuação o tempo todo —. Tradução: o simulador é bom em gerar estados plausíveis, menos confiável em estados factualmente exatos. Tenha isso em mente antes de confiar cegamente em um resultado simulado.

Convém prestar atenção?

Se você entrega agentes — tools MCP, agentes de terminal, automação de browser ou Android —, isso é uma forma de abaratar e tornar mais controlável seu loop de treinamento e avaliação, com weights Apache-2.0 que você hospeda. Se o que você quer é algo para escrever código, não é isso, e está perfeito. É uma ferramenta de especialista, e das boas.

Você já está treinando ou avaliando agentes com simuladores, ou ainda está preso a infra real? Conte para a gente como vem resolvendo.