Grundlegendes zum Entwicklungslebenszyklus einer LLM-App (Large Language Model)
Bevor Sie verstehen, wie Sie mit prompt flow arbeiten, lassen Sie uns den Entwicklungslebenszyklus einer Large Language Model (LLM)-Anwendung untersuchen.
Der Lebenszyklus umfasst die folgenden Phasen:
- Initialisierung: Definieren Sie den Anwendungsfall und entwerfen Sie die Lösung.
- Experimentieren: Entwickeln Sie einen Flow und testen Sie mit einem kleinen Dataset.
- Auswertung und Verfeinerung: Bewerten sie den Flow mit einem größeren Dataset.
- Produktion: Bereitstellen und Überwachen des Flows und der Anwendung.
Sowohl bei der Auswertung als auch bei der Verfeinerung und Produktion stellen Sie möglicherweise fest, dass Ihre Lösung verbessert werden muss. Sie können wieder auf Experimente zurückgreifen, bei denen Sie Ihren Flow kontinuierlich weiterentwickeln, bis Sie mit den Ergebnissen zufrieden sind.
Lassen Sie uns jede dieser Phasen näher erkunden.
Initialisierung
Stellen Sie sich vor, Sie möchten eine LLM-Anwendung zur Klassifizierung von Nachrichtenartikeln entwerfen und entwickeln. Bevor Sie mit dem Erstellen eines Vorgangs beginnen, müssen Sie definieren, welche Kategorien als Ausgabe verwendet werden sollen. Sie müssen verstehen, wie ein typischer Nachrichtenartikel aussieht, wie Sie den Artikel als Eingabe für Ihre Anwendung präsentieren und wie die Anwendung die gewünschte Ausgabe generiert.
Mit anderen Worten, während der Initialisierung können Sie:
- Das Ziel definieren
- Einen Beispieldatensatz sammeln
- Eine einfache Eingabeaufforderung erstellen
- Den Flow entwerfen
Um eine LLM-Anwendung zu entwerfen, zu entwickeln und zu testen, benötigen Sie ein Beispiel-Dataset, das als Eingabe dient. Ein Beispiel-Dataset ist eine kleine repräsentative Teilmenge der Daten, die Sie schließlich als Eingabe für Ihre LLM-Anwendung analysieren möchten.
Beim Sammeln oder Erstellen des Beispiel-Datasets sollten Sie auf eine große Vielfalt der Daten achten, um verschiedene Szenarien und Randfälle abzudecken. Außerdem sollten Sie alle vertraulichen Datenschutzinformationen aus dem Dataset entfernen, um Sicherheitsrisiken zu vermeiden.
Experimentieren
Sie haben ein Beispiel-Dataset von Nachrichtenartikeln gesammelt und entschieden, in welche Kategorien die Artikel eingeteilt werden sollen. Sie haben einen Flow entwickelt, der einen Nachrichtenartikel als Eingabe verwendet und einen LLM zum Klassifizieren des Artikels verwendet. Um zu testen, ob Ihr Flow die erwartete Ausgabe generiert, führen Sie ihn mit Ihrem Beispiel-Dataset aus.
Die Experimentierphase ist ein iterativer Prozess, bei dem Sie (1) den Flow für ein Beispiel-Dataset ausführen. Anschließend (2) bewerten Sie die Leistung der Eingabeaufforderung. Wenn Sie (3) mit dem Ergebnis zufrieden sind, können Sie mit der Auswertung und Verfeinerung fortfahren. Wenn Sie denken, dass es Verbesserungsmöglichkeiten gibt, können Sie (4) den Flow ändern, indem Sie die Eingabeaufforderung oder den Flow selbst ändern.
Auswertung und Verfeinerung
Wenn Sie mit der Ausgabe des Flows zufrieden sind, der Nachrichtenartikel basierend auf dem Beispiel-Dataset klassifiziert, können Sie die Leistung des Flows anhand eines größeren Datasets bewerten.
Indem Sie den Flow an einem größeren Dataset testen, können Sie beurteilen, wie gut sich die LLM-Anwendung auf neue Daten verallgemeinern lässt. Bei der Auswertung können Sie potenzielle Engpässe oder Bereiche zur Optimierung oder Verfeinerung identifizieren.
Wenn Sie Den Flow bearbeiten, sollten Sie ihn zuerst für ein kleineres Dataset ausführen, bevor Sie ihn erneut für ein größeres Dataset ausführen. Wenn Sie Ihren Flow mit einem kleineren Dataset testen, können Sie schneller auf Probleme (Issues) reagieren.
Sobald sich Ihre LLM-Anwendung als robust und zuverlässig bei der Handhabung verschiedener Szenarien erweist, können Sie beschließen, die LLM-Anwendung in die Produktion zu überführen.
Produktion
Schließlich ist Ihre Anwendung zur Klassifizierung von Nachrichtenartikeln bereit für die Produktion.
Während der Produktion:
- Optimieren Sie den Flow, der eingehende Artikel für Effizienz und Effektivität klassifiziert.
- Stellen Sie Ihren Flow auf einem Endpunkt bereit. Wenn Sie den Endpunkt aufrufen, wird der Ablauf zum Ausführen ausgelöst, und die gewünschte Ausgabe wird generiert.
- Überwachen Sie die Leistung Ihrer Lösung, indem Sie Nutzungsdaten und Endbenutzerfeedback sammeln. Wenn Sie verstehen, wie die Anwendung funktioniert, können Sie den Flow bei Bedarf verbessern.
Erkunden Sie den gesamten Lebenszyklus der Entwicklung
Nachdem Sie die einzelnen Phasen des Entwicklungslebenszyklus einer LLM-Anwendung verstanden haben, können Sie sich mit der vollständigen Übersicht vertraut machen: