Skip to content

Laptop recommender that personalizes purchase suggestions through a Retrieval Augmented Generation (RAG) system. Includes auth and API integrations

Notifications You must be signed in to change notification settings

YaredPena/stratus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Stratus logo

TECH STACK:


Next JS Redis Flask TypeScript Python

THE WEBSITE:

Screenshot 2025-08-06 at 3 27 03 PM Screenshot 2025-09-18 at 9 11 17 PM Screenshot 2025-09-18 at 9 11 28 PM Screenshot 2025-09-18 at 9 11 42 PM

THE GOAL:

Looking for a laptop but can't pin down what brand or model fits you best? Stratus was built to help users receive quality recommendations based on their personal needs, without digging through endless reviews or spec lists.

CORE FUNCTIONALITIES:

- RAG-based AI Recommendations: Stratus uses a Sentence Transformer model to provide personalized laptop suggestions using semantic search.
- Fullstack Integration: Next.js for the frontend, Flask + Redis for backend processing and stateful sessions.
- Model-backed Inference: Embeddings and product data are pre-loaded for instant response.

AI STORYTELLING:

Stratus uses the "all-MiniLM-L6-v2" transformer model to encode both user queries and laptop data. It calculates cosine similarity between query and product embeddings to return the top 3 matches. This approach mimics personalized search while keeping inference fast and efficient.

QUICK START:

🔧 PREREQUISITES:

- Python 3.11+ - Node.js 18+ - Redis (cloud or local)

1. CLONE:

git clone https://github.com/YaredPena/stratus.git
cd stratus

2. VENV:

cd server
python -m venv venv
source venv/bin/activate | (Windows: .\venv\Scripts\activate)

3. DEPENDENCIES:

pip install -r requirements.txt

4. ENV CONFIG:

REDIS_URL= your_redis_url

SECRET_KEY= your_flask_secret_key

5. DATABASE SETUP:

Ensure the following files are present in the data/ folder:

-laptops.pkl

-laptop_embeddings.npy

6. RUN THE APPLICATION:

gunicorn app:app --bind 0.0.0.0:5000

FOR FRONTEND

cd ../client
npm install
echo "NEXT_PUBLIC_API_URL=http://localhost:5000" > .env.local
npm run dev

About

Laptop recommender that personalizes purchase suggestions through a Retrieval Augmented Generation (RAG) system. Includes auth and API integrations

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published