shape

StartHub - Building Personalized Program Recommendations with RAG and a Vector DB

Overview

Recommending personalized support program listings using the Pinecone vector DB

Tech Stack

  • Kotlin

    Kotlin

  • Python

    Python

  • Spring Boot

    Spring Boot

  • FastAPI

    FastAPI

  • MySQL

    MySQL

  • Redis

    Redis

  • Firebase

    Firebase

  • Docker Compose

    Docker Compose

  • GCP

    GCP

  • Spring AI

    Spring AI

  • Pinecone

    Pinecone

Team

7 members (2 Backend & AI, 3 Web, 2 App)

Period

2025.08 ~ 2025.09

Links

AI Server CodeMain Server CodeWeb Service

Details

  1. Overview
    • Built a RAG system from scratch and integrated a vector DB to recommend support program listings tailored to each founder.
    • A Jsoup-based crawling service scrapes and stores external listing data from sources such as K-STARTUP on a daily basis.
  2. My Contributions
    • Used Pinecone as a cloud vector DB to store and search embedded listings.
    • Built a FastAPI server for the AI service as a microservice and integrated it with the OpenAI API and embedding models.
    • Implemented a personalized chatbot by injecting the user's vectorized activity information into the Claude API in real time.
  3. Natural-Language Listing Search with Claude MCP
    • Used Claude MCP to find listings matching the appropriate conditions for a natural-language request and return the data in JSON format.
  4. Backend Infrastructure
    • Core features are handled by a Spring Boot server, and high-traffic APIs (login, listing queries, etc.) are cached with Redis.
    • Listing notifications are pushed to users in real time via FCM.
    • Built, operated, and managed an on-premise server to reduce cloud costs.
    Backend Infrastructure 1