f21720b139
- Fixed issues reported by Miri4ever - Removed all MySQL specific SQL - Better language management - Minor code cleanup
121 lines
6.3 KiB
Markdown
121 lines
6.3 KiB
Markdown
# AI Labs v 1.0.1 RC
|
|
|
|
Incorporate AI into your phpBB board and get ready for an exciting experience.
|
|
Currently supported ChatGPT, DALL-E (OpenAI) and Stable Diffusion (Stability AI).
|
|
Midjourney support coming soon.
|
|
|
|
Examples:
|
|
- [ChatGPT](https://privet.fun/viewtopic.php?t=2802)
|
|
- [ChatGPT, custom prompt](https://privet.fun/viewtopic.php?t=2799)
|
|
- [DALL-E](https://privet.fun/viewtopic.php?t=2800)
|
|
- [Stable Diffusion by Stability AI](https://privet.fun/viewtopic.php?t=2801)
|
|
- [Midjourney, coming soon 🚀](https://privet.fun/viewtopic.php?t=2718)
|
|
- [Stable Diffusion by Leonardo AI, coming soon 🚀](https://privet.fun/viewtopic.php?t=2605)
|
|
Also available as Telegram bot https://t.me/stable_diffusion_superbot
|
|
|
|
## Requirements
|
|
* php >=7.1
|
|
* phpbb >= 3.2
|
|
|
|
## Important notes
|
|
|
|
* Installing of [Simple mentions phpBB extension](https://www.phpbb.com/customise/db/extension/simple_mentions/) strongly suggested.
|
|
[@mention]() feature makes it really easy to talk to AI bots and other board users.
|
|
|
|
* If you are planning to use image generation AI (eg DALL-E or Stable Diffusion) make sure to adjust attachment settings to support large images and verify that `webp` image extension configured.
|
|
|
|
Go to `ACP` > `General` > `Attachment settings` and adjust `Total attachment quota`, `Maximum file size` and `Maximum file size messaging`:
|
|
![Attachment settings](../privet/ailabs/docs/attachment_settings.png)
|
|
|
|
Go to `ACP` > `Posting` > `Manage attachment extensions`, look for `webp`, add it if missing:
|
|
![Attachment settings](../privet/ailabs/docs/attachment_webp.png)
|
|
|
|
## Installation
|
|
|
|
Download https://github.com/privet-fun/phpbb_ailabs and copy `/privet/ailabs` to `phppp/ext` folder:
|
|
![Attachment settings](../privet/ailabs/docs/ext_location.png)
|
|
|
|
Go to `ACP` > `Customise` > `Manage extensions` and enable the `AI Labs` extension.
|
|
|
|
Finally go to `ACP` > `Extensions` > `AI Labs` > `Settings` and add desired AI configurations:
|
|
![Attachment settings](../privet/ailabs/docs/ailabs_settings.png)
|
|
|
|
## ChatGPT basic setup
|
|
|
|
* You will need OpenAI account, sign up at https://platform.openai.com/.
|
|
To obtain API key go to https://platform.openai.com/account/api-keys, click on `Create new secret key`, copy and save in a safe place generated API key.
|
|
Open AI key starts with `sk-` and look something like this `sk-rb5yW9j6Nm2kP3Fhe7CPzT1QczwDZ5LvnlBfYU2EoqyX1dWs`.
|
|
|
|
* Create new board user who will act as AI bot, for our example we will use user `ChatGPT`.
|
|
Make sure this user account is activated and fully functional.
|
|
|
|
* Got to `ACP` > `Extensions` > `AI Labs` > `Settings` and add new configuration, select `chatgpt` from AI dropdown:
|
|
![Attachment settings](../privet/ailabs/docs/chatgpt_setup.png)
|
|
|
|
- Use `Load default configuration/template` to get defaults.
|
|
Replace Configuration JSON `api-key` with your Open AI key.
|
|
- Select forums where you want `ChatGPT` AI user to reply to new posts and/or to quoted and [@mention](https://www.phpbb.com/customise/db/extension/simple_mentions) (if you are using Simple mentions extension) posts.
|
|
|
|
* Save changes, navigate to forum configured above and create new post (if you configured `Reply on a post`) or quote/[@mention]() `ChatGPT` user:
|
|
![Attachment settings](../privet/ailabs/docs/chatgpt_example.png)
|
|
|
|
* Fine-tuning can be done by adjusting following OpenAI API chat parameters https://platform.openai.com/docs/api-reference/chat
|
|
- `model`, default `gpt-3.5-turbo`, full list of models available at https://platform.openai.com/docs/models
|
|
- `temperature`, `top_p`, `frequency_penalty` and `presence_penalty` - see https://platform.openai.com/docs/api-reference/chat/create
|
|
|
|
* Additional setting used by ChatGPT AI
|
|
- `message_tokens`, default 4096, limit maximum size of the entire conversation thread
|
|
- `max_tokens`, default 1024, define size reserved for AI reply when quoted
|
|
- `prefix`, default empty, can be used to prompt model
|
|
- `prefix_tokens`, default 0, copy above `prefix` to https://platform.openai.com/tokenizer to get size of your `prefix` in tokens and update `prefix_tokens` with number returned by tokenizer
|
|
|
|
## ChatGPT advanced setup
|
|
|
|
You can setup ChatGPT to pretend it is somebody else.
|
|
Let's create new board user `Bender` and configure as shown below:
|
|
![Attachment settings](../privet/ailabs/docs/chatgpt_bender_example.png)
|
|
Notice we used `prefix` and `prefix_tokens` to fine-tune ChatGPT AI behaviour.
|
|
Our AI bot `Bender` will provide responses like [this](https://privet.fun/viewtopic.php?t=2799), mostly staying in a character.
|
|
|
|
## DALL-E setup
|
|
|
|
Setup mostly the same as for ChatGPT above:
|
|
![Attachment settings](../privet/ailabs/docs/dalle_setup.png)
|
|
|
|
Refer to https://platform.openai.com/docs/api-reference/images/create to learn more about `n` and `size` parameters.
|
|
[Examples](https://privet.fun/viewtopic.php?p=355594)
|
|
|
|
## DALL-E advanced features
|
|
|
|
* To generate an image of the desired size, you can specify one of the following sizes anywhere within the prompt, [example](https://privet.fun/viewtopic.php?p=355600#p355600):
|
|
- 1024x1024
|
|
- 512x512
|
|
- 256x256
|
|
|
|
* To create [variations](https://platform.openai.com/docs/api-reference/images/create-variation) of the image simply post image url to the prompt, [example](https://privet.fun/viewtopic.php?p=355596#p355596)
|
|
|
|
## Stable Diffusion setup
|
|
|
|
* You will need Stability AI account, follow official instructions https://platform.stability.ai/docs/getting-started/authentication to create account and obtain API key.
|
|
|
|
* Create new board user, let's say `Stable Diffusion` and create configuration:
|
|
![Attachment settings](../privet/ailabs/docs/stablediffusion_setup.png)
|
|
[Examples](https://privet.fun/viewtopic.php?t=2801)
|
|
|
|
* Refer to https://api.stability.ai/docs#tag/v1generation/operation/textToImage to learn more about configuration JSON parameters.
|
|
|
|
## Support and suggestions
|
|
|
|
This extension is currently being actively developed. For communication, please use https://github.com/privet-fun/phpbb_ailabs/issues.
|
|
|
|
## Changelog
|
|
|
|
* 1.0.1
|
|
- Fixed issues reported by [ Miri4ever](https://www.phpbb.com/community/viewtopic.php?p=15958523#p15958523)
|
|
- Removed all MySQL specific SQL, going forward extension should be SQL server agnostic
|
|
- Better language management
|
|
- Minor code cleanup
|
|
|
|
## License
|
|
|
|
[GPLv2](../privet/ailabs/license.txt)
|