mirror of
https://github.com/simstudioai/sim.git
synced 2026-02-01 02:05:18 -05:00
144 lines
5.3 KiB
Plaintext
144 lines
5.3 KiB
Plaintext
---
|
||
title: Übersicht
|
||
description: Die Bausteine deiner KI-Workflows
|
||
---
|
||
|
||
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'
|
||
|
||
Blöcke sind die Bausteine, die du miteinander verbindest, um KI-Workflows zu erstellen. Betrachte sie als spezialisierte Module, die jeweils eine bestimmte Aufgabe übernehmen – vom Chatten mit KI-Modellen über API-Aufrufe bis hin zur Datenverarbeitung.
|
||
|
||
<div className="w-full max-w-2xl mx-auto overflow-hidden rounded-lg">
|
||
<Video src="connections.mp4" width={700} height={450} />
|
||
</div>
|
||
|
||
## Grundlegende Blocktypen
|
||
|
||
Sim bietet wesentliche Blocktypen, die die Kernfunktionen von KI-Workflows abdecken:
|
||
|
||
### Verarbeitungsblöcke
|
||
- **[Agent](/blocks/agent)** - Chatte mit KI-Modellen (OpenAI, Anthropic, Google, lokale Modelle)
|
||
- **[Function](/blocks/function)** - Führe benutzerdefinierten JavaScript/TypeScript-Code aus
|
||
- **[API](/blocks/api)** - Verbinde dich mit externen Diensten über HTTP-Anfragen
|
||
|
||
### Logikblöcke
|
||
- **[Condition](/blocks/condition)** - Verzweige Workflow-Pfade basierend auf booleschen Ausdrücken
|
||
- **[Router](/blocks/router)** - Nutze KI, um Anfragen intelligent auf verschiedene Pfade zu leiten
|
||
- **[Evaluator](/blocks/evaluator)** - Bewerte und beurteile die Inhaltsqualität mit KI
|
||
|
||
### Ablaufsteuerungsblöcke
|
||
- **[Variablen](/blocks/variables)** - Workflow-bezogene Variablen setzen und verwalten
|
||
- **[Warten](/blocks/wait)** - Workflow-Ausführung für eine bestimmte Zeitverzögerung pausieren
|
||
- **[Mensch in der Schleife](/blocks/human-in-the-loop)** - Pausieren für menschliche Genehmigung und Feedback vor dem Fortfahren
|
||
|
||
### Ausgabeblöcke
|
||
- **[Antwort](/blocks/response)** - Formatieren und Zurückgeben der endgültigen Ergebnisse aus Ihrem Workflow
|
||
|
||
## Wie Blöcke funktionieren
|
||
|
||
Jeder Block hat drei Hauptkomponenten:
|
||
|
||
**Eingaben**: Daten, die in den Block von anderen Blöcken oder Benutzereingaben kommen
|
||
**Konfiguration**: Einstellungen, die steuern, wie der Block sich verhält
|
||
**Ausgaben**: Daten, die der Block für andere Blöcke zur Verwendung erzeugt
|
||
|
||
<Steps>
|
||
<Step>
|
||
<strong>Eingabe empfangen</strong>: Block erhält Daten von verbundenen Blöcken oder Benutzereingaben
|
||
</Step>
|
||
<Step>
|
||
<strong>Verarbeiten</strong>: Block verarbeitet die Eingabe gemäß seiner Konfiguration
|
||
</Step>
|
||
<Step>
|
||
<strong>Ergebnisse ausgeben</strong>: Block erzeugt Ausgabedaten für die nächsten Blöcke im Workflow
|
||
</Step>
|
||
</Steps>
|
||
|
||
## Blöcke verbinden
|
||
|
||
Sie erstellen Workflows, indem Sie Blöcke miteinander verbinden. Die Ausgabe eines Blocks wird zur Eingabe eines anderen:
|
||
|
||
- **Ziehen zum Verbinden**: Ziehen Sie von einem Ausgabeport zu einem Eingabeport
|
||
- **Mehrfachverbindungen**: Eine Ausgabe kann mit mehreren Eingaben verbunden werden
|
||
- **Verzweigende Pfade**: Einige Blöcke können basierend auf Bedingungen zu verschiedenen Pfaden weiterleiten
|
||
|
||
<div className="w-full max-w-2xl mx-auto overflow-hidden rounded-lg">
|
||
<Video src="connections.mp4" width={700} height={450} />
|
||
</div>
|
||
|
||
## Häufige Muster
|
||
|
||
### Sequentielle Verarbeitung
|
||
Verbinden Sie Blöcke in einer Kette, wobei jeder Block die Ausgabe des vorherigen verarbeitet:
|
||
|
||
```
|
||
User Input → Agent → Function → Response
|
||
```
|
||
|
||
### Bedingte Verzweigung
|
||
Verwenden Sie Bedingung- oder Router-Blöcke, um verschiedene Pfade zu erstellen:
|
||
|
||
```
|
||
User Input → Router → Agent A (for questions)
|
||
→ Agent B (for commands)
|
||
```
|
||
|
||
### Qualitätskontrolle
|
||
Verwenden Sie Evaluator-Blöcke, um Ausgaben zu bewerten und zu filtern:
|
||
|
||
```
|
||
Agent → Evaluator → Condition → Response (if good)
|
||
→ Agent (retry if bad)
|
||
```
|
||
|
||
## Block-Konfiguration
|
||
|
||
Jeder Blocktyp hat spezifische Konfigurationsoptionen:
|
||
|
||
**Alle Blöcke**:
|
||
- Eingabe-/Ausgabeverbindungen
|
||
- Fehlerbehandlungsverhalten
|
||
- Einstellungen für Ausführungs-Timeout
|
||
|
||
**KI-Blöcke** (Agent, Router, Evaluator):
|
||
- Modellauswahl (OpenAI, Anthropic, Google, lokal)
|
||
- API-Schlüssel und Authentifizierung
|
||
- Temperatur und andere Modellparameter
|
||
- Systemaufforderungen und Anweisungen
|
||
|
||
**Logik-Blöcke** (Bedingung, Funktion):
|
||
- Benutzerdefinierte Ausdrücke oder Code
|
||
- Variablenreferenzen
|
||
- Einstellungen für Ausführungsumgebung
|
||
|
||
**Integrations-Blöcke** (API, Response):
|
||
- Endpunktkonfiguration
|
||
- Header und Authentifizierung
|
||
- Anfrage-/Antwortformatierung
|
||
|
||
<Cards>
|
||
<Card title="Agent-Block" href="/blocks/agent">
|
||
Verbindung zu KI-Modellen herstellen und intelligente Antworten erstellen
|
||
</Card>
|
||
<Card title="Funktionsblock" href="/blocks/function">
|
||
Benutzerdefinierten Code ausführen, um Daten zu verarbeiten und zu transformieren
|
||
</Card>
|
||
<Card title="API-Block" href="/blocks/api">
|
||
Integration mit externen Diensten und APIs
|
||
</Card>
|
||
<Card title="Bedingungsblock" href="/blocks/condition">
|
||
Verzweigende Logik basierend auf Datenbewertung erstellen
|
||
</Card>
|
||
<Card title="Mensch-in-der-Schleife-Block" href="/blocks/human-in-the-loop">
|
||
Pausieren für menschliche Genehmigung und Feedback vor dem Fortfahren
|
||
</Card>
|
||
<Card title="Variablenblock" href="/blocks/variables">
|
||
Workflow-bezogene Variablen setzen und verwalten
|
||
</Card>
|
||
<Card title="Warteblock" href="/blocks/wait">
|
||
Workflow-Ausführung für bestimmte Zeitverzögerungen pausieren
|
||
</Card>
|
||
</Cards>
|