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