Reef ist vollständig Open Source: https://github.com/Human-Agent-Society/reef
1. Bevor der ganze „RSI“-Hype Realität wird
Bevor die heutige Aufregung um RSI vollständig Realität wird, möchten wir Reef als Open Source veröffentlichen – eine Infrastruktur, die wir für dasselbe übergeordnete Problem entwickelt haben: Es Agenten (bestehend aus Harness und Modell) zu ermöglichen, sich kontinuierlich aus ihrer Erfahrung weiterzuentwickeln.
Das Ziel ist es, der Open-Source-Community das Experimentieren mit kontinuierlicher Selbstverbesserung zu erleichtern und ihr einen einfachen Zugang zu einer produktionsreifen Infrastruktur dafür zu bieten. Wir verwenden kontinuierliche Selbstverbesserung als den umfassenderen und praktischeren Rahmen hierfür, wobei RSI eine vollständig rekursive Form derselben Idee darstellt.¹
2. Warum braucht kontinuierliche Selbstverbesserung eine neue Infrastruktur?

GIF
Die meiste LLM-Infrastruktur geht von einem relativ einfachen Lebenszyklus aus. Wir trainieren ein Modell, evaluieren es, stellen es bereit und nutzen es dann für die Inferenz. Für sich kontinuierlich selbstverbessernde Agenten glauben wir, dass zwei Annahmen hinter diesem Setup zu bröckeln beginnen.
Erstens: Die Inferenz ist nicht länger das Ende der Pipeline. Agenten generieren während ihrer Arbeit nützliche Erfahrungen, darunter Trajektorien, Ausführungsergebnisse, Benutzerfeedback und andere Signale, die zukünftige Verbesserungen vorantreiben können. Was zur Inferenzzeit passiert, ist nicht länger etwas, das wir einfach bedienen und verwerfen. Es wird Teil des Lernprozesses selbst.
Zweitens: Das Modell ist nicht länger das Einzige, das sich weiterentwickelt. Ein Agent ist mehr als ein Modell, und kontinuierliche Selbstverbesserung sollte nicht auf Modellgewichte beschränkt sein. Prompts, Gedächtnis, Fähigkeiten, Werkzeuge und Orchestrierungslogik können sich potenziell alle aus Erfahrung verbessern. Ein stärkeres Modell erweitert die Fähigkeiten des Agenten, während ein besserer Harness hilft, diese Fähigkeiten effektiver zu nutzen und sie bei komplexen Aufgaben zuverlässiger einzusetzen.
Zusammen verwandeln diese Veränderungen das, was einst eine weitgehend sequenzielle Pipeline war, in eine kontinuierliche Evolutionsschleife. Agenten interagieren, generieren Erfahrungen, verbessern verschiedene Teile ihrer selbst, evaluieren, ob diese Änderungen es wert sind, behalten zu werden, und kehren als neue Versionen des Systems zum Dienst zurück.
Das ist auch der Grund, warum wir Reef nicht nur als Trainingsinfrastruktur betrachten. Training ist nur ein Teil der Schleife. Wir glauben, dass Infrastruktur für kontinuierliche Selbstverbesserung von der Live-Inferenz ausgehen und die Evolution des gesamten Agenten unterstützen muss.

GIF
3. Was braucht eine solche Infrastruktur und wie setzt Reef sie um?

