Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 4 additions & 17 deletions ja/use-dify/nodes/ifelse.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ icon: "code-branch"

<Note> ⚠️ このドキュメントはAIによって自動翻訳されています。不正確な部分がある場合は、[英語版](/en/use-dify/nodes/ifelse)を参照してください。</Note>


If-Elseノードは、定義した条件に基づいて実行を異なるパスにルーティングすることで、ワークフローに意思決定ロジックを追加します。変数を評価し、ワークフローが従うべき分岐を決定します。

<Frame caption="If-Else条件分岐の例">
Expand All @@ -29,11 +28,11 @@ If-Elseノードは、定義した条件に基づいて実行を異なるパス

<Tabs>
<Tab title="テキスト操作">
**Contains** / **Not contains** - テキストが特定の単語やフレーズを含むかチェック
**Contains** / **Not contains** - 値が特定の単語やフレーズを含むかチェック

**Starts with** / **Ends with** - パターンマッチングのためにテキストの始まりや終わりをテスト

**Is** / **Is not** - 正確なテキスト比較のための完全値マッチング
**Is** / **Is not** - 完全値マッチング
</Tab>

<Tab title="値チェック">
Expand All @@ -59,18 +58,6 @@ If-Elseノードは、定義した条件に基づいて実行を異なるパス

## 変数参照

条件で以前のワークフローノードからの任意の変数を参照します。変数は、ユーザー入力、大規模言語モデルのレスポンス、API呼び出し、または他のワークフローノード出力から取得できます。

変数セレクターを使用して利か、`{{variable_name}}`構文を使用して変数名を直接入力します。

## 共通パターン

**コンテンツルーティング** - カテゴリ、言語、または複雑さに基づいて、異なるタイプのコンテンツを専用の処理ノードに振り分けます。

**ユーザー役割管理** - ユーザー権限、サブスクリプションレベル、またはアカウントタイプに基づいて異なるワークフロー動作を実装します。

**エラーハンドリング** - レスポンス状態コード、データ妥当性、または処理結果をチェックして、ワークフローを適切にルーティングします。

**動的処理** - 入力特性、処理結果、または外部条件に基づいてワークフロー動作を調整します。
条件で以前のワークフローノードからの任意の変数を参照します。変数は、ユーザー入力、LLMレスポンス、API呼び出し、または他のワークフローノード出力から取得できます。

**マルチパスワークフロー** - アプリケーションのさまざまなシナリオやエッジケースを処理する洗練された分岐ロジックを作成します
変数セレクターを使用して利用可能な変数から選択するか、`{{variable_name}}`構文を使用して変数名を直接入力します
41 changes: 5 additions & 36 deletions ja/use-dify/nodes/list-operator.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,10 @@ icon: "filter"

<Note> ⚠️ このドキュメントはAIによって自動翻訳されています。不正確な部分がある場合は、[英語版](/en/use-dify/nodes/list-operator)を参照してください。</Note>


リスト演算子ノードは、配列のフィルタリング、ソート、特定の要素の選択を行います。混合ファイルアップロード、大規模なデータセット、または下流処理の前に分離や整理が必要な配列データを扱う際に使用します。

サポートされる入力データ型には、`array[string]`、`array[number]`、`array[file]`、`array[boolean]`があります。

<Frame caption="リスト演算子ノードインターフェース">
<img src="https://assets-docs.dify.ai/dify-enterprise-mintlify/en/guides/workflow/node/522a0c932aab93d4f3970168412f759e.png" alt="リスト演算子インターフェース" />
</Frame>
Expand All @@ -23,16 +24,6 @@ icon: "filter"
<img src="https://assets-docs.dify.ai/dify-enterprise-mintlify/en/guides/workflow/node/812d1b2f167065e17df8392b2cb3cc8a.png" alt="配列処理の例" />
</Frame>

## サポートされるデータ型

ノードは適切なフィルタリングオプションを使用して、さまざまな配列タイプを処理します:

**Array[string]** - テキストリスト、カテゴリ、名前、または任意の文字列コレクション

**Array[number]** - 数値データ、スコア、測定値、または計算結果

**Array[file]** - 豊富なメタデータフィルタリング機能を持つ混合ファイルアップロード

## 操作

### フィルタリング
Expand Down Expand Up @@ -79,7 +70,7 @@ icon: "filter"

**result** - バルク処理用の完全なフィルタリングおよびソート済み配列

**first_record** - 先頭からの単一要素、「プテム選択に最適
**first_record** - 先頭からの単一要素、「主要」または「最新」アイテム選択に最適

**last_record** - 末尾からの単一要素、「最新」または「最終」選択に有用

Expand All @@ -95,31 +86,9 @@ icon: "filter"

1. **混合アップロードの設定** - 複数のファイルタイプを受け入れるファイルアップロード機能を有効化
2. **タイプ別に分割** - 異なるフィルターを持つ別々のリスト演算子ノードを使用:
- `type = "image"`でフィルタリング → ビジョン機能を持つ大規模言語モデルにルーティング
- `type = "image"`でフィルタリング → ビジョン機能を持つLLMにルーティング
- `type = "document"`でフィルタリング → 文書抽出器にルーティング
3. **適切に処理** - 画像は直接分析され、文書はテキスト抽出が行われる
4. **結果を結合** - 処理された出力を統一されたレスポンスにマージ

このパターンは、異なるファイルタイプを適切なプロセッサーに自動的にルーティングし、シームレスなマルチモーダルユーザーエクスペリエンスを作成します。

## 一般的な使用例

**ファイルタイプルーティング** - 混合アップロードをコンテンツタイプに基づいて専門的な処理パイプラインに分離

**データフィルタリング** - 特定の基準に基づいて大規模なデータセットから関連するサブセットを抽出

**コンテンツ優先順位付け** - コレクションから最も重要または最新のアイテムをソートして選択

**品質管理** - 処理前に無効、過大サイズ、またはサポートされていないコンテンツをフィルターで除外

**バッチ準備** - 下流の反復処理や並列処理のためにデータを管理可能なチャンクに整理

## ベストプラクティス

**フィルター基準の計画** - 下流処理要件に基づいて明確なフィルタリングルールを定義

**適切な出力タイプの使用** - 下流ノードがデータをどのように使用するかに基づいて、完全な配列、最初のレコード、または最後のレコードを選択

**空の結果の処理** - フィルターが一致しない場合の対処法を検討し、適切なフォールバックロジックを計画

**実データでのテスト** - 本番環境での信頼性のある動作を保証するために、実際のユーザーアップロードでフィルタリング動作を検証
このパターンは、異なるファイルタイプを適切なプロセッサーに自動的にルーティングし、シームレスなマルチモーダルユーザーエクスペリエンスを作成します。
53 changes: 32 additions & 21 deletions ja/use-dify/nodes/user-input.mdx
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
---
title: "ユーザー入力"
description: "ワークフローとチャットフローアプリケーションのエントリーポイント"
description: "ワークフローとチャットフローアプリケーションを開始するためのユーザー入力を収集します"
icon: "input-text"
---

<Note> ⚠️ このドキュメントは AI によって自動翻訳されています。不正確な点がある場合は、[英語版](/en/use-dify/nodes/user-input)を参照してください。</Note>
<Note> ⚠️ このドキュメントはAIによって自動翻訳されています。不正確な部分がある場合は、[英語版](/en/use-dify/nodes/user-input)を参照してください。</Note>

## はじめに

ユーザー入力ノードは、アプリケーションの実行時にエンドユーザーから収集する情報を定義できる開始ノードの一種です
ユーザー入力ノードでは、アプリケーションへの入力としてエンドユーザーから収集する内容を定義できます

このノードで開始するアプリケーションは、直接的なユーザー操作または API 呼び出しによって開始される*オンデマンド*で実行されます。これらのアプリケーションをスタンドアロンの Web アプリや MCP サーバーとして公開したり、バックエンドサービス API を介して公開したり、他の Dify アプリケーションでツールとして使用したりすることもできます。
このノードで開始するアプリケーションは*オンデマンド*で実行され、直接的なユーザー操作または API 呼び出しによって開始できます。

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

