Table of Contents

дискорд-типекаст-гпт-чатбот

Docker Image CI

Этот бот представляет собой агент поддержки на базе Discord. Он дает полезные ответы на запросы пользователей, помогает в решении вопросов, связанных с сервером, и направляет пользователей на соответствующие ресурсы. Бот дружелюбен, хорошо осведомлен и поддерживает позитивную атмосферу. Он также может делиться мнениями, предпочтениями и рекомендациями по различным темам, создавая увлекательное и информативное взаимодействие с пользователями.

See the bot in action

Как запустить бота

Использование docker

docker run -td --name cyberchatbot -e DISCORD_BOT_APP_TOKEN="INSERT YOUR BOT TOKEN HERE" -e OPENAI_API_KEY="INSERT YOUR OPENAI API KEY HERE" simeononsecurity/discord-typecast-gpt-chatbot:latest

Как запустить бота вручную с помощью python

Чтобы начать работу с этим репозиторием, необходимо выполнить следующие действия:

  1. Клонируйте этот репозиторий и перейдите в корень продукта
git clone URL
cd repo_name
  1. создать .env файл в корне проекта (это будет .gitignored и вставьте свой токен бота discord и токен openai:
DISCORD_BOT_APP_TOKEN=PASTE_DISCORD_TOKEN_HERE
OPENAI_API_KEY=PASTE_OPENAI_API_TOKEN_HERE
  1. Создайте новую виртуальную среду с помощью venv
python3 -m venv venv
  1. Активируйте виртуальную среду:
source venv/bin/activate
  1. Установите зависимости, перечисленные в requirements.txt
pip install -r requirements.txt
  1. При установке новых зависимостей с помощью pip install обязательно перегенерируйте файл requirements.txt с:
pip freeze > requirements.txt

Как исправить проблему с локалями

sudo apt-get install locales -y
sudo locale-gen en_US.UTF-8 en_CA.UTF-8
sudo update-locale

Архитектура

./
project root

bot/
discord bot's source

bot/main.py:
This is the main entry point for your application

bot/controllers/
This directory contains code that controls the main program and provides inputs into services

bot/services/
This directory contains code that do small, specific tasks

requirements.txt:
This file lists the dependencies required for your application to run