Python Tool für Flüsse im Microsoft Foundry-Portal (klassisch)

Gilt nur für:klassisches Foundry Portal. Dieser Artikel ist für das neue Foundry-Portal nicht verfügbar. Erfahren Sie mehr über das neue Portal.

Hinweis

Links in diesem Artikel können Inhalte in der neuen Microsoft Foundry-Dokumentation anstelle der jetzt angezeigten Foundry-Dokumentation (klassisch) öffnen.

Warnung

Die Entwicklung der Prompt Flow-Funktion endete am 20. April 2026. Das Feature wird am 20. April 2027 vollständig eingestellt. Am Ruhestandsdatum wechselt Prompt Flow in den schreibgeschützten Modus. Ihre vorhandenen Workflows werden bis zu diesem Datum weiterhin ausgeführt.

Recommended action: Migrieren Sie Ihre Prompt Flow-Arbeitslasten bis spätestens zum 20. April 2027 zu Microsoft Agent Framework.

Das Prompt-Flow-Python-Tool stellt benutzerdefinierte Codeausschnitte als eigenständige, ausführbare Knoten bereit. Sie können schnell Python Tools erstellen, Code bearbeiten und Ergebnisse überprüfen.

Voraussetzungen

Wichtig

Dieser Artikel bietet Unterstützung älterer Systeme für hub-basierte Projekte. Es funktioniert nicht für Foundry-Projekte. Sehen Sie , wie Sie wissen, welche Art von Projekt Sie haben?

SDK-Kompatibilitätshinweis: Codebeispiele erfordern eine bestimmte Microsoft Foundry SDK-Version. Wenn Kompatibilitätsprobleme auftreten, sollten Sie die Migration von einem hubbasierten zu einem Foundry-Projekt in Betracht ziehen.

Erstellen mit dem Python-Tool

  1. Erstellen oder Öffnen eines Flusses in Microsoft Foundry. Weitere Informationen finden Sie unter Erstellen eines Flusses.

  2. Wählen Sie + Python aus, um ihrem Fluss das Python Tool hinzuzufügen.

    Screenshot mit dem Python Tool, das einem Fluss im Foundry-Portal hinzugefügt wurde.

  3. Geben Sie Werte für die Eingabeparameter des Python Tools ein, die in der Tabelle Inputs beschrieben werden. Geben Sie beispielsweise im Eingabetextfeld Code den folgenden Python Code ein:

    from promptflow import tool
    
    @tool
    def my_python_tool(message: str) -> str:
        return 'hello ' + message
    

    Weitere Informationen finden Sie unter Python Codeeingabeanforderungen.

  4. Fügen Sie Ihrem Ablauf nach Bedarf weitere Tools hinzu. Oder wählen Sie "Ausführen" aus, um den Fluss auszuführen.

  5. Die Ausgaben werden in der Tabelle " Outputs" beschrieben. Basierend auf dem vorherigen Beispiel für eine Python-Codeeingabe, wenn die Eingabemeldung "world" lautet, ist die Ausgabe hello world.

Eingänge

Die Liste der Eingaben ändert sich basierend auf den Argumenten der Toolfunktion, nachdem Sie den Code gespeichert haben. Das Hinzufügen von Typ zu Argumenten und return Werten hilft dem Tool, die Typen richtig anzuzeigen.

Namen Typ Beschreibung Erforderlich
Code Schnur Der Python-Codeausschnitt. Ja
Eingänge - Die Liste der Toolfunktionsparameter und deren Zuweisungen. -

Ausgänge

Die Ausgabe ist der return Wert der Python Toolfunktion. Betrachten Sie beispielsweise die folgende Python Toolfunktion:

from promptflow import tool

@tool
def my_python_tool(message: str) -> str:
    return 'hello ' + message

Wenn die Eingabemeldung "World" lautet, ist die Ausgabe hello world.

Typen

Typ beispiel für Python Beschreibung
Int param: int Ganzzahliger Typ
Bool param: bool Boolescher Typ
Schnur param: str Zeichenfolgentyp
doppelt param: float Doppelter Typ
Liste param: List oder Param: List[T] Listentyp
Objekt Param: Diktat oder Param: Dict[K, V] Objekttyp
Verbindung param: CustomConnection Der Verbindungstyp wird speziell behandelt.

