Pular para o conteúdo principal

Como executar o Qwen3.8-Flash-Next localmente como um agente de código com OpenCode

Aprenda a executar o Qwen3.8-Flash-Next GGUF localmente com o llama.cpp em uma RTX PRO 6000 e conectá-lo ao OpenCode para um setup de codificação agentic totalmente local.
Atualizado 28 de ago. de 2026  · 8 min lido

Explorar com IA

ChatGPTClaudePerplexity

O Qwen3.8-Flash-Next é um dos modelos locais mais interessantes que testei recentemente, especialmente para tarefas de código e agentes. Spoiler: fiquei positivamente surpreso com o desempenho do modelo.

Neste guia, vamos executar a quantização GGUF Unsloth UD-Q4_K_XL em uma única RTX PRO 6000 com 96GB de VRAM, servi-la localmente usando o llama.cpp, testá-la via WebUI nativa e, por fim, conectá-la ao OpenCode para usar como um agente de codificação totalmente local.

O que é o Qwen3.8-Flash-Next?

Qwen3.8-Flash-Next foi lançado em 26 de agosto de 2026. É um novo modelo Mixture-of-Experts (MoE) de pesos abertos da equipe Qwen e também funciona como um preview inicial da arquitetura que está sendo desenvolvida para o Qwen4.

Para um mergulho mais profundo no modelo, incluindo benchmark completo e visão geral de recursos, informações de preço e disponibilidade, e comparação com concorrentes, recomendo ler nosso guia do Qwen3.8-Flash-Next.

Engenheiro associado de IA para cientistas de dados

Treine e faça o ajuste fino dos modelos de IA mais recentes para produção, incluindo LLMs como o Llama 3. Comece sua jornada para se tornar um engenheiro de IA hoje mesmo!
Explorar a Trilha

Arquitetura do Qwen3.8-Flash-Next

É um modelo MoE principal com 125B de parâmetros, mas apenas cerca de 6B de parâmetros são ativados por token. Ele também inclui 51B adicionais em embeddings de n-gramas.

A arquitetura apresenta várias ideias que a Qwen está explorando para o Qwen4:

  • Gated DeltaNet + Qwen Sparse Attention (QSA) para processamento de contexto longo mais eficiente
  • Conexões residuais com gate para melhorar o fluxo de informação entre camadas
  • Embeddings de n-gramas que aumentam a capacidade do modelo sem exigir que todos esses parâmetros sejam computados ativamente

Diagrama da arquitetura do Qwen3.8-Flash-Next

Fonte: Qwen 

O modelo tem uma janela de contexto nativa de 262.144 tokens e pode ser estendida teoricamente para 1 milhão de tokens usando YaRN.

Como o Qwen3.8-Flash-Next se sai em programação?

Ele também é surpreendentemente forte em código. Estes são alguns resultados relatados pela própria Qwen, comparados com o Qwen3.8-27B:

Benchmark

Qwen3.8-Flash-Next

Qwen3.8-27B

DeepSWE 1.1

58.7

42.2

SWE-bench Pro

62.5

61.7

SWE-bench Multilingual

81.0

73.8

Toolathlon Verified

73.5

67.1

Essas são avaliações da própria Qwen, então eu ainda trataria como resultados reportados pelo fornecedor, mas elas batem bem com a minha experiência usando o modelo para programação.

Preparando o servidor com GPU para o Qwen3.8-Flash-Next

Usei uma RTX PRO 6000 com 96GB de VRAM, mas você não precisa necessariamente de tanta VRAM.

Fazendo deploy de um pod Pytorch RTX Pro 6000 no RunPod

Esse é, na verdade, um dos pontos interessantes do Qwen3.8-Flash-Next. Como o llama.cpp pode descarregar partes do modelo para a RAM do sistema, você pode usar uma GPU com menos VRAM, desde que tenha bastante RAM disponível.

A quantização Unsloth UD-Q4_K_XL que estamos usando tem cerca de 111GB e é dividida em quatro arquivos GGUF.

