Observabilidade não é mais para humanos

Por anos, construímos observabilidade para olhos humanos. Dashboards pensados para quem está de plantão, alertas feitos para acordar alguém, logs formatados para serem lidos linha por linha durante um incidente. AIOps abriu um novo capítulo nessa história. Agora temos agentes autônomos capazes de raciocinar sobre falhas, correlacionar sinais e propor caminhos de investigação. Eles consomem a mesma telemetria que produzimos — mas com requisitos muito diferentes dos nossos.

Essa transição não depende apenas do modelo de linguagem. Depende da qualidade do que o alimenta.

O verdadeiro gargalo não é o modelo

Um agente de triagem opera sobre contexto. E contexto vem de um lugar: a telemetria do seu ambiente.

Métricas, logs e traces são a matéria-prima. Se essa matéria-prima é ruidosa, inconsistente ou mal estruturada, o agente vai raciocinar sobre ruído. Esse problema aparece em dois cenários: em agentes autônomos, que iniciam investigações a partir de alertas sem intervenção humana; e em agentes interativos, que auxiliam o SRE durante uma investigação ativa no terminal.

Em ambos os casos, o limite do que o agente consegue fazer é definido antes da primeira chamada ao modelo. Ele é definido na instrumentação.

OpenTelemetry como base semântica

Para que um agente consiga navegar entre métricas, logs e traces sem perder a cadeia causal, esses sinais precisam compartilhar o mesmo contexto de rastreamento. O OpenTelemetry torna isso possível de forma padronizada e independente de fornecedor.

Considere um cenário simples. Um pico de latência aparece na sua API. Sem correlação de traces, o agente enxerga sinais isolados:

  • a latência aumentou
  • a taxa de erro subiu levemente

Com instrumentação adequada:

  • um trace_id conecta a requisição a uma query lenta no banco
  • a query se conecta a uma mudança recente de schema

Mesmo incidente. Capacidade de análise completamente diferente.

É por isso que projetos de migração para OpenTelemetry têm um impacto operacional tão profundo. Não se trata apenas de trocar um coletor. É a construção de uma linguagem comum entre serviços que antes emitiam sinais em formatos incompatíveis. Sem essa consistência semântica, qualquer agente opera “cego” em partes do sistema.

O problema da janela de contexto

A qualidade da telemetria está diretamente ligada a outro desafio: a gestão da janela de contexto. O problema não é o volume de dados. É a seleção dos tokens relevantes.

Um agente que recebe telemetria não filtrada durante um incidente tende a perder o sinal no meio do ruído. Logs redundantes, métricas sem atributos de contexto, traces incompletos — tudo isso consome janela sem contribuir para o raciocínio. Uma boa instrumentação resolve parte desse problema antes mesmo de chegar ao modelo: dados semanticamente ricos, com atributos consistentes e rastreamento propagado, chegam em um formato que já favorece o raciocínio.

Modelos melhores não vão corrigir telemetria ruim.

Dois modos de operação, um mesmo pré-requisito

No modo autônomo, o agente monitora continuamente alertas e constrói hipóteses sem intervenção humana. Os principais provedores já lançaram suas implementações nesse modelo, como Azure SRE Agent, AWS DevOps Agent e Datadog AI SRE. Como já discuti em outro artigo, o sucesso dessas ferramentas em produção não é garantido pelo modelo em si. Ele depende de guardrails bem definidos e, acima de tudo, de um bom contexto. E esse contexto começa na telemetria.

No modo assistido, o agente atua ao lado do SRE no terminal, próximo das ferramentas reais. Aqui também, a utilidade depende da qualidade dos dados que ele consegue inspecionar em tempo real. Um trace sem propagação de contexto, analisado durante um incidente, oferece ao agente exatamente o mesmo que oferece a um humano: uma visão parcial.

Conhecimento operacional como complemento

