> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://documentation.celestory.io/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Le bloc Requête IA : ce qu'il ne vous dira pas

# 🕵️ Le bloc Requête IA : ce qu'il ne vous dira pas

Le bloc **Requête IA texte** envoie une question à un modèle de langage et ressort sa réponse dans le scénario. Il a une particularité que rien, dans l'interface, ne signale : il ne prévient jamais quand quelque chose s'est mal passé. Ce guide décrit ce comportement tel qu'il est réellement, pas tel qu'on l'imagine.

${frame}[Vidéo : le bloc Requête IA texte](https://celestory-docs-videos.netlify.app/fr/panorama-ia/requete-ia-texte.html)

## 🧩 Ce que le bloc expose

-   **prompt** : le message envoyé au modèle. Vide si rien n'est branché.
-   **prompt système** : la consigne de rôle. Vide si rien n'est branché.
-   **modèle** : deux choix seulement, dans une liste fermée — `mistralai/ministral-3b-2512` (le défaut) et `google/gemini-2.5-flash`. Aucune saisie libre.
-   **température** : un nombre. **1 par défaut.**
-   **résultat** : la réponse, en texte. Chaîne vide par défaut.

Aucun réglage de longueur de réponse n'existe. La seule façon de la borner est de l'écrire dans la consigne (« 120 mots au maximum »).

**Aucune clé d'API ne vit dans votre projet.** L'appel part de l'application vers les serveurs Celestory, qui portent eux-mêmes la facturation auprès du fournisseur du modèle. Bonne nouvelle pour la sécurité — et une raison de lire la section sur le quota, plus bas.

## 🔇 Piège n°1 — aucune sortie « si erreur »

Contrairement au bloc Baserow, qui propose un chemin dédié à l'échec, le bloc Requête IA n'en a aucun. Si l'appel échoue — réseau coupé, serveur injoignable — l'erreur part dans la console du navigateur, invisible pour qui n'a pas les outils de développement ouverts, et le scénario **continue normalement**, avec un **résultat vide**.

🔺 Il n'existe aucun moyen de brancher un comportement de repli sur l'échec, puisqu'aucune sortie ne le signale. Si votre scénario écrit `résultat` en base ou l'affiche tel quel, une panne réseau devient silencieusement une case vide.

**Ce qu'il faut faire :** ne jamais faire suivre `résultat` directement vers une écriture en base ou vers un écran. Toujours interposer une condition qui teste si le texte est vide, et décider ce qui s'affiche dans ce cas.

## 🎭 Piège n°2 — une erreur serveur peut devenir « la réponse »

C'est le plus sérieux des deux. Le bloc ne vérifie jamais que la requête a réussi : il lit le corps de la réponse comme du texte, que le serveur ait répondu correctement ou non. Un quota mensuel dépassé, un modèle temporairement indisponible ou une entrée refusée produisent tous, côté serveur, un message technique — pas une phrase — et ce message **atterrit dans `résultat` exactement comme une vraie réponse du modèle**.

🔺 Rien, dans l'interface ni dans les données, ne distingue une vraie réponse d'un message d'erreur recopié tel quel. Si `résultat` part vers une colonne Baserow ou un écran, ce message peut s'afficher à un utilisateur, ou s'écrire en base, **comme s'il s'agissait de la réponse du modèle**.

**Ce qu'il faut faire :** valider la forme de `résultat` avant de s'en servir. Une vraie réponse ne ressemble pas à un message technique. Mieux : demander au modèle un format reconnaissable dans la consigne, et rejeter ce qui n'y ressemble pas.

## 🌡️ Piège n°3 — la température par défaut est 1

**Le réglage par défaut du bloc est 1**, la valeur la plus haute couramment utilisée. À température 1, la réponse à la **même question** change d'un appel à l'autre. Pour un usage professionnel — résumer, classer, répondre à partir de données — c'est rarement ce qu'on veut : difficile de justifier pourquoi deux demandes identiques ont reçu deux réponses différentes.

| Usage | Température conseillée |
| --- | --- |
| Résumer, classer, extraire, répondre sur des données | 0,1 à 0,3 |
| Reformuler, adoucir un message | 0,4 à 0,6 |
| Écrire une variante, proposer des idées | 0,8 à 1 |

🔺 Ne réglez jamais la température à **exactement 0**. Le serveur traite un 0 comme « rien n'a été réglé » et **le remplace silencieusement par 0,5** — l'inverse de l'effet recherché. Pour un usage réellement déterministe, utilisez une valeur proche de zéro mais pas nulle, par exemple 0,1.

## 🔒 Un quatrième piège, hérité : le silence sur l'abonnement

Le bloc Requête IA fait partie des fonctionnalités réservées à l'abonnement **Business**, comme le bloc HTML5, la **Requête HTTP** ou le connecteur **MCP**. Sur un compte dont l'abonnement est expiré, il **ne s'exécute pas — sans message, sans erreur, sans rien dans `résultat`**. Si un bloc Requête IA « ne fait rien », vérifiez la date de fin d'abonnement avant de soupçonner la consigne.

## ⭐ L'étoile ne veut pas dire ce qu'on croit

Dans le menu d'ajout de bloc, le bloc Requête IA porte une étoile ⭐ avec l'étiquette **ENTREPRISE**. Elle n'indique pas une consommation de crédits IA : c'est le même badge que porte n'importe quel bloc réservé à l'offre Entreprise — HTML5, Requête HTTP, MCP, Saisie Visuelle. L'étoile signale un **niveau d'abonnement**, pas un coût.

L'usage du bloc est décompté d'un quota mensuel de générations IA attaché à votre compte — le même quota que celui de l'assistant IA du graphe. Ce n'est pas le système de crédits de l'atelier Génération IA (images, vidéos, audio) : ce sont deux compteurs distincts, et le bloc Requête IA n'apparaît nulle part dans le second.

## ✅ Ce que l'usage réel a montré

Ces pratiques viennent de projets relus après coup, pas d'une intuition :

-   **Interdisez explicitement au modèle de combler un manque.** La phrase qui fonctionne : *« si l'information ne figure pas dans les données fournies, réponds que tu ne la trouves pas »*. Sans elle, un modèle invente une réponse plausible.
-   **Faites-lui citer les identifiants** sur lesquels il s'appuie. Une réponse qui cite ses sources se vérifie en un coup d'œil, et l'exercice décourage l'invention.
-   **Réglez la température bas** pour tout usage factuel — voir le piège n°3 ci-dessus.
-   **Montrez ce qui est transmis au modèle.** Un bloc dépliable « ce que je transmets au modèle », avant l'envoi, répond d'avance à la question que pose tout regard extérieur.
-   **Ne laissez jamais un modèle produire un montant ou un calcul** qu'une règle peut produire. C'est la faute la plus grave qu'une application de ce type puisse commettre : le modèle rédige, résume, explique — il ne décide pas.

## 🧠 Choisir le modèle

Les deux modèles disponibles ne visent pas le même usage. `mistralai/ministral-3b-2512` — le défaut — est petit et rapide : il convient pour résumer en une phrase, reformuler, étiqueter. `google/gemini-2.5-flash` est le choix recommandé dès qu'il faut suivre une consigne stricte, raisonner sur un contexte fourni ou refuser de répondre plutôt que d'inventer. Réglez le point **modèle** explicitement — ne laissez pas le défaut décider pour vous.

→ Prochaine étape : dans un scénario existant, repérez chaque bloc Requête IA et vérifiez qu'une condition teste `résultat` avant qu'il ne parte vers un écran ou une écriture en base.