Generative Systeme für künstliche Intelligenz (GenAI) werden zunehmend in allen Teilen der Industrie- und Forschungsumgebungen eingesetzt. Entwickler und Endbenutzer interagieren mit diesen Systemen mithilfe von Aufforderung oder sofortiger Engineering. Während die Aufforderung ein weit verbreitetes und hochforschendes Konzept ist, gibt es eine widersprüchliche Terminologie und ein schlechtes ontologisches Verständnis dessen, was aufgrund der Nascenz des Gebiets eine Aufforderung ausmacht. Dieses Repository ist der Kodex für den schnellen Bericht, unsere Forschung, in dem ein strukturiertes Verständnis von Aufforderungen festgelegt wird, indem eine Taxonomie der Aufforderungstechniken zusammengestellt und deren Verwendung analysiert wird. Dieser Code ermöglicht die automatisierte Überprüfung von Artikel, die Sammlung von Daten und das Ausführen von Experimenten. Unser Datensatz ist auf dem Umarmungsgesicht erhältlich und unser Papier ist auf arxiv.org erhältlich. Informationen finden Sie auch auf unserer Website.
Führen Sie nach dem Klonen pip install -r requirements.txt aus.
Erstellen Sie eine Datei am Root mit dem Namen .env .
Für OpenAI: https://platform.openai.com/docs/quickstart
Für das Umarmung: https://huggingface.co/docs/hub/security-tokens, auch huggingface-cli login ausführen
Für Sematic Scholar: https://www.semanticscholar.org/product/api#api-key
Verwenden Sie die example.env -Datei, um Ihre API -Schlüssel/Token auszufüllen.
OPENAI_API_KEY=sk.-...
SEMANTIC_SCHOLAR_API_KEY=...
HF_TOKEN=...
Geben Sie dann ein, um die Datei .Env zu laden:
pip install pytest-dotenv
Sie können auch die Env -Datei aktualisieren, indem Sie:
py.test --envfile path/to/.env
In dem Fall, dass Sie über mehrere .Env -Dateien verfügen, erstellen Sie im Ordner PyTest Config eine neue env_files und typen:
env_files =
.env
.test.env
.deploy.env
Das Skript main.py ruft die erforderlichen Funktionen auf, um alle Papiere herunterzuladen, zu deduplizieren und zu filtern und dann alle Experimente auszuführen.
Der Kern des Repositorys befindet sich in src/prompt_systematic_review . Das Skript config_data.py enthält Konfigurationen, die für das Ausführen von Experimenten und das Speichern von Zeit wichtig sind. Sie können in main.py sehen, wie einige dieser Optionen verwendet werden.
Der Quellordner ist in 4 Hauptabschnitte unterteilt: 3 Skripte ( automated_review.py , collect_papers.py , config_data.py ), die sich mit dem Sammeln der Daten und dem Ausführen der automatisierten Überprüfung befassen. Der Ordner utils enthält die Utility -Funktionen, die im gesamten Repository -Ordner enthält, das die get_papers enthält, die die Schüsse, die die experiments Downloads Die Schüsse enthält. Experimente.
Am Root befindet sich ein data . Es wird mit einigen Daten vorinstalliert, die für die Experimente verwendet werden. Der Großteil des Datensatzes kann jedoch entweder durch Ausführen main.py oder durch Herunterladen der Daten aus dem Umarmungsgesicht generiert werden. In data/experiments_output werden die Ergebnisse der Experimente gespeichert.
Insbesondere sind die im automatisierten Überprüfungs-/Abkreisprozess verwendeten Schlüsselwörter in src/prompt_systematic_review/utils/keywords.py . Jeder, der die automatisierte Bewertung ausführen möchte, kann diese Keywords in dieser Datei an seinen Geschmack anpassen.
git clone https://github.com/trigaten/Prompt_Systematic_Review.git && cd Prompt_Systematic_Review
pip install -r requirements.txt
# create a .env file with your API keys
nano .env
git lfs install
git clone https://huggingface.co/datasets/PromptSystematicReview/ThePromptReport
mv ThePromptReport/ * data/
python main.py Das Ausführen main.py wird die Papiere herunterladen, die automatisierte Bewertung ausführen und die Experimente ausführen. Wenn Sie jedoch Zeit sparen und nur die Experimente ausführen möchten, können Sie die Daten aus dem Umarmungsgesicht herunterladen und den Ordner der Papiere und alle CSV -Dateien im Datensatz in den Datenordner verschieben (sollte wie data/papers/*.pdf und data/master_papers.csv usw.). Passen Sie Main.Py entsprechend an.
Jedes Experiment -Skript hat eine run_experiment -Funktion, die in main.py aufgerufen wird. Die Funktion run_experiment ist für das Ausführen des Experiments und das Speichern der Ergebnisse verantwortlich. Jedes Skript kann jedoch einzeln ausgeführt werden, indem nur python src/prompt_systematic_review/experiments/<experiment_name>.py von root ausgeführt werden.
Es gibt ein Experiment, graph_internal_references , das aufgrund seltsamer Probleme mit der Parallelität besser als einzelnes Skript von Root aus ausgeführt wird. Um zu vermeiden, dass es Probleme mit anderen Experimenten verursacht, wird es zuletzt ausgeführt, wie es am Ende der Liste in experiments/__init__.py geordnet ist.