Freigeben über


Beginnen Sie mit Prompt Flow

Dieser Artikel führt Sie durch die Hauptbenutzerreise bei der Verwendung von Prompt Flow in Azure Machine Learning Studio. Sie lernen, wie Sie den Prompt Flow in Ihrem Azure Machine Learning-Arbeitsbereich aktivieren, Ihren ersten Prompt Flow erstellen und entwickeln, ihn testen und bewerten und ihn dann in der Produktion einsetzen.

Voraussetzungen

  • Stellen Sie sicher, dass der Standarddatenspeicher in Ihrem Arbeitsbereich der Blobtyp ist.

  • Wenn Sie Prompt-Flow mit einem virtuellem Netzwerk absichern, befolgen Sie Netzwerkisolation in Prompt-Flow, um weitere Details zu erfahren.

Verbindung einrichten

Zuerst müssen Sie die Verbindung einrichten.

Die Verbindung hilft beim sicheren Speichern und Verwalten von geheimen Schlüsseln und anderen vertraulichen Anmeldeinformationen, die für die Interaktion mit einem LLM (Large Language Model, großes Sprachmodell) und anderen externen Tools erforderlich sind, z. B. Azure Content Safety.

Navigieren Sie zur Startseite des Prompt Flow und wählen Sie die Registerkarte Verbindungen. Die Verbindung ist eine gemeinsame Ressource für alle Mitglieder im Arbeitsbereich. Wenn also bereits eine Verbindung angezeigt wird, deren Anbieter AzureOpenAI ist, können Sie diesen Schritt überspringen, um die Computesitzung zu starten.

Wenn noch keine Verbindung mit „AzureOpenAI“ besteht, wählen Sie die Schaltfläche Erstellen und dann in der Dropdownliste AzureOpenAI aus.

Screenshot der Registerkarte „Verbindungen“ mit hervorgehobener Option „Erstellen“

Anschließend wird auf der rechten Seite ein Panel angezeigt. Dort müssen Sie den Abonnement- und Ressourcennamen auswählen, den Verbindungsnamen, den API-Schlüssel (wenn der API-Schlüssel als Authentifizierungstyp verwendet wird), die API-Basis, den API-Typ und die API-Version angeben und danach die Schaltfläche Speichern auswählen. Prompt Flow unterstützt auch Microsoft Entra ID als Authentifizierungstyp für die identitätsbasierte Authentifizierung von Azure OpenAI-Ressourcen. Weitere Informationen finden Sie unter Konfigurieren von Azure OpenAI Service mit verwalteten Identitäten.

Screenshot der hinzugefügten Azure OpenAI-Verbindungen.

Um API-Schlüssel, -Basis, -Typ und -Version abzurufen, können Sie im Azure OpenAI-Portal zum Chat-Playground navigieren und die Schaltfläche Code anzeigen auswählen. Sie können dort die erforderlichen Informationen kopieren und in den Bereich zum Erstellen der Verbindung einfügen.

Screenshot des Chat-Playgrounds nach der Auswahl der Schaltfläche „Code anzeigen“ mit einem Popupfenster, in dem Beispielcode angezeigt wird und der API-Schlüssel hervorgehoben ist

Nachdem Sie die erforderlichen Felder ausgefüllt haben, wählen Sie Speichern aus, um die Verbindung herzustellen.

Erstellen und entwickeln Sie Ihren Prompt Flow

Wählen Sie auf der Registerkarte Flows der Prompt Flow-Startseite die Option Erstellen, um Ihren ersten Prompt Flowzu erstellen. Sie können einen Flow erstellen, indem Sie die Beispiele im Katalog klonen.

Klonen von Beispielen

Die integrierten Beispiele werden im Katalog angezeigt.

In diesem Leitfaden wird das Beispiel zur Webklassifizierung verwendet, um die Standard-User Journey zu veranschaulichen. Sie können Details anzeigen auf der Kachel „Webklassifizierung“ auswählen, um eine Vorschau des Beispiels anzuzeigen. Anschließend wird ein Vorschaufenster geöffnet. Sie können die Beispieleinführung durchsuchen, um herauszufinden, ob das Beispiel Ihrem Szenario ähnelt. Oder Sie können einfach Klonen auswählen, um das Beispiel direkt zu klonen, und dann den Flow überprüfen. Testen Sie sie, ändern Sie sie.

Screenshot der Erstellung aus dem Katalog mit hervorgehobener Option „Webklassifizierung“

Nachdem Sie Klonenausgewählt haben, wird ein neuer Flow erstellt und in einem bestimmten Ordner in Ihrem Arbeitsbereichsdateifreigabespeicher gespeichert. Sie können den Ordnernamen entsprechend Ihren Einstellungen im rechten Bereich anpassen.

Computesitzung starten

Anschließend geben Sie die Seite für die Flow-Erstellung ein. Bevor wir eintauchen, starten Sie zuerst eine Computesitzung.

Die Computesitzungen dienen als die Computeressourcen, die für die Ausführung der Anwendung erforderlich sind, einschließlich eines Docker-Image, das alle erforderlichen Abhängigkeitspakete enthält. Sie ist für die Flowausführung unbedingt erforderlich.

Screenshot des Startens einer Start-Compute-Sitzung.

Flowerstellungsseite

Wenn die Computesitzung gestartet wird, können wir uns die Seite zum Erstellen des Flusses ansehen.

Screenshot der Webklassifizierung mit hervorgehobenem Hauptarbeitsbereich

Auf der linken Seite der Erstellungsseite finden Sie eine vereinfachte Ansicht – den Hauptarbeitsbereich, in dem Sie den Flow erstellen, indem Sie z. B. einen neuen Knoten hinzufügen, den Prompt bearbeiten, die Daten für die Floweingabe auswählen usw.

In der oberen rechten Ecke wird die Ordnerstruktur des Flows angezeigt. Jeder Flow verfügt über einen Ordner, der die Datei „flow.dag.yaml“, Quellcodedateien und Systemordner enthält. Sie können einen Flow zu Test-, Bereitstellungs- oder Zusammenarbeitszwecken einfach exportieren oder importieren.

Zusätzlich zur Inlinebearbeitung des Knotens in der vereinfachten Ansicht können Sie auch den Umschalter Rohdatendateimodus aktivieren und den Dateinamen auswählen, um die Datei auf angezeigten Dateiregisterkarte zu bearbeiten.

Screenshot: Registerkarte zur Dateibearbeitung im Rohdatendateimodus

Die Diagrammansicht unten rechts dient ausschließlich zur Visualisierung. Sie können sie vergrößern und verkleinern, ein automatisches Layout anwenden usw.

In diesem Leitfaden wird das Beispiel zur Webklassifizierung verwendet, um die Standard-User Journey zu veranschaulichen. Die Webklassifizierung ist ein Flow, der die Klassifizierung mit mehreren Klassen und einem LLM veranschaulicht. Angesichts einer URL klassifiziert sie die URL in eine Webkategorie mit nur wenigen Aufnahmen, einfachen Zusammenfassungen und Klassifizierungsaufforderungen. Wenn beispielsweise "https://www.imdb.com/" angegeben ist, wird diese URL als „Movie“ klassifiziert.

In der Graphansicht wird der Beispielflow angezeigt. Die Eingabe ist eine URL zum Klassifizieren. Anschließend wird ein Python-Skript zum Abrufen von Textinhalten aus der URL verwendet. Mithilfe des LLM wird der Textinhalt in 100 Wörtern zusammengefasst und dann basierend auf der URL und dem zusammengefassten Textinhalt klassifiziert. Abschließend wird mit einem Python-Skript die LLM-Ausgabe in ein Wörterbuch konvertiert. Der Knoten „prepare_examples“ dient dazu, einige wenige Beispiele an den Prompt des Klassifizierungsknotens zu übergeben.

Floweingabedaten

Durch Erweitern des Abschnitts Eingaben können Sie Eingaben erstellen und anzeigen. Für das Webklassifizierungsbeispiel im folgenden Screenshot ist die Floweingabe eine URL im Zeichenfolgenformat.

Screenshot der Webklassifizierung mit hervorgehobenen Eingaben

Das Eingabeschema (Name: URL; Typ: Zeichenfolge) und der Wert werden bereits beim Klonen von Beispielen vorab festgelegt. Sie können manuell andere Wert festlegen, z. B. „https://www.imdb.com/"“.

Einrichten von LLM-Knoten

