LLM-Speicher versehentlich in Programmanalyse verwandelt
I accidentally turned LLM memory into program analysis

Ein Sicherheitsforscher stellt Lemmalog vor, eine Datalog-Engine für LLM-Agenten, die während Schwachstellenanalysen Wissen strukturiert verwaltet. Statt dass das Modell seinen gesamten Kontext rekonstruiert, extrahiert es Fakten, aus denen die Engine Schlussfolgerungen ableitet, Abhängigkeiten nachverfolgt und bei neuen Erkenntnissen automatisch ungültige Schlüsse entfernt. Das System unterstützt auch Provenienz, Zeitintervalle und hybride Abfragen mit Vektordatenbanken.
Der LLM fungiert als Frontend: Quellcode, Debugger-Ausgabe und Notizen werden zu strukturierten Fakten; Lemmalog ist die Zwischendarstellung und Analyse-Engine, die diese Fakten mit deduktiven Regeln zu einem gepflegten Zustand verarbeitet.
- sim04ful
Ich bin zu einem ähnlichen Schluss gekommen: LLMs sollten wirklich nur an den Endpunkten der Auftragserfüllung sitzen.
1. Verstehen der Benutzeranfrage: natürliche Sprache -> eine strengere Repräsentation, in meinem Fall Datalog.
2. Ergebnisinterpretation: Fakten und abgeleitete Fakten -> natürliche Sprache.
Zwischen diesen Endpunkten sollte die Arbeit mechanisches Denken über eine Ontologie oder formale Wissensstruktur sein.
Das verbindet sich mit einem anderen Prinzip, über das ich nachgedacht habe und das ich "Weathering" nenne: Nützliches Denken sollte die Form des Systems verändern. Wenn ein LLM bereits eine Beziehung, Zuordnung, Regel oder Abstraktion ableiten musste, sollte wiederholte Nutzung diese Ableitung in das System einschleifen, sodass die nächste ähnliche Anfrage nicht erfordert, sie von Grund auf neu zu entdecken.
Bei fortgesetzter Nutzung sollte ein weathering-fähiges System daher für wiederkehrende Arbeiten immer weniger probabilistische Intelligenz benötigen. Anders ausgedrückt: Es sollte einen sinkenden Grenzkosten der Kognition geben, da die Produkte der Intelligenz zu Strukturen verhärten, die anschließend mechanisch wiederverwendet und bewertet werden können.
- akkad33
Ich hatte versucht, Claude Langzeitgedächtnis zu geben, indem ich meine Notizen mit Schlüsselwörtern indexierte und in eine SQLite-Datenbank legte, und Claude fragt per Volltextsuche ab. Ich weiß nicht, wie gut das ist, es scheint Dinge ganz gut zu finden. Mein Ziel war es, den Kontext klein zu halten und Claude nur nach dem fragen zu lassen, was es braucht. Datalog scheint eine großartige Idee zu sein, werde es auf jeden Fall ausprobieren.
- Animats
Er verwendet also ein LLM, um Daten zu generieren, die in einer "ist_ein"-Repräsentation gespeichert werden.
Das ist so klassische KI.
Bald wird er entdecken, dass er Quantoren braucht. Dann, dass "für alle" manchmal zu stark ist und er "für die meisten" braucht. Dahin führt der Weg zu Cyc.
Es ist keine schlechte Idee. Aber sie hat eine Geschichte.
- keeda
Sehr cool. Ich erinnere mich an eine HN-Einreichung (die ich leider nicht finden kann), die etwas Ähnliches machte – sie verwendete ein LLM, um Artikel in eine Reihe von Aussagen zu zerlegen, die verwendet wurden, um einen Entitäts-Beziehungs-Graphen von Fakten und Ereignissen zu konstruieren. Sie fragte dann mit konventionellen Graph-Abfragemethoden ab, ähnlich wie DataLog / Lemmalog hier. Ich erinnere mich, dass sie besonders gut bei zeitlinienbasierten Abfragen war, bei denen LLMs (damals) schlecht waren.
(Siehe auch Cyc: https://en.wikipedia.org/wiki/Cyc)
Ich denke, Ansätze wie dieser werden die Grundlage für effektives Grounding von LLM-Antworten in autoritativen Datenquellen sein (oder sind es vielleicht schon?). Es sollte möglich sein, jeden Fehler auf einen falschen Traversal oder eine falsche "Tatsache" zurückzuführen. Das würde am besten für konkrete, eindeutige Fakten funktionieren; verschwommene, mehrdeutige oder meinungsbasierte Informationen werden wahrscheinlich das Terrain von LLMs bleiben.
- iamflimflam1
Das passt wirklich zu meiner Erfahrung bei langen Forschungsprojekten mit Claude.
Es ist sehr schwer, Informationen zu entfernen – Claude hat die Angewohnheit, Dinge überall aufzuzeichnen und behandelt Dinge bereitwillig als Fakten, selbst nachdem sie widerlegt wurden.
Was aktuell wahr ist, kann leicht mit alten "Fakten" kontaminiert werden.