Inteligência artificial, sem ruído.
Tutoriais3 min

Mudou um prompt? Este grafo de dependências mostra o que re-testar

Mudou um prompt compartilhado? Um grafo de dependências calcula quais componentes precisam ser re-testados e pode reduzir a avaliação em até 85%.

Mudou um prompt? Este grafo de dependências mostra o que re-testar

Se você constrói com prompts componíveis — blocos compartilhados herdados por vários agentes — mudar um componente deixa uma pergunta difícil no ar: o que precisa ser re-avaliado antes de enviar para produção? Um engenheiro construiu um grafo de dependências de prompts em Python puro que responde isso com dois números.

Reachable vs. Candidate

A ideia separa o “teto estrutural” do conjunto que realmente precisa de avaliação:

  • Reachable (alcançável): tudo que está a jusante do componente alterado — o limite máximo de impacto possível, derivado só da estrutura do grafo.
  • Candidate (candidato): o conjunto menor de nós que declaram dependência da seção específica que mudou, mais seus consumidores a jusante.

Em um sistema sintético de 55 nós (50 agentes + 5 workflows), o rastreamento por seção reduziu o conjunto de avaliação em 0% a 85%, dependendo de quão seletivamente o componente é compartilhado. A pegadinha é a imprevisibilidade: às vezes o grafo encontra uma redução enorme, às vezes nenhuma — e você só descobre rodando.

Por que o lookup direto falha

Checar apenas quem importa diretamente o componente é insuficiente. Em um teste com dois grafos de mesmo impacto total (4 nós a jusante), um lookup de um salto achou os 4 nós no caso “raso” (flat), mas apenas 1 no caso “profundo” (deep), onde o componente alimenta um agente que alimenta um workflow, que alimenta outro agente. Um lookup de um salto erra 3 de 4 consumidores reais — porque dependências se propagam em cadeias, e prompts são organizados como organogramas.

Como funciona por dentro

Um PromptComponent é modelado como uma coleção versionada de seções nomeadas (em vez de um blob de texto opaco). Os agentes declaram quais seções usam e com que relação (imports, inherits, references, formats-with). A detecção de mudança é mecânica: compara o texto de cada seção entre versões, ignorando espaços extras. Depois, dois BFS (busca em largura): um a partir de todos os dependentes do componente (Reachable), outro a partir apenas dos nós que declaram a seção alterada (Candidate).

A curva de compartilhamento

Variando o percentual de agentes que compartilham um componente (10%, 24%, 50%, 76%, 100%), o autor observou uma relação quase linear: quanto mais universal o componente, menor a redução possível. No extremo, mudar a seção tone (usada por 100% dos agentes) resultou em Reachable 55, Candidate 55, Narrowing 0% — porque, quando todo mundo usa o componente da mesma forma, não há grupo menor a excluir.

Esse resultado honesto é o que mantém a ferramenta confiável: ela não força um número menor quando a resposta correta é “avalie tudo”. Um grafo de dependências não torna um prompt mais seguro — ele torna visível o custo de mudá-lo antes de você pagar por isso.


Descubra mais sobre noticiAI

Assine para receber nossas notícias mais recentes por e-mail.

R
Sobre o autorRedação Noticiai

Equipe editorial dedicada a explicar inteligência artificial com clareza, independência e contexto.