Sie müssen für jeden LLM-Knoten eine Verbindung auswählen, um Ihre LLM-API-Schlüssel festzulegen.

Screenshot der Webklassifizierung mit dem Dropdownmenü „Verbindung“

Vergewissern Sie sich in diesem Beispiel, dass der API-Typ Chat lautet, da das Beispiel für die Eingabeaufforderung eine Chat-API ist. Um den Unterschied zwischen den Eingabeaufforderungsformaten von Chat und Abschluss-API zu erfahren, siehe Entwickeln eines Flows.

Je nach ausgewähltem Verbindungstyp müssen Sie dann eine Bereitstellung oder ein Modell auswählen. Wenn Sie eine Azure OpenAI-Verbindung verwenden, müssen Sie in der Dropdown-Liste ein Deployment auswählen (wenn Sie kein Deployment haben, erstellen Sie eines im Azure OpenAI-Portal, indem Sie Eine Ressource erstellen und ein Modell mit Azure OpenAI bereitstellen). Wenn Sie eine OpenAI-Verbindung verwenden, müssen Sie ein Modell auswählen.

Dieser Flow umfasst zwei LLM-Knoten („summarize_text_content“ und „classify_with_llm“), die Sie beide einrichten müssen.

Ausführen von Einzelknoten

Um einen einzelnen Knoten zu testen und zu debuggen, wählen Sie in der vereinfachten Ansicht das Symbol Ausführen für den Knoten aus. Oben wird der Ausführungsstatus angezeigt. Überprüfen Sie die Ausgabe im Abschnitt mit der Knotenausgabe, nachdem Sie die Ausführung abgeschlossen haben.

Screenshot der Webklassifizierung mit der ersten Ausführung des Python-Knotens und der anschließenden Überprüfung der Ausführung. Anschließend führen Sie den LLM-Knoten aus, und überprüfen die Ausgabe.

Führen Sie „fetch_text_content_from_url“ und anschließend „summarize_text_content“ aus, überprüfen Sie, ob der Flow Inhalte erfolgreich aus dem Web abrufen kann, und fassen Sie den Webinhalt zusammen.

In der Graphansicht wird auch der Status des Einzelknotens angezeigt. Sie können auch die Eingabe-URL des Flows ändern, um das Knotenverhalten mit verschiedenen URLs zu testen.

Ausführen des gesamten Flows

Um den gesamten Flow zu testen und zu debuggen, wählen Sie rechts oben die Schaltfläche Ausführen aus.

Screenshot der Webklassifizierung mit einer vollständigen Ausführung und hervorgehobener Schaltfläche „Ausführen“

Anschließend können Sie den Ausführungsstatus und die Ausgabe der einzelnen Knoten überprüfen. Die Knotenstatus werden auch in der Graphansicht angezeigt. Auf dieselbe Weise können Sie die Eingabe-URL des Flows ändern, um zu testen, wie sich der Flow bei verschiedenen URLs verhält.

Festlegen und Überprüfen der Flowausgabe

Anstatt die Ausgänge an jedem Knoten zu prüfen, können Sie auch die Flowausgabe einstellen und die Ausgänge mehrerer Knoten an einer Stelle prüfen. Darüber hinaus hilft die Flowausgabe bei Folgendem:

  • Überprüfen der Ergebnisse von Massentests in einer einzelnen Tabelle
  • Definieren der Zuordnung von Auswertungsschnittstellen
  • Festlegen des Schemas für Bereitstellungsantworten

Wenn Sie das Beispiel klonen, sind die Flowausgaben (Kategorie und Beweis) bereits festgelegt.

Sie können Schaltfläche Ablaufverfolgung anzeigen im Banner auswählen, um detaillierte Eingabe-, Ausgabe-, Ablaufausführungs- und Orchestrierungsinformationen anzuzeigen. Sie können sehen, dass der Flow die Eingabe-URL mit einer Kategorie und einem Beweis vorhersagt.

Screenshot der Anzeige der Ablaufverfolgung auf der Erstellungsseite.

 Screenshot der Schaltfläche „Ausgabe anzeigen“ an zwei Speicherorten.

Sie können Testergebnis anzeigen auswählen, um alle historischen Tests in einer Liste zu überprüfen.

