Granite PatchTST-FM-r2: o que a IBM lançou e como testar previsão zero-shot na sua série

O Granite PatchTST-FM-r2 é o novo modelo de fundação para séries temporais da IBM, publicado em 9 de setembro de 2026 no blog do Hugging Face: cerca de 385 milhões de parâmetros, contexto de até 8.192 pontos, comprimentos de previsão flexíveis e cabeça de 99 quantis para previsão probabilística. A licença é dupla (Apache-2.0 e OpenMDW-1.0, você escolhe), com pesos, arquitetura, pipeline de inferência e código de reprodução do benchmark abertos. Os números divulgados vêm do GIFT-Eval, então o caminho honesto é rodar zero-shot na sua série e comparar CRPS e MASE contra a baseline que já roda em produção
Fala aí, beleza? A IBM acabou de colocar no Hugging Face um modelo de fundação para séries temporais com licença comercialmente amigável, e isso mexe direto com quem mantém previsão rodando em produção
O anúncio saiu em 9 de setembro de 2026, em artigo no blog do Hugging Face assinado por pesquisadores da ibm-research (Roman Vaculin, Wesley M. Gifford, Jiri Navratil, Chandra Reddy e Ayhan Sebin)
O nome completo é Granite Time Series PatchTST-FM-r2, sucessor direto do PatchTST-FM-r1 dentro da família Granite TSFM
São aproximadamente 385 milhões de parâmetros, contexto de até 8.192 pontos, comprimentos de previsão flexíveis e previsão probabilística por uma cabeça de 99 quantis
E o ponto que interessa pra quem já tem pipeline de forecast no ar: a proposta do zero-shot é você parar de treinar e manter um modelo por dataset
Se você já usa LLM no dia a dia, a analogia é quase direta: pega o modelo pronto, joga o contexto, recebe a saída, só que aqui o contexto é a sua série histórica em vez de texto
Formação Claude Code
Domine Claude Code do absoluto zero até o avançado
- 120 aulas
- 4 projetos
- 9h 45min
O que muda em relação ao PatchTST-FM-r1:
A representação por patches, que é a marca da família PatchTST, continua
O que mudou foi o miolo: no r1 o bloco era transformer padrão (multi-head self-attention mais uma feed-forward network)
No r2 entrou o bloco conformer: duas camadas feed-forward de meio passo em torno do multi-head self-attention, mais uma camada de convolução temporal
Que papo é esse de conformer? A origem dele é processamento de fala, e a sacada é dar dois mecanismos complementares pro modelo: a self-attention enxerga relação de longo alcance entre os patches, e a convolução puxa a estrutura local, o padrãozinho curto que acontece perto
Cobertura secundária traz mais detalhe interno do r2: dimensão oculta de 1024 e 30 blocos, contra 20 blocos no r1, com patches sobrepostos em 50% (comprimento 16, stride 8), ponderação por janela de Hamming no treino e previsão por overlap-and-add na inferência
O overlap-and-add é o que suaviza a emenda entre patches vizinhos, coisa que costuma aparecer como serrilhado feio na curva prevista
As fontes de pré-treino documentadas são GiftEvalPretrain e dados sintéticos: KernelSynth, TSMixup e sequências CauKer
O modelo também suporta imputação de valores faltantes, não só previsão
E tem um detalhe que salva quem já estava usando a versão anterior: a implementação segue compatível com checkpoints do PatchTST-FM-r1 😀
Os números do GIFT-Eval e o que eles significam:
A IBM reporta CRPS de média geométrica 0,467 e MASE de média geométrica 0,6846 no GIFT-Eval
Em ambas as métricas, quanto menor melhor
Antes dos rankings, um esclarecimento de data que evita confusão: o artigo foi publicado em 9 de setembro de 2026, e as posições citadas nele vêm de uma leitura do leaderboard feita pela IBM no dia anterior, 8 de setembro de 2026
Restringindo a modelos zero-shot, replicáveis e avaliados sem vazamento de teste, a IBM diz que o r2 ficou em 2º lugar em CRPS e em MASE, atrás do TimesFM-3 (do Google Research), conforme essa leitura de 8 de setembro de 2026
Na mesma leitura, a IBM aponta o r2 como o modelo zero-shot de melhor desempenho entre os de licença permissiva e comercialmente amigável dentro da categoria replicável
Quando a comparação abre pra incluir modelos pretrained replicáveis (categoria que pode ter dados de treino do próprio GIFT-Eval no pré-treino), o r2 aparece em 3º em CRPS e 4º em MASE, superando Chronos-2, Timer-S1 e variantes do Toto
O que é o GIFT-Eval?
É um benchmark de previsão de séries temporais criado e operado pela Salesforce AI Research, com código no repositório do gift-eval e leaderboard no Hugging Face Space Salesforce/GIFT-Eval
O escopo é grande: 23 datasets, cerca de 144.000 séries temporais e 177 milhões de pontos, cobrindo sete domínios e 10 frequências
Tome cuidado com uma coisa aqui: tudo isso que eu listei acima é um retrato datado, tirado na véspera do anúncio, não o estado vivo do leaderboard
Leaderboard é coisa que muda, e ranking de terceiro pode usar metodologia diferente (média geométrica não é a mesma coisa que média de rank)
Então trate os números como o que eles são: o ponto de partida da conversa, não a resposta final
Quem se beneficia e o que a licença permite:
Os casos de uso citados pela IBM pra previsão zero-shot de propósito geral são demanda, preços, cargas de energia, tráfego, telemetria e outras séries temporais
Se você é a pessoa que mantém um modelo por dataset, você sabe a dor: cada série nova vira treino novo, retreino, monitoramento novo, mais um job no scheduler
A promessa do modelo de fundação é cortar essa parte e gerar previsão sem treinar nada
E aí vem o detalhe que costuma travar a adoção dentro de empresa: licença
O r2 é licenciado em dupla, Apache-2.0 e OpenMDW-1.0, e o usuário pode escolher qual das duas usar
Junto do lançamento vieram pesos, arquitetura, pipeline de inferência e o código necessário pra reproduzir os resultados do benchmark
Isso é o combo que faz o jurídico dormir tranquilo e o time de dados conseguir auditar o resultado
A IBM também destaca no anúncio o uso dos modelos da família Granite Time Series em aplicações de streaming em produção, com produto da Confluent
Como testar o PatchTST-FM-r2 na sua própria série:
Bora sair do anúncio e ir pro seu dado?
O caminho oficial passa pelo repositório granite-tsfm, mantido pela organização ibm-granite no GitHub, que reúne notebooks, utilitários e componentes de serving
- Confira a versão do Python antes de qualquer coisa: o granite-tsfm suporta Python 3.10, 3.11, 3.12 e 3.13
Checar ambiente antes parece burocracia, mas é exatamente o que evita perder a tarde, mesma lógica de descobrir se a sua distro roda uma ferramenta antes de sair instalando
O erro comum deste passo: assumir que o Python do sistema serve e só descobrir o problema no meio da instalação
- Clone o repositório e instale a partir do clone, usando os extras que o README documenta
git clone https://github.com/ibm-granite/granite-tsfm.git
cd granite-tsfm
Com o clone na mão, instale o pacote local pelo pip usando o extra notebooks pra montar o ambiente dos notebooks, ou o extra demos pra rodar as demos, exatamente como o README do granite-tsfm documenta
O erro comum deste passo: instalar sem o extra e depois ficar caçando dependência faltando no meio do notebook
- Abra o notebook oficial de introdução, que demonstra o uso do PatchTST-FM em previsão via forecasting pipeline
notebooks/hfdemo/patchtst_fm_getting_started.ipynb
- Carregue os pesos: eles ficam no Hugging Face Hub, no identificador
ibm-granite/granite-timeseries-patchtst-fm-r2, e são carregados pelo pacotegranite-tsfmna versão 0.3.9 ou posterior, por meio de uma API de pipeline
O erro comum deste passo: rodar com uma versão antiga do pacote e achar que o problema é o modelo
- Prepare a série: frequência consistente, buracos tratados e janela de contexto dentro do limite de 8.192 pontos
O horizonte é flexível, então defina o que faz sentido pro seu negócio (o horizonte que você realmente usa pra decidir), não o número que dá o melhor gráfico
O erro comum deste passo: preencher buraco de série com informação que só existiria no futuro, e isso vaza dado sem você perceber
- Separe treino e teste cortando por tempo, nunca de forma aleatória
Série temporal tem ordem, e split aleatório entrega o futuro de bandeja pro seu "teste"
O erro comum deste passo: avaliar em janela contaminada e comemorar um resultado que não existe
- Gere os intervalos a partir dos 99 quantis da cabeça probabilística, em vez de olhar só a linha central
Se a sua decisão é de estoque, capacidade ou alarme, a faixa é o que importa de verdade
- Compare contra uma baseline honesta, nas mesmas janelas de teste
Naive sazonal serve, e o modelo que já roda em produção serve ainda melhor
O erro comum deste passo (e é o mais frequente de todos): comparar contra nada, olhar o número bonito do zero-shot isolado e concluir que ele é melhor
CRPS ou MASE: qual métrica olhar na sua comparação?
O GIFT-Eval usa as duas, e elas respondem perguntas diferentes
| Métrica | O que ela mede | Quando ela é a métrica certa pra você |
|---|---|---|
| CRPS | Qualidade da distribuição prevista, ou seja, dos quantis | Quando a decisão depende da faixa (pior caso, melhor caso), e não só do ponto central |
| MASE | Erro da previsão pontual, em escala relativa | Quando você precisa comparar o erro entre séries de escalas bem diferentes |
No leaderboard do GIFT-Eval dá pra filtrar e ordenar exatamente por isso: existem colunas de Organization, TestData Leakage, MASE_Rank e CRPS_Rank, com ordenação pelos modelos que não vazam dados de teste
O resultado que você quer produzir no fim do teste é simples e cabe numa tabela: CRPS e MASE do PatchTST-FM-r2 e da sua baseline, nas mesmas janelas
Sem isso, é achismo com nome técnico 😛
Limitações antes de trocar de modelo:
Os números divulgados são do GIFT-Eval
Benchmark amplo é ótimo pra dizer que um modelo generaliza bem em média, e não diz nada sobre a sua série de demanda específica, com a sua sazonalidade específica e as suas promoções malucas de fim de mês
Previsão zero-shot pode perder, sim, para um modelo simples e bem ajustado ao seu domínio
A lógica aqui é a mesma de medir antes de trocar o modelo que você usa no seu fluxo de trabalho: a única evidência que vale é a que roda no seu dado
Antes de levar pra produção, confirme direto no card do modelo o nome exato do repositório, a licença e os requisitos de execução
Identificador de repo e detalhe de dependência mudam com o tempo, e vale mais dois minutos conferindo do que uma manhã debugando o que não era problema seu
Vídeo do canal pra começar do zero:
Pra quem quer entender como plugar documentação oficial e ferramentas externas no fluxo de código com IA, este vídeo do canal mostra o Context7 rodando junto com o Claude Code:
Conclusão:
O lançamento do Granite PatchTST-FM-r2 tira duas coisas caras da equação: a licença travada e o treino por dataset
Cerca de 385 milhões de parâmetros, contexto de até 8.192 pontos, 99 quantis e licença dupla Apache-2.0 / OpenMDW-1.0 formam um pacote que é bem difícil de ignorar se você mantém forecast em produção
Mas a decisão continua sendo sua, e ela depende do seu dado, não do leaderboard
Próximo passo concreto: clonar o granite-tsfm, rodar o notebook de introdução na sua série e montar aquela tabela de CRPS e MASE contra a baseline que já está no ar
Se o zero-shot ganhar, ótimo, você economizou um pipeline inteiro de treino
Se perder, também ótimo, você agora tem número pra defender o modelo que já roda 😀
até o próximo post!
Perguntas frequentes
Granite PatchTST-FM-r2 é de graça pra usar comercialmente?
Sim, o modelo é licenciado em dupla, Apache-2.0 e OpenMDW-1.0, e você escolhe qual das duas usar. Junto vieram pesos, arquitetura, pipeline de inferência e o código pra reproduzir os resultados do benchmark, o que facilita auditoria dentro de empresa.
Precisa treinar o PatchTST-FM-r2 na minha série antes de usar?
Não, a proposta é zero-shot: você joga o contexto (sua série histórica) e recebe a previsão sem treinar nada específico pro seu dataset. Os casos de uso citados pela IBM incluem demanda, preços, cargas de energia, tráfego e telemetria.
Qual o tamanho máximo de série que o modelo aceita como entrada?
O contexto máximo é de até 8.192 pontos. O horizonte de previsão não é fixo, o modelo aceita comprimentos de previsão flexíveis.
Quem quer atualizar do PatchTST-FM-r1 pro r2 perde os checkpoints antigos?
Não, a implementação do r2 segue compatível com checkpoints do PatchTST-FM-r1. A mudança principal foi no bloco interno, que trocou o transformer padrão pelo bloco conformer.
O que significa o modelo ter uma cabeça de 99 quantis?
Significa que a previsão sai probabilística, não um número único: o modelo gera uma cabeça de predição de 99 quantis pra cada ponto previsto. Isso dá uma noção de incerteza junto com a previsão, coisa que forecast determinístico não entrega.
O ranking do PatchTST-FM-r2 no GIFT-Eval é permanente?
Não, é um retrato datado: o artigo foi publicado em 9 de setembro de 2026 e as posições citadas vêm da leitura do leaderboard feita pela IBM no dia anterior, 8 de setembro de 2026. O GIFT-Eval é mantido pela Salesforce AI Research e o leaderboard muda conforme novos modelos entram na comparação.
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
Blog | Mais populares

Como Recuperar Conversas Apagadas no ChatGPT: É Possível?
Descubra neste artigo tudo o que você precisa saber sobre como recuperar conversas apagadas no ChatGPT, se isso é possível, quais alternativas existem para proteger […]
ChatGPT não funciona: saiba como corrigir erros
ChatGPT não funciona? O ChatGPT pode deixar de funcionar por diversos motivos, e a maioria deles está relacionada a problemas de conexão, cache ou instabilidade […]

Como limpar histórico do ChatGPT e proteger sua privacidade
Veja como limpar o histórico do ChatGPT e proteger sua privacidade de forma simples e eficaz, mantendo seus dados seguros online. Para apagar uma conversa […]
