Files
presentator/README.md

74 lines
2.6 KiB
Markdown
Raw Normal View History

2023-01-13 16:21:56 +01:00
# Presentator
2023-01-13 17:32:02 +01:00
A Discord bot that generates FULL powerpoints about a given subject thanks to openai's gpt3.
2023-01-13 17:47:36 +01:00
![bg right:50% 40%]([./examples/steve-jobs/Steve-Jobs-1.png](https://raw.githubusercontent.com/Paillat-dev/presentator/main/examples/steve-jobs/Steve-Jobs-1.png))
![bg left:50% 40%](https://raw.githubusercontent.com/Paillat-dev/presentator/main/examples/python/the-python-programming-language-1.png)
2023-01-13 17:39:23 +01:00
Note: The images have been generated by an AI
2023-01-13 17:32:02 +01:00
# How it works
- The bot sends a request to the openai api with the given subject and indications in the marp markdown format
- We extract the images from the markdown and send them to the image generation api
- We generate the pdf and html files from the markdown
- We send the pdf and html files to the user
2023-01-13 16:21:56 +01:00
2023-01-13 17:32:02 +01:00
# How to install
2023-01-13 16:21:56 +01:00
## Requirements
- Python 3.8
- Pip
- A Discord bot token
- An openai api key
- (Optional) An Nvidia GPU (for image generation)
## Installation
- Clone the repository
- Install the requirements with
`pip install -r requirements.txt`
2023-01-13 17:32:02 +01:00
- Install scoop (if not alredy installed) by typing the following commands:
```
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex
```
- Install marp by doing
```
scoop install marp
```
- Restart your computer
2023-01-13 16:21:56 +01:00
- Create a file named `key.env` and put your openai api key in it
- Create a file named `token.env` and put your discord bot token in it
- In the main.py file, at the first line, enable or disable the image generation (by default it's disabled)
```python
# Enable or disable image generation
use_images = False
```
### Image generation (optional)
- Install [Stable Diffusion UI](https://github.com/cmdr2/stable-diffusion-ui) and switch to the `beta` branch.
- Copy the `./image_gen_api/main.py` file to the `stable-diffusion-ui` folder
- Open the file called `Dev Console.cmd` in the `stable-diffusion-ui` folder and run the following commands:
```
pip install uvicorn
pip install fastapi
```
2023-01-13 17:32:02 +01:00
# Running
2023-01-13 16:21:56 +01:00
- Run the `main.py` file with :
```
python main.py
```
### Image generation (optional)
- Open the file called `Dev Console.cmd` in the `stable-diffusion-ui` folder and run the following commands:
```
uvicorn main:app --reload
```
2023-01-13 17:32:02 +01:00
# Commands
2023-01-13 16:21:56 +01:00
- `/present` : Generates a pdf presentation about the given subject
Options:
- `subject` : The subject of the presentation
- `language` : The language of the presentation (default: `english`)
- `style` : The style of the presentation (default: `default`)
- `indications` : Some more instructions about how the presentation should be generated (default: `None`)
- `/list` : Lists all of your presentations
- `/get` : Gets a presentation by its id another time