Spaces:
Sleeping
Sleeping
Update README.md
Browse files
README.md
CHANGED
|
@@ -1,77 +1,39 @@
|
|
| 1 |
-
-
|
| 2 |
-
title: SlideDeck AI
|
| 3 |
-
emoji: 🏢
|
| 4 |
-
colorFrom: yellow
|
| 5 |
-
colorTo: green
|
| 6 |
-
sdk: streamlit
|
| 7 |
-
sdk_version: 1.32.2
|
| 8 |
-
app_file: app.py
|
| 9 |
-
pinned: false
|
| 10 |
-
license: mit
|
| 11 |
-
---
|
| 12 |
|
| 13 |
-
|
| 14 |
|
| 15 |
-
|
| 16 |
-
With SlideDeck AI, co-create slide decks on any topic with Generative Artificial Intelligence.
|
| 17 |
-
Describe your topic and let SlideDeck AI generate a PowerPoint slide deck for you—it's as simple as that!
|
| 18 |
|
| 19 |
-
|
| 20 |
-
Originally, it was built using the Llama 2 API provided by Clarifai.
|
| 21 |
|
| 22 |
-
|
| 23 |
-
|
| 24 |
-
where you can create and improve the presentation.
|
| 25 |
|
|
|
|
| 26 |
|
| 27 |
-
|
| 28 |
|
| 29 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 30 |
|
| 31 |
-
|
| 32 |
-
The output is generated as structured JSON data based on a pre-defined schema.
|
| 33 |
-
2. Next, it uses the keywords from the JSON output to search and download a few images with a certain probability.
|
| 34 |
-
3. Subsequently, it uses the `python-pptx` library to generate the slides,
|
| 35 |
-
based on the JSON data from the previous step.
|
| 36 |
-
A user can choose from a set of three pre-defined presentation templates.
|
| 37 |
-
4. At this stage onward, a user can provide additional instructions to *refine* the content.
|
| 38 |
-
For example, one can ask to add another slide or modify an existing slide.
|
| 39 |
-
A history of instructions is maintained.
|
| 40 |
-
5. Every time SlideDeck AI generates a PowerPoint presentation, a download button is provided.
|
| 41 |
-
Clicking on the button will download the file.
|
| 42 |
|
|
|
|
|
|
|
| 43 |
|
| 44 |
-
#
|
| 45 |
|
| 46 |
-
|
| 47 |
-
(MIT license) in the slides. A few icons from [SVG Repo](https://www.svgrepo.com/)
|
| 48 |
-
(CC0, MIT, and Apache licenses) are also used.
|
| 49 |
|
|
|
|
|
|
|
| 50 |
|
| 51 |
-
|
| 52 |
|
| 53 |
-
- **Connection timeout**: Requests sent to the Hugging Face Inference endpoint might time out. If it still does not work, wait for a while and try again.
|
| 54 |
|
| 55 |
-
|
| 56 |
-
- **Cannot paste text in the input box**: If the length of the copied text is greater than the maximum
|
| 57 |
-
number of allowed characters in the textbox, pasting would not work.
|
| 58 |
|
| 59 |
-
|
| 60 |
-
# Local Development
|
| 61 |
-
|
| 62 |
-
SlideDeck AI uses [Mistral-Nemo-Instruct-2407](https://huggingface.co/mistralai/Mistral-Nemo-Instruct-2407)
|
| 63 |
-
via the Hugging Face Inference API.
|
| 64 |
-
To run this project by yourself, you need to provide the `HUGGINGFACEHUB_API_TOKEN` API key,
|
| 65 |
-
for example, in a `.env` file. For image search, the `PEXEL_API_KEY` should be added.
|
| 66 |
-
Visit the respective websites to obtain the keys.
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
# Live Demo
|
| 70 |
-
|
| 71 |
-
- [SlideDeck AI](https://huggingface.co/spaces/barunsaha/slide-deck-ai) on Hugging Face Spaces
|
| 72 |
-
- [Demo video](https://youtu.be/QvAKzNKtk9k) of the chat interface on YouTube
|
| 73 |
-
|
| 74 |
-
|
| 75 |
-
# Award
|
| 76 |
-
|
| 77 |
-
SlideDeck AI has won the 3rd Place in the [Llama 2 Hackathon with Clarifai](https://lablab.ai/event/llama-2-hackathon-with-clarifai) in 2023.
|
|
|
|
| 1 |
+
# AI-SlideMaker
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 2 |
|
| 3 |
+
We spend a lot of time creating slides and organizing our thoughts for presentations. With AI-SlideMaker, you can co-create slide decks on any topic using Generative Artificial Intelligence. Describe your topic, and let AI-SlideMaker generate a PowerPoint slide deck for you—it's that simple!
|
| 4 |
|
| 5 |
+
AI-SlideMaker is powered by [Mistral-Nemo-Instruct-2407](https://huggingface.co/mistralai/Mistral-Nemo-Instruct-2407).
|
|
|
|
|
|
|
| 6 |
|
| 7 |
+
## Update (v4.0)
|
|
|
|
| 8 |
|
| 9 |
+
- Legacy AI-SlideMaker allowed one-shot generation of slide decks based on inputs.
|
| 10 |
+
- AI-SlideMaker *Reloaded* enables an iterative workflow with a conversational interface, allowing you to create and refine presentations interactively.
|
|
|
|
| 11 |
|
| 12 |
+
## Process
|
| 13 |
|
| 14 |
+
AI-SlideMaker works in the following way:
|
| 15 |
|
| 16 |
+
1. **Initial Slide Generation**: Given a topic description, AI-SlideMaker uses Mistral-Nemo-Instruct to generate the *initial* content of the slides. The output is generated as structured JSON data based on a pre-defined schema.
|
| 17 |
+
2. **Image Search**: Using keywords from the JSON output, it searches and downloads relevant images with a certain probability.
|
| 18 |
+
3. **Slide Creation**: It uses the `python-pptx` library to generate slides based on the JSON data. Users can choose from three pre-defined presentation templates.
|
| 19 |
+
4. **Refinement**: Users can provide additional instructions to *refine* the content, such as adding new slides or modifying existing ones.
|
| 20 |
+
5. **Download**: Each time a presentation is generated, a download button is provided for users to download the PowerPoint file.
|
| 21 |
|
| 22 |
+
## Known Issues
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 23 |
|
| 24 |
+
- **Connection timeout**: Requests sent to the Hugging Face Inference endpoint might time out. If this happens, try again later.
|
| 25 |
+
- **Text Input Limit**: If the pasted text exceeds the maximum number of characters allowed in the input box, it will not paste correctly.
|
| 26 |
|
| 27 |
+
## Local Development
|
| 28 |
|
| 29 |
+
To run this project locally, you need to provide the following API keys:
|
|
|
|
|
|
|
| 30 |
|
| 31 |
+
- `HUGGINGFACEHUB_API_TOKEN`: To use the Hugging Face Inference API.
|
| 32 |
+
- `PEXEL_API_KEY`: To search and download images.
|
| 33 |
|
| 34 |
+
Add these keys to your environment variables or a `.env` file. Visit the respective websites to obtain these API keys.
|
| 35 |
|
|
|
|
| 36 |
|
| 37 |
+
## Acknowledgment
|
|
|
|
|
|
|
| 38 |
|
| 39 |
+
This is the first module of a final year project (FYP) developed under the supervision of Ma'am Fouzia.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|