Para o meu setup, eu recomendaria ter pelo menos 140GB somados de RAM e VRAM utilizáveis para garantir espaço suficiente para o modelo, contexto, KV cache e overhead de runtime.

Se você tiver algo como uma H200, pode manter praticamente tudo na GPU. Eu preferi um meio-termo.

Comece verificando sua GPU:

nvidia-smi

Resumo da GPU RTX PRO 6000

Você deve ver sua GPU, versão do driver, versão do CUDA e VRAM disponível.

Em seguida, instale os pacotes necessários:

sudo apt update

sudo apt install -y \
  git \
  cmake \
  build-essential \
  curl \
  libcurl4-openssl-dev \
  python3-pip

Compilando o llama.cpp com suporte ao Qwen3.8-Flash-Next

O Qwen3.8-Flash-Next usa a nova arquitetura qwen4_exp, que é bem diferente de simplesmente carregar outro modelo Qwen3.8.

O suporte ainda é muito recente, então usei o branch do Qwen3.8-Flash-Next mantido pela Unsloth em vez de depender de um build antigo do llama.cpp que talvez não reconhecesse a arquitetura. O trabalho correspondente no llama.cpp adiciona a nova arquitetura qwen4exp, QSA, embeddings de n-gramas e outros componentes específicos do modelo.

Vá para o workspace:

cd /workspace

Clone o branch da Unsloth:

git clone \
  --branch qwen4exp/qwen3.8-flash-next \
  https://github.com/unslothai/llama.cpp.git

Entre no diretório:

cd llama.cpp

Compile o llama.cpp com CUDA:

cmake -B build \
  -DGGML_CUDA=ON \
  -DCMAKE_BUILD_TYPE=Release

cmake --build build \
  --config Release \
  -j"$(nproc)"

Por fim, confirme que o llama-server foi compilado corretamente:

./build/bin/llama-server --version

Meu build retornou:

version: 0.3.0-dev (build 10656, commit 035e22731)
built with GNU 13.3.0 for Linux x86_64

Baixando o modelo GGUF do Qwen3.8-Flash-Next

Baixar o modelo foi, na verdade, uma das partes mais chatas deste setup.

Primeiro tentei o ModelScope, mas a velocidade não foi boa. No Hugging Face, o download começou rápido e, de repente, caiu para a casa dos KB/s.

O Hugging Face agora usa o backend Xet para downloads de modelos grandes e normalmente ativa a concorrência adaptativa automaticamente. Ele também oferece a variável HF_HUB_DISABLE_XET para desabilitar o Xet quando isso causa problemas.

No meu caso, desabilitar o Xet e baixar os quatro shards do GGUF em paralelo funcionou bem melhor.

Instale o CLI do Hugging Face:

pip install -U huggingface_hub

Desabilite o Xet para este download:

export HF_HUB_DISABLE_XET=1
unset HF_XET_HIGH_PERFORMANCE
unset HF_XET_NUM_CONCURRENT_RANGE_GETS
unset HF_HUB_ENABLE_HF_TRANSFER

HF_HUB_ENABLE_HF_TRANSFER agora está obsoleto, já que o Hugging Face migrou grandes transferências para o Xet.

Crie o diretório do modelo:

cd /workspace
mkdir -p Qwen3.8-Flash-Next-GGUF

Agora, baixe os quatro shards em paralelo:

for i in 1 2 3 4; do
  shard=$(printf "%05d" "$i")

  hf download unsloth/Qwen3.8-Flash-Next-GGUF \
    "UD-Q4_K_XL/Qwen3.8-Flash-Next-UD-Q4_K_XL-${shard}-of-00004.gguf" \
    --local-dir Qwen3.8-Flash-Next-GGUF &
done

wait

Baixando o modelo GGUF do Qwen3.8-Flash-Next

O quant UD-Q4_K_XL completo tem aproximadamente 111GB.

Executando o Qwen3.8-Flash-Next com o llama.cpp

Volte ao diretório do llama.cpp:

cd /workspace/llama.cpp

Inicie o servidor:

