-
-
Notifications
You must be signed in to change notification settings - Fork 3
Foundation: native Neo4j 5.x vector index for schema embeddings #30
Copy link
Copy link
Open
Labels
databaseDatabase related changes - MySQL, Neo4j, queriesDatabase related changes - MySQL, Neo4j, queriesenhancementImprovement to existing functionalityImprovement to existing functionalityfeatureNew feature or functionalityNew feature or functionalityneeds-discussionRequires team discussion before implementationRequires team discussion before implementation
Description
Activity
Metadata
Metadata
Assignees
Labels
databaseDatabase related changes - MySQL, Neo4j, queriesDatabase related changes - MySQL, Neo4j, queriesenhancementImprovement to existing functionalityImprovement to existing functionalityfeatureNew feature or functionalityNew feature or functionalityneeds-discussionRequires team discussion before implementationRequires team discussion before implementation
Problem Statement
Planned AI features (semantic schema search, transformation rule suggestions, text-to-Cypher) need to store and query vector embeddings. The application currently has no vector infrastructure at all (no
vector/embeddingreferences anywhere in the codebase).Proposed Solution
VECTOR INDEXon nodes representing schema elements (columns/tables), using Neo4j 5.13+ syntax.internal/domain/models/) with an embedding vector field for schema nodes.db.index.vector.queryNodes()ininternal/infrastructure/persistence/neo4j/repository.go.Alternative Solutions
Store embeddings outside Neo4j (pgvector, in-memory). Simpler to start with, but prevents combined graph+vector queries in a single Cypher statement.
Use Case
Foundation for: semantic schema search, transformation rule suggestions, text-to-Cypher.
Priority Level
Nice to have
Implementation Ideas
cosineandeuclideansimilarity in the Neo4j vector index config.Additional Context
Depends on: "Upgrade Neo4j server from 4.4 to 5.13+" and "Migrate neo4j-go-driver from v4 to v5". Related to: "EmbeddingProvider port" issue.