barunsaha commited on
Commit
553f9da
·
1 Parent(s): 2670d27

Add Colab quickstart link and update project description

Browse files
Files changed (1) hide show
  1. README.md +36 -30
README.md CHANGED
@@ -13,14 +13,18 @@ license: mit
13
 
14
  [![PyPI](https://img.shields.io/pypi/v/slidedeckai.svg)](https://pypi.org/project/slidedeckai/)
15
  [![codecov](https://codecov.io/gh/barun-saha/slide-deck-ai/branch/main/graph/badge.svg)](https://codecov.io/gh/barun-saha/slide-deck-ai)
 
16
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
17
  [![Open in Streamlit](https://static.streamlit.io/badges/streamlit_badge_black_white.svg)](https://huggingface.co/spaces/barunsaha/slide-deck-ai)
18
 
19
- # SlideDeck AI
20
 
21
- We spend a lot of time **creating** slides and organizing our thoughts for any presentation.
22
- With SlideDeck AI, co-create slide decks on any topic with **Artificial Intelligence** and **Large Language Models**.
23
- Describe your topic and let SlideDeck AI generate a **PowerPoint slide deck** for you—it's as simple as that!
 
 
 
 
24
 
25
 
26
  ## Star History
@@ -28,26 +32,23 @@ Describe your topic and let SlideDeck AI generate a **PowerPoint slide deck** fo
28
  [![Star History Chart](https://api.star-history.com/svg?repos=barun-saha/slide-deck-ai&type=Date)](https://star-history.com/#barun-saha/slide-deck-ai&Date)
29
 
30
 
31
- ## Process
32
 
33
- SlideDeck AI works in the following way:
34
 
35
- 1. Given a topic description, it uses a Large Language Model (LLM) to generate the *initial* content of the slides.
36
- The output is generated as structured JSON data based on a pre-defined schema.
37
- 2. Next, it uses the keywords from the JSON output to search and download a few images with a certain probability.
38
- 3. Subsequently, it uses the `python-pptx` library to generate the slides,
39
- based on the JSON data from the previous step.
40
- A user can choose from a set of pre-defined presentation templates.
41
- 4. At this stage onward, a user can provide additional instructions to *refine* the content.
42
- For example, one can ask to add another slide or modify an existing slide.
43
- A history of instructions is maintained.
44
- 5. Every time SlideDeck AI generates a PowerPoint presentation, a download button is provided.
45
- Clicking on the button will download the file.
46
 
47
- In addition, SlideDeck AI can also create a presentation based on PDF files.
48
 
 
49
 
50
- ## Python API Usage
 
 
51
 
52
  ```python
53
  from slidedeckai.core import SlideDeckAI
@@ -80,11 +81,13 @@ slidedeckai --list-models
80
  ```
81
 
82
 
83
- ## Summary of the LLMs
84
 
85
- SlideDeck AI allows the use of different LLMs from several online providers—Azure OpenAI, Google, Cohere, Together AI, and OpenRouter. Most of these service providers offer generous free usage of relevant LLMs without requiring any billing information.
86
 
87
- Based on several experiments, SlideDeck AI generally recommends the use of **Mistral NeMo**, **Gemini Flash**, and **GPT-4o** to generate the slide decks.
 
 
88
 
89
  The supported LLMs offer different styles of content generation. Use one of the following LLMs along with relevant API keys/access tokens, as appropriate, to create the content of the slide deck:
90
 
@@ -108,8 +111,9 @@ The supported LLMs offer different styles of content generation. Use one of the
108
  | Llama 3.3 70B Instruct Turbo | Together AI (`to`) | Mandatory; [get here](https://api.together.ai/settings/api-keys) | Slower, detailed |
109
  | Llama 3.1 8B Instruct Turbo 128K | Together AI (`to`) | Mandatory; [get here](https://api.together.ai/settings/api-keys) | Faster, shorter |
110
 
111
- > **IMPORTANT**: SlideDeck AI does **NOT** store your API keys/tokens or transmit them elsewhere. If you provide your API key, it is only used to invoke the relevant LLM to generate contents. That's it! This is an
112
- Open-Source project, so feel free to audit the code and convince yourself.
 
113
 
114
  In addition, offline LLMs provided by Ollama can be used. Read below to know more.
115
 
@@ -125,9 +129,9 @@ SlideDeck AI uses a subset of icons from [bootstrap-icons-1.11.3](https://github
125
  SlideDeck AI uses LLMs via different providers. To run this project by yourself, you need to use an appropriate API key, for example, in a `.env` file.
126
  Alternatively, you can provide the access token in the app's user interface itself (UI).
127
 
128
- ### Offline LLMs Using Ollama
129
 
130
- SlideDeck AI allows the use of offline LLMs to generate the contents of the slide decks. This is typically suitable for individuals or organizations who would like to use self-hosted LLMs for privacy concerns, for example.
131
 
132
  Offline LLMs are made available via Ollama. Therefore, a pre-requisite here is to have [Ollama installed](https://ollama.com/download) on the system and the desired [LLM](https://ollama.com/search) pulled locally. You should choose a model to use based on your hardware capacity. However, if you have no GPU, [gemma3:1b](https://ollama.com/library/gemma3:1b) can be a suitable model to run only on CPU.
133
 
@@ -171,12 +175,14 @@ Finally, the focus is on using offline LLMs, not going completely offline. So, I
171
 
172
  # Live Demo
173
 
174
- - [SlideDeck AI](https://huggingface.co/spaces/barunsaha/slide-deck-ai) on Hugging Face Spaces
175
- - [Demo video](https://youtu.be/QvAKzNKtk9k) of the chat interface on YouTube
176
- - Demo video on [using Azure OpenAI](https://youtu.be/oPbH-z3q0Mw)
 
 
177
 
178
 
179
- # Award
180
 
181
  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.
182
 
 
13
 
14
  [![PyPI](https://img.shields.io/pypi/v/slidedeckai.svg)](https://pypi.org/project/slidedeckai/)
15
  [![codecov](https://codecov.io/gh/barun-saha/slide-deck-ai/branch/main/graph/badge.svg)](https://codecov.io/gh/barun-saha/slide-deck-ai)
16
+ [![Documentation Status](https://readthedocs.org/projects/slidedeckai/badge/?version=latest)](https://slidedeckai.readthedocs.io/en/latest/?badge=latest)
17
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
18
  [![Open in Streamlit](https://static.streamlit.io/badges/streamlit_badge_black_white.svg)](https://huggingface.co/spaces/barunsaha/slide-deck-ai)
19
 
 
20
 
21
+ # SlideDeck AI: The AI Assistant for Professional Presentations
22
+
23
+ We all spend countless hours **creating** slides and meticulously organizing our thoughts for any presentation.
24
+
25
+ **SlideDeck AI is your powerful AI assistant** for presentation generation. Co-create stunning, professional slide decks on any topic with the help of cutting-edge **Artificial Intelligence** and **Large Language Models**.
26
+
27
+ **The workflow is simple:** Describe your topic, and let SlideDeck AI generate a complete **PowerPoint slide deck** for you—it's that easy!
28
 
29
 
30
  ## Star History
 
32
  [![Star History Chart](https://api.star-history.com/svg?repos=barun-saha/slide-deck-ai&type=Date)](https://star-history.com/#barun-saha/slide-deck-ai&Date)
33
 
34
 
35
+ ## How It Works: The Automated Deck Generation Process
36
 
37
+ SlideDeck AI streamlines the creation process through the following steps:
38
 
39
+ 1. **AI Content Generation:** Given a topic description, a Large Language Model (LLM) generates the *initial* slide content as structured JSON data based on a pre-defined schema.
40
+ 2. **Visual Enhancement:** It uses keywords from the JSON output to search and download relevant images, which are added to the presentation with a certain probability.
41
+ 3. **PPTX Assembly:** Subsequently, the powerful `python-pptx` library is used to generate the slides based on the structured JSON data. A user can choose from a set of pre-defined presentation templates.
42
+ 4. **Refinement & Iteration:** At this stage onward, a user can provide additional instructions to *refine* the content (e.g., "add another slide," or "modify an existing slide"). A history of instructions is maintained for seamless iteration.
43
+ 5. **Instant Download:** Every time SlideDeck AI generates a PowerPoint presentation, a download button is provided to instantly save the file.
 
 
 
 
 
 
44
 
45
+ In addition, SlideDeck AI can also create a presentation based on **PDF files**, transforming documents into decks!
46
 
47
+ ## Python API Quickstart
48
 
49
+ <a target="_blank" href="https://colab.research.google.com/drive/1YA9EEmyiQFk03bOSc7lZnxK5l2hAL60l?usp=sharing">
50
+ <img src="https://colab.research.google.com/assets/colab-badge.svg" alt="Open In Colab"/>
51
+ </a>
52
 
53
  ```python
54
  from slidedeckai.core import SlideDeckAI
 
81
  ```
82
 
83
 
84
+ ## Unmatched Flexibility: Choose Your AI Brain
85
 
86
+ SlideDeck AI stands out by supporting a wide array of LLMs from several online providers—Azure/ OpenAI, Google, SambaNova, Together AI, and OpenRouter. This gives you flexibility and control over your content generation style.
87
 
88
+ Most supported service providers also offer generous free usage tiers, meaning you can often start building without immediate billing concerns.
89
+
90
+ Based on several experiments, SlideDeck AI generally recommends the use of Gemini Flash and GPT-4o to generate the best-quality slide decks.
91
 
92
  The supported LLMs offer different styles of content generation. Use one of the following LLMs along with relevant API keys/access tokens, as appropriate, to create the content of the slide deck:
93
 
 
111
  | Llama 3.3 70B Instruct Turbo | Together AI (`to`) | Mandatory; [get here](https://api.together.ai/settings/api-keys) | Slower, detailed |
112
  | Llama 3.1 8B Instruct Turbo 128K | Together AI (`to`) | Mandatory; [get here](https://api.together.ai/settings/api-keys) | Faster, shorter |
113
 
114
+ > **🔒 IMPORTANT: Your Privacy and Security are Paramount**
115
+ >
116
+ > SlideDeck AI does **NOT** store your API keys/tokens or transmit them elsewhere. Your key is _only_ used to invoke the relevant LLM for content generation—and that's it! As a fully **Open-Source** project, we encourage you to audit the code yourself for complete peace of mind.
117
 
118
  In addition, offline LLMs provided by Ollama can be used. Read below to know more.
119
 
 
129
  SlideDeck AI uses LLMs via different providers. To run this project by yourself, you need to use an appropriate API key, for example, in a `.env` file.
130
  Alternatively, you can provide the access token in the app's user interface itself (UI).
131
 
132
+ ### Ultimate Privacy: Offline Generation with Ollama
133
 
134
+ SlideDeck AI allows the use of **offline LLMs** to generate the contents of the slide decks. This is typically suitable for individuals or organizations who would like to use self-hosted LLMs for privacy concerns, for example.
135
 
136
  Offline LLMs are made available via Ollama. Therefore, a pre-requisite here is to have [Ollama installed](https://ollama.com/download) on the system and the desired [LLM](https://ollama.com/search) pulled locally. You should choose a model to use based on your hardware capacity. However, if you have no GPU, [gemma3:1b](https://ollama.com/library/gemma3:1b) can be a suitable model to run only on CPU.
137
 
 
175
 
176
  # Live Demo
177
 
178
+ Experience the power now!
179
+
180
+ - 🚀 Live App: [Try SlideDeck AI on Hugging Face Spaces](https://huggingface.co/spaces/barunsaha/slide-deck-ai)
181
+ - 🎥 Quick Demo: [Watch the core chat interface in action (YouTube)](https://youtu.be/QvAKzNKtk9k)
182
+ - 🤝 Enterprise Showcase: [See a demonstration using Azure OpenAI (YouTube)](https://youtu.be/oPbH-z3q0Mw)
183
 
184
 
185
+ # 🏆 Recognized Excellence
186
 
187
  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.
188