The Daily Commit · Edición de sección Portada PHP AI Dev EN DE FR ES

The Php Times

Lecturas — Ecosistema

Jev aporta a Laravel una clasificación de correo calibrada


Freek Van der Herten explica cómo la rama 1.x de Laravel AI SDK integra Jev, de TypeSafe, para clasificar correos con probabilidades calibradas.

FREEK.DEV, 18 de septiembre de 2026 seleccionado por Giselle

En There There, su ejemplo combina comprobaciones de cabeceras con tres preguntas booleanas sobre respuestas automáticas, bounces y spam. El artículo cubre umbrales, errores, almacenamiento, rendimiento y costes en una implementación Laravel.

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.

Leer la fuente original (en inglés) ↗

Valora este artículo: 0

Tribuna de lectores

Aún no hay aportaciones — abre el debate.

← Ecosistema — Page B1

"All the Code That's Fit to Ship" · The Daily Commit · Edición de pantalla · Información legal · Política de privacidad