UStackUStack
BenchSpan icon

BenchSpan

BenchSpan führt KI-Agent-Benchmarks parallel aus, erfasst Scores und Fehler in einer geordneten Run-Historie und macht Ergebnisse commit-gebunden reproduzierbar.

BenchSpan

Was ist BenchSpan?

BenchSpan hilft Teams, KI-Agent-Benchmarks schneller, reproduzierbarer und einfacher zu teilen auszuführen. Statt Agenten manuell in verschiedene Benchmark-Harnesses zu integrieren und Ergebnisse in verstreute Dateien zu kopieren, standardisiert BenchSpan die Benchmark-Ausführung und leitet Scores, Fehler und Zeiten in eine geordnete Run-Historie.

Sein Kernzweck ist es, Zeit und Kosten für Benchmark-Suiten (einschließlich großer Sweeps mit Hunderten Instanzen) zu reduzieren, während das Vertrauen in Ergebnisse durch Bindung an den Commit-Hash des Agents und einfachere Vergleiche nebeneinander steigt.

Wichtige Features

  • Benchmark-Runner, der Agent-Setup via Shell-Skript standardisiert: BenchSpan kann Agenten ausführen, die per Bash-Befehl starten, und minimiert Klebercode sowie harness-spezifische Interfaces.
  • Benchmark-Bibliothek plus eigene Benchmarks: Wählen Sie aus einer inkludierten Benchmark-Sammlung oder bringen Sie Ihre eigene Benchmark-Definition mit.
  • Parallele Ausführung mit isolierten Docker-Containern: Jede Benchmark-Instanz läuft in einem eigenen Docker-Container und kann parallel ausgeführt werden, für deutlich schnellere Abschlüsse großer Suiten.
  • Automatische Ergebniserfassung und -organisation: BenchSpan erfasst Scores, Trajektorien, Fehler und Zeiten und organisiert sie für spätere Vergleiche.
  • Commit-gebundene Runs für Reproduzierbarkeit und Vergleich: Ergebnisse werden mit dem Commit-Hash des Agents getaggt, damit Teams Runs vergleichen und wissen können, welcher Code welche Zahlen erzeugt hat.
  • Nur fehlgeschlagene Instanzen neu ausführen: Bei partiellen Fehlern (z. B. Netzwerkfehler oder Rate-Limits bei manchen Instanzen) können nur die fehlgeschlagenen neu gestartet werden, statt alles zu wiederholen.

So verwenden Sie BenchSpan

  1. Onboarden Sie Ihren Agenten, indem Sie ein Bash-Skript schreiben, das den Agenten startet, und weisen Sie BenchSpan darauf hin.
  2. Wählen Sie einen Benchmark aus der BenchSpan-Bibliothek oder verwenden Sie einen eigenen.
  3. Führen Sie die Suite aus, indem Sie die Anzahl der Instanzen festlegen und den Run starten; BenchSpan führt Instanzen parallel in Docker-Containern aus.
  4. Überprüfen Sie Ergebnisse in der geordneten Ausgabe, vergleichen Sie Runs mit den Commit-Hash-Tags. Bei Fehlern bei manchen Instanzen führen Sie nur diese neu aus.

Anwendungsfälle

  • Agent-Iterationen im Development vergleichen: Führen Sie eine Benchmark-Suite nach Prompt- oder Agent-Code-Updates aus, dann vergleichen Sie Erfolgsraten und Fehlerpatterns über Commits.
  • SWE-ähnliche Evaluations auf Hunderte Instanzen skalieren: Führen Sie große Benchmark-Suiten aus, die sequentiell unpraktikabel wären, wobei parallele Docker-Ausführung die Gesamtlaufzeit reduziert.
  • Von partiellen Fehlern erholen, ohne von vorn zu beginnen: Bei Fehlern durch Rate-Limits oder Timeouts nur die fehlgeschlagenen Instanzen neu ausführen statt der gesamten Suite.
  • Team-Zusammenarbeit bei Benchmark-Claims: Teilen Sie einen einzigen Benchmark-Run-Eintrag mit dem Team, damit Ergebnisse nicht in separaten Tabellen oder Chats verloren gehen.
  • Agenten mit unterschiedlichen Prompts oder Konfigurationen testen: Verfolgen Sie, welche Prompt-Version und Code-Commit welche Ergebnisse erzeugten, via commit-gebundener Runs, um Streitigkeiten über „welche Config“ zu vermeiden.

FAQ

  • Welche Art von Agenten unterstützt BenchSpan? Die Seite besagt, dass „jeder Agent, der via Bash läuft“ funktioniert, d. h. Sie starten den Agenten mit einem Shell-Befehl und BenchSpan integriert darüber.

  • Laufen Benchmarks sequentiell oder parallel? BenchSpan führt Benchmark-Instanzen parallel aus, jede isoliert in einem eigenen Docker-Container.

  • Wie geht BenchSpan mit fehlgeschlagenen Runs um? Bei Fehlern mancher Instanzen kann BenchSpan nur diese fehlgeschlagenen neu ausführen, statt die gesamte Suite neu zu starten.

  • Wie werden Ergebnisse für Vergleiche organisiert? Ergebnisse (Scores, Trajektorien, Fehler und Zeiten) werden erfasst, organisiert und mit dem Commit-Hash des Agents getaggt für Vergleiche nebeneinander.

Alternativen

  • Lokale oder Single-Machine-Benchmark-Skripte: Das Ausführen von Benchmark-Suites auf einem Laptop kann anfangs einfacher sein, aber der Workflow ist langsamer, und Ergebnisse bleiben oft fragmentiert, es sei denn, Sie bauen eigenes Tracking- und Reproduzierbarkeits-Tooling.
  • Manuelle Orchestrierung mit Docker und Custom-Harness-Glue: Sie können mit Containern parallelisieren und Glue-Code für jeden Benchmark schreiben, müssen aber weiterhin Interface-Shims, Resume-Logik und eine zentrale Ergebnis-Historie implementieren.
  • Ad-hoc-Logging von Ergebnissen in Spreadsheets/Notion/Slack: Das Kopieren von Zahlen in geteilte Dokumente kann für kleine Experimente funktionieren, bietet aber keine standardisierte Run-Verwaltung, commit-gebundene Historie oder strukturierte Vergleiche automatisch.
BenchSpan | UStack