Bedingte Steuerung zu einem Flow hinzufügen#
Experimentelles Feature
Dies ist ein experimentelles Feature und kann sich jederzeit ändern. Erfahren Sie mehr.
In Prompt Flow unterstützen wir Steuerlogik durch Aktivierungskonfiguration, wie z.B. if-else, switch. Die Aktivierungskonfiguration ermöglicht die bedingte Ausführung von Knoten innerhalb Ihres Flows, um sicherzustellen, dass bestimmte Aktionen nur ausgeführt werden, wenn die angegebenen Bedingungen erfüllt sind.
Diese Anleitung hilft Ihnen zu lernen, wie Sie die Aktivierungskonfiguration verwenden, um bedingte Steuerung zu Ihrem Flow hinzuzufügen.
Voraussetzungen#
Bitte stellen Sie sicher, dass Ihre Promptflow-Version größer als 0.1.0b5 ist.
Verwendung#
Jeder Knoten in Ihrem Flow kann eine zugeordnete Aktivierungskonfiguration haben, die angibt, wann er ausgeführt und wann er umgangen werden soll. Wenn ein Knoten eine Aktivierungskonfiguration hat, wird er nur ausgeführt, wenn die Aktivierungsbedingung erfüllt ist. Die Konfiguration besteht aus zwei wesentlichen Komponenten:
activate.when: Die Bedingung, die die Ausführung des Knotens auslöst. Sie kann auf den Ausgaben eines vorherigen Knotens oder den Eingaben des Flows basieren.activate.is: Der Wert der Bedingung, der ein konstanter Wert vom Typ String, Boolean, Integer, Double sein kann.
Sie können die flow.dag.yaml-Datei im Flow-Ordner manuell ändern oder den visuellen Editor in der VS Code-Erweiterung verwenden, um Aktivierungskonfigurationen zu Knoten im Flow hinzuzufügen.
Sie können die Aktivierungskonfiguration im Knotenabschnitt der Flow-YAML hinzufügen.
activate:
when: ${node.output}
is: true
Klicken Sie auf
Visueller Editorin der flow.dag.yaml, um zur Flow-Oberfläche zu gelangen.
Klicken Sie auf den Abschnitt
Aktivierungskonfigurationin dem Knoten, den Sie hinzufügen möchten, und füllen Sie die Werte für "when" und "is" aus.
Weitere Details und wichtige Hinweise#
Wenn der Knoten, der das Python-Tool verwendet, eine Eingabe hat, die sich auf einen möglicherweise umgangenen Knoten bezieht, stellen Sie für diese Eingabe nach Möglichkeit einen Standardwert bereit. Wenn kein Standardwert für die Eingabe vorhanden ist, wird die Ausgabe des umgangenen Knotens auf None gesetzt.

Es wird nicht empfohlen, Knoten, die möglicherweise umgangen werden, direkt mit den Ausgaben des Flows zu verbinden. Wenn sie verbunden sind, ist die Ausgabe None und eine Warnung wird ausgegeben.

In einem bedingten Flow wird bei einem Knoten mit einer Aktivierungskonfiguration immer diese Konfiguration verwendet, um zu bestimmen, ob der Knoten umgangen werden soll. Wenn ein Knoten umgangen wird, wird sein Status als "Umgangen" markiert, wie in der folgenden Abbildung gezeigt. Es gibt drei Situationen, in denen ein Knoten umgangen wird.

(1) Wenn ein Knoten eine Aktivierungskonfiguration hat und der Wert von
activate.whennicht gleichactivate.isist, wird er umgangen. Wenn Sie einen Knoten erzwingen möchten, der immer ausgeführt wird, können Sie die Aktivierungskonfiguration aufwhen dummy is dummysetzen, was die Aktivierungsbedingung immer erfüllt.
(2) Wenn ein Knoten eine Aktivierungskonfiguration hat und der Knoten, auf den
activate.whenverweist, umgangen wird, wird er ebenfalls umgangen.
(3) Wenn ein Knoten keine Aktivierungskonfiguration hat, aber von anderen umgangenen Knoten abhängt, wird er ebenfalls umgangen.

Beispiel-Flow#
Lassen Sie uns veranschaulichen, wie die Aktivierungskonfiguration mit praktischen Beispielen verwendet wird.
If-Else-Szenario: Erlernen Sie, wie Sie einen bedingten Flow für If-Else-Szenarien entwickeln. Beispiel anzeigen
Switch-Szenario: Erkunden Sie bedingte Flows für Switch-Szenarien. Beispiel anzeigen