aoti-debug
Offizieller PyTorch-Leitfaden zum systematischen Debuggen von AOTInductor-Fehlern.
- Skill Road
- aoti-debug
Kategorien
aoti-debug ist ein offizieller Skill aus dem PyTorch-Quellrepository für die Untersuchung von Fehlern und Abstürzen in AOTInductor, kurz AOTI. Er richtet sich an Entwicklerinnen und Entwickler, die mit Ahead-of-Time kompilierten PyTorch-Modellen arbeiten und bei aot_compile, aot_load, aoti_compile_and_package oder aoti_load_package unerwartete Laufzeitfehler sehen. Laut Anbieter deckt die Anleitung unter anderem Segmentation Faults, Gerätefehler, Probleme beim Laden von Konstanten, falsche Ausgaben, CUDA-Fehler und Triton-Assertions ab. Der Katalogeintrag beschreibt deshalb einen fokussierten Diagnoseleitfaden für Claude Code im PyTorch-Quellbaum und kein eigenständiges Laufzeitpaket, keinen Compiler und keine automatische Reparatur.
Zweck und Einordnung
Die wichtigste erste Prüfung ist laut Anbieter unabhängig vom konkreten Fehlerbild die Übereinstimmung von Kompiliergerät, Ladegerät, Eingabegeräten und Eingabeformen. Ein auf CUDA erzeugtes AOTI-Artefakt darf nicht einfach auf CPU geladen werden, während ein CPU-Artefakt auf CPU bleiben muss. Unterschiedliche Geräteindizes können je nach aktuellem API-Pfad möglich sein, ein Wechsel des Gerätetyps ist jedoch nicht vorgesehen. Ebenso müssen Eingaben die beim Kompilieren erwarteten Formen, Datentypen und Strides einhalten oder durch ausdrücklich modellierte dynamische Formbedingungen abgedeckt sein. Diese Reihenfolge verhindert, dass ein offensichtlicher Vertragsbruch vorschnell als tiefer Compilerfehler analysiert wird.
Diagnose von Laufzeitfehlern
Bei Eingabefehlern empfiehlt die Primärquelle die Laufzeitprüfung über AOTI_RUNTIME_CHECK_INPUTS. Sie kann Abweichungen bei Gerätetyp, Datentyp, Größe und Stride verständlicher melden. Bei CUDA Illegal Memory Access schlägt der Anbieter zunächst zusätzliche Prüfungen wie TORCHINDUCTOR_NAN_ASSERTS vor und empfiehlt anschließend Maßnahmen, die asynchrone oder nichtdeterministische Fehler besser eingrenzen. CUDA_LAUNCH_BLOCKING kann die Kernel-Ausführung synchronisieren. PYTORCH_NO_CUDA_MEMORY_CACHING kann die Wirkung des Caching Allocators aus dem Fehlerbild herausnehmen. Diese Einstellungen gehören in eine kontrollierte Entwicklungsumgebung und müssen mit dem konkreten PyTorch-Stand, dem Backend und der vorhandenen Hardware abgeglichen werden.
Kernel und Zwischenwerte
Für die Lokalisierung eines problematischen Kernels verweist der Skill auf den AOTInductor Intermediate Value Debugger. AOT_INDUCTOR_DEBUG_INTERMEDIATE_VALUE_PRINTER kann erzeugte Kernel schrittweise sichtbar machen. Mit einem passenden Filter lassen sich bestimmte Kernel und ihre Eingaben untersuchen. Zusätzlich können TORCH_LOGS mit Inductor- und Output-Code-Informationen sowie TORCH_SHOW_CPP_STACKTRACES weitere Kontextdaten liefern. Laut Anbieter sind dynamische Formen und eigene C++-Operatoren häufige Ausgangspunkte für Fehler; bei eigenen Operatoren kann insbesondere die Meta-Funktion für SymInt-Anforderungen geprüft werden. Diese Hinweise sind Diagnosewege, keine Garantie, dass eine einzelne Umgebungsvariable die Ursache behebt.
Triton und dynamische Formen
Ein mitgelieferter Unterleitfaden behandelt Triton-Assertions mit dem Muster index out of bounds. Dafür wird das AOTI-Paket beziehungsweise das extrahierte Archiv mit seiner Wrapper-Datei benötigt. Die Untersuchung verbindet die fehlgeschlagene Assertion mit dem generierten Kernel, dem dynamischen Größenparameter, dem zugehörigen Modelleingang und den Quellknoten. Leere Tensoren, fehlende untere Schranken und nicht getestete Randfälle sind typische Hypothesen. Der Leitfaden empfiehlt, leere und minimale Formen bereits beim Export zu berücksichtigen oder den Modellpfad für leere Eingaben ausdrücklich abzusichern. Änderungen müssen anschließend mit relevanten PyTorch-Tests und fachlicher Prüfung bestätigt werden.
API-Stand und Grenzen
Die Primärquelle unterscheidet veraltete APIs wie torch._export.aot_compile und torch._export.aot_load von den aktuellen Funktionen torch._inductor.aoti_compile_and_package und torch._inductor.aoti_load_package. Der neue Paketpfad speichert laut Anbieter Gerätemetadaten und wählt dadurch den passenden Gerätetyp beim Laden; ein Wechsel des Gerätetyps bleibt ausgeschlossen. Der Skill ersetzt keine Release- oder Backend-Prüfung und garantiert weder numerische Gleichheit noch identische Laufzeit. Er setzt einen kontrollierten Arbeitsbaum, reproduzierbare Eingaben, Kenntnisse über PyTorch-Compilation und eine Prüfung generierter Artefakte voraus. Secrets, private Modelle und sensible Eingabedaten gehören nicht in Logs oder Beispielmaterial.
Quelle, Sicherheit und Kompatibilität
Die Primärquelle ist https://github.com/pytorch/pytorch/tree/main/.claude/skills/aoti-debug. Ergänzend beschreibt die offizielle PyTorch-Dokumentation unter https://docs.pytorch.org/docs/main/user_guide/torch_compiler/torch.compiler_aot_inductor.html den AOTInductor-Kontext für exportierte Modelle. PyTorch veröffentlicht seinen Quellbaum unter BSD-3-Clause. Diese Beschreibung wurde am 9. September 2026 geprüft. GitHub-Sterne werden nicht gespeichert, weil das Skill-Modell kein github_stars-Feld besitzt. Die Kompatibilität mit Claude Code folgt aus der Veröffentlichung unter .claude/skills; technische Ergebnisse hängen vom PyTorch-Commit, Betriebssystem, Backend und Gerät ab. Laut Anbieter sollte jede Diagnose mit minimalen, reproduzierbaren Eingaben erfolgen und Änderungen sollten vor dem Übernehmen geprüft werden.
- Anbieter
- PyTorch
- Lizenz
- BSD-3-Clause
- Zuletzt geprüft
- 09.09.2026
Repository und Dokumentation
Kategorien
Kompatibel mit
Passende Ratgeber
Anleitungen und Hintergrund, die zu diesem Eintrag passen.
Fakechat-Plugin für Claude Code einrichten
Das Fakechat-Plugin installieren, Claude Code mit Channels-Schalter starten und über eine lokale Browser-Oberfläche Nachrichten und Dateien testen.
30.09.2026
Laravel Boost einrichten
Laravel Boost in einer Laravel-Anwendung installieren und mit Claude Code, Cursor oder Codex verbinden.
29.09.2026
Azure DevOps MCP Server einrichten
Azure DevOps MCP Server einrichten mit geprüften Links, minimalen Rechten und sicherem ersten Test starten.
25.09.2026
Ein Claude-Code-Plugin installieren
Ein Plugin aus dem offiziellen Anthropic-Marketplace installieren – am Beispiel des Code-Review-Plugins.
24.09.2026