genZ-Chatbot 0.0.3
genZ_Chatbot is a beginner-friendly Python package that guides users through building AI chatbots from the ground up. It supports multiple LLMs and offers customizable behavior and design, making chatbot development simpler while teaching essential Generative AI concepts.

# genZ_Chatbot: Your Gateway to AI Chatbot Creation! 🤖✨

Welcome to **genZ_Chatbot**, the ultimate package designed to help beginners build AI chatbots from scratch. Whether you're just stepping into the world of Generative AI or looking to understand chatbot integration, GenZBot has got you covered!  It provides a step-by-step guide to walk you through the entire process. 📦

---

## Features 🌟

- **Easy Setup**: Create an AI chatbot project structure with a single command.
- **Multiple LLMs**: Choose from 5 powerful language models:
  - `openai` 🔑 (requires a paid API key from OpenAI)
  - `gemini` 🌌 (free API key from Google AI Studio)
  - `gemma` 🧠  (all these other three have free API key from Groq)
  - `llama` 🦙
  - `mixtral` 🌀
- **Customizable Templates**: Two designs available:
  - `Plain` ✨
  - `Galaxy` 🌠
- **Personalization**: Set your bot's behavior and name easily.
- **Automated Environment Setup**: Virtual environment creation, dependency installation, and app execution are just one command away.

---

## Installation 🛠️

1. Install genZ_Chatbot using pip:
   ```bash
   pip install genZ_Chatbot
   ```

2. Import the `ChatBot` class:
   ```python
   from genZ_Chatbot.chatbot import ChatBot
   ```

---

## Getting Started 🚀

Here’s how to create your first chatbot project with genZ_Chatbot:

1. **Initialize Your ChatBot**:
   ```python
   bot = ChatBot(llm='gemini', api_key='your-api-key')
   ```

2. **Create Project Structure**:
   ```python
   bot.CreateProject()
   ```
   This command will generate the following structure:
   ```
   Chatbot_Project/
       AI_Service/
           AIResponse.py
       Backend/
           app.py
       Frontend/
           static/
               static.js
               style.css
           templates/
               index.html
       .env
       requirements
   ```

3. **Run the ChatBot**:
   ```python
   bot.run()
   ```
   This command will:
   - Create a virtual environment.
   - Install all dependencies from `requirements`.
   - Launch the Flask app.

---

## Example Code 📝

```python
from genZ_Chatbot.chatbot import ChatBot

# Step 1: Initialize ChatBot
bot = ChatBot(llm='gemini', api_key='your-api-key')

# Step 2: Create Project Structure
bot.CreateProject()

# Step 3: Run the Bot
bot.run()
```

---

## API Keys 🔑

- **OpenAI**: Obtain a paid API key from [OpenAI](https://openai.com/).
- **Gemini**: Get a free API key from [Google AI Studio](https://ai.google/).
- **Gemma, Llama, Mixtral**: Request API keys from [Groq AI](https://groq.com/).

---

## Why Choose GenZBot? 🤔

- Ideal for **beginners** looking to explore Generative AI.
- Provides a **clear project structure** for understanding AI chatbot integration.
- Saves time with **automated setup** and environment configuration.

---

Happy Chatbot Building! 🎉