Allgemeine Einführung
PromptWizard ist ein von Microsoft entwickeltes Open-Source-Framework, das einen selbstentwickelnden Mechanismus verwendet, der es dem Modell ermöglicht, selbständig Prompt-Wörter zu generieren, zu bewerten und zu verbessern sowie Beispiele zu erzeugen und die Qualität der Ausgabe durch kontinuierliches Feedback zu verbessern. Es kann selbstständig Prompts optimieren, geeignete Beispiele generieren und auswählen, Argumentationen und Validierungen durchführen und schließlich qualitativ hochwertige Prompts ausgeben, wodurch der Arbeitsaufwand für die manuelle Promptentwicklung durch automatisierte Prozesse reduziert wird. Zu den Merkmalen gehören die Einbeziehung der Konzepte der Aufgabenintention und der Expertenrollen, die Verwendung eines Chain-of-Mind-Ansatzes zur Optimierung der Argumentation und die Kombination von positiven, negativen und synthetischen Beispielen zur Verbesserung der Leistung. Es ist an die Aufgabenanforderungen verschiedener Domänen anpassbar, stabil in der Leistung und unterstützt mehrere LLMs auf verschiedenen Skalen.
Funktionsliste
- Feedback-gesteuerte OptimierungKontinuierliche Verbesserung der Aufgabenerfüllung durch das Erarbeiten, Kritisieren und Verbessern von Tipps und Beispielen.
- Diverse Beispiele GenerationGenerating Robust and Task-Aware Synthetic Examples, Optimising Cues and Examples.
- Adaptive OptimierungOptimierung von Lehr- und Kontextlernbeispielen durch einen selbst-evolutionären Mechanismus.
- Multitasking-UnterstützungAnwendung auf mehrere Aufgaben und große Sprachmodelle zur Verbesserung der Modellgenauigkeit und -effizienz.
- KostengünstigErhebliche Senkung der Rechenkosten und effizientes Tip Engineering.
Hilfe verwenden
Ablauf der Installation
- Klon-Lager::
git clone https://github.com/microsoft/PromptWizard
cd PromptWizard
- Erstellen und Aktivieren einer virtuellen Umgebung::
- Fenster:
bash
python -m venv venv
venv\Scripts\aktivieren
- macOS/Linux:
bash
python -m venv venv
Quelle venv/bin/activate
- Fenster:
- Installateur::
pip install -e .
Richtlinien für die Verwendung
PromptWizard bietet im Wesentlichen drei Möglichkeiten der Nutzung:
- Optimieren Sie die Eingabeaufforderung für kein Beispiel::
- Ideal für Szenarien, in denen Optimierungshinweise benötigt werden, aber keine Trainingsdaten verfügbar sind.
- Generierung von Synthesebeispielen und Optimierung von Tipps::
- Optimieren Sie die Eingabeaufforderungen, indem Sie synthetische Beispiele für Aufgaben erstellen, die eine Unterstützung durch Beispiele erfordern.
- Optimierung der Tipps anhand von Trainingsdaten::
- Cue-Optimierung in Verbindung mit vorhandenen Trainingsdaten für Aufgaben mit umfangreicher Datenunterstützung.
Konfiguration und Einstellungen der Umgebungsvariablen
- Konfigurationsdatei::
- ausnutzen
promptopt_config.yaml
Datei, um die Konfiguration festzulegen. Für die Aufgabe GSM8k können Sie beispielsweise diese Datei verwenden, um die Konfiguration festzulegen.
- ausnutzen
- Umgebungsvariable::
- ausnutzen
.env
Datei, um Umgebungsvariablen zu setzen. Für die Aufgabe GSM8k können Sie zum Beispiel die folgenden Variablen setzen:Klartext
AZURE_OPENAI_ENDPOINT="XXXXX" # Ersetzen Sie mit Ihren Azure OpenAI Endpunkten
OPENAI_API_VERSION="XXXX" # Ersetzen durch API-Version
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME="XXXXX" # Modellbereitstellung erstellen und Bereitstellungsname platzieren
- ausnutzen
Arbeitsablauf
- Auswahl der Nutzungsszenarien::
- Auswahl geeigneter Nutzungsszenarien je nach Aufgabenstellung (keine Beispieloptimierung, synthetische Beispieloptimierung, Trainingsdatenoptimierung).
- Konfiguration der Umgebung::
- Setzen Sie Konfigurations- und Umgebungsvariablen für API-Aufrufe.
- Operative Optimierung::
- Führen Sie den PromptWizard aus, um die Prompts entsprechend dem gewählten Szenario zu optimieren.
typisches Beispiel
Nachfolgend ein einfaches Beispiel, das zeigt, wie Prompts mit PromptWizard optimiert werden können:
from promptwizard import PromptWizard
# Initialisierung des PromptWizard
pw = PromptWizard(config_file="promptopt_config.yaml")
# Szenarien auswählen und Optimierung durchführen
pw.optimise_scenario_1()
Mit diesen Schritten können Benutzer PromptWizard leicht installieren und zur Prompt-Optimierung verwenden, um die Aufgabenleistung in großen Sprachmodellen zu verbessern.