L'intelligence artificielle
À l'issue de ce chapitre
À l'issue de ce chapitre, vous saurez : - distinguer les niveaux d'assistance et ce que chacun engage ; - vérifier les prérequis avant d'ouvrir l'assistance aux équipes ; - configurer un agent, ses instructions, ses compétences et ses sources ; - reconnaître les cas où l'assistant décide et agit sans relecture.
Odoo 20 intègre l'assistance par intelligence artificielle à plusieurs endroits du logiciel. Ce ne sont pas des variantes d'une même fonction : elles ne s'utilisent pas au même moment, et surtout elles n'engagent pas la même confiance.
Les quatre niveaux d'assistance
| Niveau | Ce qu'il fait |
|---|---|
| Assistance rédactionnelle | Rédige ou reformule un texte à la demande, dans un champ ou un message. L'utilisateur relit et valide avant tout enregistrement. Voir la section 4.3.2. |
| Champ rempli par l'assistant | Champ ordinaire dont la valeur est calculée par l'assistant à partir des autres données de la fiche, sur toute une table. Ce n'est pas un type de champ à part : c'est une case à cocher dans ses propriétés, avec Studio. La procédure figure au chapitre 9. |
| Agent | Interlocuteur configuré pour un domaine, doté de ses instructions, de ses compétences et de ses sources. Il répond dans une conversation, et il peut aussi se déclencher seul. |
| Action serveur IA | Décide quels traitements appeler sur un enregistrement, et les exécute. |
Point d'attention
La ligne de partage n'est plus entre l'agent et l'action serveur. Un agent de la version 20 porte des déclencheurs : il peut s'exécuter à heure fixe ou sur événement, sans que personne ne lise sa réponse. Un agent sans déclencheur répond et attend ; un agent avec déclencheur agit.
C'est cette distinction, et non le niveau lui-même, qui décide des précautions à prendre.
Les prérequis
Deux conditions, à vérifier dans cet ordre, avant même de parler de configuration.
L'extension PostgreSQL
Les agents indexent leurs sources pour pouvoir s'y référer. Cette indexation repose sur l'extension
PostgreSQL vector, que le serveur doit fournir. Odoo la contrôle avant d'installer, et
l'active lui-même si elle est disponible : il n'y a donc rien à faire à la main quand le serveur la
fournit. En revanche, si elle n'est pas fournie, le socle d'assistance refuse purement et simplement
de s'installer.
Note
Le point ne se pose pas sur Odoo Online, où l'extension est fournie. Sur odoo.sh et en hébergement sur site, c'est la question à poser à l'hébergeur ou à l'administrateur système avant toute autre. Sans l'extension, aucune fonction d'assistance n'est disponible : ni les agents, ni la rédaction assistée, ni les champs IA. Ce n'est pas une fonctionnalité amputée, c'est un module qui ne s'installe pas.
Le traitement par le service Odoo
Odoo n'héberge pas de modèle : il appelle un service extérieur et lui transmet les éléments nécessaires à la demande. Cet appel passe par le service d'achats intégrés d'Odoo, qui facture à la consommation.
Point d'attention
Deux conséquences à trancher avant d'ouvrir l'assistance aux équipes.
Les données envoyées dans une demande sortent de votre base et transitent chez un tiers. Le point mérite un arbitrage explicite sur des documents nominatifs ou couverts par un engagement de confidentialité.
Et aucun réglage ne permet de brancher votre propre compte chez un fournisseur de modèle : le passage par le service Odoo est le seul chemin. Vous ne choisissez donc ni le fournisseur, ni la région de traitement.
L'application
- Ouvrir Apps.
- Rechercher
IA. - Cliquer sur Activer.
Un menu IA apparaît, portant les entrées Agents et Configuration.
Note
L'assistance rédactionnelle, elle, s'utilise sans rien installer, dès lors que l'extension PostgreSQL est présente. Une base peut donc proposer la rédaction assistée sans qu'aucun menu IA ne soit visible.
Note
L'installation entraîne celle du serveur d'exposition, qui arrive tout seul et sans écran d'annonce. Il permet à un assistant extérieur d'interroger vos données Odoo, à condition qu'on l'y autorise : rien n'est exposé et personne n'est connecté à l'installation. Le sujet est traité à la section 20.5.1.
L'écran des agents
IA › Agents n'ouvre pas une liste d'enregistrements mais une conversation, organisée en trois volets.
| Volet | Contenu |
|---|---|
| À gauche | L'historique des conversations, avec les filtres Tous et Unread. |
| Au centre | La conversation en cours et le champ de saisie du message. |
| À droite | La configuration de l'agent, répartie en quatre onglets. |
Le volet de droite est le cœur du paramétrage. Il n'y a plus de formulaire d'agent distinct : la configuration se fait à côté de la conversation, et son effet s'éprouve immédiatement dans le volet central.
Configurer un agent
Les quatre onglets du volet de droite, dans l'ordre où ils se remplissent.
Instructions
La consigne permanente de l'agent. Elle cadre son rôle, son ton et sa façon de procéder. C'est le texte le plus structurant de la configuration : un agent bien instruit refuse les demandes hors de son domaine plutôt que d'y répondre approximativement.
Astuce
Écrivez la consigne comme une fiche de poste : ce que l'agent fait, ce qu'il ne fait pas, ce qu'il doit demander avant d'agir. Les consignes vagues produisent des réponses vagues.
Compétences
Une compétence regroupe des instructions et les outils qui vont avec. Elle s'ajoute à l'agent par Ajouter, et elle lui donne une capacité précise plutôt qu'une connaissance.
La liste complète se gère par IA › Configuration › Compétences. Chaque compétence porte un Titre, des Instructions et des Outils IA.
Connaissances
Les sources sur lesquelles l'agent s'appuie pour répondre. Elles s'ajoutent par Ajouter, et elles sont indexées pour être retrouvées au fil de la conversation.
Une case Restrict answers to Sources restreint l'agent à ces seules sources. Cochée, elle l'empêche de répondre à partir de ses connaissances générales.
Astuce
C'est le réglage à cocher pour un agent qui répond à des questions de procédure interne. Sans lui, l'agent complètera les lacunes de vos sources par des généralités plausibles, et rien ne distinguera les deux dans sa réponse.
Triggers
Les déclencheurs qui font tourner l'agent sans intervention : à heure fixe, ou lorsqu'un événement survient sur un enregistrement.
Note
Cet onglet porte son intitulé anglais à l'écran, la traduction française n'étant pas publiée à ce jour.
Point d'attention
Un agent déclenché s'exécute sans qu'aucun humain ne lise sa réponse. Toutes les précautions du niveau le plus engageant s'appliquent donc dès qu'un déclencheur est posé : les règles métier, les plafonds et les contrôles de cohérence doivent être portés par les outils que l'agent appelle, pas supposés acquis.
Posez les déclencheurs en dernier, une fois les instructions, les compétences et les sources éprouvées en conversation.
Les outils
Un outil est un traitement que l'agent peut appeler. La version 20 en livre un catalogue fourni, consultable par IA › Configuration › Outils.
| Colonne | Ce qu'elle indique |
|---|---|
| Nom | L'intitulé de l'outil. |
| Modèle | La table sur laquelle il opère. |
| Type | La nature du traitement. |
| Utilisation | Le contexte dans lequel il est proposé. |
| Disponible en MCP | S'il est exposé aux assistants extérieurs. Voir ci-dessous. |
| Outil d'accès en lecture | S'il se contente de lire, ou s'il écrit. |
L'exposition aux assistants extérieurs
La colonne Disponible en MCP ouvre un outil aux assistants extérieurs à Odoo : un assistant installé sur le poste d'un utilisateur peut alors interroger votre base par cet outil.
Trois verrous indépendants commandent cette ouverture, et les trois sont fermés à l'installation.
| Verrou | État initial et où il se règle |
|---|---|
| L'outil | Disponible en MCP est décoché sur chaque outil du catalogue. C'est une case à cocher, outil par outil, dans IA › Configuration › Outils. |
| La clé | Aucun assistant ne se connecte sans une clé d'accès de portée MCP, que l'utilisateur génère lui-même depuis ses préférences. Elle lui donne l'URL du serveur et la clé à recopier dans l'assistant. |
| L'autorisation | La seconde voie de connexion passe par une autorisation déléguée, réservée aux assistants dont l'adresse figure dans une liste blanche : Paramètres › Paramètres généraux, section MCP OAuth. |
Point d'attention
Dans cette même section, l'option Allow Dynamic Client Registration (DCR) lève le verrou de la liste blanche : n'importe quel assistant peut alors s'enregistrer seul et demander un accès. Elle est désactivée par défaut, et il n'y a pas de raison de l'activer sur une base de production.
Un assistant connecté agit avec les droits de l'utilisateur dont il porte la clé. Il voit donc ce que cet utilisateur voit, et il écrit ce que cet utilisateur peut écrire. La colonne Outil d'accès en lecture est le tri à faire avant de cocher : un outil qui lit ne peut pas abîmer vos données, un outil qui écrit le peut.
Les instructions par défaut
IA › Configuration › Prompts par défaut rassemble les consignes appliquées aux fonctions d'assistance rédactionnelle, en dehors de toute conversation. Chaque entrée porte un Nom, une Action et un Agent.
C'est là que se règle le comportement de l'assistant quand un utilisateur demande de reformuler un texte ou de résumer un message : l'instruction s'applique sans qu'il ait à la répéter.
L'automatisation assistée
Au-delà de la conversation, l'assistance se branche sur les actions de serveur, donc sur tout ce qui déclenche une action : un bouton, une règle d'automatisation, une action planifiée. Deux formes distinctes existent, et elles n'engagent pas la même chose.
L'action de décision
La première confie la décision à l'assistant : on lui donne une consigne et une liste d'outils, et il choisit lesquels appeler sur l'enregistrement. Elle ne propose pas, elle applique.
- Ouvrir Paramètres › Technique › Actions › Actions de serveur, puis Nouveau.
- Nommer l'action et renseigner le Modèle sur lequel elle porte.
- Choisir le Type IA parmi les vignettes qui apparaissent alors.
- Dans l'onglet Pop-up, renseigner les Outils que l'assistant peut appeler, puis les Instructions qui décrivent ce qu'il doit faire.
Note
Les vignettes de type ne s'affichent qu'une fois le Modèle renseigné. Sur une action neuve, l'écran ne montre d'abord que le nom et le modèle : c'est normal, il n'y a rien à corriger.
L'onglet qui porte la consigne s'intitule Pop-up à l'écran en français, alors qu'il contient bien les instructions de l'assistant et rien d'autre.
Point d'attention
Les Instructions sont le seul fondement de la décision. Aucun garde-fou implicite n'existe : les règles métier, les plafonds, les contrôles de cohérence et les vérifications de droits doivent être écrits dans les outils appelés, pas supposés acquis.
Les restrictions par groupe posées sur un outil ne s'appliquent pas quand l'assistant l'appelle. L'écran signale le cas par un avertissement à côté des Outils dès qu'un outil restreint figure dans la liste.
Enfin, une action qui échoue partiellement peut se terminer normalement, l'erreur étant renvoyée à l'assistant sous forme de texte. Un contrôle en aval reste nécessaire.
Le champ mis à jour par l'assistant
La seconde forme est plus étroite, et sensiblement moins engageante : l'assistant ne décide de rien, il calcule la valeur d'un champ désigné.
- Sur une action de serveur, choisir le Type Mettre à jour l'enregistrement.
- Désigner le champ à écrire.
- Choisir Mettre à jour avec l'IA au lieu d'une valeur fixe.
- Renseigner la consigne qui décrit la valeur attendue.
Le périmètre est borné : un champ, un enregistrement, une consigne. C'est la forme à préférer quand le besoin se ramène à remplir une case, par exemple qualifier un ticket ou résumer un échange.
Créer un outil
Le catalogue livré couvre les cas courants. Un traitement propre à votre organisation s'ajoute comme une action de serveur ordinaire, que l'on rend disponible à l'assistance depuis son onglet Utilisation : cocher Utiliser dans l'IA, puis renseigner le Nom de l'outil IA et la Description de l'outil IA.
Astuce
La description est lue par l'assistant, pas par vos utilisateurs. C'est elle qui décide s'il appelle l'outil au bon moment : écrivez-la du point de vue de la décision, en disant à quoi l'outil sert et quand il convient, pas ce qu'il fait techniquement.
Ce que l'assistance ne fait pas
Point d'attention
Aucune des fonctions décrites ici ne vérifie ce qu'elle produit. Un texte rédigé, une valeur calculée, une décision prise sont des propositions plausibles, pas des résultats contrôlés. Le contrôle reste à faire : par un humain sur les niveaux qui le permettent, par un contrôle en aval sur ceux qui ne le permettent pas.