Skip to content

SlackでStable Diffusionの画像生成ができるボットツール (Stable Diffusion Slack Bot)

Notifications You must be signed in to change notification settings

sifue/stable-diffusion-bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stable Diffusion Slack Bot

日本語でプロンプトを与えるとStable Diffusionの画像を投稿してくれるSlack Bot
元画像を指定しての生成もできるコマンドも提供。 RTX2070 8GB環境とGTX2060 6GB環境で操作確認済み。

環境導入と実行

Stable Diffusionの公式版が動く環境の整備をした前提で以下を実行。(構築方法参考)

conda env create -f environment.yaml
conda activate sdbot

以上を行って .env ファイルにHuggingfaceのトークンと、SlackのAppトークンとBotトークンを設定。

YOUR_TOKEN=hf_xxxxxxxxxxxxxx
SLACK_BOT_TOKEN=xoxb-999999999999999999999999
SLACK_APP_TOKEN=xapp-999999999999999999999999

設定後、実行は以下のコマンドの通り。

python3 script/main.py

Stable Diffusion Botの使い方

  • プロンプトから画像生成(t2i): !img [プロンプト]
  • 画像から画像生成(i2i): !img-i [URL] [0.0~1.0までの強度] [プロンプト]
  • waifu-diffusionモデルをつかってプロンプトから画像生成(t2i-waifu): !img-w [プロンプト]
  • ヘルプ表示: !img-help

なお、画像から画像生成する際のURLはパブリックにアクセス可能なURLかSlack内の画像のURLである必要があります。

Slackのアプリに必要な権限

アプリの作り方はこのドキュメントに準拠。 必要権限は以下。

OAuth & Permissions - Bot Token Scopes

  • chat:write
  • files:write
  • files:read

Event Subscriptions

  • message.channels
  • message.groups
  • message.im
  • message.mpim

トラブルシューティング

以下のエラーが出る。

RuntimeError: CUDA error: unknown error
CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.

ビデオメモリが足りません。 main.py のコード内の画像のサイズを指定しているところを512ではなく8の倍数の384か256にして対応してください。

参考ドキュメント

About

SlackでStable Diffusionの画像生成ができるボットツール (Stable Diffusion Slack Bot)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages