Title: Lab 1 — Three-Way Chatbot Comparison
Course: AIINFRA 201: Model Adaptation — Fine-Tuning & Quantization > Section: Week 01 — Adapt, Prompt, or Retrieve: The Model Customization Decision

🛠️ Lab 1 — Three-Way Chatbot Comparison (50 pts)

Goal: Implement one customer-support FAQ use case three different ways — prompt engineering only, a minimal RAG pipeline, and a fine-tuning wireframe — then score the tradeoffs yourself so the decision sequence from the lecture becomes concrete, hands-on experience rather than an abstract rule. Steps:

1. Open a free Google Colab notebook (no paid tier required) and create a new notebook titled Lab1_ThreeWayComparison.
2. Pick or write a small customer-support FAQ dataset for a fictional business (10–15 question/answer pairs — e.g., "What is your return policy?", "How do I reset my password?"). Save it as a simple Python list of dicts or a small .csv you upload to Colab.
3. Approach 1 — Prompt engineering only. Using a free hosted model API (e.g., a free-tier endpoint such as Hugging Face's Inference API or an equivalent no-cost hosted model), write a system prompt that instructs the model to answer customer questions in your brand's voice. Test it against 5 sample questions, including at least one the FAQ doesn't cover, and record the raw outputs.
4. Approach 2 — Minimal RAG pipeline. Using the free datasets library (Hugging Face) to hold your FAQ pairs and a simple vector search approach (e.g., sentence-transformers embeddings with cosine similarity, or FAISS — both free and installable in Colab with pip install), build a small retrieval step: embed your FAQ entries, embed each test question, retrieve the top match, and pass it as context to the same free hosted model from Step 3. Run the same 5 test questions and record the outputs.
5. Approach 3 — Fine-tuning wireframe. You will not actually fine-tune a model this week. Instead, write out what a fine-tune would require: (a) how many labeled examples you'd need at minimum, (b) what format they'd need to be in, (c) which open-weight base model you'd choose and why, (d) an estimate of training time/cost, and (e) what could go wrong (e.g., the hallucination risk from the lecture if you tried to bake in new facts instead of tone/behavior).
6. Fill out the decision-tree worksheet (a simple table you build yourself, one row per approach) scoring each of the three approaches 1–5 on Cost, Latency, and Answer Quality, with one sentence of justification per score.
7. Write a short (200–300 word) recommendation: for this specific business scenario, which approach (or hybrid) would you actually ship, and why?

Deliverables: Your Colab notebook (.ipynb, shared link or downloaded file) containing all three approaches' code and outputs, plus your completed decision-tree worksheet and final recommendation, submitted as an online upload (notebook file) with your recommendation pasted into the text entry box.