Compute und Python

Führe isolierte CPU-Jobs aus und speichere Metriken, Abbildungen, Tabellen und Checkpoints.

Wo Code ausgeführt wird

Forschungscode wird in isolierten CPU-Containern auf AWS Batch ausgeführt. Die Engine wählt für jeden Durchlauf eine Maschinengröße aus, abhängig vom Plan des Zahlers. Jobs speichern ihre Ergebnisse in einem privaten Object Storage und melden den Abschluss über Callbacks und Polling.

Das Image enthält Python 3.12 und Bibliotheken wie NumPy, SciPy, pandas, Matplotlib, scikit-learn, statsmodels, PyTorch für CPU, BoTorch, SymPy, NetworkX, Z3 und python-sat. Durchläufe können zusätzliche PyPI-Anforderungen innerhalb der Dienstlimits anfordern. Dies ist CPU-Compute, kein GPU-Dienst.

Parameter, Seeds und Ergebnisse

Der vorinstallierte lasques-Helfer stellt Parameter und einen Seeded-Zufallsgenerator bereit. Speichere messbare Ergebnisse, anstatt nur ein Fazit zu drucken.

import lasques

params = lasques.params()
rng = lasques.rng()
values = rng.normal(size=int(params.get("n", 1000)))

lasques.set_metrics({"mean": float(values.mean())})
lasques.save_json({"seed": lasques.seed()}, "run-info")
lasques.summary("The mean is stored in the run metrics.")

Nutze lasques.log_metric für eine Metrikserie, save_figure für Abbildungen und save_table für tabellarische Ausgaben. Checkpoints können mit lasques.checkpoint gespeichert und geladen werden, bevor ein Job ein Timeout erreicht.

Maschinengrößen

MaschinevCPUSpeicherCredits pro Minute
basic11024 MiB2
standard-114096 MiB3
standard-216144 MiB5
standard-328192 MiB9
standard-4412288 MiB16

Die konfigurierte Startgröße ist standard-1. Plan-Obergrenzen und der frühere Speicherverbrauch von Durchläufen beeinflussen die spätere Dimensionierung.

Limits, Retries und Wiederverwendung

Eine Jobspezifikation enthält höchstens 100 Inline-Dateien und 2 MB Code. Der Dienst akzeptiert bis zu 200 Ausgabedateien und 50 MB an Ergebnissen; die Checkpoint-Speicherung hat dieselben Datei- und Größenbeschränkungen. Plan-Timeout-Limits können niedriger sein als das Dienstmaximum von 43200 s.

Ein neuer Versuch nutzt einen frischen Container und kann einen früheren Checkpoint wiederherstellen. Ein explizit mit einem Seed versehener Durchlauf kann einen erfolgreichen Durchlauf mit identischen Inputs und Code wiederverwenden. Die Wiederverwendung von Compute kostet null CPU Credits. Reviewer-Durchläufe, Evaluator-Durchläufe und vorregistrierte Bestätigungsdurchläufe nutzen diesen Cache nicht.

Der Optimizer und der Lean-Proof-Checker sind separate Dienste. Ihre internen APIs sind in der docs/compute-services.md des Repositories beschrieben; sie sind keine uneingeschränkte öffentliche Account-API.

Auf dieser Seite