Skip to main content

このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、英語版 を参照してください。

ユーザー入力ノードでは、アプリケーションへの入力としてエンドユーザーから収集する内容を定義できます。

このノードで開始するアプリケーションはオンデマンドで実行され、直接的なユーザー操作または API 呼び出しによって開始できます。

これらのアプリケーションをスタンドアロンの Web アプリや MCP サーバーとして公開したり、バックエンドサービス API を介して公開したり、他の Dify アプリケーションでツールとして使用したりすることもできます。

Info

各アプリケーションキャンバスには、ユーザー入力ノードを 1 つだけ含めることができます。

入力変数#

プリセット#

プリセット入力変数はシステム定義であり、デフォルトで利用可能です。

  • userinput.files:エンドユーザーがアプリケーションを実行するときにアップロードするファイル。

    Note

    Workflow アプリケーションの場合、このプリセット変数はレガシーと見なされており、後方互換性のためにのみ維持されています。

    代わりにカスタムファイル入力フィールドを使用してユーザーファイルを収集することをお勧めします。

  • userinput.query(Chatflow のみ):ユーザーの最新のチャットターンから自動的にキャプチャされたテキストメッセージ。

カスタム#

ユーザー入力ノードでカスタム入力フィールドを設定して、さまざまな種類のユーザー入力を収集できます。各フィールドは、下流のノードから参照できる変数になります。

Info

ラベル名 はエンドユーザーに表示されます。

Tip

フィールドの値が既知のもの(製品識別子やテナント ID など)で、エンドユーザーから取得する必要がない場合、そのフィールドを 非表示・事前入力 に設定し、自分で値を提供できます。詳細は 入力フィールドの非表示・事前入力 を参照してください。

テキスト入力#

最大 256 文字を受け付けます。名前、メールアドレス、タイトル、または 1 行に収まる短いテキスト入力に使用します。

構造化入力#

事前定義されたオプションを含むドロップダウンメニューを表示します。ユーザーはリストされたオプションからのみ選択でき、データの一貫性を確保し、無効な入力を防ぎます。

ファイル入力#

ユーザーはデバイスまたはファイル URL を介して、サポートされている任意のタイプの 1 つのファイルをアップロードできます。アップロードされたファイルは、ファイルメタデータ(名前、サイズ、タイプなど)を含む変数として利用できます。

ファイル処理

ユーザー入力ノードはファイルを収集するだけで、コンテンツを読み取ったり解析したりしないため、アップロードされたファイルは後続のノードによって適切に処理される必要があります。例えば:

  • ドキュメントファイルは、LLM がそのコンテンツを理解できるように、テキスト抽出ノードにルーティングできます。

  • 画像は、ビジョン機能を持つ LLM ノードまたは専用の画像処理ツールノードに送信できます。

  • CSV や JSON などの構造化データファイルは、コードノードを使用して解析および変換できます。

Tip

ユーザーが混在タイプの複数のファイル(画像とドキュメントなど)をアップロードする場合、リスト演算子ノードを使用してファイルタイプ別に分離してから、異なる処理ブランチにルーティングできます。

入力フィールドの非表示・事前入力 #

ワークフローには、すでに分かっている入力が必要な場合があります。エンドユーザーに入力させるのは煩わしいでしょう。そのフィールドを 非表示・事前入力 に設定すると、値は自分で提供し、エンドユーザーには見えませんが、ワークフローには値が渡ります。

たとえば、複数の異なる製品ごとにランディングページを運営し、それぞれに AI チャットボットを掲載する企業を想像してください。すべてのチャットボットの背後にあるワークフローはほぼ同じで、製品識別子だけが異なります。

製品ごとに別々のワークフローを保守する代わりに、productName という非表示フィールドを持つ 1 つのワークフローを用意し、各ランディングページに対応する値を事前入力します。エンドユーザーから見ると、各ページにその製品専用のチャットボットがあるように感じられますが、実際にはすべてのページが同じワークフローに異なる productName を渡しているだけです。

Warning

非表示フィールドは 秘匿情報ではありません。値は URL クエリ文字列に含まれて送られ、ブラウザのアドレスバー、履歴、ネットワーク通信から見えます。認証情報や API キーには 環境変数 を使用してください。

Info

単一ファイルおよびファイルリストのフィールドは、この機能をサポートしていません。

機能の有効化

  1. 入力フィールドを編集 ウィンドウで、必須 がチェックされている場合は外します。この 2 つのオプションは併用できません。
  2. 非表示・事前入力 をチェックします。実行時に値が指定されない場合のフォールバックとして、デフォルト値を任意で設定できます。

非表示フィールドは プレビュー パネルには引き続き表示されるため、公開前にフローをテストできます。

値の提供

  1. アプリを公開します。

  2. エンドユーザーがアプリにアクセスする方法に合わせて、いずれかの方法を選択します。

    エンドユーザーがリンクから直接 Web アプリを開く場合に使用します。

    1. アプリの アクセスポイント タブで、Web アプリ カードの コンフィグ をクリックします。
    2. 非表示フィールドに値を入力し、公開 をクリックします。Web アプリが開き、値が URL クエリパラメータとして適用されます。
    3. アドレスバーの URL をコピーして Web アプリを共有します。

    異なる値で多数のリンクを生成するには、同じパターンで自分でさらに作成するか、システムに値を自動的に入力させます。

    Note

    スペースや特殊文字を含む値は URL エンコードしてください(例:Acme Corp は Acme%20Corp になります)。

    例:CRM が顧客 ID を自動入力

    CRM を使用しているサポートチームは、チケット返信テンプレートで Web アプリ URL の末尾に ?customerId={{customer.id}} を追加できます。

    担当者がリンクを送信する際、CRM が実際の顧客 ID に置き換えるため、チャットボットはどの顧客との会話か尋ねずに把握できます。