{"id":28958025,"url":"https://github.com/20mup/ai-receptionist","last_synced_at":"2026-04-11T11:41:05.450Z","repository":{"id":300827682,"uuid":"1007279832","full_name":"20mup/ai-receptionist","owner":"20mup","description":"Voice-enabled AI receptionist powered by Whisper, LangChain, and ElevenLabs — trained on company-specific data scraped from Systems Limited.","archived":false,"fork":false,"pushed_at":"2025-06-23T19:57:59.000Z","size":1335,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-23T20:34:30.522Z","etag":null,"topics":["ai","elevenlabs","internship","langchain","streamlit","whisper"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/20mup.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-23T18:38:04.000Z","updated_at":"2025-06-23T19:58:03.000Z","dependencies_parsed_at":"2025-06-23T20:47:33.964Z","dependency_job_id":null,"html_url":"https://github.com/20mup/ai-receptionist","commit_stats":null,"previous_names":["20mup/ai-receptionist"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/20mup/ai-receptionist","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/20mup%2Fai-receptionist","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/20mup%2Fai-receptionist/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/20mup%2Fai-receptionist/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/20mup%2Fai-receptionist/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/20mup","download_url":"https://codeload.github.com/20mup/ai-receptionist/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/20mup%2Fai-receptionist/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261571302,"owners_count":23178762,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","elevenlabs","internship","langchain","streamlit","whisper"],"created_at":"2025-06-23T23:00:21.187Z","updated_at":"2026-04-11T11:41:05.445Z","avatar_url":"https://github.com/20mup.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🤖 AIVA — AI Voice Assistant for Enterprises\n\n\u003e Voice-powered receptionist built with Whisper, LangChain, FAISS, and ElevenLabs — built during my internship at Systems Limited.\n\nAIVA (AI Voice Assistant) is a voice-interactive AI receptionist that can answer company-specific questions by listening to your voice, retrieving accurate info from real webpages, and responding with natural speech.\n\n---\n\n## 📺 Demo\n\n[![Watch on YouTube](https://img.shields.io/badge/Watch%20Demo-YouTube-red?logo=youtube)](https://youtu.be/_fyLJ0vlOlo)\n\n---\n\n## 🚀 Why I Built This\n\nDuring my internship at Systems Limited, I saw an opportunity to bring generative AI to a real business use case: reception and onboarding. I pitched AIVA as a solo project to my manager and VP — and after 4 weeks of development, I presented it to 60+ employees and the President of IT.\n\n---\n\n## ✨ Features\n\n- 🎙️ Voice-to-voice interaction (ask a question, hear a reply)\n- 📚 Trained on 100+ webpages scraped from systemsltd.com\n- 🧠 LangChain + GPT-3.5 for accurate retrieval and context\n- 🗣️ ElevenLabs voice output with natural tone\n- 💻 Built in Streamlit — no setup, just run and speak\n\n---\n\n## 🧰 Tech Stack\n\n| Purpose            | Tools Used                        |\n|-------------------|------------------------------------|\n| Speech-to-Text     | [Whisper](https://github.com/openai/whisper) (OpenAI) |\n| Knowledge Retrieval | FAISS + LangChain                |\n| Text-to-Speech     | [ElevenLabs](https://www.elevenlabs.io) |\n| Interface          | Streamlit                         |\n| Language Model     | GPT-3.5 (via LangChain)           |\n| Web Scraping       | BeautifulSoup                     |\n\n---\n\n## 🧠 How It Works\n\n1. **Scrape company content** → chunk into documents  \n2. **Embed content using OpenAI embeddings + FAISS index**  \n3. **Capture voice via Whisper**, convert to text  \n4. **Query LangChain’s retrieval chain** → generate response  \n5. **Use ElevenLabs** to speak the result out loud  \n6. **Streamlit UI** glues the entire experience together\n\n---\n\n## 📁 Project Structure\n\n```bash\nai-receptionist/\n├── app/\n│   ├── main.py                # Streamlit UI\n│   ├── chatbot.py             # LangChain logic\n│   ├── audio.py               # Whisper + ElevenLabs integration\n│   ├── st_custom_components/  # Custom JS audio recorder\n│   └── utils/\n│       ├── scraper_example.py\n│       └── concatenate.py\n├── new_faiss_index/           # Saved FAISS vector index\n├── requirements.txt\n├── .env.example\n└── README.md\n```\n\n---\n\n## 📝 Setup Instructions\n\n1. **Clone the repo**\n```bash\ngit clone https://github.com/20mup/ai-receptionist\ncd ai-receptionist\n```\n\n2. **Create a virtual environment**\n```bash\npython -m venv venv\nsource venv/bin/activate  # On Windows: venv\\Scripts\\activate\n```\n\n3. **Install dependencies**\n```bash\npip install -r requirements.txt\n```\n\n4. **Add your API keys to `.env`**\n```\nOPENAI_API_KEY=your-openai-key\nELEVENLABS_API_KEY=your-elevenlabs-key\n```\n\n5. **Run the app**\n```bash\nstreamlit run app/main.py\n```\n\n---\n\n## 🤝 Credits\n\nDeveloped by [Mousa Pirzada](https://www.linkedin.com/in/mousa-pirzada/)  \nInternship: Systems Limited — Cloud \u0026 Infrastructure Division  \nSpecial thanks to my mentors and VP for trusting me with this initiative.\n\n---\n\n\u003e _From static FAQs to fluent conversations — AIVA makes companies sound smarter._\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F20mup%2Fai-receptionist","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F20mup%2Fai-receptionist","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F20mup%2Fai-receptionist/lists"}