Reef-Architektur
Infrastruktur für kontinuierliche Selbstverbesserung muss drei Dinge Ende-zu-Ende besitzen: die Erfahrung, den Agenten und die Updates. Das bedeutet (1) Lernen aus Live-Traffic, (2) Aktualisierung sowohl des Modells als auch des Harness und (3) ordnungsgemäße Evaluierung, Versionierung und Kontrolle darüber, wie Updates veröffentlicht werden.
Die Erfahrung besitzen – Lernen muss auf Live-Serving aufbauen
Inferenz und Training waren historisch entkoppelt. Einige RL-Infrastrukturen (z. B. Slime, veRL) integrieren eine Inferenz-Engine zur Datengenerierung, aber diese Systeme sind für das Modelltraining und nicht für das Modell-Serving konzipiert. Wir behaupten, dass eine Infrastruktur für kontinuierliche Selbstverbesserung zuerst eine Inferenz-Infrastruktur sein und ihre Trainingskapazität um die Live-Inferenz herum aufbauen sollte: Das System bedient reale Anwendungen, sammelt Testzeit-Erfahrungen und ermöglicht es Lernrezepten, diese kontinuierlich zu konsumieren. Diese Überzeugung führt zu einem Überdenken vieler Designentscheidungen, einschließlich der Generierung von Trainingssignalen und der Auswahl von Trainingsbeispielen.
Inferenz ist in Reef nativ. Reef stellt standardmäßige Inferenz-Endpunkte bereit, was die Integration in bestehende Anwendungen und deren Umwandlung in sich selbst entwickelnde Systeme erleichtert.
1# client = xxx # httpx-Client für Reefs Serving-Endpunkt initialisieren23# Standard-Inferenzaufruf über Reef, OpenAI-Format4response = client.post(5 "/v1/chat/completions",6 json={"model": xxx, "messages": xxx},7)89# Referenz auf den von Reef gespeicherten Inferenzdatensatz10receipt = response.headers["x-reef-agent-record-id"]
Anwendungen können auch Belohnungen, Evaluator-Feedback oder andere Signale, die mit bestimmten Inferenzaufrufen verbunden sind, melden über:
1# Feedback an den entsprechenden Inferenzdatensatz anhängen2client.post(3 "/reef/report",4 json={"feedback": "falsche Antwort", "references": [receipt]},5)
Im Gegensatz zu bestehenden Inferenz-Engines, die während ihres gesamten Lebenszyklus statisch bleiben, bietet Reef zustandsbehaftete Inferenz: Reef speichert Inferenz-Traces und Feedback als strukturierten Erfahrungsstrom und behandelt Probleme wie Off-Policy-Staleness, Sitzungszusammenführung und Deduplizierung. Lernrezepte definieren, wie dieser Strom verarbeitet wird, welcher Lernalgorithmus verwendet wird und wann Updates evaluiert und bereitgestellt werden. Dies ermöglicht es verschiedenen Anwendungen, sich mit ihren eigenen Lernstrategien auf derselben Infrastruktur weiterzuentwickeln.
Den gesamten Agenten besitzen – sowohl das Modell als auch der Harness werden durch zustandsbehaftete Inferenz weiterentwickelt
Ein KI-Agent, der in der Lage ist, End-to-End-Ergebnisse zu liefern, besteht nicht nur aus einem Modell, sondern auch aus einem Harness. Das Modell bietet die zugrunde liegenden Fähigkeiten, die zur Lösung von Aufgaben erforderlich sind, während der Harness eine zuverlässige Ausführung über komplexe, langfristige Trajektorien hinweg ermöglicht, indem er Werkzeuge, Kontext, Gedächtnis, Feedback und Orchestrierung verwaltet. Die beiden sind eng gekoppelt: Der Harness bestimmt, wie die Fähigkeiten des Modells abgerufen, verankert und genutzt werden, während das Modell bestimmt, welche Ausführungsformen der Harness zuverlässig unterstützen kann. Fortschritte in einem Bereich können daher das optimale Design des anderen verändern. Eine Infrastruktur für kontinuierliche Selbstverbesserung sollte die gemeinsame Evolution des gesamten Agenten-Stacks unterstützen, einschließlich nicht nur der Modellgewichte, sondern auch der Prompts, des Gedächtnisses, der Fähigkeiten, der Werkzeuge und der Orchestrierungslogik.
Reef unterstützt Updates sowohl für das Modell als auch für den Harness.
Auf der Harness-Seite verwendet Reef Cordis als „Trainings-Backend“. Ein Harness-Evolutionsrezept analysiert typischerweise Agenten-Trajektorien und Feedback und schlägt dann Änderungen am Harness vor. Dieser Prozess findet vollständig innerhalb von Reef statt, und jede weiterentwickelte Harness-Version wird dem Benutzer als installierbares Update zur Verfügung gestellt (vorausgesetzt, Reef wird auf localhost:8900 bereitgestellt):
1curl -fsS -H "Authorization: Bearer $REEF_TOKEN" \2 'http://localhost:8900/reef/harness/install?adapter=pi' | bash
Der obige Befehl installiert einen Reef-gewrappten Pi-Harness, ähnlich wie ein typischer Coding-Agent. Der Harness ist so konfiguriert, dass er Reefs zustandsbehafteten Inferenz-Endpunkt verwendet, sodass sein Inferenz-Traffic durch Reef fließt. Während der Benutzer arbeitet, entwickelt Cordis den Harness gemäß dem konfigurierten Harness-Evolutionsrezept weiter, und neue Versionen werden über Reef verfügbar gemacht. Wenn der Benutzer den Harness das nächste Mal öffnet, könnte er Folgendes sehen:

