Capa

Chain-of-thought: como monitorar modelos de IA com segurança

O alerta dos ex-funcionários da OpenAI toca num problema concreto de engenharia: quanto mais avançados ficam os modelos, mais difícil pode ser entender por que eles produziram uma resposta — e detectar quando estão prestes a falhar. Mas há uma ressalva importante: o texto de raciocínio exibido por um modelo não é uma gravação confiável de tudo o que aconteceu internamente. Para quem desenvolve software com IA, a resposta não é simplesmente “guardar o chain-of-thought”. É construir formas diversas, seguras e auditáveis de monitorar o comportamento do sistema.

Segundo o Olhardigital.com.br, os pesquisadores Jasmine Wang, Tomek Korbak e Mikita Balesni, ex-integrantes de equipes de segurança e alinhamento da OpenAI, enviaram uma carta ao conselho e a comitês de segurança da empresa. Eles defendem preservar a capacidade de acompanhar o raciocínio dos modelos e envolver avaliadores externos. A OpenAI, em resposta, teria concordado com a importância da monitorabilidade e das avaliações independentes.

Para equipes de desenvolvimento, isso não é uma discussão abstrata sobre o futuro da inteligência artificial. Afeta decisões que já tomamos: que dados registrar, como avaliar respostas, o que fazer quando o modelo muda e até que evidências apresentar depois de um incidente.

O que é chain-of-thought e por que pesquisadores querem monitorá-lo

Chain-of-thought, ou cadeia de raciocínio, é uma sequência de etapas em linguagem natural que alguns modelos produzem ao resolver uma tarefa. Em vez de retornar apenas um resultado, o modelo pode apresentar justificativas intermediárias, decompor um problema ou explicar como chegou à resposta.

Esse material pode ajudar na depuração. Se um assistente de programação recomenda uma API incorreta, por exemplo, uma explicação intermediária pode revelar que ele confundiu duas versões da biblioteca. Se um agente com acesso a ferramentas tenta executar uma ação não autorizada, sinais durante a tarefa podem ajudar a equipe a investigar o caminho que levou à decisão.

O ponto defendido na carta é que a indústria não deveria avançar para sistemas mais difíceis de monitorar sem entender como preservar uma supervisão eficaz. A preocupação é especialmente relevante para modelos de fronteira, usados em tarefas complexas e com maior autonomia.

O limite: uma explicação não é necessariamente o processo real

Não trato chain-of-thought como um log de execução infalível. Um modelo pode oferecer uma justificativa convincente sem que ela represente fielmente os mecanismos que produziram a resposta. Também pode omitir etapas, reorganizar a explicação ou gerar um texto que apenas pareça lógico.

Isso é parecido com observar logs de uma aplicação distribuída: eles ajudam a reconstruir o que ocorreu, mas não mostram automaticamente tudo. Um log incompleto não prova que uma operação não aconteceu; uma explicação bem escrita não prova que o modelo tomou aquela decisão exatamente por aquele motivo.

Por isso, a monitorabilidade precisa combinar evidências. Respostas visíveis, chamadas de ferramentas, permissões, resultados de testes, métricas de erro e avaliações independentes são sinais complementares. Nenhum deles, sozinho, oferece uma visão completa.

Monitorabilidade de IA: o que uma equipe de software deve observar

Em uma aplicação tradicional, instrumentamos o sistema para identificar latência, exceções, dependências e falhas. Com IA generativa, precisamos acrescentar observabilidade de comportamento. Isso não significa guardar indiscriminadamente cada prompt e cada resposta. Significa definir quais sinais são necessários para investigar incidentes e verificar a qualidade do sistema.

  • Entradas e saídas: registre o contexto relevante e o resultado, respeitando privacidade, consentimento e regras de retenção.
  • Versão do modelo e configuração: anote o identificador do modelo, parâmetros, versão do prompt e ferramentas disponíveis.
  • Ações executadas: acompanhe chamadas de ferramentas, consultas e alterações feitas pelo agente, não apenas o texto final.
  • Resultados de avaliação: mantenha testes que representem tarefas reais, casos adversariais e critérios de segurança.
  • Intervenções humanas: registre quando uma resposta foi revisada, bloqueada ou corrigida, com o motivo quando possível.

