Overview
This project combines a Next.js frontend with Node/Express and Python services to compute text similarity via pre-trained sentence embeddings. The all-MiniLM-L6-v2 model produces vector representations used to compare and score textual similarity. Docker keeps the multi-language stack reproducible.
Architecture
flowchart TB
User(["User"])
subgraph docker ["Docker Compose"]
Next["Next.js UI"]
Express["Express.js API"]
Python["Python ML service"]
Model["all-MiniLM-L6-v2"]
end
User -->|"Text A + Text B"| Next
Next --> Express
Express -->|"Embedding request"| Python
Python --> Model
Model -->|"Vectors"| Python
Python -->|"Similarity score"| Express
Express -->|"Comparison result"| NextSummary
An AI-powered application that analyzes and compares textual data using the sentence-transformers embedding model all-MiniLM-L6-v2.
What I worked on
- Built the Express.js and Python services for embedding and similarity scoring.
- Integrated the pre-trained model sentence-transformers/all-MiniLM-L6-v2.
- Developed the Next.js frontend for text analysis workflows.
- Containerized the stack with Docker.
Results
- Semantic text comparison using sentence embeddings
- Integration of Python ML model with Node.js services
- Next.js UI for analyzing and comparing text inputs
- Dockerized multi-service architecture