Skip to content
TQT
Applied AI system 2025

E-Commerce AI Assistant: Vector search and conversational product discovery

An end-to-end AI shopping assistant that combines filtered vector search and agent-driven conversational retrieval for natural-language product discovery.

Overview

Conversational product discovery backed by vector retrieval.

E-Commerce AI Assistant is a prototype shopping assistant for natural-language product search and consultation. The backend exposes product retrieval flows through FastAPI, while a Streamlit frontend provides a simple chat surface for users.

The system focuses on two retrieval paths: direct context search with metadata filters, and agent search where retrieved product records become context for an LLM response.

System flow

Two search modes share the same retrieval foundation.

QueryUser describes the desired product in natural language.
EmbeddingThe query is converted into a vector representation.
MilvusCosine similarity search retrieves product records with optional category and price filters.
AnswerAgent search sends the query and retrieved product context into an LLM.

Technical contribution

Backend, retrieval, and infrastructure are designed as one system.

  • Implemented semantic product retrieval with Milvus, cosine similarity, embeddings, category filters, and price filters.
  • Built an agent search flow that supplies retrieved product records to an LLM for context-aware consultation.
  • Structured the system as FastAPI, Streamlit, PostgreSQL, Redis, Milvus, Nginx, and Docker Compose services.
  • Used SQLModel-style backend structure with repository and service layers for product and conversation workflows.
  • Integrated Google Generative AI embeddings and chat models through LangChain-based service abstractions.

Limitations

Prototype scope, not a production claim.

The repository supports a containerized AI assistant prototype. It does not provide evidence for production deployment, revenue impact, real-time performance guarantees, or customer-service reduction metrics, so those claims are intentionally excluded.

Stack

FastAPILangGraphLangChainMilvusPostgreSQLRedisStreamlitDocker