Anthropic hat einen C-Compiler veröffentlicht, der von dem KI-Modell Claude Opus erstellt wurde und in der Lage ist, den Linux-Kernel zu kompilieren.

Als Demonstration der Möglichkeit, eigenstĂ€ndig umfangreiche Projekte mit dem neuen AI-Modell Claude Opus 4.6 zu erstellen, hat das Unternehmen Anthropic einen Compiler fĂŒr die Programmiersprache C generiert – den claudes-c-compiler –, der fĂŒr den Bau des Linux-Kernels, PostgreSQL, SQLite, Redis, FFmpeg, GNU coreutils, Busybox, CPython, QEMU, LuaJIT und rund 150 weiteren bekannten, getesteten Open-Source-Projekten geeignet ist. Die resultierenden Builds haben die von den Projekten bereitgestellten Testsets erfolgreich bestanden. Der erzeugte Linux-Kernel lĂ€sst sich erfolgreich starten und ermöglicht das Spielen von Doom. Der Code des Compilers wurde in der Programmiersprache Rust generiert und als Public Domain (CC0) veröffentlicht. Die Kompilierung von Projekten fĂŒr die Architekturen x86_64, i686, AArch64 und RISC-V 64 wird unterstĂŒtzt.

Der gesamte Code und die Dokumentation des Compilers wurden von dem Modell Claude Opus 4.6 generiert. Die menschliche Beteiligung beschrĂ€nkte sich auf die Definition von TestfĂ€llen, die das Endprodukt erfĂŒllen muss. Der interaktive Modus fĂŒr die Entwicklung, das Debugging und die QualitĂ€tskontrolle wurde nicht verwendet; das Modell Claude Opus hat die gesamte Arbeit basierend auf den gegebenen Anforderungen selbst erledigt. Eine manuelle ÜberprĂŒfung der Korrektheit des Compilers fand nicht statt, daher wird er nicht empfohlen, außer fĂŒr Experimente. Die Testdurchlaufquote der Compiler-Sets, einschließlich der GCC Torture Tests, betrĂ€gt 99%.

FĂŒr die Entwicklung des Compilers wurden 16 KI-Agenten eingesetzt, die nach zwei Wochen Arbeit und rund zwei tausend Sitzungen in Claude Code 100.000 Zeilen Rust-Code generierten, die die Aufgabe ĂŒbernehmen, den Linux-Kernel 6.9 fĂŒr die Architekturen x86, ARM und RISC-V zu kompilieren. Bei der Code-Generierung wurde der neue Arbeitsmodus "agent teams" verwendet, der es mehreren Claude-KI-Agenten ermöglicht, parallel an einem gemeinsamen Codebasis zu arbeiten, autonom ohne menschliches Eingreifen. Bei den Kosten fĂŒr den API-Zugang wurde die Erstellung des Compilers auf 20.000 Dollar geschĂ€tzt (es wurden 2 Milliarden Eingabetoken ĂŒbermittelt und 140 Millionen Ausgabetoken generiert).

Der Compiler ist eigenstĂ€ndig und benötigt keine externen AbhĂ€ngigkeiten außer der Standardbibliothek von Rust. Alle Komponenten wurden von Grund auf neu erstellt, einschließlich Frontend, Zwischenvertretung (IR) basierend auf SSA, Optimierer, Code-Generator, Assembler, Linker und Debug-Informationsgenerator im DWARF-Format. Das Frontend ist kompatibel auf Optionenebene mit GCC und kann als transparente Alternative zu GCC verwendet werden. Ausgegeben werden ausfĂŒhrbare Dateien im ELF-Format. Der Compiler unterstĂŒtzt ausschließlich die Linux-Plattform (UnterstĂŒtzung fĂŒr macOS und Windows wurde nicht angestrebt).

Zu den EinschrĂ€nkungen gehört das Fehlen separater Optimierungsstufen (Optimierungsstufen von -O0 bis -O3, -Os und -Oz fĂŒhren zu gleicher Optimierung), es gibt Probleme mit der Verwendung von _Atomic und _Complex, das SchlĂŒsselwort __attribute__ wird teilweise unterstĂŒtzt und die Nutzung von NEON-Befehlen ist teilweise umgesetzt. Neben den in der vorbereiteten AI-Dokumentation zum Compiler beschriebenen EinschrĂ€nkungen werden in dem Artikel zur ProjektankĂŒndigung einige zusĂ€tzliche Probleme erwĂ€hnt:

  • Es besteht keine UnterstĂŒtzung fĂŒr die Kompilierung im 16-Bit-Modus (der fĂŒr das Laden des Kernels benötigte 16-Bit-Code wurde in GCC erstellt).
  • Fehler in der Implementierung des Linkers und Assemblers (bei der Vorbereitung der Demonstration wurden der GNU-Assembler und der GNU-Linker verwendet).
  • Claudes C-Compiler ist derzeit nicht bereit, echte Compiler zu ersetzen, da nicht alle Projekte erfolgreich kompiliert werden.
  • Der Optimierungsgrad des generierten Codes ist schlechter als der von GCC im Modus mit deaktivierten Optimierungen.
  • Die QualitĂ€t des generierten Rust-Codes ist akzeptabel, jedoch deutlich schlechter als der Code, der von einem professionellen Programmierer erstellt wurde.
  • Das Projekt erreicht fast die Grenzen der Möglichkeiten des Modells Opus 4.6 – Versuche, Fehler zu beheben oder zusĂ€tzliche Funktionen hinzuzufĂŒgen, fĂŒhrten in der Regel zu Störungen der bestehenden FunktionalitĂ€t.

Video abspielen


Quelle: opennet.ru
ZuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen đŸ”„ ZuverlĂ€ssiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server kaufen | ProHoster