€0.00 — free as in speechtonight's forecast: clear skies over production Cache: warm · Deploys: fair, 0% rollbacks expectedset by moonlight, shipped before dawn · deploy freely Page A2

❦The Daily Commit❦ ☾The Nightly Build☽

Dev news, typeset daily — PHP · AI · The Wider Stack

The developer's evening paper — PHP · AI · The Wider Stack

mercredi 30 septembre 2026 Vol. I — No. 679 · Édition du matinÉdition du soir EN DE FR ES

PHP · Versions

Laravel AI SDK 1.0 sépare outils approuvés et données consenties

Une analyse de Laravel AI SDK 1.0 distingue l’autorisation d’une action du consentement sur les données.

sélectionné par Sönke

Le contrat Approvable suspend un appel d’outil pour permettre une validation, un refus ou une modification des arguments, y compris dans une file. Chez Miraviso, le consentement précède Gemini via Vertex AI, expire avec la session du fauteuil, est contrôlé pendant le traitement et interdit la conservation ou la journalisation des images. Le middleware par étape maîtrise aussi les coûts.

Laravel AI SDK 1.0 est sorti le 23 septembre. Le contrat Approvable peut suspendre l’exécution d’un agent quand le modèle demande l’appel d’un outil. Une personne peut valider l’appel, le refuser avec une raison transmise au modèle ou modifier ses arguments. Un outil adopte le contrat avec le trait InteractsWithApprovals. Le mécanisme fonctionne avec prompt, stream, queue et broadcast. L’état suspendu peut être conservé, ce qui permet de répondre jusqu’à 20 minutes plus tard depuis une autre session HTTP.

DeleteFile.php
use Laravel\Ai\Concerns\InteractsWithApprovals;
use Laravel\Ai\Contracts\Approvable;
use Laravel\Ai\Contracts\Tool;

class DeleteFile implements Approvable, Tool
{
    use InteractsWithApprovals;
}

Ce dispositif contrôle une action. Il ne décide pas si les données reçues par l’agent peuvent être traitées. Miraviso, un miroir virtuel destiné aux salons de coiffure, sépare donc deux parcours de confidentialité.

L’essai de couleur s’exécute sur la tablette. MediaPipe segmente l’image sur l’appareil, puis la composition de la couleur se fait localement. Aucune image ne quitte le matériel. L’aperçu de coupe nécessite un modèle génératif. Il passe par Gemini via Vertex AI dans une région de l’UE, demande le consentement explicite du client et n’écrit jamais le résultat sur disque. Une validation dans la boucle de l’agent ferait décider l’opérateur du salon au sujet des données du client.

Miraviso conserve le consentement côté serveur, dans l’état de la session du fauteuil. Le client doit donner son accord avant la création d’une requête générative. Le point d’accès FastAPI rejette la requête avec HTTP 403 avant tout envoi en amont lorsque `session.consent.generative_preview` est absent. Le client suivant repart sans consentement hérité, car cet état expire avec la session. Le contrôle est répété après chaque `await` susceptible de durer, afin qu’un retrait du consentement prenne effet pendant le traitement.

Éviter toute conservation des images exige davantage qu’un choix d’architecture. Les fichiers temporaires, les caches du client HTTP et les journaux ne doivent pas contenir le corps de la requête. Chaque bibliothèque manipulant ces octets doit être auditée. Les données sensibles arrivent souvent dans les journaux via des requêtes échouées ou des traces APM.

Le SDK reste adapté aux opérations de back-office Laravel. Un agent peut proposer la fusion de fiches clients en double, des changements de rendez-vous ou des notes de crédit. Une personne peut corriger les arguments choisis avant l’exécution. La version 1.0 ajoute aussi un middleware par étape, exécuté à chaque étape de génération. `PendingStep` permet de changer de modèle, de retirer des outils ou de réduire le budget de tokens au fil de la conversation. Un outil coûteux peut être retiré après son premier usage avec une seule ligne.

Lire la source originale (en anglais) ↗

Évaluer cet article : 0

Tribune des lecteurs

Pas encore de contributions — lance le débat.

← The Daily CommitThe Nightly Build — Page A1