ノードタイプ

TongFlow のノードは 6 つのグループに分かれます。AddModality ノードはキャンバス上の素材を保持し、それ以外のノードがそれを操作します。

権威あるリストは tongflow リポジトリconfig/tongflow.abi.json にあります ——このページは v0.1.0 の状態を反映しています。

Add ノード(7 個)

Add ノードは新しい素材をキャンバスに置きます。Create モードで Smart Island の Add ツールバーから選択:

ノードアイコン機能
addTextNodeTypeノード本体に直接テキスト入力
addImageNodeImageファイル選択、カメラ撮影、スケッチ ——画像を 1 枚出力
addAudioNodeMusic音声ファイル選択またはマイク録音
addVideoNodeVideo動画ファイル選択またはカメラ録画
addFileNodeFileTextドキュメントをアップロード(PDF / DOCX / TXT / MD)
addLinkNodeLinkURL を貼る ——ページ内容を取得してテキストへ
addModelNodeBox3D モデルファイルをアップロード(GLB / GLTF)

Add タイプは 7 種類で、11 種類ではありません。 古いドキュメントは「画像追加」と「カメラ撮影」を独立した 2 ノードとして数えていましたが、実際は同じ addImageNode 内のモードです。

Transform 変換

各変換は 1 つの入力モダリティを受け、別のモダリティを出力します。バックエンドモデルまたは外部 LLM に接続されています。

テキスト変換

ノードスロット説明バックエンド
gen-textプロンプトからテキストを生成・書き換えOpenRouter / Gemini / OpenAI / DeepSeek(設定可能)
combine-text複数のテキスト入力をマージローカル
split-text長いテキストをチャンクに分割ローカル

画像変換

ノードスロット説明バックエンドモデル
image-gen-textテキスト → 画像Z-Image
image-gen画像 → 編集済み画像(フル画面)Z-Image
image-gen-modelモデル条件付き画像生成設定可能
image-editインペイント / 指示駆動編集FLUX.2 Klein 9B
image-fusionマルチリファレンス融合FLUX.2 Klein 9B
image-describe画像 → テキスト(キャプション / Q&A)Gemma 4(マルチモーダル)
image-upscale画像アップスケールSeedVR2

動画変換

ノードスロット説明バックエンド
gen-videotext-gen-videoテキスト → 動画LTX-2
image-gen-video画像 → 動画LTX-2
image-image-gen-video最初 + 最後フレーム → 動画(補間)LTX-2
video-image-gen-video-mixwan-animate-mix画像 + 動画 → 動画(キャラクター入れ替え / シーン混合)WAN Animate
video-image-gen-video-movevideo-image-move-animalモーション転写(被写体と動きを別ソースから)WAN Animate(move バリアント)
audio-image-gen-video音声 + 画像 → 動画(トーキングヘッド / アニメーションポートレート)LTX-2 / WAN
video-describevideo-gen-text動画 → テキストGemma 4
video-upscale動画アップスケールSeedVR2
get-first-frameget-last-frameフレーム抽出ローカル(FFmpeg)
subtitle_remove字幕除去バックエンド
remove_watermarkウォーターマーク除去バックエンド

音声変換

ノードスロット説明バックエンド
gen-musicテキスト → 音楽ACE-Step
text-gen-speech-presetプリセット音声で TTSQwen3
text-gen-speech-cloneリファレンス音声でクローン TTSQwen3
text-gen-speech-instruct指示駆動 TTSQwen3
text-audio-gen-speechテキスト + リファレンス音声で TTSQwen3
transcribetranscribe-timestamp音声 / 動画 → テキスト(タイムスタンプ任意)Qwen3
denoise_audioノイズ除去バックエンド
separate_speaker話者分離バックエンド
separate_audio_trackseparate-video-audio動画から音声を分離ローカル(FFmpeg)
convert_voice声 / 音色の置換Qwen3

クロスモーダルブリッジ

ノードスロット説明
parse-documentドキュメント → テキスト
linkURL → テキスト
画像 → 3D(パイプライン内)画像 → 3D モデル

Combine 組み合わせ

Combine ノードは複数の入力を 1 つの出力にまとめます。

ノードスロット入力出力
image-fusionN 枚の画像1 枚の融合画像
speech-video-gen-video、リップシンク系音声+動画 / 音声+画像 / 音声+テキスト / 音声+画像+動画リップシンク動画
speech-image-video-gen-video音声 + 画像 + 動画合成動画
speech-text-gen-video音声 + テキスト動画
convert_voice(組み合わせ形式)テキスト + リファレンス音声 → 音声クローン音声
combine-textN 個のテキストノード → 1 つ

Helpers ヘルパー

ノードスロット説明
concat-videos複数クリップを連結
merge-video-audio音声と動画をマージ
split-videoシーン境界で分割(シーン検出)
separate-video-audio別々のトラックに分離
extract-audio動画から音声トラックを抽出
split-text長いテキストをチャンクに
combine-textテキストセグメントをマージ
drop-videoルールでクリップを除外
arrange-groupテキスト/クリップのバッチをグループ化・整列

型チェック

接続検証は ABI で駆動されます。出力ハンドルを入力ハンドルにドラッグするとき、システムはモダリティと形状が一致するかチェックします ——動画をテキスト入力に渡そうとしても、エッジは形成されません。src/generated/abi/index.ts で生成された TypeScript 型がキャンバスとワークフローエクスポーターをコンパイル時に整合させます。

自分のノードを追加

必要な変換がリストにない場合、プラグインで接続できます。tongflow リポジトリの docs/feature-registry.mddocs/plugins.md を参照してください。フロー:

  1. config/tongflow.abi.json にスロット定義を追加
  2. 型を再生成:pnpm gen:abi
  3. plugins/ 配下に @node_slot デコレータと一致する Pydantic モデルでプラグインを実装
  4. Python SDK のバージョンを上げ、公開、Modal に再デプロイ

関連