Screenshot der Webklassifizierung mit der Schaltfläche „Ausgaben anzeigen“

Screenshot des Flow-Testergebnisses.

Testen und Auswerten

Nachdem der Flow erfolgreich mit einer einzelnen Datenzeile ausgeführt wurde, sollten Sie testen, ob er auch mit großen Datenmengen gut funktioniert. Sie können einen Massentest ausführen, einige Auswertungsmethoden auswählen und dann die Metriken überprüfen.

Vorbereiten von Daten

Zuvor müssen Sie Beispieldaten vorbereiten. Wir unterstützen derzeit csv-, tsv- und jsonl-Dateien.

Gehen Sie zu GitHub, um „data.csv“ herunterzuladen, den goldenen Datensatz für die Webklassifizierungsprobe.

Evaluieren

Wählen Sie die Schaltfläche Auswerten neben der Schaltfläche Ausführen, dann wird ein rechtes Fenster angezeigt. Es handelt sich dabei um einen Assistenten, der Ihnen beim Übermitteln einer Batchausführung und beim Auswählen der Auswertungsmethode (optional) hilft.

Sie müssen einen Batch-Laufnamen und eine Beschreibung festlegen und dann Neue Daten hinzufügen wählen, um die heruntergeladenen Daten hochzuladen. Nachdem Sie die Daten hochgeladen haben oder wenn Ihre Kolleg*innen bereits ein Dataset im Arbeitsbereich erstellt haben, können Sie das Dataset in der Dropdownliste auswählen und eine Vorschau der ersten fünf Zeilen anzeigen. Die Dropdownliste für die Datasetauswahl unterstützt die Suche und die Vorschlagssuche.

Darüber hinaus unterstützt die Eingabezuordnung das Zuordnen Ihrer Floweingabe zu einer bestimmten Datenspalte in Ihrem Dataset. Dies bedeutet, dass Sie eine beliebige Spalte als Eingabe verwenden können, auch wenn die Spaltennamen nicht übereinstimmen.

Screenshot einer Batchausführung mit der Auswertung und hervorgehobener Option „Neue Daten hochladen“

Wählen Sie dann eine oder mehrere Bewertungsmethoden aus. Die Auswertungsmethoden sind ebenfalls Flows, die Python oder LLMs usw. verwenden, um Metriken wie Genauigkeit oder Relevanzscore zu berechnen. Die eingebauten und die benutzerdefinierten Bewertungsflows sind auf der Seite aufgeführt. Da es sich bei der Webklassifizierung um ein Klassifizierungsszenario handelt, empfiehlt es sich, die Auswertung der Klassifizierungsgenauigkeit auszuwählen.

Screenshot der Webklassifizierung mit Batchausführung und -auswertung in Auswertungsmethoden

Wenn Sie sich dafür interessieren, wie die Metriken für die integrierten Bewertungsmethoden definiert sind, können Sie eine Vorschau der Evaluierungsabläufe anzeigen, indem Sie Mehr Details wählen.

Nach der Auswahl von Bewertung der Klassifizierungsgenauigkeit als Bewertungsmethode können Sie die Schnittstellenzuordnung so einstellen, dass die Grundwahrheit dem DurchFlow-Input und die Vorhersage dem DurchFlow-Output zugeordnet wird.

Screenshot der Webklassifizierung mit Batchausführung und -auswertung in den Einstellungen für die Auswertung

Wählen Sie dann Prüfung + Übermitteln, um einen Stapellauf und die ausgewählte Auswertung zu übermitteln.

Überprüfen der Ergebnisse

Wenn Ihr Lauf erfolgreich übermittelt wurde, wählen Sie Laufliste anzeigen, um zur Batch-Laufliste dieser Bewegung zu navigieren.

Der Batchlauf kann eine Weile dauern, bis er abgeschlossen ist. Sie können die Seite aktualisieren, um den aktuellen Status zu laden.

Nach Abschluss des Batch-Laufs wählen Sie den Lauf und dann Ausgaben visualisieren, um das Ergebnis Ihres Batchlaufs zu sehen. Wählen Sie Ausgaben anzeigen (Augensymbol), um die Auswertungsergebnisse an die Tabelle der Batchlaufergebnisse anzuhängen. Sie können die Gesamtzahl der Token und die Gesamtgenauigkeit sehen. In der Tabelle sehen Sie dann die Ergebnisse für jede Datenzeile: Eingabe, Flow-Ausgabe und Bewertungsergebnisse (welche Fälle richtig vorhergesagt wurden und welche nicht).

