Skip to main content
All projects

Academic·2025

Miley Chatbot

CS341 Big Data: Product Recommendation Bot

Miley Chatbot
Role
AI/ML Engineer
Team
Group Project
Year
2025

Key figures

Qwen
Language model
2
LLM modules
100% open source
Technology
CS341 Big Data
Course

A group project for CS341 (Big Data) focused on building a product recommendation chatbot powered by a Large Language Model (LLM) and an end-to-end data workflow. The system is designed using fully open-source technologies, covering the full pipeline—from understanding user messages and retrieving relevant products via vector search to composing a natural-language response grounded in the retrieved context.

The problem

  1. 01Customers struggle to discover relevant products when datasets are large and diverse, making traditional search insufficient.
  2. 02Rule-based chatbots have limited ability to interpret natural language and user intent in context.
  3. 03A practical solution requires connecting language understanding to retrieval and generating responses that remain consistent with retrieved product information.

The approach

  1. 01Adopted Qwen (LLM) with Hugging Face tooling and leveraged GPU Cloud (Runpod.io) to experiment, tune, and evaluate models efficiently.
  2. 02Designed the Qwen-based LLM module as two components: (1) an Entity/Intent Extractor that parses user messages into structured signals before vector search, and (2) a Composer that processes retrieved product lists with conversational context to produce a well-formed final answer.
  3. 03Improved model effectiveness through tuning and prompt/instruction refinement to better fit recommendation scenarios and to reduce inconsistent outputs.
  4. 04Built a structured data pipeline to manage data preparation, query flow across modules, and the handoff between the LLM and vector search in a traceable, maintainable manner.

The result

  1. 01The system extracts entity and intent signals before retrieval, improving the structure and relevance of product candidates returned by vector search.
  2. 02The Composer generates natural, context-aware responses grounded in retrieved product information, improving overall conversational quality.
  3. 03Delivered practical end-to-end experience with an open-source LLM stack: data pipeline design, instruction/prompting, evaluation, and iterative tuning for better performance.

Retrospective

Challenges

  • Designing a reliable data pipeline across Extractor → Vector Search → Composer with clear traceability and validation.
  • Learning effective LLM instruction/prompting and iterating over large evaluation sets to stabilize output quality.
  • Tuning models efficiently while managing compute constraints and experiment cycles on GPU cloud resources.
  • Reducing hallucination by grounding responses in retrieved product lists and enforcing response constraints.

Learnings

  • Designing a two-stage LLM workflow (Extractor/Composer) to connect language understanding, retrieval, and grounded response generation.
  • Using Hugging Face to manage experimentation, evaluation, and tuning for task-specific performance improvements.
  • Working with GPU Cloud (Runpod.io) for model training/experiments and managing iteration cycles effectively.
  • Building Big Data pipelines that orchestrate multiple modules with consistent data flow and maintainable interfaces.
  • Techniques to mitigate hallucination by constraining the generation context to vector-search results and using explicit prompting.

Interested in work like this?

Tell me about your brief — I reply within 24 hours.

Start a conversation