./build/bin/llama-server \
  -m /workspace/Qwen3.8-Flash-Next-GGUF/UD-Q4_K_XL/Qwen3.8-Flash-Next-UD-Q4_K_XL-00001-of-00004.gguf \
  --alias qwen3.8-flash-next \
  --host 0.0.0.0 \
  --port 8080 \
  --ctx-size 131072 \
  --parallel 1 \
  --flash-attn on \
  --fit on \
  --fit-target 4096 \
  --jinja \
  --batch-size 1024 \
  --ubatch-size 512 \
  --temp 1.0 \
  --top-p 0.95 \
  --top-k 20 \
  --min-p 0.0

Executando o Qwen3.8-Flash-Next com o llama.cpp

Eu deliberadamente usei uma janela de contexto de 131.072 tokens em vez do contexto nativo completo de 262K.

Para agentes de código, 131K já é enorme e dá bastante espaço no OpenCode para arquivos-fonte, saídas de ferramentas, logs de terminal e conversas longas, sem desperdiçar ainda mais memória com contexto que provavelmente não vou usar.

As configurações importantes aqui são:

  1. --fit on permite que o llama.cpp determine automaticamente quanto do modelo deve ficar na GPU.

  2. --fit-target 4096 indica para deixar cerca de 4GB de memória da GPU livres, o que dá um fôlego ao runtime em vez de operar colado no limite de VRAM. O llama.cpp suporta oficialmente o ajuste automático e uma margem-alvo de memória configurável.

  3. As configurações de amostragem também não são aleatórias. A Qwen recomenda temperature=1.0, top_p=0.95, top_k=20 e min_p=0.0 ao usar o modelo em modo de raciocínio.

Resumo da GPU após carregar o Qwen3.8-Flash-Next na memória da GPU

Mesmo após carregar o modelo completo, ainda sobrou bastante memória, com cerca de 13GB de VRAM disponíveis para a janela de contexto, KV cache e outros aplicativos.

Testando o servidor Qwen3.8-Flash-Next com CURL

O llama-server expõe uma API compatível com OpenAI.

Confira o modelo disponível:

curl http://127.0.0.1:8080/v1/models

Você deve ver qwen3.8-flash-next.

Agora, vamos testar a geração de uma resposta:

curl http://127.0.0.1:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen3.8-flash-next",
    "messages": [
      {
        "role": "user",
        "content": "Write a Python function that checks whether a number is prime."
      }
    ]
  }'

Se você receber uma resposta válida, o servidor local está pronto.

Testando o Qwen3.8-Flash-Next com CURL

No meu setup, inicialmente vi cerca de 80 tokens por segundo, o que me surpreendeu, considerando que parte do modelo estava na RAM do sistema.

Conforme o contexto aumentou, as velocidades caíram para algo próximo a 64 tokens por segundo.

Ainda assim, isso é extremamente utilizável para um modelo desse tamanho, e a arquitetura ajuda a explicar o porquê. Embora o modelo tenha 125B de parâmetros principais, apenas cerca de 6B ficam ativos por token.

Testando o Qwen3.8-Flash-Next com a WebUI do llama.cpp

Uma coisa que eu curto no llama.cpp é que o llama-server já traz uma WebUI simples.

Abra http://localhost:8080. Se tudo estiver rodando corretamente, o modelo já deve aparecer.

Testando o Qwen3.8-Flash-Next com a WebUI do llama.cpp

Para meu primeiro teste pra valer, pedi que construísse, de uma vez, um site completo para um departamento de TI do governo:

Create a modern, professional government IT department portfolio website in a single index.html file.
Use HTML, CSS, and JavaScript featuring a clean official design and responsive layout with smooth animations, interactive elements, and accessible government-style navigation.
It should display department overview, key services, digital transformation projects, achievements, technology initiatives, statistics, leadership/team section, latest updates, contact information, 

Testando o Qwen3.8-Flash-Next com a WebUI do llama.cpp

Foi uma geração bem grande. O modelo gastou muitos tokens "pensando" e depois gerou um site inteiro em um único arquivo HTML. Levou cerca de 13 minutos para finalizar, e a velocidade foi caindo conforme o contexto crescia.