A qualidade da telemetria resolve o problema dos dados. O problema do contexto operacional permanece: padrões de falha do ambiente, procedimentos conhecidos, pontos cegos históricos. Encapsular esse conhecimento em Skills reutilizáveis (procedimentos estruturados e playbooks operacionais que o agente pode utilizar) é o que permite que ele opere de forma consistente, combinando dados estruturados com o conhecimento acumulado do time.

Duas camadas complementares. A telemetria diz o que está acontecendo. O conhecimento operacional ajuda a entender o que isso provavelmente significa.

Conclusão

Antes de qualquer conversa sobre AIOps, a pergunta mais honesta é: sua observabilidade está pronta para ser interpretada por uma máquina?

Serviços sem traces propagados, logs sem atributos de contexto e métricas sem cardinalidade adequada não vão se beneficiar de agentes mais sofisticados. Vão apenas gerar respostas erradas — mais rápidas e mais confiantes.

Observabilidade foi construída para humanos. Agora ela também precisa funcionar para máquinas. Times que entendem essa diferença terão uma vantagem real — não por escolherem modelos melhores, mas por construírem entradas melhores.

Continuar lendo


Por que a IA não pode pilotar ambientes de produção (ainda)

Reiniciar serviços de forma automatizada ou utilizar scripts de auto-healing para limpar espaço em disco aos 90% não são novidade para um SRE. Temos utilizado esse tipo de automação básica e determinística há muito tempo.

O real desafio, e o objetivo final de qualquer time de plataforma, é a resolução de incidentes complexos: aqueles problemas multidimensionais que exigem navegar por dezenas de dashboards para entender que uma mudança no esquema do banco de dados está causando gargalos de conexão em um microsserviço.

Com a ascensão dos agentes de IA, essa visão de remediação inteligente deixou de ser especulativa. No entanto, entre a promessa da tecnologia e a realidade dos sistemas de produção, existe uma lacuna fundamental: o contexto.

Mais precisamente, a capacidade de agir dentro de limites seguros mesmo quando você não tem a visão completa do cenário.

A Nova Onda: Triagem Inteligente

Estamos vendo uma tendência clara com ferramentas como o Azure SRE Agent e o AWS DevOps Agent. Esses agentes não servem apenas para executar comandos; eles atuam como uma camada de inteligência sobre o caos.

Seu impacto mais imediato e mensurável está na triagem assistida.

Ao correlacionar logs, métricas e traces em sistemas distribuídos, esses agentes conseguem identificar rapidamente a causa provável de um incidente. Em vez de alertas brutos, os SREs recebem insights sintetizados:

A latência aumentou após o deploy X; as taxas de erro estão concentradas no serviço Y.

Isso reduz significativamente o MTTD (Mean Time To Detect) e diminui a carga cognitiva durante a resposta a incidentes. Mas passar da triagem para a remediação não é um passo linear. É uma mudança na classe do problema.

Riscos da Janela de Contexto e Improviso

Como discuti anteriormente em meu artigo Gerenciamento da Janela de Contexto para Agentes de IA, um agente de IA é tão bom quanto a informação que ele consegue processar sem se perder. Para um SRE, isso é um desafio crítico: o volume de logs, métricas e metadados gerados durante um incidente pode facilmente saturar a janela de contexto de um modelo.

Quando o tratamento de contexto degrada, os agentes podem:

  • Ignorar sinais críticos
  • Dar peso errado a correlações
  • Gerar inferências tecnicamente plausíveis, mas incorretas

Isso introduz o risco de alucinação durante a remediação.

Imagine um agente que decide escalar um serviço stateful para conter uma alta latência, sem perceber — devido à saturação de contexto — que o problema real é uma contenção de locks no banco de dados. Essa ação de auto-healing poderia simplesmente amplificar o problema, gerando um thundering herd que derruba o que restava da infraestrutura.

Guardrails

Para mitigar esses riscos, introduzimos guardrails, que são restrições sobre quais ações um agente está autorizado a realizar. Eles definem a superfície de controle do sistema.

