Saltar al contenido
PentAGI
Conceptos

Memory y conocimiento

Cómo PentAGI recuerda comandos, resultados y relaciones a lo largo de un flow.

PentAGI mantiene tres tipos de memory para que los agents puedan aprovechar el trabajo previo en lugar de empezar desde cero.

MemoryDónde resideQué almacena
A largo plazoPostgreSQL con pgvectorEmbeddings de resultados, enfoques exitosos y conocimiento de tool
De trabajoContexto del flowEl objetivo actual, el estado de la task y los recursos disponibles
EpisódicaHistorial de comandosAcciones pasadas, sus resultados y patrones que funcionaron

Cada comando y su salida se almacenan en PostgreSQL. Los agents consultan el vector store en busca de casos similares antes de actuar y guardan allí sus findings; los agents memorist y searcher realizan la mayor parte de este trabajo de búsqueda.

Knowledge graph (opcional)

Con la pila del knowledge graph habilitada, PentAGI envía las respuestas de agent y las ejecuciones de tool a Graphiti sobre Neo4j. Con las reglas de ingestión de la template .env, extrae entidades y relaciones —hosts, servicios, vulnerabilidades, técnicas y cómo se relacionan a lo largo del tiempo— de las operaciones de terminal y de archivo, y mantiene los demás eventos buscables sin extracción.

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 ejecuta su propio modelo: GRAPHITI_LLM_CLIENT_TYPE elige el preset — openai, gemini, litellm o custom — cuyos modelos se configuran en ./graphiti/<preset>.yaml, y la clave correspondiente proviene de .env (OPEN_AI_KEY para openai). Un .env anterior a la versión 2.2.0 carece de estas líneas y de las reglas del GRAPHITI_INGEST_*: cópialas del .env.example actual.

Graphiti es una integración en fase beta y está desactivada por defecto. La recuperación de información se limita al flow activo; la API de Graphiti incluida no tiene autenticación, así que mantenla junto con Neo4j en una red privada. La extracción y los embeddings se facturan por separado del modelo propio del flow.

PentAGI comprueba Graphiti solo cuando se inicia, durante unos segundos. Si Graphiti no está listo para entonces, PentAGI registra una advertencia y funciona sin el knowledge graph hasta su próximo reinicio, así que una vez que Graphiti informe de que está saludable, ejecuta docker restart pentagi.

Última actualización el