Behandeln Sie Parameter mit der Connection Typanmerkung als Verbindungseingaben. Diese Behandlung bedeutet:

  • Die Erweiterung des Prompt-Flusses zeigt einen Selektor zur Auswahl der Verbindung.
  • Während der Ausführungszeit versucht der Eingabeaufforderungsfluss, die Verbindung mit demselben Namen aus dem parameterwert zu finden, den Sie übergeben.

Hinweis

Die Union[...] Typanmerkung unterstützt nur den Verbindungstyp. Ein Beispiel ist param: Union[CustomConnection, OpenAIConnection].

Python Codeeingabeanforderungen

In diesem Abschnitt werden die Anforderungen für die Python Codeeingabe für das Python Tool beschrieben.

  • Python Toolcode sollte aus vollständigem Python Code bestehen, einschließlich aller erforderlichen Modulimporte.
  • Python Toolcode muss eine Funktion enthalten, die mit @tool (Toolfunktion) versehen ist und als Einstiegspunkt für die Ausführung dient. Wenden Sie den @tool Dekorateur nur einmal innerhalb des Codeausschnitts an.
  • Legen Sie Python-Toolfunktionsparameter im Abschnitt Inputs fest.
  • Python-Werkzeugfunktion muss eine Rückgabeanweisung und einen Wert haben, der die Ausgabe des Werkzeugs ist.

Der folgende Python Code ist ein Beispiel für bewährte Methoden:

from promptflow import tool

@tool
def my_python_tool(message: str) -> str:
    return 'hello ' + message

Verbrauchen einer benutzerdefinierten Verbindung im Python-Tool

Wenn Sie ein Python Tool entwickeln, das externe Dienste mit Authentifizierung aufruft, verwenden Sie die benutzerdefinierte Verbindung in einem Eingabeaufforderungsfluss. Mithilfe dieser Verbindung können Sie den Zugriffsschlüssel sicher speichern und dann in Ihrem Python Code abrufen.

Erstellen einer benutzerdefinierten Verbindung

Erstellen Sie eine benutzerdefinierte Verbindung, die den gesamten API-Schlüssel des großen Sprachmodells oder andere erforderliche Anmeldeinformationen speichert.

Wichtig

Dieser Artikel bietet Unterstützung älterer Systeme für hub-basierte Projekte. Es funktioniert nicht für Foundry-Projekte. Sehen Sie , wie Sie wissen, welche Art von Projekt Sie haben?

SDK-Kompatibilitätshinweis: Codebeispiele erfordern eine bestimmte Microsoft Foundry SDK-Version. Wenn Kompatibilitätsprobleme auftreten, sollten Sie die Migration von einem hubbasierten zu einem Foundry-Projekt in Betracht ziehen.

  1. Wechseln Sie zur Verwaltungscenterseite für Ihr Projekt.

  2. Wählen Sie unter der Überschrift Hub oder ProjectConnected resources aus.

  3. Wählen Sie +Neue Verbindung aus.

  4. Wählen Sie "Benutzerdefinierter Dienst" aus. Sie können ihren Verbindungsnamen definieren. Wählen Sie "Schlüsselwertpaare hinzufügen " aus, um mehrere Schlüsselwertpaare hinzuzufügen, um Ihre Anmeldeinformationen und Schlüssel zu speichern.

    Hinweis

    Stellen Sie sicher, dass mindestens ein Schlüssel-Wert-Paar als geheim festgelegt ist. Andernfalls wird die Verbindung nicht erfolgreich erstellt. Wenn Sie ein Schlüssel-Wert-Paar als geheim festlegen möchten, wählen Sie "Geheim" aus, um den Schlüsselwert zu verschlüsseln und zu speichern.

Verwenden einer benutzerdefinierten Verbindung in Python

So verwenden Sie eine benutzerdefinierte Verbindung in Ihrem Python-Code:

  1. Im Codeabschnitt Ihres Python-Knotens importieren Sie die benutzerdefinierte Verbindungsbibliothek mithilfe von from promptflow.connections import CustomConnection. Definieren Sie einen Eingabeparameter des Typs CustomConnection in der Toolfunktion.
  2. Analysieren Sie die Eingabe in den Eingabeabschnitt. Wählen Sie dann Ihre benutzerdefinierte Zielverbindung in der Wert-Dropdownliste aus.

Zum Beispiel:

from promptflow import tool
from promptflow.connections import CustomConnection

@tool
def my_python_tool(message: str, myconn: CustomConnection) -> str:
    # Get authentication key-values from the custom connection
    connection_key1_value = myconn.key1
    connection_key2_value = myconn.key2

Nächste Schritte