Zum Inhalt springen
PentAGI
Konzepte

Memory und Wissen

Wie PentAGI sich Befehle, Ergebnisse und Beziehungen über einen Flow hinweg merkt.

PentAGI verwaltet drei Arten von Memory, damit Agents auf früheren Arbeiten aufbauen können, statt jedes Mal von vorne zu beginnen.

MemoryWo es gespeichert istWas es enthält
Langzeit-MemoryPostgreSQL mit pgvectorEmbeddings von Ergebnissen, erfolgreichen Ansätzen und Tool-Wissen
Arbeits-MemoryFlow-KontextDas aktuelle Ziel, der Task-Status und verfügbare Ressourcen
Episodisches MemoryBefehlsverlaufVergangene Aktionen, ihre Ergebnisse und funktionierende Muster

Jeder Befehl und seine Ausgabe werden in PostgreSQL gespeichert. Agents durchsuchen den Vector Store vor dem Handeln nach ähnlichen Fällen und schreiben ihre Findings zurück – der memorist-Agent und der searcher-Agent übernehmen den Großteil dieser Suchvorgänge.

Knowledge Graph (optional)

Wenn der Knowledge-Graph-Stack aktiviert ist, sendet PentAGI Agent-Antworten und Tool-Ausführungen an Graphiti auf Neo4j. Mit den Ingest-Regeln der .env-Vorlage extrahiert es Entitäten und Beziehungen – Hosts, Dienste, Schwachstellen, Techniken und wie sie sich im Zeitverlauf zueinander verhalten – aus Terminal- und Dateioperationen und hält die anderen Ereignisse ohne Extraktion durchsuchbar.

GRAPHITI_ENABLED=true
GRAPHITI_URL=http://graphiti:8000
GRAPHITI_CONFIG_DIR=llm_configs
GRAPHITI_LLM_CLIENT_TYPE=openai
NEO4J_URI=bolt://neo4j:7687
NEO4J_PASSWORD=replace_with_a_strong_password
git clone --depth 1 https://github.com/vxcontrol/pentagi.git pentagi-src
cp -r pentagi-src/examples/graphiti ./graphiti
cp -r pentagi-src/examples/neo4j ./neo4j
rm -rf pentagi-src
curl -O https://raw.githubusercontent.com/vxcontrol/pentagi/main/docker-compose-graphiti.yml
docker compose -f docker-compose.yml -f docker-compose-graphiti.yml up -d

Graphiti führt sein eigenes Modell aus: GRAPHITI_LLM_CLIENT_TYPE wählt die Voreinstellung — openai, gemini, litellm oder custom — deren Modelle in ./graphiti/<preset>.yaml festgelegt sind, und der passende Schlüssel stammt aus .env (OPEN_AI_KEY für openai). Ein .env vor Version 2.2.0 enthält diese Zeilen und die GRAPHITI_INGEST_*-Regeln nicht: Kopieren Sie sie aus dem aktuellen .env.example.

Graphiti ist eine Beta-Integration und standardmäßig deaktiviert. Der Abruf ist auf den aktiven Flow beschränkt; die mitgelieferte Graphiti-API verfügt über keine Authentifizierung, daher sollten Sie sie und Neo4j in einem privaten Netzwerk betreiben. Extraktion und Embeddings werden separat vom Modell des Flow abgerechnet.

PentAGI prüft Graphiti nur beim Start für einige Sekunden. Wenn Graphiti bis dahin nicht bereit ist, protokolliert PentAGI eine Warnung und läuft ohne den Knowledge Graph bis zum nächsten Neustart. Sobald Graphiti also einen healthy Status meldet, führen Sie docker restart pentagi aus.

Zuletzt aktualisiert am