Dieses Repo zeigt, wie Sie Modelle über S & P AI -Benchmarks ausführen. Alle konfigurierten Modelle sind in config.py
zu sehen. Es ist einfach, entweder Ihre eigenen Modelle zur Konfiguration hinzuzufügen oder mit Befehlszeilenoptionen Modelle auszuführen.
Bitte laden Sie die Fragen der Einreichungsseite unserer S & P AI Benchmarks-Website herunter und speichern Sie sie direkt in diesem Ordner, benchmarks-pipeline/benchmark_questions.json
.
# We recommend using python 3.10.6 with pyenv
pyenv install 3.10.6
pyenv local 3.10.6
virtualenv -p python3.10.6 .benchmarks
source .benchmarks/bin/activate
# Install the requirements in your local environment
pip install -r requirements.txt
Hardwareanforderungen: Die meisten Modelle, die schnell auf der CPU ausgeführt werden können, erfolgen bei diesem Benchmark nicht gut. Wir empfehlen, ein System mit GPUs zu verwenden. Um das Gerät einzustellen, verwenden Sie den Parameter --device_map
.
Wir stellen die Eingabeaufforderungen zur Verfügung, die wir zur Bewertung verwenden. Derzeit verwenden alle Modelle dieselben Eingabeaufforderungen für einen bestimmten Fragetyp. Wir ermöglichen Modellen mehrere Versuche, eine Antwort im erwarteten Format zu generieren. Ohne diesen Wiederholungsschritt stellen wir fest, dass einige Modelle durch unsere Antwort analysieren werden: Sie ergeben die richtige Antwort im falschen Format. Daher erlauben wir Modelle bis zu 10 Versuche, eine Antwort im erwarteten Format zu generieren. Der Quellcode in diesem Repo erledigt dies standardmäßig, kann jedoch durch den Parameter -t, --answer_parsing_tries_alloted
gesteuert werden.
Wir stellen eine Reihe von Konfigurationen für Open Source- und Propietärmodelle in config.py
bereit. Wenn Sie eines dieser Modelle verwenden möchten, verwenden Sie die in config.py
aufgeführten Codes. Sie können auch ein HarmgingFace -Modell durch die Befehlszeilen -Argumente konfigurieren.
python main.py -m Mistral-7B-v0.1-cot
# or:
python main.py -n mistralai/Mistral-7B-v0.1 --prompt_style cot --max_new_tokens 12 --answer_parsing_tries_alloted 1
Der Ausgangs -CSV enthält Spalten für die Frage -ID und die Antwort ohne Header. Eine Beispielausgabe finden Sie results/Mistral-7B-v0.1-cot.csv
.
# A snapshot from the example output.
35c06bfe-60a7-47b4-ab82-39e138abd629,13428.0
33c7bd71-e5a3-40dd-8eb0-5000c9353977,-4.5
7b60e737-4f0a-467b-9f73-fa5714d8cdbb,41846.0
0a3f6ada-b8d3-48cc-adb4-270af0e08289,2.0
03999e5f-05ee-4b71-95ad-c5a61aae4858,2.0
Wenn Sie ein neues Modell hinzufügen möchten, fügen Sie der _CONFIG
-Variablen in config.py hinzu. Zum Beispiel fügt das folgende Snippet das Zephyr -Modell mit benutzerdefinierten Standard -Standard max_new_tokens
hinzu. Sie müssen außerdem den Eingabeaufforderung für Ersteller auswählen, den Sie verwenden möchten. Dies steuert die für jede Frage erstellten Eingabeaufforderungen. Wir bieten zwei, code_prompt_creater
und cot_prompt_creator
.
_CONFIG = {
...,
"example-zepyhr-code" : lambda : (
HFChatModel (
"HuggingFaceH4/zephyr-7b-beta" ,
device_map = "auto" ,
generation_kwargs = { "max_new_tokens" : 2048 },
),
code_prompt_creator ,
),
}
Für dieses spezielle Modell hätten Sie die Befehlszeile direkt verwenden können:
python main.py -n HuggingFaceH4/zephyr-7b-beta --prompt_style code --max_new_tokens 2048 --device_map auto
Laden Sie Ihre Ergebnisse in S & P AI -Benchmarks hoch! Siehe die Seite hier unter https://benchmarks.kenho.com.
Dieses Repo soll als Vorlage für weitere Experimente dienen!
Bitte wenden Sie sich an [email protected]
mit Fragen.
Copyright 2024-präsentiertes Kensho Technologies, LLC.