Sim

Loop

Der Loop-Block ist ein Container-Block in Sim, der es ermöglicht, iterative Workflows zu erstellen, indem eine Gruppe von Blöcken wiederholt ausgeführt wird. Loops ermöglichen iterative Verarbeitung in deinen Workflows.

Der Loop-Block unterstützt zwei Arten der Iteration:

Loop-Blöcke sind Container-Knoten, die andere Blöcke enthalten können. Die Blöcke innerhalb einer Schleife werden basierend auf deiner Konfiguration mehrfach ausgeführt.

Überblick

Der Loop-Block ermöglicht dir:

Über Sammlungen iterieren: Arrays oder Objekte Element für Element verarbeiten

Operationen wiederholen: Blöcke eine festgelegte Anzahl von Malen ausführen

Sequentielle Verarbeitung: Datentransformation in geordneten Iterationen durchführen

Ergebnisse aggregieren: Ausgaben aus allen Schleifeniterationen sammeln

Funktionsweise

Der Loop-Block führt enthaltene Blöcke durch sequentielle Iteration aus:

  1. Schleife initialisieren - Iterationsparameter festlegen (Anzahl oder Sammlung)
  2. Iteration ausführen - Enthaltene Blöcke für aktuelle Iteration ausführen
  3. Ergebnisse sammeln - Ausgabe jeder Iteration speichern
  4. Fortfahren oder abschließen - Zur nächsten Iteration übergehen oder Schleife beenden

Konfigurationsoptionen

Schleifentyp

Wähle zwischen zwei Arten von Schleifen:

For Loop (Iterationen) - Eine numerische Schleife, die eine feste Anzahl von Malen ausgeführt wird:

For Loop mit Iterationen

Verwende diese Option, wenn du eine Operation eine bestimmte Anzahl von Malen wiederholen musst.

Example: Run 5 times
- Iteration 1
- Iteration 2
- Iteration 3
- Iteration 4
- Iteration 5

ForEach-Schleife (Sammlung) - Eine sammlungsbasierte Schleife, die über jedes Element in einem Array oder Objekt iteriert:

ForEach-Schleife mit Sammlung

Verwende diese, wenn du eine Sammlung von Elementen verarbeiten musst.

Example: Process ["apple", "banana", "orange"]
- Iteration 1: Process "apple"
- Iteration 2: Process "banana"
- Iteration 3: Process "orange"

Wie man Schleifen verwendet

Eine Schleife erstellen

  1. Ziehe einen Schleifenblock aus der Werkzeugleiste auf deine Leinwand
  2. Konfiguriere den Schleifentyp und die Parameter
  3. Ziehe andere Blöcke in den Schleifencontainer
  4. Verbinde die Blöcke nach Bedarf

Auf Ergebnisse zugreifen

Nach Abschluss einer Schleife kannst du auf aggregierte Ergebnisse zugreifen:

  • <loop.results>: Array von Ergebnissen aus allen Schleifendurchläufen

Beispielanwendungsfälle

Verarbeitung von API-Ergebnissen

Szenario: Mehrere Kundendatensätze verarbeiten

  1. API-Block ruft Kundenliste ab
  2. ForEach-Schleife iteriert über jeden Kunden
  3. Innerhalb der Schleife: Agent analysiert Kundendaten
  4. Innerhalb der Schleife: Funktion speichert Analyseergebnisse

Iterative Inhaltserstellung

Szenario: Mehrere Variationen generieren

  1. For-Schleife auf 5 Iterationen einstellen
  2. Innerhalb der Schleife: Agent generiert Inhaltsvariante
  3. Innerhalb der Schleife: Evaluator bewertet den Inhalt
  4. Nach der Schleife: Funktion wählt die beste Variante aus

Erweiterte Funktionen

Einschränkungen

Container-Blöcke (Schleifen und Parallele) können nicht ineinander verschachtelt werden. Das bedeutet:

  • Du kannst keinen Schleifenblock in einen anderen Schleifenblock platzieren
  • Du kannst keinen Parallelblock in einen Schleifenblock platzieren
  • Du kannst keinen Container-Block in einen anderen Container-Block platzieren

Wenn du mehrdimensionale Iterationen benötigst, erwäge eine Umstrukturierung deines Workflows, um sequentielle Schleifen zu verwenden oder Daten in Stufen zu verarbeiten.

Schleifen werden sequentiell ausgeführt, nicht parallel. Wenn Sie eine gleichzeitige Ausführung benötigen, verwenden Sie stattdessen den Parallel-Block.

Eingaben und Ausgaben

  • Schleifentyp: Wählen Sie zwischen 'for' oder 'forEach'

  • Iterationen: Anzahl der Ausführungen (für for-Schleifen)

  • Sammlung: Array oder Objekt zum Durchlaufen (für forEach-Schleifen)

  • loop.currentItem: Aktuell verarbeitetes Element

  • loop.index: Aktuelle Iterationsnummer (0-basiert)

  • loop.items: Vollständige Sammlung (forEach-Schleifen)

  • loop.results: Array aller Iterationsergebnisse

  • Struktur: Ergebnisse behalten die Iterationsreihenfolge bei

  • Zugriff: Verfügbar in Blöcken nach der Schleife

Best Practices

  • Setzen Sie vernünftige Grenzen: Halten Sie die Anzahl der Iterationen in einem vernünftigen Rahmen, um lange Ausführungszeiten zu vermeiden
  • Verwenden Sie ForEach für Sammlungen: Verwenden Sie ForEach statt For-Schleifen, wenn Sie Arrays oder Objekte verarbeiten
  • Behandeln Sie Fehler angemessen: Erwägen Sie, Fehlerbehandlung innerhalb von Schleifen einzubauen, um robuste Workflows zu gewährleisten
Loop