Auf der Modellseite konsumieren Lernrezepte Reef-Datensätze, um die Modellgewichte zu aktualisieren. Das Training läuft asynchron zum Live-Serving unter Verwendung eines verteilten Trainings-Backends, das derzeit von Slime adaptiert wurde, und produziert Kandidaten für Gewichtsaktualisierungen wie Checkpoints oder LoRA-Adapter.
Sobald ein Kandidat die Evaluierung besteht und für die Bereitstellung freigegeben ist, veröffentlicht Reef ihn als neue Version des Modell-Artefakts des Szenarios und aktualisiert die Serving-Engine mittels NCCL-basierter Gewichtssynchronisation im laufenden Betrieb, ohne den Dienst neu starten zu müssen.
Die Updates besitzen – weiterentwickelte Releases werden evaluiert und versioniert
Ein sich kontinuierlich weiterentwickelnder Agent ist anfällig für Verschlechterungen der Servicequalität, insbesondere da die Evolution keine Leistungsverbesserung garantiert. Daher sollte jeder weiterentwickelte Kandidat vor der Veröffentlichung evaluiert werden. Reef kontrolliert, ob ein weiterentwickelter Kandidat das Artefakt ersetzen darf, das derzeit ein Szenario bedient. Wird der Kandidat abgelehnt, bleibt das Serving unverändert. Andernfalls veröffentlicht Reef ihn als neues, prüfbares Release.
Alles, was Reef weiterentwickeln kann – wie ein Modell-Checkpoint, LoRA-Adapter, Harness-Baum oder Routing-Richtlinie – wird als Artefakt dargestellt, das von einer Versionskontrolle verwaltet wird. Reef verwendet Git LFS zur Verwaltung der Artefakte, insbesondere solcher, die viel Speicherplatz beanspruchen, wie Modellgewichte. Der Release-Pfad ist:

Jedes Szenario hat eine Append-Only-Release-Kette. Reef rückt den Release-Head des Szenarios mittels Compare-and-Swap vor, sodass ein veralteter Publisher kein neueres Release überschreiben kann. Die Release-Pipeline ermöglicht es Reef, kontinuierliche Versionsänderungen und Release-Prozesse effizient zu verfolgen.
4. Methoden zur kontinuierlichen Selbstverbesserung in Reef
Die obige Infrastruktur bietet die gemeinsamen Abstraktionen für kontinuierliche Selbstverbesserung. Die eigentliche Logik, wie sich ein Agent verbessert, wird durch modulare Lernrezepte implementiert.
Wir haben eine wachsende Vielfalt an Methoden gesehen, um Signale, die zur Testzeit generiert werden, in bessere Agenten umzuwandeln: Online-Verstärkungslernen, Testzeit-Training, Fähigkeitsevolution, Harness-Evolution, Selbstspiel und mehr. Trotz ihrer unterschiedlichen Namen und Mechanismen teilen sie alle dasselbe grundlegende Muster: Zur Testzeit generierte Signale werden in Updates für das System umgewandelt, das die nächste Interaktion generiert.
Diese Rezepte unterscheiden sich hauptsächlich in drei Dimensionen:
Lernsignal: Welche Form von Signal treibt die Verbesserung an und woher kommt es?
Erfahrungsgewinnung: Wie wird Lernerfahrung generiert? Wird sie proaktiv vom Agenten gesucht oder reaktiv aus einer externen Aufgabe oder Interaktion generiert?
Evolutionsziel: Was ändert sich tatsächlich: das Modell, der Harness oder beides?

