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
.envfile 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" } }