Naar inhoud springen
PentAGI
Concepten

Memory en kennis

Hoe PentAGI commando's, resultaten en relaties onthoudt tijdens een flow.

PentAGI gebruikt drie soorten memory zodat agents kunnen voortbouwen op eerder werk in plaats van steeds opnieuw te beginnen.

MemoryWaar het staatWat het bevat
Langetermijn-memoryPostgreSQL met pgvectorEmbeddings van resultaten, succesvolle methoden en toolkennis
Werk-memoryFlow-contextHet huidige doel, de task status en beschikbare resources
Episodisch memoryCommandogeschiedenisEerdere acties, hun uitkomsten en patronen die werkten

Elk commando en de bijbehorende output wordt opgeslagen in PostgreSQL. Agents raadplegen de vector store voor vergelijkbare gevallen voordat ze handelen, en schrijven hun findings terug — de memorist- en searcher-agents doen het meeste zoekwerk.

Knowledge graph (optioneel)

Met de knowledge graph stack ingeschakeld, stuurt PentAGI agent-responses en tool-executies naar Graphiti op Neo4j. Met de ingest-regels van het .env template extraheert het entiteiten en relaties — hosts, services, kwetsbaarheden, technieken en hoe deze in de loop van tijd samenhangen — uit terminal- en bestandsbewerkingen, en houdt het de andere events doorzoekbaar zonder extractie.

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 draait zijn eigen model: GRAPHITI_LLM_CLIENT_TYPE kiest de preset — openai, gemini, litellm of custom — waarvan de modellen zijn ingesteld in ./graphiti/<preset>.yaml, en de bijbehorende sleutel komt uit .env (OPEN_AI_KEY voor openai). Een .env van vóór 2.2.0 mist deze regels en de GRAPHITI_INGEST_*-regels: kopieer ze uit de huidige .env.example.

Graphiti is een bèta-integratie en staat standaard uit. Het ophalen van informatie is beperkt tot de actieve flow; de meegeleverde Graphiti-API heeft geen authenticatie, dus houd deze en Neo4j op een privénetwerk. Extractie en embeddings worden los van het eigen model van de flow in rekening gebracht.

PentAGI controleert Graphiti alleen bij het opstarten, gedurende een paar seconden. Als Graphiti dan nog niet klaar is, logt PentAGI een waarschuwing en draait zonder de knowledge graph tot de volgende herstart. Zodra Graphiti dus gezond rapporteert, voer je docker restart pentagi uit.

Laatst bijgewerkt op