This project uses a multi-agent framework to automatically generate podcasts from website content. It leverages the power of AI to scrape web content, refine it, create a script, and convert it to speech.
- Web scraping of content
- Content refinement and validation
- Automatic podcast script generation
- Script validation and improvement
- Text-to-speech conversion
- Multi-agent system using CrewAI
- More Sophisticated Web Content Scrapping using Vision and OCR content Extraction
- UI/Interface
- Support to more LLM integrations and TTS models
- Multi-Turn Podcast generation with multiple people
- Addition of Fallback scrapping tools like Firecrawl , Craw4AI and more
- Python 3.7+
- OpenAI API key or Groq API key
- Deepgram API key
-
Clone the repository:
git clone https://github.com/AjayK47/PagePod.git cd PagePod
-
Install the required packages:
pip install -r requirements.txt
-
Set up environment variables: Create a
.env
file in the project root and add your API keys:OPENAI_API_KEY=your_openai_api_key DG_API_KEY=your_deepgram_api_key
Run the main script:
python main.py
You will be prompted to enter a URL. The system will then:
- Scrape the content from the provided URL
- Refine and validate the content
- Generate a podcast script
- Convert the script to speech
- Save the resulting audio file
main.py
: Entry point of the applicationagents.py
: Defines the AI agents used in the processtasks.py
: Defines the tasks for each agenttools/tts.py
: Contains the text-to-speech toolrequirements.txt
: Lists all Python dependencies
- You can customize the behavior of the agents by modifying their roles, goals, and backstories in the
agents.py
file. You can also adjust the task descriptions intasks.py
to fine-tune the process. - Best Part you change your LLM model as well in
agents.py
file
Contributions are welcome! Please feel free to submit a Pull Request.
- CrewAI for the multi-agent framework
- OpenAI for the language model
- Deepgram for the text-to-speech API