A semantic search engine built with Neo4j and Google Cloud Vertex AI that enables intelligent searching of executive profiles. The system uses vector embeddings generated from executive biographies (using Google's textembedding-gecko@003
model) stored in a Neo4j graph database.
- Clone the repository
git clone <repository-url>
cd neo4j-vertex-semantic-search
- Install dependencies
npm install
- Configure environment variables
Create a
.env
file in the root directory:
NEO4J_URI="neo4j+s://xxxxx.databases.neo4j.io"
NEO4J_USER="neo4j"
NEO4J_PASSWORD="your-password"
GOOGLE_APPLICATION_CREDENTIALS="/path/to/service-account.json"
PROJECT_ID="your-google-project-id"
- Load sample data
npm run load-data
-
Core Components
vertex-ai-client.js
- Handles Vertex AI embedding generationexecutive-bio-vectorizer.js
- Manages bio vectorization and index creationquery-client.js
- Handles semantic search queries
-
Project Dependencies
{ "dependencies": { "@google-cloud/aiplatform": "^3.31.0", "axios": "^1.7.7", "google-auth-library": "^9.14.2", "neo4j-driver": "^5.26.0", "dotenv": "^16.4.5" } }