Symfony AI pour un agent Sylius : ce qu'il permet
Oui, Symfony AI permet de construire un agent pour Sylius : il fournit une interface commune aux fournisseurs de modèles, une bibliothèque pour les agents et leurs outils, des connecteurs vers des bases vectorielles et un bundle pour les serveurs MCP. L'éditeur de Sylius s'en sert déjà pour son plugin Ask AI. Mais au 12 novembre 2026, Symfony AI est en version 1.0.0-BETA1, ses composants se déclarent expérimentaux, et la rétrocompatibilité ne sera garantie qu'à la 1.0 finale.
Je suis développeur Sylius et Symfony indépendant. Sylius étant une application Symfony, Symfony AI est la brique la plus naturelle pour y loger un agent. Je l'utilise, avec les précautions qu'impose une bêta. Voici ce qu'il contient, ce qu'il change pour un projet de boutique, et comment je limite le risque. La démarche complète est sur la page agents IA pour Sylius.
Que contient Symfony AI ?
Le dépôt symfony/ai regroupe quatre composants et deux bundles. Voici ceux qui comptent pour un agent de boutique.
| Brique | À quoi elle sert | Usage sur Sylius |
|---|---|---|
| Platform | Interface commune aux fournisseurs de modèles, avec des passerelles pour Anthropic, OpenAI, Mistral, Gemini, Azure, Bedrock, Ollama, OVH, Scaleway et d'autres | Changer de fournisseur par configuration |
| Agent | Bibliothèque pour construire des applications agentiques : outils, enchaînement des appels, mémoire de conversation (Doctrine, Redis, session) | Décrire les outils qui lisent commandes, expéditions, clients |
| Store | Abstraction de bases vectorielles, avec 25 passerelles dont PostgreSQL pgvector, MariaDB, Meilisearch, Elasticsearch, Redis | Retrouver le bon passage de vos CGV ou de votre FAQ |
| AI Bundle | Intégration dans une application Symfony | Configuration et injection dans Sylius |
| MCP Bundle | Faire tourner un serveur ou un client MCP, en HTTP ou en STDIO | Exposer ou consommer des outils MCP |
Le composant Store mérite une mention : c'est lui qui sert la couche documents, celle où l'agent retrouve vos règles de retour ou vos délais de livraison au lieu de les inventer. Si votre boutique tourne déjà sur PostgreSQL, pgvector évite d'ajouter un service de plus.
Où en est la stabilité ?
Le billet d'annonce du 26 octobre 2026 présente la 1.0.0-BETA1 comme « the first pre-release on the road to 1.0 ». La promesse de rétrocompatibilité ne commencera qu'à la 1.0.0 finale, sans date annoncée. Les pages Packagist de Platform, Agent, Store et du MCP Bundle les disent expérimentaux. L'installation se fait d'ailleurs avec une contrainte explicite sur la bêta.
Côté Sylius, la situation est mixte. Le plugin Ask AI exige les composants Agent, Bundle et Platform en bêta. Les deux plugins MCP, eux, reposent sur symfony/mcp-bundle en version 0.13, et pas encore sur la 1.0 bêta. Une montée de version de l'un peut donc précéder celle de l'autre, et c'est à surveiller lors des mises à jour.
Et si un agent le faisait pour vous ?
Laissez votre numéro : je vous rappelle sous 24 heures ouvrées et je regarde avec vous ce qu'un agent peut prendre en charge dans votre boutique, dans votre budget.
Comment je construis un agent Sylius avec Symfony AI ?
Je m'appuie sur Platform pour ne pas lier l'agent à un fournisseur, et sur Agent pour décrire ses outils. Chaque outil est une classe PHP étroite : « lire les commandes de ce client », « lire l'expédition », « préparer un brouillon », « créer une action logistique en attente ». Le client est identifié par le code, pas par le modèle. L'agent ne reçoit donc que les données du client concerné.
C'est la logique de l'agent de service client que je construis pour une boutique sous Sylius 2. Il lit la boîte de contact, trie sans IA les notifications et les rebonds, retrouve le client par son adresse e-mail exacte, applique les règles écrites du commerçant en citant la règle, et prépare un brouillon dans Gmail plus une action logistique en attente de validation. Il n'envoie jamais de mail, ne rembourse pas et ne change pas ses propres règles : il n'a pas d'outil pour le faire. Ce que l'agent ne fait jamais seul, quelle que soit la bibliothèque : envoyer, rembourser, valider.
Le changement de fournisseur devient alors un réglage. C'est utile pour le routeur de modèles, qui envoie une tâche simple à un modèle sobre et une tâche délicate à un modèle plus capable.
Comment limiter le risque d'une bêta ?
Trois habitudes. D'abord, je fige les versions exactes dans Composer et je ne monte de version qu'après avoir lu les notes de changement. Ensuite, j'isole Symfony AI derrière quelques classes du projet : si une interface change avant la 1.0, une seule partie du code est touchée. Enfin, je rejoue un jeu de cas réels anonymisés avant chaque mise à jour, comme avant chaque changement de modèle. C'est la couche tests et traces, et c'est elle qui rend une bêta utilisable en sécurité.
Un hackathon IA et MCP court du 26 octobre au 22 novembre 2026, et le SDK PHP officiel de MCP se dirige lui aussi vers sa 1.0. L'écosystème bouge vite : c'est une bonne nouvelle pour les boutiques Symfony, à condition de ne pas construire sur du sable.
Symfony AI, plugin officiel ou autre chose ?
Symfony AI est une boîte à outils, pas un agent. Si votre besoin est un assistant dans l'administration et que vous êtes en Sylius 2.2, Ask AI, construit sur Symfony AI, peut suffire ; je l'examine dans l'article sur Ask AI. Pour un agent métier, Symfony AI est la fondation que je privilégie, mais pas une obligation. Je compare les options dans l'article plugin ou sur mesure, et les voies d'accès aux données dans l'article API, MCP ou code. Pour la recherche dans un catalogue, lisez aussi l'article sur la recherche sémantique.
Pour savoir si Symfony AI convient à votre projet, je propose un diagnostic IA offert : je vous rappelle sous 24 heures ouvrées, je regarde votre version de Sylius et votre besoin, et je vous propose la solution qui rentre dans votre budget.