Mas o resultado ficou bem melhor do que eu esperava.

image10.png

Incluiu gráficos, animações, abas, seções diferentes, estilo responsivo, interações em JavaScript e um layout geral surpreendentemente polido.

image6.png

O interessante é que foi praticamente uma geração one-shot. Eu não pedi explicitamente para adicionar muitos desses detalhes menores.

Foi aí que percebi que esse modelo pode ser especialmente bom para tarefas de programação em que você dá certa liberdade, em vez de especificar cada detalhe de implementação.

Conectando o Qwen3.8-Flash-Next ao OpenCode

Bater papo é legal, mas eu queria mesmo testar o Qwen3.8-Flash-Next como um modelo agentic de codificação.

Para isso, usei o OpenCode. Instale primeiro:

curl -fsSL https://opencode.ai/install | bash

Reinicie o terminal e confira a instalação:

opencode --version

No meu caso, era a versão 1.18.23.

Agora crie a configuração do OpenCode:

mkdir -p ~/.config/opencode

Adicione o provider local do llama.cpp que compilamos antes:

printf '%s\n' '{"$schema":"https://opencode.ai/config.json","model":"llama.cpp/qwen3.8-flash-next","provider":{"llama.cpp":{"npm":"@ai-sdk/openai-compatible","name":"Qwen3.8 Flash Next Local","options":{"baseURL":"http://127.0.0.1:8080/v1"},"models":{"qwen3.8-flash-next":{"name":"Qwen3.8 Flash Next","limit":{"context":65536,"output":32768}}}}}}' > ~/.config/opencode/opencode.json

A parte mais importante é http://127.0.0.1:8080/v1

O OpenCode suporta provedores personalizados compatíveis com OpenAI via @ai-sdk/openai-compatible, o que torna a conexão com o llama.cpp muito simples.

Defini o OpenCode com um contexto de trabalho de 65K, embora o servidor do llama.cpp tenha 131K disponíveis.

Isso deixa bastante folga para saídas longas e evita que sessões de agente ocupem o contexto inteiro do servidor agressivamente.

Usando o Qwen3.8-Flash-Next como um agente local de codificação

Navegue até o diretório do projeto e inicie o OpenCode:

cd /workspace/my-project
opencode

Qwen3.8-Flash-Next integrado ao OpenCode

Agora você pode passar tarefas normais de agente de codificação para o modelo. Por exemplo, pedi ao Qwen para construir um dashboard de analytics:

Build a modern system analytics and task-management dashboard. 
It should monitor CPU, RAM, VRAM, GPU usage, temperatures, disk usage, running processes, and temporary files. 
Users should be able to safely terminate tasks, free unused RAM/VRAM, clear caches, and clean temporary files from one interface.

Testando o Qwen3.8-Flash-Next no OpenCode

O modelo começou criando uma lista de tarefas e planejando o aplicativo antes de escrever tudo.

Testando o Qwen3.8-Flash-Next no OpenCode

Em poucos minutos, ele produziu o primeiro dashboard funcional. Eu não curti muito a primeira UI. Parecia muito espaçada e havia vários problemas de usabilidade.

Então simplesmente disse ao agente o que não gostei e pedi para reconstruir a interface como um centro de comando mais compacto.

A segunda versão ficou bem melhor.

Dashboard gerado pelo Qwen3.8-Flash-Next

Terminei com um dashboard compacto onde pude monitorar CPU, RAM, VRAM, uso de GPU, armazenamento, atividade de rede e processos em execução em tempo real. Também adicionou controles para limpar caches, remover arquivos temporários e gerenciar processos.

O interessante foi a abordagem do Qwen para a implementação. Testei em duas aplicações diferentes e ele frequentemente preferiu HTML, CSS e JavaScript puros em vez de instalar imediatamente React, pacotes Node ou outro framework pesado.

Eu curti esse comportamento. Quando eu não especificava um framework, ele buscava a arquitetura mais simples que resolvesse o problema, em vez de adicionar dependências desnecessárias.

