chat-gpt-telegram-bot
chat-gpt-telegram-bot представляет собой telegram бота с встроенным chat-gpt
Начало работы
Клонируйте репозиторий:
git clone https://gitflic.ru/project/hazkorj/chat-gpt-telegram-bot chat-gpt-telegram-bot
Создайте в корне проекта файл .env:
BOT_TOKEN=<Токен бота>
OPENAI_TOKEN=<Openai токен>
SECRET=<Секретная строка>
SERVER_URL=<URL сервера>
PORT=<Порт сервера>
BOT_TOKEN
Обязательный параметр - токен вашего telegram бота, взятый у BotFather
OPENAI_TOKEN
Обязательный параметр - ваш openai токен для chat-gpt, взятый с официального сайта openai
SECRET
Необязательный параметр - секретная строка. Используется по желанию при использовании на сервере
SERVER_URL
Необязательный параметр - URL сервера
PORT
Необязательный параметр - порт сервера
Если вы используете хостинг, он должен предоставить вам возможность задать данные переменные окружения другим способом.
Установите зависимости:
npm install
Запустите бота:
npm start
Для Docker:
docker build -t bot .
docker run -p $PORT:$PORT bot
Настройка бота и список команд
В файле config.json, который лежит в корне проекта, находятся настройки бота и список команд с их описанием.
{
"prefix": "/",
"commandsData": {
"start": {
"name": "start",
"description": "Начать работу с ботом"
},
"help": {
"name": "help",
"description": "Список команд"
},
"test": {
"name": "test",
"description": "Проверить работает ли бот"
},
"chatGpt": {
"name": "gpt",
"shortName": "g",
"description": "Chat GPT версии 3.5 turbo"
}
}
}
Здесь prefix
- это префикс для использования команд. Настоятельно рекомендуется использовать префикс по умолчанию.
В блоке commandData
находится список команд с их названиями и описанием.
Важно! Вы можете изменять все поля внутри самих команд, но изменение ключа команды внутри
commandData
может привести к ошибке.
У команд есть 5 полей:
name
(обязательное поле) - название для использования команды
nonPrefix
- (необязательное поле) - если стоит значение true
, значит команду можно использовать только без префикса
shortName
(необязательное поле) - короткое название команды
nonPrefixName
(необязательное поле) - безпрефиксное название команды
description
(необязательное поле) - описание комнады
На этом все, удачного пользования)
Описание
chat-gpt-telegram-bot представляет собой telegram бота с встроенным chat-gpt.