Flow YAML-Schema#

Experimentelles Feature

Dies ist eine experimentelle Funktion und kann sich jederzeit ändern. Erfahren Sie mehr.

Das JSON-Schema finden Sie unter Flow.schema.json

YAML-Syntax#

Key

Typ

Beschreibung

$schema

string

Das YAML-Schema. Wenn Sie die Prompt Flow VS Code-Erweiterung zum Erstellen der YAML-Datei verwenden, ermöglicht Ihnen die Einbeziehung von $schema am Anfang Ihrer Datei das Aufrufen von Schema- und Ressourcen-Vervollständigungen.

inputs

object

Wörterbuch der Flow-Eingaben. Der Schlüssel ist ein Name für die Eingabe im Kontext des Flows und der Wert ist die Flow-Eingabedefinition.

inputs.<input_name>

object

Die Flow-Eingabedefinition. Informationen zu den konfigurierbaren Eigenschaften finden Sie unter Flow-Eingabe.

Ausgaben

object

Wörterbuch der Flow-Ausgaben. Der Schlüssel ist ein Name für die Ausgabe im Kontext des Flows und der Wert ist die Flow-Ausgabedefinition.

outputs.<output_name>

object

Die Komponentenausgabedefinition. Informationen zu den konfigurierbaren Eigenschaften finden Sie unter Flow-Ausgabe.

nodes

array

Sätze von Wörterbüchern einzelner Knoten, die als Schritte innerhalb des Flows ausgeführt werden. Ein Knoten kann ein integriertes Tool oder ein Drittanbieter-Tool verwenden. Weitere Informationen finden Sie unter Knoten.

node_variants

object

Wörterbuch der Knoten mit Varianten. Der Schlüssel ist der Knotenname und der Wert enthält die Variantendefinition und default_variant_id. Weitere Informationen finden Sie unter Knotenvarianten.

environment

object

Die für den Flow zu verwendende Umgebung. Der Schlüssel kann image oder python_requirements_txt sein und der Wert kann entweder ein Image oder eine Python-Anforderungs-Textdatei sein.

environment_variables

object/string

Umgebungsvariablen, die durch Angabe eines Eigenschaftspfads und eines Werts festgelegt werden. Beispiel: {"key1"="${my_connection.api_key}"}. Der Wert, der auf Verbindungsschlüssel verweist, wird in den tatsächlichen Wert aufgelöst, und alle angegebenen Umgebungsvariablen werden in os.environ festgelegt.

additional_includes

array

Zusätzliche Einschlüsse sind eine Liste von Dateien, die zwischen Flows geteilt werden können. Benutzer können zusätzliche Dateien und Ordner angeben, die vom Flow verwendet werden, und Prompt Flow hilft dabei, diese während der Flow-Erstellung in den Snapshot zu kopieren.

Flow-Eingabe#

Key

Typ

Beschreibung

Zulässige Werte

type

string

Der Typ der Flow-Eingabe.

int, double, bool, string, list, object, image

description

string

Beschreibung der Eingabe.

default

int, double, bool, string, list, object, image

Der Standardwert für die Eingabe.

is_chat_input

boolean

Ob die Eingabe die Chat-Flow-Eingabe ist.

is_chat_history

boolean

Ob die Eingabe die Chat-Historie für den Chat-Flow ist.

Flow-Ausgabe#

Key

Typ

Beschreibung

Zulässige Werte

type

string

Der Typ der Flow-Ausgabe.

int, double, bool, string, list, object

description

string

Beschreibung der Ausgabe.

reference

string

Ein Verweis auf die Knoten-Ausgabe, z. B. ${<node_name>.output.<node_output_name>}

is_chat_output

boolean

Ob die Ausgabe die Chat-Flow-Ausgabe ist.

Knoten#

Knoten ist ein Satz von Knoten, der ein Wörterbuch mit den folgenden Feldern ist. Nachfolgend zeigen wir nur die gemeinsamen Felder eines einzelnen Knotens mit einem integrierten Tool.

Key

Typ

Beschreibung

Zulässige Werte

name

string

Der Name des Knotens.

type

string

Der Typ des Knotens.

Typ eines integrierten Tools wie Python, Prompt, LLM und eines Drittanbieter-Tools wie Vector Search usw.

inputs

object

Wörterbuch der Knoten-Eingaben. Der Schlüssel ist der Eingabename und der Wert kann ein primitiver Wert oder ein Verweis auf die Flow-Eingabe oder die Knoten-Ausgabe sein, z. B. ${inputs.<flow_input_name>}, ${<node_name>.output} oder ${<node_name>.output.<node_output_name>}

source

object

Wörterbuch der Tool-Quelle, die vom Knoten verwendet wird. Der Schlüssel enthält type, path und tool. Der Typ kann code, package und package_with_prompt sein.

provider

string

Gibt den Anbieter des Tools an. Wird verwendet, wenn der type LLM ist.

AzureOpenAI oder OpenAI

Verbindung

string

Der Name der zuvor erstellten Verbindung. Wird verwendet, wenn der type LLM ist.

api

string

Der API-Name des Anbieters. Wird verwendet, wenn der type LLM ist.

module

string

Der Modulname des vom Knoten verwendeten Tools. Wird verwendet, wenn der type LLM ist.

use_variants

bool

Ob der Knoten Varianten hat.

Knotenvarianten#

Knotenvarianten ist ein Wörterbuch, das Variantendefinitionen für Knoten mit Varianten enthält, wobei die jeweiligen Knotennamen als Schlüssel im Wörterbuch dienen. Nachfolgend untersuchen wir die Varianten für einen einzelnen Knoten.

Key

Typ

Beschreibung

Zulässige Werte

<node_name>

string

Der Name des Knotens.

default_variant_id

string

Standard-Varianten-ID.

variants

object

Dieses Wörterbuch enthält alle Knotenvarianten, wobei die Varianten-ID als Schlüssel und ein Knoten-Definitions-Wörterbuch als entsprechender Wert dient. Innerhalb des Knoten-Definitions-Wörterbuchs sollte der Schlüssel mit der Bezeichnung „node“ eine Variantendefinition ähnlich wie bei Knoten enthalten, ausgenommen des Feldes „name“.

Beispiele#

Flow-Beispiele finden Sie im GitHub-Repository.