> ## Documentation Index
> Fetch the complete documentation index at: https://docs.famulor.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Présentation du générateur de Flow

> Transformez un appel en un graphe d'agents, d'outils et de décisions

Le générateur de Flow est un canevas visuel où vous concevez un appel sous la forme d'un **graphe** : les nœuds effectuent le travail et les connexions définissent les directions possibles. Chaque nœud Agent prend en charge une partie de la conversation ; une connexion mène à l'étape suivante.

## Nœuds et bords

* Les **nœuds** sont des étapes : saluer, dialoguer, décider, appeler une API, collecter des données, transférer, terminer.
* Les **bords** sont des chemins possibles. Un nœud agent avec trois bords sortants peut orienter la conversation vers trois étapes suivantes différentes.
* **L'assistant choisit le chemin** en fonction de la conversation et, surtout, de vos **libellés de connexion**.

## Partir d'un modèle de cas d'usage

Lorsque vous créez un assistant de type Flux conversationnel, la galerie propose des plans complets pour des objectifs courants : prise de demandes de rappel, qualification de prospects, enquêtes, expériences de conciergerie et assistants de site web. Un plan peut inclure :

* un graphe de flux prêt à modifier, un prompt de base et un premier message ;
* le résultat attendu et les surfaces prises en charge, comme les appels entrants, les appels sortants, la voix sur le web ou l'avatar IA ;
* une liste de configuration pour les éléments encore nécessaires au cas d'usage, par exemple une base de connaissances, un calendrier, une destination de transfert ou un widget web.

Les badges de la galerie permettent de comparer la taille du flux, les surfaces compatibles et la configuration requise avant de créer l'assistant. L'application d'un modèle copie le plan dans le nouvel assistant. Il s'agit d'un point de départ, et non d'un lien actif : les modifications ultérieures du modèle n'écrasent pas votre assistant.

<Note>
  Un plan **compatible avec un avatar** prépare la conversation pour un avatar virtuel parlant sur le web. L'avatar appartient à la couche de présentation de la session web ; ce n'est pas un nœud du graphe de flux. Après avoir créé l'assistant, associez-le à un widget web et choisissez-y l'avatar virtuel. L'image affichée sur une carte de modèle ou d'assistant n'est qu'un portrait et n'active pas d'avatar animé.
</Note>

## Pourquoi les étiquettes de bord et d'agent sont importantes

C'est le concept le plus important du générateur de Flow :

<Warning>
  **Les libellés de connexion ne sont pas décoratifs.** L'assistant utilise chaque libellé sortant pour décider vers quelle étape diriger la conversation. Des libellés vagues produisent un routage imprécis.
</Warning>

Comparez :

| Étiquette faible | Étiquette forte                                   |
| ---------------- | ------------------------------------------------- |
| `next`           | `caller wants to book an appointment`             |
| `option 2`       | `caller asks about pricing or invoices`           |
| `transfer`       | `caller explicitly asks for a human, or is angry` |

Le même principe s'applique aux nœuds Condition : leur **description** indique ce qui doit être décidé et chaque libellé décrit un résultat possible. L'assistant doit choisir exactement une connexion ; les libellés doivent donc être mutuellement exclusifs et couvrir les cas attendus.

Les **noms** des nœuds Agent comptent aussi : ils apparaissent dans les transferts et le détail des appels — mieux vaut donc `Agent de qualification` que `Agent 2`.

## Un flux minimal utile

```mermaid theme={null}
flowchart TD
  Start(["Start : accueil"]) --> Reception["Agent : Accueil"]
  Reception -->|"l'appelant souhaite prendre rendez-vous"| CollectName["Collect : nom"]
  CollectName --> CollectPhone["Collect : téléphone"]
  CollectPhone --> EndA(["End : confirmation et au revoir"])
  Reception -->|"l'appelant a une question de facturation"| Billing["Agent : FAQ facturation"]
  Billing --> EndB(["End"])
  Reception -->|"l'appelant demande un humain"| Warm["Warm transfer : +49..."]
  Warm --> EndC(["End"])
```

## Variables de flux

Les nœuds `collect` et `dtmf` stockent leurs résultats dans des **variables de flux** (par exemple `customer_phone`). Ces variables sont incluses dans le webhook `call.completed` et dans le détail de l'appel, afin que les systèmes en aval reçoivent des données structurées — pas seulement une transcription.

## Comportement de repli

* Un nœud Agent dont les **instructions sont vides** utilise le Prompt avancé de l'assistant comme base. Les instructions propres au nœud s'**ajoutent** à cette base.
* Un nœud Collect qui échoue après avoir épuisé son budget de nouvelles tentatives emprunte le bord sortant étiqueté **Failed** s'il en existe un, sinon le bord normal.
* Si une étape ne peut pas s'exécuter, l'appel suit le chemin de repli disponible et le problème apparaît dans le détail de l'appel.

Poursuivez avec la [référence du nœud](/fr/flow-builder/nodes) et les [meilleures pratiques](/fr/flow-builder/best-practices). Pour savoir quand préférer un flow à un simple prompt, voir [Prompt système ou générateur de Flow](/fr/assistants/overview).