Mas enfrentamos um paradoxo técnico:

  1. Se os guardrails forem muito rígidos, a IA não consegue resolver nada fora de um script básico.
  2. Se damos liberdade para deduzir soluções em sistemas complexos com um contexto mal gerido, o risco de um resultado inesperado cresce exponencialmente.

A Segurança dos Runbooks Consolidados

A prática mais madura no mercado hoje é usar esses agentes como orquestradores de runbooks validados.

IA para a decisão. Sistemas determinísticos para a execução.

Se o agente executa uma ação automaticamente, precisamos ter certeza de que ela pode ser desfeita e que não causará efeitos colaterais se for repetida. A inteligência pertence à análise, mas a execução permanece em trilhos seguros.

A Lição da Aviação: Automation Surprise

Gosto de usar a analogia da aviação moderna.

Uma aeronave comercial hoje consegue lidar com quase todas as fases de um voo sozinha. No entanto, pilotos humanos continuam essenciais. Não para a operação rotineira, mas para casos extremos (edge cases).

Na engenharia de fatores humanos, existe um conceito chamado automation surprise (surpresa da automação). Isso acontece quando o sistema automático toma uma decisão que o operador não esperava. Se o seu agente de auto-healing decide isolar uma região inteira do provedor cloud sem uma explicação clara, o engenheiro de plantão é forçado a mudar o foco da recuperação para a interpretação.

Conclusão

O auto-healing totalmente autônomo não é apenas um desafio de engenharia de software; é uma questão de gerenciamento de risco.

Ferramentas como o Azure SRE Agent ou o AWS DevOps Agent são multiplicadores de força incríveis para diagnóstico e automação de tarefas repetitivas. No entanto, quando se trata dos controles de um sistema crítico, o julgamento humano ainda é a última linha de defesa.

Por enquanto, o modelo mais eficaz é claro: a IA opera como um copiloto. Humanos retêm a autoridade sobre decisões de alto impacto.

Não porque a IA não seja capaz, mas porque sistemas de produção oferecem margem zero para erro.

Continuar lendo


O custo da lucidez

Interagir com uma inteligência artificial costuma ser visto como um problema de velocidade. Fazemos uma pergunta e esperamos uma resposta rápida, como se o tempo de resposta fosse um indicador direto de qualidade.

Isso funciona em muitos casos, mas começa a falhar quando o problema exige mais do que uma resposta plausível.

Modelos de linguagem não “pensam” antes de responder. Eles operam em um processo chamado inferência (que é simplesmente o momento em que, dado um texto de entrada, o modelo começa a gerar a resposta). Essa geração acontece token por token (pequenos pedaços de texto, geralmente palavras ou partes delas), prevendo qual é a próxima palavra mais provável com base no contexto.

Em problemas simples, esse mecanismo funciona bem. Entretanto, em situações mais complexas, ele tende a seguir o caminho mais curto, o que nem sempre leva à melhor resposta.

Nos últimos anos, ficou claro que a qualidade dessas respostas pode melhorar quando o modelo percorre um caminho mais longo antes de concluir. Isso pode acontecer de duas formas.

A primeira é externa (a forma como escrevemos o prompt). Pequenas mudanças, como pedir para estruturar o raciocínio ou considerar etapas intermediárias, podem levar o modelo a explorar mais possibilidades antes de responder.

A segunda é interna, relacionada ao próprio treinamento do modelo. Modelos mais recentes já são ajustados para gerar, de forma implícita, etapas intermediárias de raciocínio antes de produzir a resposta final (o que ficou conhecido como modelos de raciocínio). Esse processo quase sempre é invisível, mas influencia diretamente o resultado.

Nos dois casos, o efeito é semelhante: o modelo deixa de encerrar o raciocínio cedo demais.

