Advanced AI assistant powered by Groq's lightning-fast LLMs with multi-domain knowledge and conversation analytics.
- Multiple AI personas (Expert, Creative, Technical)
- 7 specialized knowledge domains
- Real-time conversation analytics
- Docker/Kubernetes ready
- CI/CD pipeline
- Responsive UI with dark/light mode
nexusai-assistant/ βββ .github/ β βββ workflows/ β β βββ ci-cd.yml βββ app/ β βββ core/ β β βββ init.py β β βββ chat.py β β βββ memory.py β β βββ utils.py β βββ ui/ β β βββ init.py β β βββ components.py β β βββ layouts.py β βββ init.py β βββ main.py βββ configs/ β βββ init.py β βββ default.yaml β βββ production.yaml βββ tests/ β βββ init.py β βββ test_chat.py β βββ test_ui.py βββ docker/ β βββ nginx.conf β βββ Dockerfile.prod βββ docs/ β βββ architecture.md β βββ setup.md βββ scripts/ β βββ setup.sh β βββ deploy.sh βββ .env.example βββ .gitignore βββ .dockerignore βββ Dockerfile βββ docker-compose.yml βββ requirements.txt βββ pyproject.toml βββ README.md βββ LICENSE
# Clone repo
git clone https://github.com/wahidpanda/Conversational-Chatbot-with-GROQ-with-Multi-Domain-Expertise-
cd GENE.ai
cp .env.example .env
docker-compose up -d
Access at: http://localhost:8501
Deployment Options Deploy on Railway Deploy on Render
Documentation Full documentation available in docs/ folder:
Architecture
API Reference
Development Guide
.github/workflows/ci-cd.yml:
name: CI/CD Pipeline
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install pytest pytest-cov
- name: Run tests
run: |
pytest --cov=app --cov-report=xml
- name: Upload coverage
uses: codecov/codecov-action@v3
deploy:
needs: test
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v4
- name: Build Docker image
run: docker build -t nexusai-assistant .
- name: Log in to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_TOKEN }}
- name: Push to Docker Hub
run: |
docker tag nexusai-assistant ${{ secrets.DOCKER_HUB_USERNAME }}/nexusai-assistant:latest
docker push ${{ secrets.DOCKER_HUB_USERNAME }}/nexusai-assistant:latest
pyproject.toml (Modern Python config):
[project]
name = "nexusai-assistant"
version = "0.1.0"
description = "Advanced AI assistant powered by Groq"
authors = [
{name = "Your Name", email = "your@email.com"}
]
readme = "README.md"
requires-python = ">=3.9"
license = {text = "MIT"}
[project.urls]
Homepage = "https://github.com/yourusername/nexusai-assistant"
Documentation = "https://github.com/yourusername/nexusai-assistant/docs"
[tool.setuptools.packages.find]
where = ["app"]
[tool.pytest.ini_options]
python_files = "test_*.py"
testpaths = ["tests"]
- Initialize Git Repository bash
git init
git checkout -b main
git add .
git commit -m "Initial commit: NexusAI Assistant"
gh repo create nexusai-assistant --public --source=. --remote=origin git push -u origin main 4. Recommended GitHub Repository Settings Branch Protection Rules:
- Require pull request reviews
- Require status checks to pass
- Require linear history
-DOCKER_HUB_USERNAME -DOCKER_HUB_TOKEN -GROQ_API_KEY (for CI tests)
- Enable Discussions
- Set up Project board
- Configure CODEOWNERS
- enhancement
- bug
- documentation
- question
- Documentation Files docs/architecture.md:
markdown
graph TD
A[UI Layer] --> B[Business Logic]
B --> C[Memory Management]
B --> D[LLM Integration]
C --> E[Conversation History]
D --> F[Groq API]
UI Layer:
- Streamlit-based interface
- Responsive layouts
- Dark/light mode support
- Conversation management
- Domain-specific processing
- Analytics generation
- Short-term conversation memory
- Knowledge base persistence
docs/setup.md:
python -m venv .venv
source .venv/bin/activate # Linux/Mac
.\.venv\Scripts\activate # Windows
pip install -e .
Environment Variables
Create .env file:
ini
GROQ_API_KEY=your_key_here
STREAMLIT_SERVER_PORT=8501
This complete GitHub repository setup includes:
- Proper Python project structure
- CI/CD pipeline
- Comprehensive documentation
- Modern packaging configuration
- Docker/Kubernetes support
- Testing infrastructure
- Issue templates (can be added in .github/ISSUE_TEMPLATE/)
- All necessary configuration files