PPT-AI is an AI-driven chatbot that leverages a fine-tuned LLM to generate PowerPoint presentations effortlessly. Whether you need a step-by-step guided creation or a full presentation from a single instruction, PPT-AI streamlines the process, saving time and enhancing productivity.
To develop PPT-AI, I created a custom API that implements the python-pptx
library to generate PowerPoint presentations. This API simplifies the complexity of working with the python-pptx library by abstracting the logic into high-level functions. The AI model learns to call the appropriate API functions and pass the required parameters to generate presentations accurately.
A dataset was constructed containing pairs of (prompt, API function calls), allowing the model to learn how to generate presentations in different ways:
Step-by-Step Presentation Creation: The dataset includes interactions where each instruction adds or modifies a slide incrementally.
Example:
Create a title slide about the history of guitars with a subtitle. Add a slide and give a description about guitars. Add a slide with a list of types of guitars and include sub-bullet points with examples of the genres where the guitar is used. Add an image slide that includes a picture of a person playing an electric guitar. Add a conclusion slide that talks about the benefits of playing guitar.
Full Presentation Generation with a Single Prompt: The dataset also contains examples where a single prompt describes the entire presentation, and the output consists of the necessary API function calls to generate the slides.
Example:
Create a detailed presentation about 'Famous Historical Figures' with a title slide, a slide listing the topics that will be covered (with subpoints), a slide about the life of Alexander the Great with an image, a slide about Cleopatra with an image, a listing slide about Napoleon Bonaparte with subpoints, and a conclusion slide summarizing the impact of these figures on history.
Using the dataset, I fine-tuned the Qwen2.5-7B-Instruct model to learn how to:
In addition to text-based slide generation, PPT-AI integrates with the Stable Diffusion API to generate images dynamically. When the AI model detects a request for an image slide, it:
Calls the Stable Diffusion API to generate a relevant image based on the prompt.
Retrieves the generated image and embeds it into the corresponding PowerPoint slide.
This feature enhances presentations by automating the process of adding visuals, making them more engaging and informative.
I implemented a Streamlit-based graphical interface, allowing users to interact with the chatbot and generate presentations with real-time slide previews.
Follow these steps to run PPT-AI locally using Streamlit:
git clone https://github.com/Engleonardorm7/PPT-AI-AI-Powered-Presentation-Generator
cd PPT-AI/PerfectModel
If you havenβt installed the required Python libraries, run:
pip install -r requirements.txt
streamlit run interface.py
Now, open the provided URL in your browser and start generating presentations with AI! π