No fundo, a natureza do sistema permanece a mesma, um jogo de probabilidades e padrões aprendidos. O que muda é o quanto exploramos esse processo antes de aceitar uma resposta.

Existe um paralelo direto com o raciocínio humano. O psicólogo Daniel Kahneman sugere em Rápido e Devagar (Objetiva, 2012) que nosso pensamento opera a partir de dois modos distintos, o que ele chama de Sistema 1 e Sistema 2.

Quando respondemos algo imediatamente, recorremos a padrões já conhecidos ou atalhos mentais. Como ele descreve: “o Sistema 1 opera automaticamente, com pouco ou nenhum esforço”, enquanto “o Sistema 2 aloca atenção às atividades mentais que exigem esforço”. Quando paramos para estruturar o problema e percorrer etapas intermediárias, a chance de erro diminui (um processo mais próximo do Sistema 2). Não porque nos tornamos mais inteligentes naquele momento, mas porque usamos mais esforço antes de concluir.

Nos modelos de linguagem, esse esforço aparece como mais tokens. Em humanos, aparece como tempo, atenção e organização do pensamento.

Em ambos os casos, o mecanismo é parecido. Não é sobre saber mais, mas sobre não parar cedo demais.

Isso também ajuda a explicar por que respostas diferentes podem surgir do mesmo modelo para o mesmo problema. A forma da pergunta (ou o próprio comportamento interno do modelo) altera o caminho percorrido. Caminhos diferentes levam a conclusões diferentes.

Interagir melhor com esses sistemas não é apenas sobre perguntar melhor, mas sobre entender quando vale a pena desacelerar. Tanto em modelos de linguagem quanto em pessoas, respostas melhores raramente são as mais rápidas, são as que tiveram tempo e espaço suficiente para acontecer.

Continuar lendo


Saber um pouco de tudo

Em algum momento da infância quase todo mundo escuta a mesma pergunta: o que você vai ser quando crescer? A resposta quase sempre vem no singular. Médico. Engenheiro. Advogado. Como se fosse preciso escolher uma única especialidade cedo demais e carregá-la pelo resto da vida.

Durante muito tempo, essa lógica fez bastante sentido. O mundo recompensava profundidade. Quanto mais alguém se aprofundava em um único campo, mais valioso se tornava. Décadas de estudo, anos de experiência, várias especializações. Era assim que se construía autoridade.

A inteligência artificial não acabou com essa lógica, mas certamente bagunçou parte dela.

Hoje qualquer pessoa pode fazer uma pergunta extremamente específica sobre praticamente qualquer assunto e obter uma resposta em segundos. Aquilo que antes exigia horas de pesquisa, consulta a livros ou especialistas, agora cabe em uma caixa de texto. Competir com a máquina nesse terreno começa a parecer algo sem sentido. É um pouco como tentar fazer contas de cabeça mais rápido que uma calculadora.

Isso não significa que a especialização perdeu valor. Pelo contrário. Alguém ainda precisa produzir conhecimento novo, validar ideias e, em muitos casos, treinar os próprios sistemas de inteligência artificial. Enquanto a máquina ainda depende de nós para aprender coisas novas, especialistas continuam sendo essenciais.

O problema talvez esteja em outro lugar.

Durante décadas formamos uma enorme quantidade de semi-especialistas, aqueles com conhecimento razoável em um campo estreito, mas não profundo o suficiente para expandir esse campo. Esse tipo de conhecimento intermediário era extremamente útil em um mundo onde informação era escassa. Hoje ele compete diretamente com máquinas que conseguem acessar e organizar quantidades gigantescas de conhecimento em segundos.

Nesse cenário, dois perfis parecem ganhar importância ao mesmo tempo. De um lado, os especialistas muito profundos, que continuam empurrando as fronteiras do conhecimento e criando as bases que a própria inteligência artificial utiliza. Do outro, os generalistas curiosos, que conseguem circular entre áreas diferentes e usar essas ferramentas com algum senso de direção.

A qualidade das respostas de uma inteligência artificial depende bastante da qualidade das perguntas, e boas perguntas raramente nascem de quem conhece apenas uma coisa. Quem já passou por tecnologia, negócios, comportamento humano ou história tende a reconhecer padrões que especialistas às vezes demoram mais para perceber. Não porque saibam mais profundamente sobre um único assunto, mas porque conseguem combinar ideias, e também desenvolver um certo senso crítico para distinguir entre algo que apenas soa convincente e aquilo que realmente faz sentido.

Marc Andreessen, uma das vozes influentes do Vale do Silício, comentou algo nessa linha ao falar sobre o perfil de profissionais na era da IA. Entre apostar em especialistas ou generalistas, ele disse que ficaria com os generalistas. A lógica é simples: a inteligência artificial funciona como um amplificador de profundidade sob demanda. Ela permite mergulhar em qualquer assunto quando necessário. Mas alguém ainda precisa decidir em que direção mergulhar.

Talvez por isso a velha curiosidade generalista esteja ganhando uma utilidade inesperada. Ler sobre assuntos diferentes, experimentar áreas distintas, cultivar interesses que aparentemente não têm relação entre si. Durante muito tempo isso parecia falta de foco. Hoje pode ser exatamente o contrário.

A inteligência artificial aprofunda, mas nós, pelo menos por enquanto, ainda conectamos as coisas.

Continuar lendo


A Última Invenção

“A primeira máquina ultrainteligente será a última invenção que o homem precisará fazer.” — I. J. Good, 1965

Hoje, novas ferramentas de inteligência artificial surgem numa velocidade que nós mal conseguimos acompanhar. Quando começamos a entender uma, chega outra prometendo fazer tudo melhor. Para quem trabalha com programação, essa mudança é muito clara: há pouco tempo, o máximo que essas ferramentas faziam era sugerir um trecho de código tímido enquanto digitávamos. Agora, nós descrevemos o que queremos e programas inteiros aparecem prontos na tela.

Mas o ponto principal não é a quantidade de lançamentos. É o fato de que a IA deixou de ser apenas um produto final para virar parte do próprio processo de criação. Em Vida 3.0 (Benvirá, 2020), Max Tegmark chama isso de inteligência artificial recursiva. Não é à toa que o desenvolvimento de software tem sido a área mais impactada: como a IA é feita de código, ao aprender a programar, ela consegue se retroalimentar. Cada passo diminui o trabalho do próximo. Basicamente, a máquina ganha o poder de participar da sua própria evolução.

Isso pode assustar, mas a inteligência humana sempre funcionou do mesmo jeito. Ninguém nasce sabendo matemática ou física. Nós aprendemos lendo livros de pessoas que nunca vimos e construímos coisas novas em cima de descobertas antigas. Nossa inteligência individual é só a ponta de um iceberg, apoiada numa base invisível de linguagem e história. Somos, no fundo, mentes biológicas usando o conhecimento acumulado de todo mundo que veio antes.

A grande diferença é que, para nós, esse processo sempre foi lento. O conhecimento levava décadas para se espalhar. Teorias demoravam gerações para amadurecer. Com a IA, esse tempo encolheu. O que antes levava uma vida inteira agora acontece em meses. O aprendizado deixou de ser apenas humano e virou misto. Entregamos parte da criação para máquinas que funcionam numa escala que nós não conseguimos alcançar.

Isso não é necessariamente ruim. O problema não é a ferramenta ficar mais inteligente, mas sim nós perdermos o controle sobre para onde ela está indo. Sempre convivemos com avanços tecnológicos, da imprensa à internet, mas agora o jogo é diferente. O verdadeiro risco é nós lavarmos as mãos e deixarmos esse ciclo rodar solto, sem valores humanos claros e sem ninguém no comando. Se fizermos isso, acabaremos transformando a previsão de I. J. Good em uma profecia apocalíptica.

Continuar lendo