Bereits unterstützte oder in Kürze in Reef verfügbare Rezepte
Reef ist so konzipiert, dass diese Methoden weitgehend durch verschiedene Lernrezepte auf derselben Infrastruktur ausgedrückt werden können. Die Verwendung eines Rezepts ist einfach: Wählen Sie eines aus und konfigurieren Sie es beim Starten des Reef-Dienstes.
1# serve.yaml2reef:3 recipe: recipes.sao.recipe:SAORecipe # Ein Evolutionsrezept einstecken4 batch_size: 1 # Rezeptspezifische Konfiguration5 max_staleness: 18
Starten Sie dann Reef mit der Konfiguration:
1reef serve -c recipes/sao/examples/sao/serve.yaml
Im Folgenden zeigen wir zwei Beispiele, OpenClaw-RL und TTT-Discover, die sehr unterschiedliche Evolutionsstrategien verfolgen, aber beide in Reef implementiert werden können.

GIF
Die Visualisierung zeigt eine Integration von OpenClaw-RL in Reef. Der Benutzer interagiert mit einem Agenten, dessen Modell von Reef asynchron weiterentwickelt wird, ohne den Benutzer zu unterbrechen. Mit zunehmender Anzahl von Runden lernt der Agent allmählich, die Präferenz des Benutzers richtig zu interpretieren und eine zufriedenstellende Antwort zu geben.

GIF
Die Visualisierung zeigt, wie TTT iterativ eine Packing-32-Lösung verbessert. Im Laufe der Optimierung werden zunehmend effektivere Lösungen entdeckt und beibehalten, was zu progressiv höheren Packungsbewertungen führt.
5. Fazit
Reef ist unser Versuch, die breite Idee der kontinuierlichen Selbstverbesserung in ein konkretes Systemproblem zu verwandeln. Durch die Veröffentlichung von Reef als Open Source hoffen wir, dieses Problem leichter untersuchbar zu machen und der Community eine praktische Grundlage für die Entwicklung von Agenten zu bieten, die nicht nur dienen, sondern kontinuierlich aus Erfahrung lernen und sich weiterentwickeln.
Wir laden Sie ein, Reef auszuprobieren, Ihre eigenen Lernrezepte zu erstellen und es in Ihre Agenten zu integrieren. Entdecken Sie den Code, die Dokumentation und Beispielrezepte unter https://github.com/Human-Agent-Society/reef. Wenn Sie Reef nützlich finden, würden wir uns über einen Stern auf dem Repository freuen. Wenn Sie mit uns bauen oder allgemeiner über kontinuierliche Selbstverbesserung diskutieren möchten, sind Sie herzlich eingeladen, unserem Discord beizutreten: https://discord.gg/5y8e5f937k.
- Wir verwenden kontinuierliche Selbstverbesserung als einen breiteren und praktischeren Rahmen als RSI. Es umfasst Systeme, die sich wiederholt aus Erfahrung verbessern, ohne die vollständig geschlossene Schleife zu erfordern, die oft mit RSI assoziiert wird, bei der KI selbst am Aufbau und der Verbesserung des Systems beteiligt ist, das ihre nächste Version produziert. Reef ist für dieses breitere Problem konzipiert, lässt aber Raum für rekursivere Formen der Selbstverbesserung, die darauf aufbauen können.
Wachsende Liste der Mitwirkenden (alphabetische Reihenfolge): Chai Wenhao (@wenhaocha1), Ding Shuangrui (@ShuangruiDing), He Hao, He Haoze, Jiang Chonhe (@JiangChonghe), Jiang Nan (@nanjiangwill), Jiang Xuan, Li Xiaochen (@jacobli99), Liang Paul (@pliang279), Liu Bo (@Benjamin_eecs), Long Boyuan, Mang Qiuyang (@MangQiuyang), Qi Zhenting (@ZhentingQi), Qu Ao (@ao_qu18465), Qu Mingruo, Wang Zhaokai, Yan Xuezhi, Yu Hanfei (@yhfchitanda), Yu Haofei (@haofeiyu44), Yu Simon (@simon_ycl), Zheng Han (@hanzheng_7), Zhou Kaichen (@alex_kai2020), Zhou Zijian (@BobbyZhouZijian), Zhu Jiacheng (@JiachengZhu_ML), Zhuang Dingyi