O porquê é simples: sem contexto de versão e ação, um incidente fica difícil de reproduzir. Se o modelo mudou, o prompt foi atualizado e uma ferramenta ganhou permissões novas, olhar apenas para a resposta final não basta para descobrir a origem do problema.

Chain-of-thought não substitui avaliação independente

A carta também defende a participação de auditores externos. Isso importa porque a própria equipe que constrói um sistema pode deixar passar riscos que não aparecem nos testes internos. Avaliadores independentes podem testar hipóteses diferentes, procurar comportamentos inesperados e contestar conclusões da empresa.

Na prática, auditoria não é apenas entregar um relatório ou permitir uma demonstração controlada. Uma avaliação útil precisa ter escopo claro, critérios verificáveis e acesso suficiente para testar os riscos relevantes. Ao mesmo tempo, é necessário proteger dados pessoais, segredos comerciais e informações que poderiam facilitar abuso.

Para um produto, a lição é não confundir “temos logs” com “temos supervisão”. Logs ajudam a investigar. Avaliações medem comportamento em cenários definidos. Red teaming busca falhas de forma deliberada. Técnicas de interpretabilidade tentam entender mecanismos internos. São abordagens diferentes, e uma arquitetura responsável pode precisar de várias.

Na Prática: instrumente um recurso de IA sem registrar raciocínio privado

Para uma funcionalidade de geração de texto ou assistência de código, eu começaria registrando eventos úteis para operação e avaliação, sem tratar chain-of-thought como requisito. O exemplo abaixo mostra um invólucro simples em Python. Ele registra metadados e a resposta observável, mas não salva prompts nem raciocínio; em produção, a retenção da resposta também precisa ser definida conforme o risco e a política de dados.

  1. Defina o que precisa investigar: por exemplo, latência, falhas, versão do modelo e uso de ferramentas.
  2. Reduza dados sensíveis: remova ou mascare informações pessoais antes de enviar dados para logs.
  3. Separe operação de avaliação: métricas de produção não substituem um conjunto de testes estável.
  4. Revise permissões: um agente deve ter apenas acesso às ferramentas necessárias para a tarefa.
import json
import logging
import time
from typing import Callable, Any

logging.basicConfig(level=logging.INFO)
logger = logging.getLogger("ai_observability")


def call_ai(
    model: Callable[[str], str],
    prompt: str,
    model_version: str,
) -> dict[str, Any]:
    """Executa uma chamada e registra metadados, não o prompt."""
    started = time.perf_counter()

    try:
        answer = model(prompt)
        elapsed_ms = round((time.perf_counter() - started) * 1000, 2)

        event = {
            "event": "ai_response",
            "model_version": model_version,
            "latency_ms": elapsed_ms,
            "success": True,
            "output_chars": len(answer),
        }
        logger.info(json.dumps(event))

        return {"answer": answer, "latency_ms": elapsed_ms}

    except Exception as exc:
        elapsed_ms = round((time.perf_counter() - started) * 1000, 2)

        # Registre uma categoria de erro, evitando incluir prompt ou dados
        # sensíveis na mensagem da exceção.
        event = {
            "event": "ai_error",
            "model_version": model_version,
            "latency_ms": elapsed_ms,
            "error_type": type(exc).__name__,
        }
        logger.error(json.dumps(event))
        raise


# Exemplo executável com uma função local no lugar de um provedor externo.
def fake_model(prompt: str) -> str:
    return f"Recebi uma solicitação com {len(prompt)} caracteres."


result = call_ai(
    model=fake_model,
    prompt="Explique este trecho de código.",
    model_version="modelo-exemplo-1",
)
print(result["answer"])

Esse exemplo não detecta sozinho uma resposta perigosa ou incorreta. Ele cria uma trilha operacional mínima: qual versão foi chamada, quanto demorou e se houve erro. Para avaliar qualidade, eu acrescentaria testes com entradas conhecidas e critérios explícitos, como validade do formato, uso correto de ferramentas e comportamento diante de pedidos fora do escopo.

Também evitaria registrar dados sensíveis por padrão. Um log pode virar uma cópia permanente de código proprietário, credenciais ou informações de clientes. Se for necessário armazenar conteúdo para auditoria, aplique minimização, controle de acesso, prazo de retenção e processo de exclusão. Observabilidade sem governança cria outro risco, em vez de reduzir o primeiro.

