Nodes Browser
ComfyDeploy: How ComfyUI-RequestPoster works in ComfyUI?
What is ComfyUI-RequestPoster?
This extension can send HTTP Requests. You can request image generation to StableDiffusion3 and post images to X (Twitter) and Discord.
How to install it in ComfyDeploy?
Head over to the machine page
- Click on the "Create a new machine" button
- Select the
Edit
build steps - Add a new step -> Custom Node
- Search for
ComfyUI-RequestPoster
and select it - Close the build step dialig and then click on the "Save" button to rebuild the machine
ComfyUI-RequestsPoster
- 入力(any)に反応して指定のURLにrequests.post(url,{key:value})を投げられます。<br>
- StableDiffusion3のAPIにText to ImageまたはImage to Imageで画像生成リクエストを送信できます。<br> この機能を使用するにはStabilityAIのAPI KEYが必要です。<br> APIの使用にはStabilityAIのクレジットを消費するため、クレジット残高が最低で4は必要です。1,000 credits = $10<br>
- 画像の入力に反応してDiscordのWebhookURLに文章と画像を投稿できます。<br>
- 画像の入力に反応してX(Twitter)に文章と画像を投稿できます。<br> X(Twitter)にポストする機能を使う場合、ComfyUIが利用するPython環境に「tweepy」モジュールが入っている必要があります。<br>
インストール方法
下記のいずれかでインストールできます
簡単な方法
- ComfyUI-Manegerの「Install Custom Nodes」から検索してインストールする
- Managerを起動<br>
- Install Custom Nodesを押す<br>
- 「requests」と検索してComfyUI-RequestPosterの右側にある「Install」を押す<br> 現時点で2つありますがどちらでも良いです。
URLをコピペしてインストールする方法
- ComfyUI-Managerの「Install via Git URL」でこのリポジトリのクローン用URLをコピペする<br> クローン用URLはこのページの上部にある緑色のボタン「<> Code」を押すと表示されます。
git cloneする方法
- ComfyUI > Cutom_nodesのフォルダをコマンドプロンプトで開き下記コマンドを実行する<br>
git clone https://github.com/aburahamu/ComfyUI-RequestsPoster.git
これでインストールは完了です。ComfyUIを再起動してください。<br> ※Xへの投稿機能を使う場合は必要モジュールもインストールが必要です。<br>
アップデート方法
概要<br>
ComfyUI > custom_nodes > ComfyUI-RequestsPoster をコマンドプロンプトで開いて「git pull」してください。
手順<br>
-
ComfyUI > custom_nodes > ComfyUI-RequestsPoster をエクスプローラーで開き、パスをクリックする<br>
-
「cmd」と入力しエンターを押す<br>
-
コマンドプロンプトが開いたら「git pull」と入力しエンターを押す<br>
完了です。<br>
Xへの投稿に必要なモジュールのインストール方法
概要
- Xの開発用アカウントを取得してください。
- Consumer Keysの「API Key」と「API Key Secret」の2つをメモしておいてください。
- Authentication Tokensの「Access Token」と「Access Token Secret」の2つをメモしておいてください。
- ComfyUIが利用しているPython環境に「tweepy」モジュールをインストールしてください。
手順 ※ComfyUIがvenvを使っている場合で解説しています
-
ComfyUIが参照している仮想環境をアクティベートする<br>
-
仮想環境に入ったら「pip install tweepy」と入力しエンターを押す<br>
完了です。
使い方(テキストの送信:PostText)
- AddNode > RequestsPoster > PostText でノードを追加する
- anyにトリガーとしたいノードを繋ぐ
- urlにリクエストを投げたいURLをコピペする 例)ディスコードのウェブフックURL
- keyとvalueにそれぞれリクエストに含めたい文字列を入力する 例)key = content、value = 画像が出来ました
- Queueする
使い方(StableDiffusion3に画像を生成させる)
- AddNode > RequestsPoster > GetImageFromSD3byT2I でノードを追加する
- 各パラメータを設定する
- key: StabilityAIのAPI KEY
- positive: ポジティブプロンプト
- negative: ネガティブプロンプト。※modelがsd3-turboの場合は適用されません。
- aspect_ratio: アスペクト比
- strength: ノイズ除去強度。0で入力画像がそのまま返る。1で画像なしから生成と同じ。0.6以上だと結構変わる
- model: モデル。sd3はクレジット6.5消費。sd3-turboはクレジット4消費
- format: フォーマット。pngかjpg
- seed: シード値。整数
- control_after_generate: シード値の生成方法。通常はランダムで良い
- Queueする
- ComfyUIのoutputディレクトリに画像が保存されます。<br> 必要に応じてノードの出力「IMAGE」から画像をPreviewなりアプコンすると良いでしょう。
- クレジットが尽きると画像が生成されません ※尽きた場合の挙動は未調査です。
DiscordのWebhookURLの取得方法
-
左下の「+」を押してサーバーを追加して、作られたサーバーの歯車アイコンを押す<br>
-
連携サービス → ウェブフック と押す<br>
-
ウェブフックを開き「URLをコピー」をクリック<br>
-
AddNode > RequestsPoster > PostRequest でノードを追加しanyにトリガーとしたいノードを繋ぎ、URLにウェブフックのURLをコピペする<br>
-
画像を生成すると、ディスコードにメッセージが投稿されます<br>
使い方(Discordへの投稿:PostImage2Discord)
- AddNode > RequestsPoster > PostImage2Discord でノードを追加する
- imageに投稿したいimageを繋ぐ
- textに投稿したい文章を書く
- urlにDiscordのWebhookURLをコピペする
- Queueする
使い方(Xへの投稿:PostImage2X)
-
AddNode > RequestsPoster > PostImage2X でノードを追加する
-
imageに投稿したいimageを繋ぐ
-
textに投稿したい文章を書く
-
Xの開発者ポータルで生成した各キーをコピペする ※取得方法は下部に説明を書いておきます<br> 例:<br>
【consumer_key】j0Ja1Ab2Bc3Cd4De5Ef6Fg7Gh
<br>【consumer_secret】a1Ab2Bc3Cd4De5Ef6Fg7Gh8Hi9Ij0Ja1Ab2Bc3Cd4De5Ef6Fg7
<br>【access_token】1234567890123456789-Abcdea1Ab2Bc3Cd4De5Ef6Fg7Gh8Hi
<br>【access_token_secret】a1Ab2Bc3Cd4De5Ef6Fg7Gh8Hi9Ij0Ja1Ab2Bc3Cd4De5E
<br> -
Queueする<br>
XのKeyの生成方法
-
Xの開発者用ページを開く<br> https://developer.twitter.com
-
Freeプランの「Get Started」を押す<br>
-
「Sign up for Free Account」を押す<br>
-
XのデータとAPIを何に使うかを250文字以上で入力し、規約同意的な3カ所にチェックを入れて「Submit」を押す<br> <br> 例文:<br>
ComfyUIでのPythonによるtweepyライブラリを用いたTwitterへの各種投稿に使います。
<br>投稿する内容のパターンは下記の通りです。
<br>・1行テキスト
<br>・複数行テキスト
<br>・1行テキストおよび単一画像
<br>・1行テキストおよび複数画像
<br>・複数行テキストおよび単一画像
<br>・複数行テキストおよび複数画像
<br>・一般ユーザーでも閲覧可能な属性付け
<br>・SuperFollowersのみが閲覧可能な属性付け
<br>・他SNSへ誘導可能なハイパーリンク
<br>またXのAPI制限範囲内に収まるように日時を指定した予約投稿も実施します。
<br> -
ダッシュボードを開き左側の「Project & Apps」内のプロジェクトを選択し、右側の「Set up」を押す<br>
-
各項目をチェックおよび入力し画面下部の「Save」を押す<br>
- App permissionsは「Read and write」にチェックを入れる
- Type of Appは「Web App. Automated App or Bot」にチェックを入れる
- App Infoの「Callback URI」と「WebSite URL」には自分のXアカウントのURLを入れる
- Yesを押す<br>
- ダッシュボードに戻り、プロジェクトを開き「Keys and tokens」のタブを開き、各キーの計4個をジェネレートしメモする<br>
- Consumer Keysのボタン「Regenerate」を押すとキーが2個表示される
- Access Token and Secretのボタン「Generate」を押すとキーが2個表示される
完了です。
著者
ライセンス
AGPL-3.0
謝辞
D̷ELL:協力ありがとう