Memory en kennis
Hoe PentAGI commando's, resultaten en relaties onthoudt tijdens een flow.
PentAGI gebruikt drie soorten memorymemory — geheugenWat agents bewaren zodat ze kunnen voortbouwen op eerdere werk in plaats van opnieuw te beginnen: langdurig, werk- en episodisch geheugen. zodat agentsagentEen AI-agent van PentAGI: een model met zijn eigen prompt, instellingen en tools dat één soort werk in een flow doet, zoals testen, code schrijven of het web doorzoeken. kunnen voortbouwen op eerder werk in plaats van steeds opnieuw te beginnen.
| Memory | Waar het staat | Wat het bevat |
|---|---|---|
| Langetermijn-memory | PostgreSQL met pgvector | Embeddings van resultaten, succesvolle methoden en toolkennis |
| Werk-memory | Flow-context | Het huidige doel, de tasktask — taakEén verzoek in een flow: het eerste bericht, of een later bericht dat geen antwoord is op een vraag van een agent. PentAGI splitst elke taak op in subtaken. status en beschikbare resources |
| Episodisch memory | Commandogeschiedenis | Eerdere acties, hun uitkomsten en patronen die werkten |
Elk commando en de bijbehorende output wordt opgeslagen in PostgreSQL. Agents raadplegen de vector storevector storeDe database met embeddings waarmee agents geheugen en documenten op betekenis kunnen doorzoeken. voor vergelijkbare gevallen voordat ze handelen, en schrijven hun findingsfinding — bevindingIets wat de test heeft ontdekt en vastgelegd, zoals een host, een draaiende service of een kwetsbaarheid. terug — de memorist- en searcher-agents doen het meeste zoekwerk.
Knowledge graph (optioneel)
Met de knowledge graphknowledge graph — kennisgraafDe graaf van hosts, services, kwetsbaarheden en de toegang ertussen die PentAGI tijdens een test opbouwt wanneer deze optionele functie is ingeschakeld. Het laat zien hoe bevindingen met elkaar verbonden zijn. 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_passwordgit 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 -dGraphiti draait zijn eigen model: GRAPHITI_ kiest de preset — openai, gemini, litellm of custom — waarvan de modellen zijn ingesteld in ./, en de bijbehorende sleutel komt uit .env (OPEN_ voor openai). Een .env van vóór 2.2.0 mist deze regels en de GRAPHITI_-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 flowflowEén run van PentAGI: een doel, de taken die uit je berichten zijn gemaakt, en alles wat de agents onderweg hebben gedaan.; 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