This is a really well-structured guide — love that you walked through the full pipeline from Neo4j Docker setup to bulk processing local files.
I've been running a similar setup but with Oxigraph (a lightweight Rust-based RDF/SPARQL store) instead of Neo4j, paired with Ollama on a Mac Mini. The tradeoff is interesting: Neo4j's Cypher is more intuitive for relationship traversal, but SPARQL gives you standardized ontology support out of the box (OWL, SKOS, etc.).
One thing I found after a few months of running this locally: the real challenge isn't building the graph — it's maintaining it as your data grows. Entity deduplication and relationship merging become critical. Have you run into that with larger datasets? Any strategies for keeping the graph clean over time?
Also curious if you've experimented with using the knowledge graph for RAG retrieval — graph-based context retrieval vs. pure vector search has been a fascinating rabbit hole for me.