PhysUniBenchmark ist ein Open-Source-Benchmarking-Tool für multimodale Physikprobleme, das auf GitHub gehostet und vom PrismaX-Team entwickelt wird. Es wurde entwickelt, um die Fähigkeiten multimodaler Makromodelle bei der Bearbeitung von Physikproblemen im Grundstudium zu bewerten, mit besonderem Schwerpunkt auf komplexen Szenarien, die eine Kombination aus konzeptionellem Verständnis und visueller Interpretation erfordern. Der Datensatz enthält verschiedene physikalische Probleme, die ein breites Spektrum von Bereichen wie Mechanik, Elektromagnetismus und Optik abdecken, mit Themen in Form von textlichen Beschreibungen, Formeln, Bildern und Diagrammen. Das Tool bietet Forschern und Entwicklern eine standardisierte Testplattform, um die Leistung großer Modelle bei physikalischen Schlussfolgerungen und multimodalen Aufgaben zu analysieren. Die Projektdokumentation ist detailliert und leicht zugänglich und nutzbar, so dass sie sich für die akademische Forschung und die Modelloptimierung eignet.
Funktionsliste
- Bietet groß angelegte multimodale Physik-Problemdatensätze, die ein breites Spektrum von Physikdisziplinen auf Undergraduate-Ebene abdecken.
- Unterstützung der standardisierten Bewertung der Argumentationsfähigkeit multimodaler Makromodelle.
- Enthält eine Vielzahl von Themenarten wie Wörter, Formeln, Bilder und Diagramme, um das allgemeine Verständnis zu testen.
- Open-Source-Code und -Datensätze, die von den Nutzern frei heruntergeladen, verändert und erweitert werden können.
- Ausführliche Dokumentation und Benutzerhandbücher unterstützen die schnelle Inbetriebnahme.
- Unterstützung bei der Erstellung von Bewertungsberichten zur Analyse der Leistung des Modells in verschiedenen physikalischen Bereichen.
Hilfe verwenden
Anschaffung und Installation
PhysUniBenchmark ist ein GitHub-basiertes Open-Source-Projekt, auf das Benutzer zugreifen und es nutzen können, indem sie die folgenden Schritte ausführen:
- Klon-Lager
Öffnen Sie ein Terminal und führen Sie den folgenden Befehl aus, um das Projekt lokal zu klonen:git clone https://github.com/PrismaX-Team/PhysUniBenchmark.git
Stellen Sie sicher, dass Git installiert ist; falls nicht, können Sie es von der Git-Website Herunterladen und installieren.
- Installation von Abhängigkeiten
Rufen Sie den Projektkatalog auf:cd PhysUniBenchmark
Das Projekt hängt von einer Python-Umgebung ab (Python 3.8 oder höher wird empfohlen). Installieren Sie die erforderlichen Abhängigkeiten und führen Sie es aus:
pip install -r requirements.txt
requirements.txt
listet alle notwendigen Python-Bibliotheken auf, wie z. B. NumPy, Pandas und Matplotlib. Falls die Datei fehlt, können Sie sie manuell installieren, indem Sie die Abhängigkeitsliste in der Projektdokumentation zu Rate ziehen. - Datensatz Download
Die Datensätze werden in GitHub-Repositories oder externen Links gespeichert. Benutzer können auf das Repository direkt über diedata
herunterzuladen, oder folgen Sie dem Link in der Dokumentation, um auf den vollständigen Datensatz zuzugreifen. Nach dem Herunterladen entpacken Sie den Datensatz in den angegebenen Ordner im Projektverzeichnis (der Standardpfad istdata/
). - Konfiguration der Umgebung
Stellen Sie sicher, dass die lokale Umgebung multimodale große Modelle unterstützt (z. B. GPT-4o oder andere Open-Source-Modelle). Die Benutzer müssen die Umgebungsvariablen oder Modellpfade entsprechend der API des Modells oder den lokalen Einsatzanforderungen konfigurieren. Detaillierte Konfigurationsschritte sind im Projekt beschriebenREADME.md
Es gibt eine Beschreibung.
Verwendungsprozess
Die Kernfunktion von PhysUniBenchmark besteht darin, die Leistung multimodaler großer Modelle bei physikalischen Problemen zu bewerten. Nachfolgend sind die Schritte aufgeführt, um dies zu tun:
- Vorbereiten des Modells
Die Benutzer müssen ein großes Modell erstellen, das multimodale Eingaben (Text und Bilder) unterstützt. Eine gängige Wahl sind GPT-4o, LLaVA oder andere Open-Source-Modelle. Stellen Sie sicher, dass das Modell bereitgestellt wird und über die API oder lokal aufgerufen werden kann. - Laden von Datensätzen
Das Projekt bietet ein Python-Skriptload_data.py
zum Laden des Datensatzes. Führen Sie den folgenden Befehl aus:python load_data.py --path data/
Das Skript analysiert die Probleme im Datensatz, einschließlich Text, Formeln und Bilder, und erzeugt Eingabeformate, die vom Modell verarbeitet werden können.
- Operative Bewertung
Verwenden Sie die mitgelieferten Bewertungsskripteevaluate.py
Testen Sie die Leistung des Modells. Beispielbefehl:python evaluate.py --model <model_name> --data_path data/ --output results/
<model_name>
Modellname: Geben Sie den Modellnamen oder den API-Schlüssel an.--data_path
: Der Pfad, in dem sich der Datensatz befindet.--output
: Speicherpfad für Bewertungsergebnisse.
Das Skript speist automatisch Fragen in das Modell ein, sammelt die Antworten und erstellt einen Bewertungsbericht.
- Analyse
Sobald die Bewertung abgeschlossen ist, werden die Ergebnisse in der Dateiresults/
Ordner im Format einer CSV- oder JSON-Datei. Der Bericht enthält Genauigkeit, Fehleranalyse und Leistungsstatistiken des Modells in verschiedenen physikalischen Bereichen (z. B. Mechanik, Elektromagnetismus). Benutzer können dievisualize.py
Skripte zur Erstellung visueller Diagramme:python visualize.py --results results/eval_report.csv
Zu den Diagrammen gehören Balkendiagramme und Liniendiagramme, die die Unterschiede in der Modellleistung in den verschiedenen Bereichen zeigen.
Featured Function Bedienung
- Prüfung von multimodalen Problemen
Die Aufgaben im Datensatz kombinieren Text, Formeln und Bilder. Ein Mechanikproblem kann zum Beispiel eine textliche Beschreibung der Bewegung eines Objekts, ein Kraftdiagramm und ein Geschwindigkeits-Zeit-Diagramm enthalten. Die Benutzer können diepreprocess.py
Das Skript verarbeitet diese Eingaben vor, um sicherzustellen, dass das Modell sie korrekt analysieren kann:python preprocess.py --input data/sample_problem.json
Die vorverarbeiteten Daten werden in ein für das Modell erkennbares Format umgewandelt, z. B. JSON oder eingebettete Vektoren.
- Benutzerdefinierte Erweiterungen
Benutzer können dem Datensatz neue Fragen hinzufügen. Das Fragenformat muss der JSON-Vorlage in der Projektdokumentation entsprechen und Folgendes enthaltenquestion
(Problembeschreibung),image
(Bildpfad),answer
(richtige Antwort) und andere Felder. Nachdem Sie sie hinzugefügt haben, führen Sievalidate_data.py
Validieren Sie das Datenformat:python validate_data.py --input data/new_problem.json
- vergleichende Analyse
Das Projekt unterstützt das gleichzeitige Testen von mehreren Modellen. Die Benutzer können mehrere Modelle gleichzeitig in derevaluate.py
Geben Sie im Skript mehrere Modellnamen an, und das Skript erstellt einen Vergleichsbericht, der die Leistungsunterschiede zwischen den verschiedenen Modellen für dasselbe Problem aufzeigt.
caveat
- Vergewissern Sie sich, dass Sie lokal über genügend Speicherplatz verfügen (Datensätze können groß sein, mindestens 10 GB werden empfohlen).
- Die GPU-Unterstützung kann für die Modellinferenz bei der Durchführung von Evaluierungen erforderlich sein, und es werden Geräte mit NVIDIA-GPUs empfohlen.
- Wenn Sie eine Cloud-basierte API (wie GPT-4o) verwenden, stellen Sie sicher, dass das Netzwerk stabil ist und konfigurieren Sie den richtigen API-Schlüssel.
Anwendungsszenario
- akademische Forschung
Forscher können PhysUniBenchmark verwenden, um die Leistung multimodaler Makromodelle bei physikalischen Schlussfolgerungen zu testen, die Grenzen des Modells zu analysieren und Daten zur Unterstützung der Modellverbesserung bereitzustellen. - Modellentwicklung
Entwickler können den Datensatz nutzen, um das Training multimodaler Modelle zu optimieren, insbesondere bei physikbezogenen Aufgaben, und um die visuelle und logische Argumentation der Modelle zu verbessern. - Pädagogische Hilfsmittel
Pädagogen können den Datensatz für Unterrichtszwecke nutzen, um Testreihen mit Physikproblemen zu erstellen, um Schülern beim Verständnis komplexer Konzepte zu helfen oder um die Leistung von KI-Lehrmitteln zu bewerten.
QA
- Welche Physikbereiche werden von PhysUniBenchmark unterstützt?
Der Datensatz deckt die Physikfächer Mechanik, Elektromagnetismus, Optik, Thermodynamik und Quantenmechanik ab und enthält eine breite Palette von Fragetypen. - Wie kann ich eine benutzerdefinierte Frage hinzufügen?
Erstellen Sie eine Fragedatei gemäß der JSON-Vorlage in der Projektdokumentation, die Text, Bilder und Antworten enthält, und führen Sie dann dievalidate_data.py
Überprüfen Sie das Format. - Welche Hardware-Unterstützung ist erforderlich?
Zur Beschleunigung der Modellinferenz werden Geräte mit Grafikprozessoren empfohlen; CPUs können ebenfalls eingesetzt werden, sind aber langsamer. Mindestens 16 GB RAM und 10 GB Speicherplatz. - Werden Open-Source-Modelle unterstützt?
Unterstützt jedes multimodale Modell wie LLaVA, CLIP usw. Die Umgebung muss entsprechend den Anforderungen des Modells konfiguriert werden.