Merge pull request 'Merge bot code into module branch' (#1) from discord-bot-addition into stable-diffuse-api
Reviewed-on: #1
This commit was merged in pull request #1.
This commit is contained in:
commit
f6cf946274
4 files changed
+175
-11
No files matched your search
@@ -0,0 +1,3 @@
|
||||
.vscode/
|
||||
venv/
|
||||
*.secret
|
||||
@@ -0,0 +1,2 @@
|
||||
discord.py
|
||||
aiohttp
|
||||
+11
-11
@@ -2,7 +2,7 @@
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 32,
|
||||
"execution_count": 1,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
@@ -13,14 +13,14 @@
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 57,
|
||||
"execution_count": 2,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"payload = {\n",
|
||||
" \"prompt\": \"view from behind web developer sitting in a chair, sfw\",\n",
|
||||
" \"styles\": [\"default\"],\n",
|
||||
" \"steps\": 28,\n",
|
||||
" \"prompt\": \"cute girlhand on cheek eyes closed thinking hard, sfw\",\n",
|
||||
" \"styles\": [\"Bot\"],\n",
|
||||
" \"steps\": 70,\n",
|
||||
" \"seed\": -1,\n",
|
||||
" \"n_iter\": 1,\n",
|
||||
" \"height\": 1024,\n",
|
||||
@@ -39,25 +39,25 @@
|
||||
"\n",
|
||||
"payload.update(override_payload)\n",
|
||||
"\n",
|
||||
"# url = \"https://art.jurydoak.com/sdapi/v1\"\n",
|
||||
"url = \"http://localhost:7860/sdapi/v1\""
|
||||
"url = \"https://art.jurydoak.com/sdapi/v1\"\n",
|
||||
"# url = \"http://localhost:7860/sdapi/v1\""
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 58,
|
||||
"execution_count": 3,
|
||||
"metadata": {},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/html": [
|
||||
"<img src=\"data:image/png;base64,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 truncated
|
||||
"<img src=\"data:image/png;base64,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 truncated
|
||||
],
|
||||
"text/plain": [
|
||||
"<IPython.core.display.HTML object>"
|
||||
]
|
||||
},
|
||||
"execution_count": 58,
|
||||
"execution_count": 3,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
@@ -95,7 +95,7 @@
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.10.8"
|
||||
"version": "3.10.8 (main, Nov 1 2022, 14:18:21) [GCC 12.2.0]"
|
||||
},
|
||||
"orig_nbformat": 4,
|
||||
"vscode": {
|
||||
|
||||
+159
@@ -0,0 +1,159 @@
|
||||
import discord
|
||||
from discord.ext import commands
|
||||
import aiohttp
|
||||
from base64 import b64decode
|
||||
from sys import exit
|
||||
|
||||
try:
|
||||
with open("token.secret", 'r') as f:
|
||||
discord_client_token = f.read()
|
||||
except FileNotFoundError:
|
||||
print("Cannot locate token.secret please generate a token")
|
||||
exit(69)
|
||||
|
||||
intents = discord.Intents.default()
|
||||
intents.message_content = True
|
||||
|
||||
# client = discord.Client(intents=intents)
|
||||
|
||||
class Settings:
|
||||
def __init__(self, nsfw_enabled=True, num_steps=28, ai_seed=-1, url="https://art.jurydoak.com", styles=["Bot"]):
|
||||
|
||||
self.nsfw_enabled = nsfw_enabled
|
||||
self.num_steps = num_steps
|
||||
self.ai_seed = ai_seed
|
||||
self.url = url
|
||||
self.styles = styles
|
||||
|
||||
|
||||
main_settings = Settings()
|
||||
activity = discord.Activity(type=discord.ActivityType.listening, name="!help")
|
||||
|
||||
|
||||
bot = commands.Bot(intents=intents, command_prefix="!", activity=activity, help_command=commands.DefaultHelpCommand())
|
||||
|
||||
async def send_request(ctx, endpoint, payload):
|
||||
global num_steps
|
||||
global ai_seed
|
||||
sess = aiohttp.ClientSession(main_settings.url)
|
||||
alive = await sess.head('/')
|
||||
|
||||
if alive.status != 200:
|
||||
await ctx.reply("I'm sorry but it appears my brain is offline")
|
||||
alive.close()
|
||||
await sess.close()
|
||||
return {
|
||||
'images': [None]
|
||||
}
|
||||
|
||||
print(payload)
|
||||
request = await sess.post(endpoint, json=payload)
|
||||
try:
|
||||
req_json = await request.json()
|
||||
except:
|
||||
print(await request.text())
|
||||
return {
|
||||
'images': [None]
|
||||
}
|
||||
request.close()
|
||||
await sess.close()
|
||||
return req_json
|
||||
|
||||
@bot.command()
|
||||
async def prompt(ctx, *args):
|
||||
'''Generate an image with the provided prompt'''
|
||||
prompt = " ".join(args)
|
||||
await ctx.reply("Generating your image boo")
|
||||
payload = {
|
||||
"prompt": prompt,
|
||||
"styles": main_settings.styles,
|
||||
"steps": main_settings.num_steps,
|
||||
"seed": main_settings.ai_seed,
|
||||
"n_iter": 1,
|
||||
"height": 1024,
|
||||
"negative_prompts": "nsfw, not safe for work, nudity, multiple keyboards",
|
||||
"cfg_scale": 12
|
||||
}
|
||||
|
||||
settings = {
|
||||
"filter_nsfw": not main_settings.nsfw_enabled,
|
||||
"samples_save": True,
|
||||
}
|
||||
|
||||
override_payload = {
|
||||
"override_settings": settings
|
||||
}
|
||||
|
||||
payload.update(override_payload)
|
||||
image_data = await send_request(ctx, endpoint="/sdapi/v1/txt2img", payload=payload)
|
||||
|
||||
if image_data['images'][0] is None:
|
||||
await ctx.reply("Something went wrong, please report this to the admin so it can be ignored")
|
||||
return
|
||||
|
||||
with open('/tmp/image.png', 'wb') as f:
|
||||
f.write(b64decode(image_data['images'][0]))
|
||||
|
||||
embed = discord.Embed()
|
||||
upload_file = discord.File("/tmp/image.png", filename="image.png")
|
||||
embed.set_image(url="attachment://image.png")
|
||||
# embed.title = prompt
|
||||
|
||||
await ctx.reply("", file=upload_file, embed=embed)
|
||||
|
||||
|
||||
@bot.command()
|
||||
async def seed(ctx, arg):
|
||||
'''Set the seed for the image generation'''
|
||||
try:
|
||||
arg = int(arg)
|
||||
except:
|
||||
pass
|
||||
|
||||
# global ai_seed
|
||||
main_settings.ai_seed = arg
|
||||
|
||||
await ctx.reply(f"I have updated the seed to {main_settings.ai_seed} for you my master.")
|
||||
|
||||
@bot.command()
|
||||
async def steps(ctx, arg):
|
||||
'''Set how many steps the AI will run (max 50)'''
|
||||
try:
|
||||
arg = int(arg)
|
||||
except:
|
||||
pass
|
||||
|
||||
if arg > 50:
|
||||
await ctx.reply("I'm sorry Dave, I can't do that")
|
||||
return
|
||||
|
||||
# global num_steps
|
||||
main_settings.num_steps = arg
|
||||
|
||||
await ctx.reply(f"I have updated the steps to {main_settings.num_steps} for you my master.")
|
||||
|
||||
@bot.command()
|
||||
async def settings(ctx):
|
||||
'''See the currently configured settings (BROKEN)'''
|
||||
global ai_seed, steps
|
||||
settings = f"""
|
||||
```
|
||||
seed: {main_settings.ai_seed}
|
||||
steps: {main_settings.num_steps}
|
||||
```
|
||||
"""
|
||||
await ctx.message.channel.send(settings)
|
||||
|
||||
@bot.command()
|
||||
async def test(ctx):
|
||||
'''Test function, currently changes the URL and bot settings'''
|
||||
if main_settings.url != "http://localhost:7860":
|
||||
main_settings.url = "http://localhost:7860"
|
||||
main_settings.styles = ["default"]
|
||||
await ctx.reply("Set to fastboi")
|
||||
else:
|
||||
main_settings.url = "https://art.jurydoak.com"
|
||||
main_settings.styles = ["Bot"]
|
||||
await ctx.reply("Set to main api")
|
||||
|
||||
bot.run(discord_client_token)
|
||||
Reference in new issue
Block a user