メインコンテンツへスキップ

Documentation Index

Fetch the complete documentation index at: https://dify-6c0370d8-docs-hide-variables.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

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

はじめに

ユーザー入力ノードでは、アプリケーションへの入力としてエンドユーザーから収集する内容を定義できます。 このノードで開始するアプリケーションはオンデマンドで実行され、直接的なユーザー操作または API 呼び出しによって開始できます。 これらのアプリケーションをスタンドアロンの Web アプリや MCP サーバーとして公開したり、バックエンドサービス API を介して公開したり、他の Dify アプリケーションでツールとして使用したりすることもできます。
各アプリケーションキャンバスには、ユーザー入力ノードを 1 つだけ含めることができます。

入力変数

プリセット

プリセット入力変数はシステム定義であり、デフォルトで利用可能です。
  • userinput.files:エンドユーザーがアプリケーションを実行するときにアップロードするファイル。
    ワークフローアプリケーションの場合、このプリセット変数はレガシーと見なされており、後方互換性のためにのみ維持されています。代わりにカスタムファイル入力フィールドを使用してユーザーファイルを収集することをお勧めします。
  • userinput.query(チャットフローのみ):ユーザーの最新のチャットターンから自動的にキャプチャされたテキストメッセージ。

カスタム

ユーザー入力ノードでカスタム入力フィールドを設定して、さまざまな種類のユーザー入力を収集できます。各フィールドは、下流のノードから参照できる変数になります。
ラベル名はエンドユーザーに表示されます。
フィールドの値が既知のもの(製品識別子やテナント ID など)で、エンドユーザーから取得する必要がない場合、そのフィールドを 非表示・事前入力 に設定し、自分で値を提供できます。詳細は 入力フィールドの非表示・事前入力 を参照してください。

テキスト入力

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

構造化入力

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

ファイル入力

ユーザーはデバイスまたはファイル URL を介して、サポートされている任意のタイプの 1 つのファイルをアップロードできます。アップロードされたファイルは、ファイルメタデータ(名前、サイズ、タイプなど)を含む変数として利用できます。
ファイル処理 ユーザー入力ノードはファイルを収集するだけで、コンテンツを読み取ったり解析したりしないため、アップロードされたファイルは後続のノードによって適切に処理される必要があります。例えば:
  • ドキュメントファイルは、LLM がそのコンテンツを理解できるように、テキスト抽出のためにドキュメント抽出器ノードにルーティングできます。
  • 画像は、ビジョン機能を持つ LLM ノードまたは専用の画像処理ツールノードに送信できます。
  • CSV や JSON などの構造化データファイルは、コードノードを使用して解析および変換できます。
ユーザーが混在タイプの複数のファイル(画像とドキュメントなど)をアップロードする場合、リスト演算子ノードを使用してファイルタイプ別に分離してから、異なる処理ブランチにルーティングできます。

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

ワークフローには、すでに分かっている入力が必要な場合があります。エンドユーザーに入力させるのは煩わしいでしょう。そのフィールドを 非表示・事前入力 に設定すると、値は自分で提供し、エンドユーザーには見えませんが、ワークフローには値が渡ります。 たとえば、複数の異なる製品ごとにランディングページを運営し、それぞれに AI チャットボットを掲載する企業を想像してください。すべてのチャットボットの背後にあるワークフローはほぼ同じで、製品識別子だけが異なります。 製品ごとに別々のワークフローを保守する代わりに、productName という非表示フィールドを持つ 1 つのワークフローを用意し、各ランディングページに対応する値を事前入力します。エンドユーザーから見ると、各ページにその製品専用のチャットボットがあるように感じられますが、実際にはすべてのページが同じワークフローに異なる productName を渡しているだけです。
非表示フィールドは 秘匿情報ではありません。値は URL クエリ文字列に含まれて送られ、ブラウザのアドレスバー、履歴、ネットワーク通信から見えます。認証情報や API キーには 環境変数 を使用してください。
単一ファイルおよびファイルリストのフィールドは、この機能をサポートしていません。
1

機能の有効化

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

値の提供

  1. アプリを公開します。
  2. エンドユーザーがアプリにアクセスする方法に合わせて、いずれかの方法を選択します。
    エンドユーザーがリンクから直接 WebApp を開く場合に使用します。
    1. アプリの公開パネルの Web App セクションで、公開 の横の歯車アイコンをクリックします。
      非表示フィールドの事前入力アイコン
    2. 非表示フィールドに値を入力し、公開 をクリックします。WebApp は値が URL クエリパラメーターとして適用された状態で開きます。アドレスバーから URL をコピーして共有してください。
    異なる値で多数のリンクを生成するには、同じパターンで自分でさらに作成するか、システムに値を自動的に入力させます。
    {WEBAPP_URL}?{VARIABLE_NAME}={VALUE}&{VARIABLE_NAME}={VALUE}
    
    # 例:https://udify.app/chat/abc123?productName=Acme&region=us-east
    
    スペースや特殊文字を含む値は URL エンコードしてください(例:Acme CorpAcme%20Corp になります)。
    CRM を使用しているサポートチームは、チケット返信テンプレートで WebApp URL の末尾に ?customerId={{customer.id}} を追加できます。担当者がリンクを送信する際、CRM が実際の顧客 ID に置き換えるため、チャットボットはどの顧客との会話か尋ねずに把握できます。