88 lines
3 KiB
Markdown
88 lines
3 KiB
Markdown
# Tailchat-Assistant
|
|
|
|
**Tailchat Assistant is your very own AI-powered chat bot, ready to implement into your guild!**
|
|
|
|
---
|
|
|
|
# Prerequisites
|
|
- A [Tailchat](https://tailchat.msgbyte.com/docs/deployment/docker-compose) server (duh)
|
|
- Make sure the "Openapi Platform Plugin" and "App Integration" plugins are enabled
|
|
- An OpenAI API Key / OpenAI API compatible service ([LocalAI is recommended](https://localai.io/basics/getting_started/))
|
|
- If you are using something like LocalAI, be sure to have a decently powerful machine to make response times as fast as possible!
|
|
|
|
## Included
|
|
- A sensible system prompt
|
|
- Automatically detect and analyze images
|
|
- Generate images with the prefix "Please generate:"
|
|
|
|
## Not inlcuded
|
|
- Any LLM, API endpoint, API keys or anything similar
|
|
- Filtering or moderation
|
|
- Extensive testing of the system prompt, so no rigorous testing of declining dangerous/illegal requests users may present
|
|
|
|
---
|
|
|
|
# Getting started
|
|
1. Clone the project and install dependencies:
|
|
```bash
|
|
git clone https://git.povario.com/powermaker450/Tailchat-Assistant && cd Tailchat-Assistant
|
|
|
|
npm i
|
|
```
|
|
2. Create the `.env` file from the example file:
|
|
```bash
|
|
mv .env.example .env
|
|
```
|
|
3. **Make sure that the "Openapi Platform Plugin" and "App Integration" plugins are enabled.** Then [follow the instructions here to create an App.](https://tailchat.msgbyte.com/docs/advanced-usage/openapp/create)
|
|
4. Open up the `.env` file with your preffered text editor and populate the file:
|
|
```bash
|
|
HOST=http://localhost:11000
|
|
# wherever your Tailchat server is running
|
|
|
|
ID=
|
|
# your bot ID
|
|
|
|
SECRET=
|
|
# Your bot secret
|
|
|
|
API_ENDPOINT=http://localhost:8080/v1
|
|
# The OpenAI-compatible endpoint for the bot to send messsages to. Defaults to "http://localhost:8080/v1"
|
|
# e.x. "http://localhost:8080/v1", "https://api.openai.com/v1"
|
|
|
|
API_KEY=none
|
|
# Your API key here for OpenAI/LocalAI. Defaults to the string "none".
|
|
# MAKE SURE to fill this in with your OpenAI API Key or a key you may have set for LocalAI.
|
|
# If you didn't set the API key for LocalAI, you may leave this blank.
|
|
|
|
TEXT_MODEL=gpt-4
|
|
# The model to query when sending text messages. Defaults to "gpt-4"
|
|
# e.x. "gpt-3", "gpt-4"
|
|
|
|
CREATE_IMAGE_MODEL=stablediffusion-cpp
|
|
# The model to use when creating images. Defaults to "stablediffusion-cpp",
|
|
# e.x. "dall-e-3", "stablediffusion-cpp"
|
|
|
|
ANALYZE_IMAGE_MODEL=gpt-4-vision-preview
|
|
# The model to use when analyzing images. Defaults to "gpt4-vision-preview".
|
|
# e.x. "gpt-4-vision-preview", "llava"
|
|
|
|
ALLOWED_CHAT=
|
|
# The ID of the channel that the bot is allowed to respond in.
|
|
# The bot will always respond to Direct Messages.
|
|
|
|
SAFE_WORD=\
|
|
# When this character/string is detected anywhere in a message, the bot won't respond to it.
|
|
# Defaults to "\".
|
|
|
|
SELF=
|
|
# The user ID of your bot which you can get from the admin panel or database.
|
|
# THIS IS NEEDED SO THAT THE BOT DOES NOT RESPOND TO IT'S OWN MESSAGES.
|
|
# BE SURE TO FILL THIS IN.
|
|
```
|
|
|
|
5. After completing these steps and making any desired changes, build and run the project:
|
|
```bash
|
|
npm run build
|
|
|
|
npm run start
|
|
``` |