Initial commit

This commit is contained in:
Hardik Sankhla
2025-06-08 21:16:35 +05:30
commit dde1038458
10 changed files with 19144 additions and 0 deletions

140
README.md Normal file
View File

@@ -0,0 +1,140 @@
# 🧾 VoiceBill AI – Voice-Powered Autonomous Invoice Generator
**VoiceBill AI** is a fully autonomous, intelligent agent that generates professional invoices directly from user voice commands. It uses state-of-the-art audio-language models like **Qwen2-Audio-7B-Instruct** to interpret voice, extract structured data using **Pydantic**, cross-check and auto-complete information from a local database, and generates polished PDF invoices using **ReportLab** — all wrapped in a clean **Gradio** UI.
> 🎯 Designed for freelancers, SMBs, and enterprises that need intelligent, conversational billing — fast.
---
## 🚀 Demo
<div align="center">
[![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/your-repo/VoiceBill_AI/blob/main/InvoiceGenerator.ipynb)
[![Watch the demo](https://img.youtube.com/vi/VIDEO_ID_HERE/maxresdefault.jpg)](https://www.youtube.com/watch?v=VIDEO_ID_HERE)
</div>
---
## 🎯 Objective
Enable users to **speak naturally** about invoice requirements while the AI:
- Understands and parses spoken content
- Auto-fills missing fields from local memory
- Follows up with intelligent prompts if any required field is missing
- Builds and exports a **professional PDF invoice**
- Works seamlessly via a user-friendly Gradio UI
---
## 🧠 System Workflow
1. **🎙️ Voice Input**:
User says: _"Generate an invoice for Ramesh for 2 iPhones and 1 MacBook."_
2. **🧠 AI Model (Qwen2-Audio)**:
Extracts structured data like:
- Client: Ramesh
- Items: iPhone, MacBook
- Quantity: 2, 1
3. **📦 Local DB Checks**:
- If Ramesh exists → fetch data
- If item details missing → asks user
- Stores/update user/item info in DB
4. **✅ Data Validation**:
Validates structured input using **Pydantic**
5. **📄 Invoice Generation**:
Generates professional PDF using **ReportLab**
6. **🌐 UI**:
All happens within an intuitive Gradio interface
---
## 🛠️ Tech Stack
| Function | Tool / Library |
|----------------------|--------------------------------------------|
| Voice-to-Text | [Qwen2-Audio-7B-Instruct](https://huggingface.co/Qwen/Qwen2-Audio-7B-Instruct) |
| Structured Validation| [Pydantic](https://docs.pydantic.dev/) |
| Audio Processing | [Librosa](https://librosa.org/) |
| UI Interface | [Gradio](https://www.gradio.app/) |
| PDF Invoice Builder | [ReportLab](https://www.reportlab.com/) |
| Runtime | Python 3.10+, Google Colab/GPU |
---
## 📦 Features
✅ AI-powered voice input → invoice
✅ Auto-fill from local user/item DB
✅ Modular, structured data validation
✅ Dynamic follow-up on missing fields
✅ Clean, professional invoice layout (PDF)
✅ Gradio UI for real-time interaction
✅ Supports 8-bit model loading (via bitsandbytes)
---
## 📁 Folder Structure
```python
VoiceBill_AI/
│
├── InvoiceGenerator.ipynb # Main pipeline notebook
├── requirements.txt # Install dependencies
├── audio_inputs/ # Uploaded or recorded audio
├── generated_invoices/ # Output PDFs saved here
└── README.md # This file
```
----
## ⚙️ Setup
✅ In Colab
- Open notebook in Colab
- Ensure GPU is enabled: Runtime > Change Runtime Type > GPU
- Run all cells
✅ Local (Experimental)
```python
$ git clone https://github.com/your-username/VoiceBill_AI.git
$ cd VoiceBill_AI
$ pip install -r requirements.txt
$ python run_app.py # Optional: if converted to Python script
```
---
## 🧩 Missing Data Handling (Agentic)
- User Info Missing? → “Who is the client?”
- Item Info Missing? → “What’s the price for iPhone 15?”
- GST or Address Missing? → Prompt and update DB
- User Updates Info? → Accept and sync to local DB
---
## 📌 Future Enhancements
- Multi-language support via Whisper or MMS
- Full agent framework with LangChain/Ollama integration
- Database integration (PostgreSQL/SQLite)
- REST API and Streamlit frontend
- Voice-based editing of previous invoices
---
## 🙌 Credits
Developed by [Gyannetra Pvt Ltd ™](https://www.gyannetra.com/)
Built to simplify billing using cutting-edge AI and local models.
Made with 💜 and Python.