Screenshot: Detailseite der Batchausführung für die Webklassifizierung zum Anzeigen von Ausgaben

Sie können die Spaltenbreite anpassen, Spalten ein- und ausblenden und die Reihenfolge der Spalten ändern. Sie können auch Export wählen, um die Ausgabetabelle für weitere Untersuchungen herunterzuladen. Wir bieten 2 Optionen an:

  • Aktuelle Seite herunterladen: eine csv-Datei mit den Ausgaben des Batchlaufs auf der aktuellen Seite.
  • Alle Daten herunterladen: Sie laden eine Jupyter-Notebook-Datei herunter, die Sie ausführen müssen, um die Ausgaben im jsonl- oder csv-Format herunterzuladen.

Wie Sie vielleicht wissen, ist Genauigkeit nicht die einzige Metrik für die Auswertung einer Klassifizierungsaufgabe, Sie können z. B. auch den Abruf verwenden, um sie auszuwerten. In diesem Fall können Sie Auswerten neben der Schaltfläche „Ausgaben visualisieren“ wählen und andere Auswertemethoden zur Auswertung auswählen.

Bereitstellung

Nachdem Sie einen Ablauf erstellt und ordnungsgemäß getestet haben, möchten Sie ihn möglicherweise als Endpunkt bereitstellen, damit Sie den Endpunkt für Echtzeit-Inferenzen aufrufen können.

Konfigurieren des Endpunkts

Wählen Sie den Link Batch-Lauf, dann werden Sie auf die Detailseite des Batch-Laufs weitergeleitet, wählen Sie Einführen. Ein Assistent wird angezeigt, über den Sie den Endpunkt konfigurieren können. Geben Sie einen Endpunkt und einen Bereitstellungsnamen an, wählen Sie eine virtuelle Maschine, stellen Sie Verbindungen her, nehmen Sie einige Einstellungen vor (Sie können die Standardeinstellungen verwenden) und wählen Sie Überprüfen + Erstellen, um die Bereitstellung zu starten.

Testen des Endpunkts

Sie können die Detailseite Ihres Endpunkts von der Benachrichtigung aus aufrufen oder indem Sie in der linken Navigation des Studios zu Endpunkte navigieren und dann Ihren Endpunkt auf der Registerkarte Echtzeit-Endpunkte auswählen. Die Bereitstellung des Endpunkts dauert einige Minuten. Nachdem der Endpunkt erfolgreich bereitgestellt wurde, können Sie ihn auf der Registerkarte Testen testen.

Geben Sie die zu testende URL in das Eingabefeld ein und wählen Sie Test, dann sehen Sie das von Ihrem Endpunkt vorhergesagte Ergebnis.

Bereinigen von Ressourcen

Wenn Sie mit den Schrittanleitungen fortfahren möchten und die hier erstellten Ressourcen verwenden möchten, fahren Sie mit Nächste Schritte fort.

Beenden der Compute-Instanz

Wenn Sie die Compute-Instanz jetzt nicht verwenden möchten, beenden Sie sie:

  1. Wählen Sie im Studio im linken Navigationsbereich Compute aus.
  2. Wählen Sie auf den oberen Registerkarten Compute-Instanzen aus.
  3. Wählen Sie in der Liste die Compute-Instanz aus.
  4. Wählen Sie auf der oberen Symbolleiste Beenden aus.

Löschen aller Ressourcen

Wenn Sie die erstellten Ressourcen nicht mehr benötigen, löschen Sie diese, damit Ihnen keine Kosten entstehen:

  1. Wählen Sie ganz links im Azure-Portal Ressourcengruppen aus.
  2. Wählen Sie in der Liste die Ressourcengruppe aus, die Sie erstellt haben.
  3. Wählen Sie die Option Ressourcengruppe löschen.

Nächste Schritte

Nachdem Sie nun eine Vorstellung davon haben, was beim Entwickeln, Testen, Auswerten und Bereitstellen eines Flows zu beachten ist, erfahren Sie in den folgenden Tutorials mehr über den Prozess: