MultiAI is a multi-mode AI app offering five core capabilities:
- Chatbot for general conversations
- Searchbot for LLM-powered web search
- Voicebot for fully voice-driven conversations
- File Q&A for interacting with documents using Retrieval-Augmented Generation (RAG)
- An Account System to save, load, and manage your chat histories
Explore MultiAI at: https://multi-ai.streamlit.app/
A simple, general-purpose chatbot that lets you interact with a variety of open-source Large Language Models (LLMs) and explore how they handle different types of conversations.
Searchbot blends LLM reasoning with real-time search tools to deliver more accurate answers. The model generates search queries, retrieves results, and uses them to form responses. Currently supported search providers:
- Wikipedia: Great for factual, structured information from a trusted knowledge base.
- DuckDuckGo: A fast, privacy-focused web search engine for broad internet results.
Talk to your AI assistant hands-free. The Voicebot converts your speech to text, generates a response using an LLM, and replies back with natural-sounding audio—making conversations fully voice-driven.
Upload PDF, TXT, or Markdown files and ask questions directly about their content. This feature uses Retrieval-Augmented Generation (RAG), allowing the model to pull relevant information from your documents and generate accurate, context-aware answers—making it easy to interact with your files without reading everything manually.
Create an account or log in to sync your conversations across sessions and access your saved chat histories.
- Python: The entire app is developed in Python.
- Streamlit: Used to build the app's user interface.
- Groq: Provides the LLMs for chatbot responses, search queries, and file-based Q&A.
- LangChain:
- LangChain Core: Manages LLMs and tool interactions.
- LangChain Agents: Used for
ZERO_SHOT_REACT_DESCRIPTIONagents with web search tools. - LangChain Community Tools: Integrates DuckDuckGo and Wikipedia for real-time web searches.
- LangChain Document Loaders: Loads and processes PDF, TXT, and Markdown files.
- LangChain VectorStores: FAISS is used for document embedding and retrieval.
- Firebase: Handles user login, registration, and secure session management.
- Firestore: Stores chat history for authenticated users.
- HuggingFace Embeddings: Utilizes
all-MiniLM-L12-v2for embedding text data in the File Q&A feature.
- Tempfile: Manages temporary storage during file uploads.
- Python 3.x
- Required Python libraries (see
requirements.txt)
- Clone the repository:
git clone https://github.com/BilalM04/MultiAI.git
- Navigate to the porject directory:
cd MultiAI - Install the required libraries:
pip install -r requirements.txt
- Start the app:
streamlit run Chatbot.py
- Open your browser and go to the
localhostlink specified in the command line.
- Chatbot: Start a conversation by typing in the input field and pressing Enter.
- SearchBot: Type your prompt, and the bot will use both LLMs and search tools to give you an answer.
- Voicebot: Record or upload audio, get it transcribed, receive an LLM reply, and hear the response.
- File Q&A: Upload a PDF, TXT, or MD file and ask questions related to its content.
- Account: Sign up or log in to start managing your saved chats.
Explore the live demo: MultiAI

