
ComfyUI-to-Python-Extension Comfyuiワークフローを実行可能なPythonコードに変換する強力なツールです。 ComfyuiのビジュアルインターフェイスとPythonのプログラミング環境とのギャップを埋めるように設計されたこのスクリプトは、設計からコード実行へのシームレスな移行を容易にします。あなたがデータサイエンティスト、ソフトウェア開発者、またはAI愛好家であろうと、このツールはPythonでComfyuiワークフローを実装するプロセスを合理化します。
これを変換します:

これに:
import random
import torch
import sys
sys.path.append("../")
from nodes import (
VAEDecode,
KSamplerAdvanced,
EmptyLatentImage,
SaveImage,
CheckpointLoaderSimple,
CLIPTextEncode,
)
def main():
with torch.inference_mode():
checkpointloadersimple = CheckpointLoaderSimple()
checkpointloadersimple_4 = checkpointloadersimple.load_checkpoint(
ckpt_name="sd_xl_base_1.0.safetensors"
)
emptylatentimage = EmptyLatentImage()
emptylatentimage_5 = emptylatentimage.generate(
width=1024, height=1024, batch_size=1
)
cliptextencode = CLIPTextEncode()
cliptextencode_6 = cliptextencode.encode(
text="evening sunset scenery blue sky nature, glass bottle with a galaxy in it",
clip=checkpointloadersimple_4[1],
)
cliptextencode_7 = cliptextencode.encode(
text="text, watermark", clip=checkpointloadersimple_4[1]
)
checkpointloadersimple_12 = checkpointloadersimple.load_checkpoint(
ckpt_name="sd_xl_refiner_1.0.safetensors"
)
cliptextencode_15 = cliptextencode.encode(
text="evening sunset scenery blue sky nature, glass bottle with a galaxy in it",
clip=checkpointloadersimple_12[1],
)
cliptextencode_16 = cliptextencode.encode(
text="text, watermark", clip=checkpointloadersimple_12[1]
)
ksampleradvanced = KSamplerAdvanced()
vaedecode = VAEDecode()
saveimage = SaveImage()
for q in range(10):
ksampleradvanced_10 = ksampleradvanced.sample(
add_noise="enable",
noise_seed=random.randint(1, 2**64),
steps=25,
cfg=8,
sampler_name="euler",
scheduler="normal",
start_at_step=0,
end_at_step=20,
return_with_leftover_noise="enable",
model=checkpointloadersimple_4[0],
positive=cliptextencode_6[0],
negative=cliptextencode_7[0],
latent_image=emptylatentimage_5[0],
)
ksampleradvanced_11 = ksampleradvanced.sample(
add_noise="disable",
noise_seed=random.randint(1, 2**64),
steps=25,
cfg=8,
sampler_name="euler",
scheduler="normal",
start_at_step=20,
end_at_step=10000,
return_with_leftover_noise="disable",
model=checkpointloadersimple_12[0],
positive=cliptextencode_15[0],
negative=cliptextencode_16[0],
latent_image=ksampleradvanced_10[0],
)
vaedecode_17 = vaedecode.decode(
samples=ksampleradvanced_11[0], vae=checkpointloadersimple_12[2]
)
saveimage_19 = saveimage.save_images(
filename_prefix="ComfyUI", images=vaedecode_17[0]
)
if __name__ == "__main__":
main()

comfyui_to_python.pyパラメーターを動的に変更しますComfyUIからの最新の変更を順守するための更新ComfyUI/custom_nodesディレクトリに移動します
このレポをクローンします
git clone https://github.com/pydn/ComfyUI-to-Python-Extension.gitリポジトリをクローニングした後、 ComfyUIディレクトリは次のようになります。
/comfy
/comfy_extras
/custom_nodes
--/ComfyUI-to-Python-Extension
/input
/models
/output
/script_examples
/web
.gitignore
LICENSE
README.md
comfyui_screenshot.png
cuda_mollac.py
execution.py
extra_model_paths.yaml.example
folder_paths.py
latent_preview.py
main.py
nodes.py
requirements.txt
server.py
Comfyuiを起動します
お気に入りのワークフローをロードし、 Save As Scriptクリックします

目的のファイル名をポップアップ画面に入力します。
ダウンロードフォルダーからComfyUIディレクトリに.pyファイルを移動します。
これで、サーバーを起動せずに、新しく作成された.pyファイルを実行して画像を生成できます。
ComfyUI-to-Python-Extensionフォルダーに移動し、要件をインストールします
pip install -r requirements.txt COMFYUIを起動し、 Queue Promptを介してギアアイコンをクリックしてから、 Enable Dev mode Optionsを確認します。このオプションを有効にしないと、スクリプトは機能しません!

お気に入りのワークフローをロードし、キュープロンプトの下の新しく有効なSave (API Format)ボタンをクリックします
ダウンロードした.jsonワークフローファイルをComfyUI/ComfyUI-to-Python-Extensionフォルダーに移動します
必要に応じて、 comfyui_to_python.pyを実行するときに引数を追加して、デフォルトのinput_fileとoutput_fileを更新して.jsonワークフローファイルと希望の.pyファイル名を一致させます。デフォルトでは、スクリプトはworkflow_api.jsonというファイルを探します。また、単一のスクリプト実行で生成する希望する数の画像にqueue_size変数を更新することもできます。デフォルトでは、スクリプトは10個の画像を生成します。詳細については、 python comfyui_to_python.py --helpを実行してください。
6a。デフォルトの引数でスクリプトを実行します。
python comfyui_to_python.py6b。オプションの引数でスクリプトを実行します。
python comfyui_to_python.py --input_file " workflow_api (2).json " --output_file my_workflow.py --queue_size 100 comfyui_to_python.pyを実行した後、現在の作業ディレクトリに新しい.pyファイルが作成されます。変更を加えなかった場合は、 workflow_api.pyを探してください。
これで、サーバーを起動せずに、新しく作成された.pyファイルを実行して画像を生成できます。