Releases: ReZaiden/SalesFlow-AI-with-Python
Initial Stable Release(SalesFlow AI with python)
🤖 AI Sales Agent with Lead Generation
A conversational AI sales agent capable of interacting with users,
filtering products from Excel/PDF/TXT, capturing leads, and sending
real-time notifications using ntfy.sh.
Powered by OpenAI, Gradio, and a fully modular architecture.
⚠️ Note: This project is built for development and testing.
For production, ensure secure API keys, HTTPS, and proper rate
limiting.
🚀 Features
- 💬 Natural AI chat using OpenAI function-calling\
- 🔍 Product filtering by name, min/max price\
- 📥 Lead capturing (email & phone)\
- 🚨 Instant notifications via ntfy.sh\
- 📚 Knowledge Base from Excel, PDF, and TXT\
- 🎨 Beautiful Gradio UI with custom themes\
- 📝 Centralized logging (file + console)\
- 🧪 Full test coverage with pytest
🧠 Tech Stack
Technology Version Description
Python 3.9+ Core language
OpenAI API Latest LLM & tool calling
Gradio 4.0+ Interactive UI
ntfy.sh API Real-time alerts
Pandas 2.0+ Excel loader
PyPDF Latest PDF parser
PyYAML Latest Config management
python-dotenv Latest Environment variables
⚙️ Prerequisites
Before running the project, ensure you have:
- 🐍 Python 3.9+\
- 📦 pip\
- 🌐 Git\
- 🔔 ntfy.sh topic (free)\
- 🔑 AI API key like OpenAI
🛠️ Installation
git clone https://github.com/yourusername/SalesFlow-AI.git
cd SalesFlow-AI
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt🗝️ Edit .env file
- Rename
.env.samplefile to.env - Put your environment variables to it(like AI_API_KEY)
📃 Run Tests
python -m pytest▶️ Run the Project
python -m appand then go to http://localhost:8000/
📡 How It Works
- User starts the chat → Agent greets as AidenAI\
- Smart questions detect customer needs\
- Product filtering using
filter_productstool\ - Results explained naturally\
- Lead capture (email/phone)\
- Real‑time ntfy.sh alert\
- Logging saved in
logs/*.log
🧩 Project Structure
files/
├── info.pdf
├── products.xlsx
└── summary.txt
logs/
└── *.log
src/
├── agent.py
├── tools.py
├── data.py
├── config.py
├── logger.py
└── ui.py
app.py
config.yaml
🔒 Security Notes
- Keep API keys inside
.env\ - Change values in config.yaml
💡 Future Improvements
- Vector search with ChromaDB\
- Database chat history\
- Lead analytics dashboard
🧑💻 Author
Developed by: ReZaiden
💼 GitHub: @ReZaiden
📧 Contact: rezaidensalmani@gmail.com