Pular para o conteúdo
niadra
Estado

O que vale agora para cada cliente, com a idade, a fonte e o que se pode afirmar.

O histórico diz o que aconteceu; o estado diz o que vale agora. A sua empresa declara os tipos de estado dela, ou a Niadra os deriva do seu banco e avisa quando mudam. Um pedido, um processo, uma proposta, uma cotação: a memória entende todos da mesma forma. Todo valor chega ao agente com a idade, a fonte e o que ele não pode afirmar com esse dado. Um valor velho nunca é recusado: vem com a idade, e o agente sabe o que não dizer com ele. O valor oficial continua no seu sistema, e a Niadra nunca o chama: quando um valor precisa ser lido de novo, o seu código lê, dentro da sua empresa.

Como funciona

Leitura de estado

finalidade: afirmar exemplo
Fatura 0823 tipo fatura · espelha o ERP
  • estado creditada sim há 1 min · ERP, ao vivo fresco
  • crédito R$ 40,00 sim há 1 min · ERP, ao vivo fresco
  • boleto novo emitido não não há 1 min · ERP, ao vivo a fonte afirmou que não há
Visita técnica 5521 tipo visita_tecnica · espelha o sistema de campo
  • data 23/09, de manhã sim há 2 h · sistema de campo vencido para afirmar: releia antes de dizer
  • técnico confirmado não observado não observado ninguém observou “não conferido” não vira “não”
  • peça em estoque defeito conhecido defeito da fonte há 10 min · estoque o tipo declara que esse campo dessa fonte vem errado
O que o agente não pode afirmar com esse dado
  • a data da visita
  • se o técnico está confirmado
  • se a peça está em estoque

Sem modelo de IA na leitura, e sem consulta ao banco com o estado quente. O bloco de estado vai no mesmo pedido do contexto e passa pelo mesmo nível de verificação.

  • Declarado pela sua empresa ou derivado do esquema do seu banco, com a impressão digital do esquema: quando ele muda, a Niadra abre um problema de dados e avisa
  • Quatro valores lógicos: sim, não, não observado e defeito conhecido da fonte. “Não conferido” nunca vira “não”
  • Frescor por campo, calculado na leitura: um preço envelhece em segundos, um cadastro em dias, e uma declaração nova vale para todos os objetos de uma vez
  • Uma cotação vence na hora em que um dado dela muda, não quando passa o prazo
  • Fontes com precedência: o sistema de registro vence o snapshot, e o que uma ferramenta mostrou ao agente também é estado, com a proveniência
  • O bloco de estado vai no mesmo pedido do contexto e passa pelo mesmo nível de verificação: numa conversa em V0, nada do cliente
  • Acesso por campo: um campo sensível nunca entra no texto do contexto, e o agente que precisa dele lê pela finalidade, sob a regra do campo
Antes de dizer um valor, o agente pergunta se pode
from niadra import Niadra, phone
from niadra.resolvers import Resolved

def requote(ref, fields):
    # your own read of the quote, inside your company
    quote = quoting_system.read(ref.id)
    picked = {k: v for k, v in quote.items() if not fields or k in fields}
    return Resolved(picked, version=7)

niadra = Niadra(channel="whatsapp")
niadra.resolvers.register("health_quote", requote)
customer = phone(customer_phone)

with niadra.conversation(
    thread_id, subject=customer, agent_id="sales"
) as conversation, conversation.turn():
    verdict = conversation.verify_claim(
        "health_quote:op:q-77", "price_full", 511.06
    )
    if verdict.claim_safe:
        # said only because it may be claimed now
        reply = f"The plan is {verdict.value:.2f} a month."
    else:
        reply = "Let me confirm the current price and get back to you."
  • Python
  • TypeScript

Trecho de examples/object_state.py do SDK: um valor só é dito quando pode ser afirmado agora, e um valor velho é relido pela sua própria função, dentro da sua empresa.

O próximo agente já pode chegar sabendo.

Conte o que você está construindo. Quem responde é quem escreve o código.