PowerPoint presentation generator built with Streamlit that creates professional presentations using AI content generation and optional image integration.
- Clone the repository:
git clone <repository-url>
cd ai-powerpoint-generator- Install required dependencies:
pip install -r requirements.txt- Set up your environment variables:
export GROQ_API_KEY="your_groq_api_key"
export SERPER_API_KEY="your_serper_api_key".
├── GeneratedPresentations/ # Output directory for generated presentations
├── Designs/ # PowerPoint template designs
│ ├── Design-1.pptx
│ ├── Design-2.pptx
│ └── ...
└── app.py # Main application file
- Start the Streamlit application:
streamlit run app.py-
Access the web interface at
http://localhost:8501 -
Enter your presentation topic and customize settings:
- Specify the presentation topic
- Choose a design template (1-7)
- Toggle image inclusion
- Click "Generate Presentation"
-
Download the generated PowerPoint file
- Uses Groq's Mixtral-8x7b-32768 model for high-quality content
- Structured content with titles, subtitles, and bullet points
- Hierarchical formatting with main points and sub-points
- Automatic slide organization and flow
- 7 professional design templates
- Consistent formatting and styling
- Support for title slides and content slides
- Dynamic layout selection for visual variety
- Google Image Search integration via Serper API
- Automatic image placement and sizing
- Relevant images based on slide content
- Optional toggle for image inclusion
- Hierarchical bullet points
- Consistent font sizes and spacing
- Professional slide layouts
- Proper text alignment and positioning
Used for content generation with the following features:
- Model: Mixtral-8x7b-32768
- Temperature: 0.7
- Max tokens: 4000
Used for image search with the following features:
- Image search endpoint
- Returns top 5 relevant images
- Automatic error handling and fallback
- The mixtral model that i use may not generate structred output everytime, since the guardrails are setup only through prompt engineering