Project library

Chatbot (LoRA + RAG)

Explore Grand Junction with answers grounded in local sources.

STAR Summary

Situation
The project needed to show both sides of a tourism chatbot decision: a custom fine-tuned model that could learn destination voice and a production-ready managed model that could answer quickly with citations.
Task
Build one tourism chatbot demo that supports both managed and fine-tuned models with source-grounded answers and citations.
Action
  • Crawled Visit Grand Junction pages, built a FAISS retrieval index, and generated a tourism-specific Q&A dataset with an open-source LLM through Ollama.
  • Fine-tuned a Mistral 7B/Qwen-style chatbot path with LoRA and deployed the custom model behind AWS SageMaker/Lambda for cold-start and model-control comparison.
  • Added a Bedrock backend as the default live path, keeping the same RAG/citation experience while providing faster always-available responses for the website demo.
  • Built the web interface, backend selector, health checks, warm-up state, streaming answer handling, and citation rendering so both models can be compared in one demo.
Result
  • The project now demonstrates both architectures: Bedrock as the practical live production path and LoRA/SageMaker as the custom fine-tuning path.
  • Viewers can compare managed-model reliability, streaming responses, and citation behavior against the custom model's cold-start and deployment tradeoffs.
  • The demo keeps source-grounded answers and citation links while making the model choice transparent through the backend selector.

Travel Assistant

Explore Grand Junction with a source-grounded chat. Inputs and responses are saved on AWS.

Open full demo