Erros comuns ao monitorar modelos de IA

  • Tratar a explicação como prova: uma cadeia de raciocínio plausível não demonstra que o modelo usou aquele processo. Compare a justificativa com resultados observáveis e testes controlados.
  • Guardar tudo “por precaução”: logs ilimitados aumentam exposição de dados e custo. Defina finalidade, acesso e retenção antes de coletar conteúdo.
  • Avaliar só com exemplos fáceis: testes que repetem os casos de demonstração não cobrem ambiguidades, entradas maliciosas ou mudanças de contexto.
  • Olhar apenas para a resposta final: em sistemas com ferramentas, é preciso auditar também ações, parâmetros e permissões. Uma resposta correta pode esconder uma operação indevida.
  • Fazer uma avaliação única: modelos, prompts e ferramentas mudam. Reexecute testes relevantes após alterações e acompanhe regressões em produção.
  • Confundir auditoria com certificação absoluta: uma avaliação independente reduz pontos cegos, mas não garante que todos os riscos foram encontrados.

Na minha visão, a melhor decisão técnica não é escolher entre monitorar chain-of-thought ou ignorá-lo. É evitar que a segurança dependa de um único sinal. Uma estratégia mais robusta combina avaliações repetíveis, limites de ação, logs minimizados, revisão humana nos fluxos de maior risco e auditoria independente.

O que esse alerta muda para quem programa com IA

O debate dos ex-funcionários da OpenAI é um lembrete de que desempenho e capacidade não bastam. Quando um modelo participa de um fluxo de trabalho real, a equipe precisa conseguir observar o que ele fez, reproduzir falhas relevantes e limitar o impacto de decisões erradas.

Também precisamos ser precisos ao falar sobre “entender o raciocínio”. Uma explicação legível pode ajudar um desenvolvedor, mas não equivale a acesso transparente ao funcionamento interno do modelo. Prometer mais do que os sinais permitem comprovar cria falsa confiança — exatamente o tipo de armadilha que uma boa prática de engenharia deve evitar.

Eu começaria por uma pergunta operacional: se o sistema fizer algo inesperado amanhã, quais evidências teremos para descobrir o que ocorreu sem expor dados desnecessariamente? Se a resposta depender de uma explicação gerada pelo próprio modelo, a estratégia de monitoramento ainda está incompleta.

Perguntas frequentes sobre chain-of-thought e segurança de IA

O que significa chain-of-thought em inteligência artificial?

É uma sequência de etapas em linguagem natural que um modelo pode apresentar para explicar uma resposta ou decompor uma tarefa. Ela pode ajudar na análise, mas não deve ser considerada um registro perfeito dos processos internos do modelo.

Chain-of-thought comprova por que o modelo tomou uma decisão?

Não. Uma explicação pode ser incompleta ou não representar fielmente o processo que produziu a resposta. Para investigar comportamento, combine esse tipo de sinal com testes, logs de ações, versões e avaliações independentes.

Devo armazenar o raciocínio dos modelos nos logs da minha aplicação?

Não como regra geral. Primeiro defina a finalidade e avalie privacidade, segurança e utilidade real. Em muitos casos, metadados, resultados de testes e registros de ferramentas oferecem evidências úteis com menor exposição de informações sensíveis.

Como avaliar a segurança de um sistema que usa IA generativa?

Crie avaliações para tarefas reais e casos adversariais, registre versões e ações, limite as permissões do modelo e revise os resultados após mudanças. Para fluxos de maior risco, inclua revisão humana e avaliação externa com escopo definido.

Auditores externos conseguem garantir que um modelo é seguro?

Não há garantia absoluta. Uma avaliação externa pode revelar pontos cegos e testar afirmações da equipe, mas seu valor depende do escopo, dos métodos e do acesso concedido. Ela complementa — não substitui — monitoramento contínuo e controles técnicos.

Gostou? Me segue no GitHub e deixa um comentário se tiver dúvida ou quiser aprofundar algum ponto.

Y

Yuri Sousa

Front-End Developer / Designer

Desenvolvedor apaixonado por criar experiências digitais acessíveis e visualmente perfeitas. Escrevo sobre desenvolvimento web, design e tecnologia.