O lado negativo é que ele leva seu tempo. Há muito raciocínio, muitos tokens gerados e, às vezes, bastante depuração. Dá pra sentir o modelo gastando tokens pensando no problema.

Mas os projetos finais geralmente pareceram muito mais completos do que o que costumo obter de modelos locais menores.

Considerações finais

Depois de testar o Qwen3.8-Flash-Next para geração de sites e codificação agentic, acho que ele dá um salto claro em relação ao Qwen3.8-27B. A maior diferença é a forma como aborda projetos. Ele presta mais atenção à estrutura, aos detalhes e à implementação prática, em vez de apenas cuspir código. Se você quer rodar esse modelo localmente, leia nosso tutorial do Qwen3.8-27B.

Também gostei de ver que ele muitas vezes recorre a HTML, CSS, JavaScript e Python simples, em vez de adicionar frameworks e dependências sem necessidade.

O principal ponto negativo é o tamanho. O GGUF UD-Q4_K_XL tem cerca de 111GB, e o modelo pode usar muito raciocínio e tokens de saída, especialmente durante a depuração.

Fora isso, o setup foi surpreendentemente simples. Se você tem RAM e VRAM suficientes, o Qwen3.8-Flash-Next é um dos modelos locais de codificação mais fortes que testei até agora.

FAQs

De que hardware você precisa para rodar o Qwen3.8-Flash-Next localmente?

A tabela de hardware da Unsloth indica o menor quant de 1 bit em 75GB e o de 4 bits em 112GB, medidos como memória total (VRAM e RAM do sistema combinadas, ou memória unificada no Mac). Você não precisa de uma GPU de 96GB: o llama.cpp divide o modelo entre VRAM e RAM, então uma placa menor com bastante RAM funciona, só que mais lenta na parte descarregada.

Qual quantização do Qwen3.8-Flash-Next você deve escolher?

UD-Q4_K_XL é o ponto de equilíbrio, com 111,3GB, mantendo cerca de 93% de concordância de top-token com o modelo em precisão total. Se a memória for um gargalo, UD-IQ4_XS (93,7GB) e UD-Q3_K_XL (90GB) ficam acima de 90%, e UD-IQ1_S ainda segura 80% com 72,5GB. Note que os quants de baixo bit são maiores do que se esperaria para um modelo de 125B, porque as camadas de embedding de n-gramas nunca são quantizadas abaixo de 4 bits.

Você pode usar o Qwen3.8-Flash-Next com Claude Code ou Codex em vez de OpenCode?

Sim, para qualquer ferramenta que aceite uma base URL compatível com OpenAI personalizada. Aponte a ferramenta para http://127.0.0.1:8080/v1 e use o --alias que você deu ao servidor como o ID do modelo. O Claude Code espera requisições no formato Anthropic, então precisa de um proxy de tradução em vez de apenas trocar a base URL. Em qualquer agente que usar, defina um limite explícito de contexto abaixo do --ctx-size do servidor para que sessões longas não o estourem.

Como evitar que o Qwen3.8-Flash-Next gaste tantos tokens pensando?

O esforço de raciocínio vem por padrão como xhigh. Passe --chat-template-kwargs '{"reasoning_effort":"medium"}' para o llama-server para reduzir, com low e none também disponíveis. O modelo também mantém os rastros de pensamento das rodadas anteriores por padrão (preserve thinking), então definir preserve_thinking como false reduz ainda mais o uso de tokens em sessões longas de agente.


Abid Ali Awan's photo
Author
Abid Ali Awan
LinkedIn
Twitter

Sou um cientista de dados certificado que gosta de criar aplicativos de aprendizado de máquina e escrever blogs sobre ciência de dados. No momento, estou me concentrando na criação e edição de conteúdo e no trabalho com modelos de linguagem de grande porte.

Tópicos

Aprenda IA com a DataCamp!

Programa

Associate AI Engineer para desenvolvedores

26 h
Aprenda a integrar IA em aplicações de software usando APIs e bibliotecas de código aberto. Comece hoje sua jornada para se tornar um AI Engineer!
Ver detalhesRight Arrow
Iniciar Curso
Ver maisRight Arrow