- pytestとPlaywrightを用いた基盤設定(conftest.py, pytest.ini)の追加 - 各環境開発者向けの設定テンプレート(test_settings.json.example)とREADMEの追加 - .gitignore にテスト生成物やローカル設定ファイル用の除外設定を追加 - StringToolsConcatノードのポート自動生成テストの追加 - StringToolsConcatのグラフ実行と文字列結合結果の出力検証テストを追加 - StringToolsRandomChoice, BalancedChoiceの固定シードによる出力検証テストの追加
ComfyUI String Tools
これは ComfyUI 用のカスタムノードです。
単純な文字列ノードである StringToolsString ノードと複数行の文字列ノードである StringToolsText、
複数のテキストを結合する StringToolsConcat ノードと、複数のテキストからランダムにひとつを選択する StringToolsRandomChoice ノードを提供します。
なぜ単純なテキストノードをこのカスタムノードで提供しているのか
StringToolsConcat ノードと StringToolsRandomChoice ノードは文字列を受け付けますが、現状 PrimitiveNode は受け付けられません。
そこで単純な文字列ノードである StringToolsString と StringToolsText ノードを提供しています。
機能
StringToolsSeed
StringToolsRandomChoice と StringToolsBalancedChoice では seed に PrimitiveNode を受け付けていないため、seed の生成に使用するノードです。
StringToolsConcat
separator で text_* を結合します。
これらの入力はWidgetに変更することができません。
StringToolsRandomChoice
seed で text_* の中からひとつ選択します。
これらの入力はWidgetに変更することができません。
StringToolsBalancedChoice
seed で text_* の中からひとつ選択します。
これらの入力はWidgetに変更することができません。
StringToolsRandomChoice との違いは重み付けにあります。
StringToolsBalancedChoice の入力のどこかに StringToolsRandomChoice か StringToolsBalancedChoice があった場合、その有効な入力数に応じて重み付けを行い、有効な入力数が多いほど選択されやすくなります。