JEV - Sair do ciclo: a confiança entra no código
Depois de a confiança ser escrita no ramo, a pessoa sai do caminho obrigatório de cada pedido e só trata os poucos cuja probabilidade ainda está espalhada. As ações de alto privilégio continuam a correr em código, acima de um limiar.

Coautor: folkbench.com (Folkbench é uma plataforma de avaliação e seleção que se pode rever, para APIs de IA, serviços de modelos e sites relacionados. Apoia-se em informação publicada sobre o serviço, preços, disponibilidade, latência e janelas de evidência para ajudar os utilizadores a comparar e a escolher um caminho.)
Dez textos nesta série:
- JEV - Uma articulação não precisa de um cérebro
- JEV - O lubrificante nos nós de controlo
- JEV - De BERT de volta a uma distribuição
- JEV - Desenhar a pergunta fechada, não o feitiço
- JEV - O livro anti-token não o lança primeiro
- JEV - Duas demos que só devolvem uma distribuição
- JEV - Sair do ciclo: a confiança entra no código
- JEV - Depois da linha, mais inteligente já não é o produto
- JEV - Intuição e razão: perguntas que não lhe pertencem
- JEV - Do ecrã a uma probabilidade nua
Uma pessoa no meio do ciclo era um compromisso: o modelo podia dizer disparates, por isso uma pessoa ficava à frente de cada ação de alto privilégio. Deixe-a ali tempo bastante e a pessoa torna-se dívida de arquitetura. O caudal deixa de depender da largura de banda. Depende de haver alguém de turno. Jev vira isso ao contrário. A confiança escreve-se no ramo. A pessoa desce do tronco para a margem e trata só o troço curto em que a distribuição ainda está espalhada.
Porque é que a pessoa foi puxada para dentro
Um modelo de chat é um continuador de texto. A forma da saída é instável, e uma alucinação torna-se um incidente. Finanças, despacho e conformidade empilharam por isso duas camadas de defesa.
A camada de análise não para de engrossar
Para tirar JSON válido de um parágrafo, à volta crescem Pydantic, novas tentativas, listas de bloqueio de palavras-chave e uma segunda instrução. Um juízo passa a ser: escrever a instrução, esperar a geração, falhar a análise, instruir de novo, avaliar de novo. A latência cresce de uma chamada para um ciclo.
A fila humana torna-se o tronco
Quando a defesa ainda não promete nada, o produto diz: pendure aqui uma fila humana. O sistema torna-se «o modelo faz o rascunho, a pessoa decide».
- O teto é a velocidade de uma pessoa e o turno dela, não a máquina.
- A pessoa salta entre sistemas e lê prosa sem estrutura. A fadiga em si causa erros.
- A computação que você comprou acaba como uma máquina de rascunhos à frente de quem tecla. Isso é pseudoautomação.
Escrever a confiança no ramo
Não se podia escrever o modelo direto num if, porque «tenho 90 por cento de certeza» era em si pouco fiável e difícil de comparar. O que Jev devolve é uma probabilidade sobre uma pergunta fechada. Alta o bastante para a política, o código corre. Espalhada, vai para a fila da margem.
request
│
▼
Jev
├─ probability clears the threshold ─► code runs
└─ probability does not ─► a person at the edge
A probabilidade é recolhida primeiro
Não escreve o porquê. Comprime o sentido sobre as classes ou os degraus que você definiu, e devolve números. O lado esquerdo do muro absorve a confusão da linguagem natural. O lado direito é só um número que se pode testar.
O limiar é a rota
O limiar é política, não uma definição de fábrica do modelo. Uma ação de alto privilégio, como um reembolso, pode exigir que a probabilidade de «sim» ultrapasse 0.99. Acima disso, corre como um ramo duro. Abaixo disso, não force a automação. 0.99 aqui é um exemplo. Cada negócio escreve o seu.
A pessoa fica na margem
A pessoa já não está em cada nó do tronco. A fila humana deixa de ser o caminho obrigatório e passa a ser uma interceção de exceções. Leva a minoria desfocada, não cada pedido.
Um pedido, duas maneiras de o escrever
Gerar primeiro, analisar depois
def handle_ticket_legacy(ticket_text: str):
prompt = f"""
Read the ticket and return JSON:
{{"intent": "REFUND"|"COMPLAINT"|"OTHER", "urgency": "HIGH"|"LOW"}}
Ticket: {ticket_text}
"""
raw = chat_model.complete(prompt)
try:
data = json.loads(raw)
except json.JSONDecodeError:
return push_to_human(ticket_text, reason="parse")
if data.get("intent") == "REFUND" and data.get("urgency") == "HIGH":
# no trustworthy confidence, so the privileged action still will not run itself
return push_to_human(ticket_text, data)
return default_route(data)
A análise tem de tratar campos em falta e formato partido. Mesmo quando a análise sucede, você não sabe quão estável ela era, e o ramo de alto risco continua a voltar a uma pessoa.
A distribuição entra no ramo
def handle_ticket_jev(ticket_text: str):
refund = jev.noul(state=ticket_text, statement="this is a high-risk request that should enter refund review automatically")
kind = jev.choice(
state=ticket_text,
options=["HIGH_RISK_REFUND", "NORMAL_INQUIRY", "SPAM"],
)
if kind.top == "HIGH_RISK_REFUND" and refund.p_yes >= 0.99:
return execute_refund_review(ticket_text)
if kind.top == "NORMAL_INQUIRY" and kind.probability >= 0.95:
return auto_reply(ticket_text)
return push_to_edge_human(ticket_text, confidence=kind.probability)
Isto não concede ao modelo um direito de reembolsar. Uma ação de alto privilégio continua a ser uma função que o código chama acima de um limiar. As verificações contabilísticas dentro dessa função não perdem uma linha. O modelo só fornece a probabilidade de uma pergunta fechada.
Lado a lado
| Dimensão | Gerar primeiro, pessoa no ciclo | Distribuição escrita no ramo |
|---|---|---|
| Fluxo de controlo | try-catch, nova tentativa, grades de proteção | Um limiar e um ramo ordinário |
| Latência | Uma geração, muitas vezes acima de um segundo; esperar por uma pessoa são horas | Uma chamada fechada anda pelos 70–500 ms; uma pessoa só acontece na margem |
| Onde a pessoa se senta | Muitas vezes no tronco | Só quando a probabilidade não chega |
| Estado | Um troço de texto no meio | Passa, ou não passa |
O determinismo volta ao if
O software quer um ramo que se possa testar. Depois de um modelo de chat entrar no tronco, uma frase que pode mudar de forma senta-se à frente do if. Uma pergunta fechada deixa essa mudança de forma à esquerda do muro. O lado direito continua a ser if e else.
Uma pessoa é o maior pedaço de fricção quando cada pedido espera um clique. Tire-a do tronco, e o tráfego que ultrapassa o limiar já não para para confirmação. Quando a probabilidade cai, o sistema desliza para a margem no local. Não bloqueia a cadeia inteira.
Uma pessoa no meio do ciclo foi o compromisso pago cedo. A cablagem madura não usa uma pessoa como peça. Usa uma pessoa para olhar os poucos casos que ainda estão espalhados, e para tratar as exceções extremas. A articulação fica com a inclinação. A pessoa fica com o troço que ainda não foi escrito na política.