knowledge-base/scripts
Pratik Narola 3a10b72051 scripts: Neo4j → mem0 v2 graph relationship import
Two helpers built during the beast deployment to migrate the legacy
Neo4j knowledge graph (decommissioned in the v3 cutover) into mem0 v2
as natural-language memories.

scripts/import_neo4j_to_mem0.py
  - Connects to Neo4j via Bolt, iterates per-user relationships,
    POSTs each as a /memories request.
  - Two modes:
      raw:           "humanize(src) verb humanize(dest)." (snake_case → spaces)
      --llm-rewrite: minimax-m2 via OpenAI-compat proxy rewrites each
                     tuple into a grammatical English sentence; the LLM
                     may also output SKIP for non-meaningful tuples
                     (postal codes, timezone offsets, self-refs).
  - Tags every imported memory with metadata.source="neo4j_legacy_import"
    plus neo4j_rel_type + import_timestamp for traceability/cleanup.
  - Caches LLM rewrites by (source, rel, dest, user_id).

scripts/cleanup_neo4j_imports.py
  - Finds and DELETEs all memories with source="neo4j_legacy_import"
    for given users, via the /memories DELETE endpoint (per-user API
    key, so the deletes go through mem0's normal auth + cleanup path).

Run on beast (2026-05-23): 2007 Neo4j edges → 615 net new memories in
mem0_v3 (30.6% yield after LLM SKIPs + mem0 fact-extraction dedup).
mem0 v3's fact extractor correctly deduplicated edges that restated
facts already in vector memory (e.g., manju's 9 existing memories
absorbed all 17 of her Neo4j edges).
2026-05-23 18:27:00 +05:30
..
cleanup_neo4j_imports.py scripts: Neo4j → mem0 v2 graph relationship import 2026-05-23 18:27:00 +05:30
import_neo4j_to_mem0.py scripts: Neo4j → mem0 v2 graph relationship import 2026-05-23 18:27:00 +05:30
migrate_qdrant_to_v3.py chore: migrate to mem0ai v2.0.2 (V3 memory pipeline) 2026-05-23 14:49:45 +05:30