mirror of
https://github.com/simstudioai/sim.git
synced 2026-04-06 03:00:16 -04:00
144 lines
5.5 KiB
Plaintext
144 lines
5.5 KiB
Plaintext
---
|
|
title: Aperçu
|
|
description: Les composants de construction de vos flux de travail IA
|
|
---
|
|
|
|
import { Card, Cards } from 'fumadocs-ui/components/card'
|
|
import { Step, Steps } from 'fumadocs-ui/components/steps'
|
|
import { Tab, Tabs } from 'fumadocs-ui/components/tabs'
|
|
import { Video } from '@/components/ui/video'
|
|
|
|
Les blocs sont les composants de construction que vous connectez pour créer des flux de travail d'IA. Considérez-les comme des modules spécialisés qui gèrent chacun une tâche spécifique — du dialogue avec des modèles d'IA aux appels API ou au traitement de données.
|
|
|
|
<div className="w-full max-w-2xl mx-auto overflow-hidden rounded-lg">
|
|
<Video src="connections.mp4" width={700} height={450} />
|
|
</div>
|
|
|
|
## Types de blocs principaux
|
|
|
|
Sim fournit des types de blocs essentiels qui gèrent les fonctions principales des flux de travail IA :
|
|
|
|
### Blocs de traitement
|
|
- **[Agent](/blocks/agent)** - Dialoguez avec des modèles d'IA (OpenAI, Anthropic, Google, modèles locaux)
|
|
- **[Function](/blocks/function)** - Exécutez du code JavaScript/TypeScript personnalisé
|
|
- **[API](/blocks/api)** - Connectez-vous à des services externes via des requêtes HTTP
|
|
|
|
### Blocs logiques
|
|
- **[Condition](/blocks/condition)** - Ramifiez les chemins de flux de travail selon des expressions booléennes
|
|
- **[Router](/blocks/router)** - Utilisez l'IA pour acheminer intelligemment les requêtes vers différents chemins
|
|
- **[Evaluator](/blocks/evaluator)** - Notez et évaluez la qualité du contenu à l'aide de l'IA
|
|
|
|
### Blocs de contrôle de flux
|
|
- **[Variables](/blocks/variables)** - Définir et gérer des variables à portée de workflow
|
|
- **[Attente](/blocks/wait)** - Mettre en pause l'exécution du workflow pendant un délai spécifié
|
|
- **[Intervention humaine](/blocks/human-in-the-loop)** - Mettre en pause pour approbation et retour humains avant de continuer
|
|
|
|
### Blocs de sortie
|
|
- **[Response](/blocks/response)** - Formater et renvoyer les résultats finaux de votre flux de travail
|
|
|
|
## Comment fonctionnent les blocs
|
|
|
|
Chaque bloc comporte trois composants principaux :
|
|
|
|
**Entrées** : données entrant dans le bloc depuis d'autres blocs ou saisies utilisateur
|
|
**Configuration** : paramètres qui contrôlent le comportement du bloc
|
|
**Sorties** : données produites par le bloc pour être utilisées par d'autres blocs
|
|
|
|
<Steps>
|
|
<Step>
|
|
<strong>Recevoir l'entrée</strong> : le bloc reçoit des données des blocs connectés ou de l'entrée utilisateur
|
|
</Step>
|
|
<Step>
|
|
<strong>Traiter</strong> : le bloc traite l'entrée selon sa configuration
|
|
</Step>
|
|
<Step>
|
|
<strong>Produire les résultats</strong> : le bloc génère des données de sortie pour les blocs suivants dans le flux de travail
|
|
</Step>
|
|
</Steps>
|
|
|
|
## Connexion des blocs
|
|
|
|
Vous créez des flux de travail en connectant des blocs entre eux. La sortie d'un bloc devient l'entrée d'un autre :
|
|
|
|
- **Glisser pour connecter** : faites glisser d'un port de sortie vers un port d'entrée
|
|
- **Connexions multiples** : une sortie peut se connecter à plusieurs entrées
|
|
- **Chemins de branchement** : certains blocs peuvent acheminer vers différents chemins selon les conditions
|
|
|
|
<div className="w-full max-w-2xl mx-auto overflow-hidden rounded-lg">
|
|
<Video src="connections.mp4" width={700} height={450} />
|
|
</div>
|
|
|
|
## Modèles courants
|
|
|
|
### Traitement séquentiel
|
|
Connectez les blocs en chaîne où chaque bloc traite la sortie du précédent :
|
|
|
|
```
|
|
User Input → Agent → Function → Response
|
|
```
|
|
|
|
### Branchement conditionnel
|
|
Utilisez des blocs Condition ou Router pour créer différents chemins :
|
|
|
|
```
|
|
User Input → Router → Agent A (for questions)
|
|
→ Agent B (for commands)
|
|
```
|
|
|
|
### Contrôle qualité
|
|
Utilisez des blocs Evaluator pour évaluer et filtrer les sorties :
|
|
|
|
```
|
|
Agent → Evaluator → Condition → Response (if good)
|
|
→ Agent (retry if bad)
|
|
```
|
|
|
|
## Configuration des blocs
|
|
|
|
Chaque type de bloc possède des options de configuration spécifiques :
|
|
|
|
**Tous les blocs** :
|
|
- Connexions d'entrée/sortie
|
|
- Comportement de gestion des erreurs
|
|
- Paramètres de délai d'exécution
|
|
|
|
**Blocs IA** (Agent, Routeur, Évaluateur) :
|
|
- Sélection du modèle (OpenAI, Anthropic, Google, local)
|
|
- Clés API et authentification
|
|
- Température et autres paramètres du modèle
|
|
- Instructions et prompts système
|
|
|
|
**Blocs logiques** (Condition, Fonction) :
|
|
- Expressions ou code personnalisés
|
|
- Références de variables
|
|
- Paramètres d'environnement d'exécution
|
|
|
|
**Blocs d'intégration** (API, Réponse) :
|
|
- Configuration du point de terminaison
|
|
- En-têtes et authentification
|
|
- Formatage des requêtes/réponses
|
|
|
|
<Cards>
|
|
<Card title="Bloc Agent" href="/blocks/agent">
|
|
Se connecter aux modèles d'IA et créer des réponses intelligentes
|
|
</Card>
|
|
<Card title="Bloc Fonction" href="/blocks/function">
|
|
Exécuter du code personnalisé pour traiter et transformer des données
|
|
</Card>
|
|
<Card title="Bloc API" href="/blocks/api">
|
|
S'intégrer avec des services externes et des API
|
|
</Card>
|
|
<Card title="Bloc Condition" href="/blocks/condition">
|
|
Créer une logique de branchement basée sur l'évaluation des données
|
|
</Card>
|
|
<Card title="Bloc Intervention humaine" href="/blocks/human-in-the-loop">
|
|
Mettre en pause pour approbation et retour humains avant de continuer
|
|
</Card>
|
|
<Card title="Bloc Variables" href="/blocks/variables">
|
|
Définir et gérer des variables à portée de workflow
|
|
</Card>
|
|
<Card title="Bloc Attente" href="/blocks/wait">
|
|
Mettre en pause l'exécution du workflow pendant des délais spécifiés
|
|
</Card>
|
|
</Cards>
|