<Info>
各アプリケーションキャンバスには、ユーザー入力ノードを 1 つだけ含めることができます。
Expand All @@ -34,28 +36,28 @@ icon: "input-text"

### カスタム

ユーザー入力ノードでカスタム入力フィールドを構成して、エンドユーザーから情報を収集できます。各フィールドは、ダウンストリームノードが参照できる変数になります。たとえば、変数名 `user_name` の入力フィールドを追加すると、ワークフロー全体で `{{user_name}}` として参照できます。

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

<Info>
**ラベル名**はエンドユーザーに表示されます。
</Info>

<Tip>
チャットフローアプリケーションでは、任意の入力変数を**非表示**にして、エンドユーザーには見えないようにしつつ、チャットフロー内で参照可能な状態を維持できます。
チャットフローアプリケーションでは、任意のユーザー入力フィールドを**非表示**にして、エンドユーザーには見えないようにしつつ、チャットフロー内で参照可能な状態を維持できます。

**必須**フィールドは非表示にできないことに注意してください。
</Tip>

#### テキスト入力

<Tabs>

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

<Tab title="段落">
段落フィールドは長さ制限なしの長文テキストを許可します。詳細な応答や説明のために、ユーザーに複数行のテキストエリアを提供します。
長さ制限なしの長文テキストを許可します。詳細な応答や説明のために、ユーザーに複数行のテキストエリアを提供します。
</Tab>
</Tabs>

Expand All @@ -64,27 +66,34 @@ icon: "input-text"
<Tabs>

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

<Tab title="数値">
数値フィールドは数値のみに入力を制限します—数量、評価、ID、または数学的処理を必要とするデータに最適です。
数値のみに入力を制限します。数量、評価、ID、または数学的処理を必要とするデータに最適です。
</Tab>

<Tab title="チェックボックス">
チェックボックスフィールドは、シンプルなはい/いいえオプションを提供します。ユーザーがボックスをチェックすると、出力は `true` になります。それ以外の場合は `false` になります。確認や二者択一が必要な場合に使用します。
シンプルなはい/いいえオプションを提供します。ユーザーがボックスをチェックすると、出力は `true` になり、それ以外の場合は `false` になります。確認や二者択一が必要な場合に使用します。
</Tab>

<Tab title="JSON コード">
JSON オブジェクト形式のデータを受け付けます。複雑でネストされたデータ構造をアプリケーションに渡すのに最適です。

オプションで JSON スキーマを定義して、入力を検証し、期待される構造についてユーザーをガイドできます。これにより、他のノードでオブジェクトの個々のプロパティを参照することもできます。
</Tab>
</Tabs>

#### ファイル入力

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

<Tab title="ファイルリスト">
ファイルリストフィールドは単一ファイルと同様に機能しますが、一度に複数のファイルのアップロードをサポートします。ドキュメント、画像、その他のファイルのバッチを一緒に処理する場合に便利です。
一度に複数のファイルのアップロードをサポートします。ドキュメント、画像、その他のファイルのバッチを一緒に処理する場合に便利です。

<Tip>
リスト演算子ノードを使用して、アップロードされたファイルリストから特定のファイルをフィルタリング、並べ替え、または抽出して、さらに処理することができます。
</Tip>
Expand All @@ -93,22 +102,24 @@ icon: "input-text"

**ファイル処理**

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

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

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

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

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

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

## 次のステップ

ユーザー入力ノードを設定したら、収集したデータを処理する他のノードに接続できます。一般的なパターンには次のものがあります:

- 入力を LLM ノードに送信して処理する。
- ナレッジ検索ノードを使用して、入力に基づいて関連情報を検索する。
- 入力に基づいて条件ロジックを使用して実行パスを異なるブランチにルーティングする。

- ナレッジ検索ノードを使用して、入力に関連する情報を検索する。

- If/Else ノードを使用して、入力に基づいて条件分岐を作成する。
Loading