Skip to content

isi-mube/MWC25-AI-Chatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AI+ Chatbot

RAG Assistant App

About this Project

This project was developed for the Mobile World Congress 2025 (MWC 2025) Workshop, where participants will learn how to build and deploy an AI+ powered chatbot using Python, Streamlit, and vector databases.

MWC 2025 is one of the world’s most influential technology events, bringing together industry leaders, developers, and innovators to explore the future of AI, digital transformation, and connectivity. In 2025, AI is moving from research to large-scale real-world implementation across industries.

What is the AI+ Chatbot?

The AI+ Chatbot is an intelligent Q&A assistant that enhances Generative AI (GenAI) models with Retrieval-Augmented Generation (RAG).

Prerequisites

Before setting up the project, ensure you have the following installed:

  • Python (3.9 or later)
  • An IDE: VS Code, PyCharm, or Jupyter Notebook
  • Conda (for environment management)
  • An API Key from one of the following providers:

Installation & Setup

1️⃣ Clone the Repository

git clone https://github.com/your-username/MWC25-AI-Chatbot.git
cd MWC25-AI-Chatbot

2️⃣ Create & Activate the Conda Environment

conda create --name MWC25 python=3.9
conda activate MWC25
pip install -r requirements.txt  # Install dependencies

3️⃣ Store Your API Key (Required)

For Local Development

Use a .env file to store your API key and load it using dotenv:

echo API_KEY=your-api-key > .env
from dotenv import load_dotenv
import os

load_dotenv()
api_key = os.getenv("API_KEY")

For Deployment on Streamlit Cloud

In your Streamlit project settings, go to Secrets and add:

[api_keys]
openai = "your-api-key"
huggingface = "your-api-key"

And in your Python script:

import streamlit as st

api_key = st.secrets["api_keys"]["openai"]

4️⃣ Run the Application

streamlit run main.py

Project Structure

📂 MWC25-AI-Chatbot
│── 📂 app/                     # Main Streamlit app files
│   ├── main.py                 # App
│   ├── config.toml             # Non-sensitive configuration settings
│   ├── 📂 chroma_db/           # Vector database files
│── 📂 data/                     # Retrieval data
│   ├── example.pdf              
│── 📂 images/                   # Visual assets
│   ├── app.png                  
│   ├── logo.jpg                 
│── 📂 guides/                   # Self-guided materials for beginners
│   ├── Fundamentals.ipynb  
│   ├── main.py                 # Same version but with HuggingFace
│── .gitignore                   
│── LICENSE                      # Open-source license (AGPL v3)
│── README.md                   
│── requirements.txt              # Dependencies for deployment on Streamlit
│── environment.yml               # YAML file for Conda environment setup

License (AGPL v3)

GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation.

Key Protections: 1. Freedom to Use & Modify – Open-source collaboration is encouraged. 2. Copyleft Requirement – If someone modifies and distributes your project, they must also share their modifications under the same GPL license. 3. Prevents Proprietary Use – Businesses cannot take your code and turn it into proprietary software.

🔗 Full license text: GPL v3

About

This repository contains the code and materials for the MWC25 workshop, where participants will build a Retrieval-Augmented Generation (RAG) chatbot using Streamlit.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors