- 20.06.2022
- 23 848
- 218
- 36
- Награды
- 10
- Пол
- Муж.
Репутация:
- Автор темы
- Администратор
- Модератор
- Команда форума
- #1
Из этого гайда вы узнаете:
1. Как получить токен бота дискорд
2. Дам код бота на python для запуска нашего AI в дискорд
3. Помогу запустить бота
Как получить токен бота Discord и настроить что надо
1. Заходим на и входим в аккаунт дискорд если еще не вошли.
2. Нажимаем на New Application в верхнем правом углу, даем имя приложению и нажимаем на галочку ниже, создаем приложение
3. У нас открывается управление приложением, переводим взгляд влево и находим вкладку Bot
Нажимаем туда и добавляем бота кнопкой Add Bot, вводим двухэтапку если надо.
Копируем токен под названием бота кнопкой Copy и оставляем желательно в текстовом документе чтобы потом не ресетать токен.
Скроллим ниже и включаем эти три тумблера, сохраняем изменения.
Теперь снова смотрим левее, находим OAuth2 и жмем туда.
Выбираем URL Generator
Откроется такое окошко, выбираем тут Bot и Administrator, скроллим ниже и копируем ссылку, вставляем ссылку в браузере и приглашаем бота на сервер.
Код, запуск и использование
Первым делом копируем код ниже и создаем папку а в ней файл main.py, вставляем туда код
Вставляем токен бота в ковычки заместо token, сохраняем и закрываем main.py
Создаем в папке с main.py файл под названием cookies.json и вставляем куки(что да как указано в ориг теме, ссылка выше)
Открываем консоль и вписываем команды по очереди:
Готово, открываем консоль в папке с ботом и прописываем команду ниже, ждем несколько секунд и бот запущен
*как открыть консоль в папке:
Жмем на эту строку
вводим туда cmd и нажимаем Enter.
Заходим на сервер где добавлен наш бот и пишем команду !ask промпт
Ниже кидаю обновленный код:
Внимание! Этот код использует Disnake заместо Discord.py, а также библиотеку asyncio, перед первым запуском нового кода пропишите в консоль команды ниже:
Теперь бот использует слеш-команду /ask заместо команды с префиксом, оставил старый код для тех кому не по нраву слеш-команды, а также бот имеет 2 статуса активности "Играет в Bing" и "Играет в GPT-4" которые меняют друг друга каждые 15 сек, если они вам не нужны или хотите заменить на свои то уберите или меняйте, код ниже:
1. Как получить токен бота дискорд
2. Дам код бота на python для запуска нашего AI в дискорд
3. Помогу запустить бота
Как получить токен бота Discord и настроить что надо
1. Заходим на и входим в аккаунт дискорд если еще не вошли.
2. Нажимаем на New Application в верхнем правом углу, даем имя приложению и нажимаем на галочку ниже, создаем приложение
3. У нас открывается управление приложением, переводим взгляд влево и находим вкладку Bot
Нажимаем туда и добавляем бота кнопкой Add Bot, вводим двухэтапку если надо.
Копируем токен под названием бота кнопкой Copy и оставляем желательно в текстовом документе чтобы потом не ресетать токен.
Скроллим ниже и включаем эти три тумблера, сохраняем изменения.
Теперь снова смотрим левее, находим OAuth2 и жмем туда.
Выбираем URL Generator
Откроется такое окошко, выбираем тут Bot и Administrator, скроллим ниже и копируем ссылку, вставляем ссылку в браузере и приглашаем бота на сервер.
Код, запуск и использование
Первым делом копируем код ниже и создаем папку а в ней файл main.py, вставляем туда код
Python:
import os
import re
import discord
from discord.ext import commands
from EdgeGPT import Chatbot
BOT_TOKEN = 'token' # Вместо "token" вставить токен Discord бота, который получили ранее
bot = commands.Bot(command_prefix='!', intents=discord.Intents.all())
async def bing_chat(prompt):
# Надо создать файл cookies.json в папке. ПУТЬ НЕ МЕНЯТЬ, ФАЙЛ cookies.json ДОЛЖЕН БЫТЬ В ПАПКЕ С СКРИПТОМ!
gbot = Chatbot(cookiePath='./cookies.json')
response_dict = await gbot.ask(prompt=prompt)
return re.sub(r'\[\^\d\^\]', '', response_dict['item']['messages'][1]['text'])
@bot.command(name='ask', help='Спросить что-то у бота')
async def ask(ctx, *args):
try:
prompt = ' '.join(args)
if not prompt:
await ctx.send("Пустой запрос")
else:
message = await ctx.send("Обработка запроса, ожидайте")
bot_response = await bing_chat(prompt)
await message.edit(content=bot_response.replace('?\n\n', ''))
except Exception as e:
await ctx.send("Bing по каким-то причинам решил остановить с вами диалог! Проверьте cookie!") # Такое случается, когда поднимается тема, которую Bing не хочет обсуждать
@bot.event
async def on_ready():
print(f'Logged in as {bot.user} (ID: {bot.user.id})')
if __name__ == "__main__":
bot.run(BOT_TOKEN)
Вставляем токен бота в ковычки заместо token, сохраняем и закрываем main.py
Создаем в папке с main.py файл под названием cookies.json и вставляем куки(что да как указано в ориг теме, ссылка выше)
Открываем консоль и вписываем команды по очереди:
Код:
pip install py-cord==2.4.0
pip install discord
pip install EdgeGPT
Готово, открываем консоль в папке с ботом и прописываем команду ниже, ждем несколько секунд и бот запущен
Код:
py main.py
*как открыть консоль в папке:
Жмем на эту строку
вводим туда cmd и нажимаем Enter.
Заходим на сервер где добавлен наш бот и пишем команду !ask промпт
Ниже кидаю обновленный код:
Внимание! Этот код использует Disnake заместо Discord.py, а также библиотеку asyncio, перед первым запуском нового кода пропишите в консоль команды ниже:
Код:
pip install disnake
pip install asyncio
Теперь бот использует слеш-команду /ask заместо команды с префиксом, оставил старый код для тех кому не по нраву слеш-команды, а также бот имеет 2 статуса активности "Играет в Bing" и "Играет в GPT-4" которые меняют друг друга каждые 15 сек, если они вам не нужны или хотите заменить на свои то уберите или меняйте, код ниже:
Python:
import os
import re
import disnake
from disnake import ApplicationCommandInteraction
from disnake.ext import commands
from EdgeGPT import Chatbot
import asyncio
BOT_TOKEN = 'token' # Вместо "token" вставить токен Discord бота, который получили ранее
bot = commands.Bot(command_prefix='!', intents=disnake.Intents.all())
async def bing_chat(prompt):
# Надо создать файл cookies.json в папке. ПУТЬ НЕ МЕНЯТЬ, ФАЙЛ cookies.json ДОЛЖЕН БЫТЬ В ПАПКЕ С СКРИПТОМ!
gbot = Chatbot(cookiePath='./cookies.json')
response_dict = await gbot.ask(prompt=prompt)
return re.sub(r'\[\^\d\^\]', '', response_dict['item']['messages'][1]['text'])
async def change_status():
await bot.wait_until_ready()
while not bot.is_closed():
await bot.change_presence(activity=disnake.Activity(type=disnake.ActivityType.playing, name="Bing"))
await asyncio.sleep(15)
await bot.change_presence(activity=disnake.Activity(type=disnake.ActivityType.playing, name="GPT-4"))
await asyncio.sleep(15)
@bot.slash_command(name='ask', description='Спросить что-то у бота')
async def ask(interaction: ApplicationCommandInteraction, prompt: str):
try:
if not prompt:
await interaction.response.send_message("Пустой запрос")
else:
await interaction.response.defer()
bot_response = await bing_chat(prompt)
await interaction.followup.send(bot_response.replace('?\n\n', ''))
except Exception as e:
await interaction.response.send_message("Bing по каким-то причинам решил остановить с вами диалог! Проверьте cookie!") # Такое случается, когда поднимается тема, которую Bing не хочет обсуждать
@bot.event
async def on_ready():
print(f'Logged in as {bot.user} (ID: {bot.user.id})')
bot.loop.create_task(change_status())
if __name__ == "__main__":
bot.run(BOT_TOKEN)
Последние темы в этом разделе:
- [Alex Erofeev] [Stepik] JavaScript: самый быстрый курс (2024)
- [Михаил Русаков] Написание лайфхаков на Python (2021)
- Пишем DDOS скрипт на Python
- [Саид Магомедов] Python. Микросервисы. Backend на FastAPI [Stepik] (2024)
- Как написать чат-бота на python
- Пишем скрипт по парсингу ответов из gdz.ru
- [Udemy] Кибербезопасность: тестирование на проникновение с помощью Python 3 (2022)
- [Udemy] [ENG] Продвинутый ИИ - глубокое обучение с подкреплением в Python (2024)
- Создание бесплатного API для генерации изображений, используя перехваченные запросы Flux
- [Андрей Сумин] [Stepik] Java с нуля до Junior + Подготовка к собеседованию (2024)