Freek Van der Herten explica una canalización de clasificación creada para There There, un helpdesk que se lanzó el día anterior. El artículo está fechado el 18 de septiembre de 2026. Taylor había anunciado el soporte de Jev en la rama 1.x de Laravel AI SDK. El equipo empezó a utilizarlo ese mismo día para detectar spam.

classification.php
<?php

use Laravel\Ai\Classification;
use Laravel\Ai\Classification\Boolean;

$result = Classification::of('I have asked three times now. Can I please talk to a real person?')
    ->question('urgent', new Boolean('Does this request need an immediate response?'))
    ->classify();

$result['urgent']->probability; // 0.94
$result['urgent']->isTrue(threshold: 0.8); // true

Jev es un sistema de TypeSafe que recibe un estado expresado en lenguaje natural y una pregunta, y devuelve un valor numérico. TypeSafe denomina System One a estos modelos. Sus probabilidades están calibradas con resultados reales, por lo que un valor de 0,9 debería acertar aproximadamente nueve de cada diez veces en un conjunto de casos. La aplicación conserva la lógica de decisión en PHP. Jev ofrece preguntas Noul de sí o no, opciones Choice y escalas Score. Una pregunta booleana devuelve una probabilidad. Choice añade la probabilidad de cada opción y una medida de confianza. Score permite valores intermedios, como 1,4. El estado puede ser una cadena o un array con nombres para el mensaje, los datos del pedido y la política aplicable.

El correo que llega a There There incluye respuestas de ausencia, rebotes, confirmaciones de suscripción e informes DMARC. Los controles de cabecera se ejecutan primero. Entre las señales están `Auto-Submitted`, una ruta de retorno vacía y el remitente `mailer-daemon`. El sistema anterior usaba prefijos de asunto para respuestas automáticas en 15 idiomas, nueve prefijos adicionales para bounces y reglas para evitar falsos positivos cuando un cliente preguntaba por esos mensajes. Cada patrón que escapaba a la lista exigía añadir otra cadena.

Los casos que las cabeceras dejan abiertos pasan ahora a Jev. El enum `InboundJudgement` contiene `IsAutoResponse`, `IsBounce` e `IsSpam`, y cada caso define su propia pregunta y su umbral. Las respuestas automáticas usan 0,75. Bounces y spam usan 0,9. Las explicaciones de los resultados true y false cubren mensajes generados por sistemas, textos escritos por personas con una plantilla de formulario y comunicaciones comerciales o de phishing no solicitadas. Esas explicaciones son opcionales, aunque el artículo recomienda incluirlas. Una cuarta comprobación se incorpora como otro caso del enum.

Las preguntas pendientes se envían en una sola petición y se resuelven en paralelo con el mismo estado. La acción incluye el asunto, el nombre y el correo del remitente, el correo del contacto y el cuerpo limitado a 10.000 caracteres mediante `Str::limit`. El tiempo máximo es de 10 segundos. Si la clasificación falla, el código registra el identificador del mensaje y la excepción y mantiene activo el procesamiento del correo. Las respuestas originales se guardan junto a los veredictos booleanos. Así se pueden cambiar los umbrales y revisar sus efectos. Una condición de workflow como `Is spam` consulta una columna almacenada y no vuelve a llamar a Jev. El proveedor se configura en `config/ai.php` mediante `TYPESAFE_API_KEY`.

La prueba descrita tarda 639 milisegundos con tres preguntas. El procesamiento paralelo alcanza unas 48 clasificaciones por segundo. El equipo no hizo ajustes de rendimiento. Jev cobra $0.042 por un millón de tokens de entrada y no cobra los tokens de salida. En There There, el coste queda en unos cuatro centésimos de centavo por correo, aproximadamente 36 centavos al mes. El autor planea aplicar Jev a más funciones de There There y a otros productos. La documentación de TypeSafe, Laravel AI SDK y la propia aplicación completan las referencias del artículo.