3行でいうと

  • アプリは「Studio」から作ります。公式のクイックスタートは「Create from Blank」→「Workflow」の順に選び、名前をつけて「Create」を押します。ワークフローは「User Input」ノード(または Trigger)から始まり、「Output」ノード(任意)で終わる形です(公式のワークフローとチャットフローのページ)。
  • 試すときは右上の「Test Run」→「Start Run」。ノードごとの結果は「Last Run」、途中の変数は「View cached variables」で見ます(公式のクイックスタート)。
  • 自分の文書を読ませる「ナレッジ」は、「Knowledge」→「Create」→「Create a ready-to-use knowledge base」から。文書は分割(チャンク)され、索引の方式と検索の設定を決めます。
  • 新しい「Agent」は、公式がベータと書いています。作成は「Agents」→「Create」→「Create from Blank」で、Editor 以上の権限が要ります。
  • 作ったアプリの公開(Webアプリ)は、公式の設定のページによると、初期状態で公開(URLを知っていれば誰でも開ける)です。共有の前に確かめてください。

この記事は、公式の資料を2026年10月25日に読んでまとめたものです。この記事は、実際に使って確かめた記録ではありません。

先に結論

前提:用語をそろえる

たとえ話:レシピカードを作って、台所に置く

ワークフローは、「材料を入れたら、手順どおりに料理ができるレシピカード」です。Test Run は試作、Publish は台所に置く本番のカード。ナレッジは、そのカードが引く「料理の辞書」です(たとえは僕らの整理で、公式の説明ではありません)。

最初の1時間の順番(この記事の案)

公式の手順ではなく、このページの案です。

時間の目安 やること このページの場所
最初の10分 モデルを入れる(05のA-2、A-3、またはセルフホストの起動) 05
次の30分 クイックスタートのワークフローを作り、Test Run 場面1
次の10分 ノードごとの結果を見て、直す 場面6
残り 小さな文書をナレッジにして、答えさせる/公開してみる 場面2、3、5

時間の目安は、公式のクイックスタートの題名(30-Minute)に合わせた、この記事の案で、実際に測ったものではありません。

場面1:複数のSNS向けの文章を作るワークフロー(公式のクイックスタート)

公式のクイックスタートの題材は、下書きの文章から、指定したSNSごとの投稿文を作るワークフローです。ここでは、公式のページが挙げる構成と手順を並べます。

1-1 作る

  1. 「Studio」を開き、「Create from Blank」→「Workflow」を選びます。
  2. 名前に Multi-platform content generator と入れ、「Create」を押します。
  3. キャンバスの「User Input」ノードを選びます。

1-2 ノードを作る(公式の構成)

順 ノード 設定(公式の記載)
1 User Input 項目:draft(Paragraph、必須、最大2048)、user_file(File list、任意、10まで)、voice_and_tone(Paragraph、任意)、platform(Short Text、必須、ラベル「Target Platform (≤ 10)」)、language(Select、必須:English/日本語/简体中文)
2 Parameter Extractor 入力は User Input/platform。抽出する項目 platform(Array[String]、必須)。公式が用意した指示文を貼る
3 IF/ELSE 条件:Parameter Extractor/platform が、エラーメッセージを含む(contains)。IF側に「Output」ノードを置く
4 List Operator ×2 ELSE側。1つは「Image」(フィルター:type が Image)、もう1つは「Document」(type が Doc)。入力は両方とも User Input/user_file
5 Doc Extractor Documentノードの後ろ。入力は Document/result
6 LLM(名前は Integrate Info) 「VISION」をオンにし、Image/result を指定。公式の指示文を貼り、「Add Message」でユーザーメッセージに User Input/draft と Doc Extractor/text を参照
7 Iteration 入力は Parameter Extractor/platform、出力は Create Content/structured_output。「Parallel Mode」をオンにし、最大並列は10。中に LLM を2つ(Identify Style、Create Content)。Create Content は「Structured」をオンにし、「Configure」→「Import From JSON」で、platform_name と post_content(どちらも文字列)のスキーマを貼る
8 Template 入力は Iteration/output。変数名は output。公式のJinja2のコードを貼る
9 Output 出力の変数は Template/output

指示文(プロンプト)とコードは、公式のページに全文があります。このページでは写していません(内容の確認は公式で)。ノードをつなぐ操作そのもの(右クリックの項目など)は、読んだページに書かれていませんでした。

1-3 テストする

  1. 「Checklist」に残りがないことを確かめます。
  2. 右上の「Test Run」を押し、項目を入れて「Start Run」を押します。
  3. 公式のページの入力例は次のとおりです(公式のサンプル)。
項目 入力
Draft We just launched a new AI writing assistant that helps teams create content 10x faster.
Upload File 空
Voice & Tone Friendly and enthusiastic, but professional
Target Platform Twitter and LinkedIn
Language English
  1. 期待される結果は、公式のページによると、プラットフォームごとの見出しと投稿文が並ぶ出力です。出力の細かい形は、モデルと設定によって変わります(公式のクイックスタートも、結果は使うモデルによると書いています)。
  2. 別の入力を試すときは、キャンバス下の「View cached variables」で、ノードの値を直接書き換えられます。エラーのときは、そのノードの「Last Run」のログを見ます。

1-4 公開する

  1. 「Publish」→「Publish Update」を押します(公式のクイックスタート)。
  2. あとで変更したら、もう一度公開します。公開しないと、変更は本番に反映されません。

場面2:自分の文書をナレッジにする

2-1 作る

  1. 「Knowledge」→「Create」→「Create a ready-to-use knowledge base」を選びます。
  2. データの出どころを選びます。公式のページが挙げるのは、ローカルのファイル、Notion、Webページ、空のナレッジです。
  3. ローカルのファイルなら「Import from file」で、ファイルを上げます。公式のページの制限は次の表のとおり(表示のまま)。
Sandbox Professional・Team
1回にあげられるファイル数 1 50
1ファイルの大きさ 15 MB 50 MB

2-2 チャンクを決める

公式の「Configure the Chunk Settings」のページの内容です。

項目 公式の説明
General すべてのチャンクが同じ設定で、一致したチャンクがそのまま返る。High Quality と Economical のどちらの索引でも使える。用語集やFAQのような単純な内容向け、と書かれている
Parent-child 小さい子チャンクで照合し、一致したら大きい親チャンクを返す。High Quality の索引のみ。技術マニュアルなど情報が詰まった内容向け、と書かれている
Delimiter(区切り) 分割する文字。\n\n(段落)、\n(行)など。区切りの文字は、分割のときに取り除かれる
Maximum chunk length 最大の文字数。長いと強制的に分割される
Chunk overlap 隣のチャンクと重ねる文字数(General)。例:50文字なら、前のチャンクの最後の50文字が、次の先頭になる
前処理 連続する空白・改行・タブの置き換え。URLとメールアドレスの削除(Full Doc では無視される)

2-3 索引と検索の設定

公式の「Specify the Index Method and Retrieval Settings」のページの内容です。

項目 公式の説明
High Quality 埋め込みモデルで意味による検索。ベクトル、全文、ハイブリッドが使える。作ったあとで Economical には戻せない
Economical チャンクごとにキーワード10個。トークンを使わず、精度は低め。転置索引のみ。あとで High Quality に上げられる
Multimodal 「Vision」アイコンの付いた埋め込みモデルを選ぶと、文字と画像の両方を検索できる
検索の方法 Vector Search、Full-Text Search、Hybrid Search。Rerank Model は既定でオフ、TopK の既定は3、Score Threshold の既定は0.5
Hybrid の重み 「Weight Settings」で、意味と文字列のどちらを優先するかを決める。Rerank のAPIの設定なしで動く

2-4 処理を待つ

公式の手順の最後は「データの処理が終わるのを待つ」です。終わった表示の見た目は、読んだページには書かれていませんでした。

2-5 検索を試す・中身を直す

公式のナレッジのページは、「Test and validate retrieval」(質問をまねて、何が返るかを確かめる)と「Manage content」(文書とチャンクの追加・変更・削除)、「Adjust knowledge base settings」(索引の方式、埋め込みモデル、検索の方針をあとから変える)を挙げています。具体的な画面の操作は、そのページには書かれていませんでした。

場面3:ナレッジを使って答えるチャットフローを作る

ここは、公式の「Knowledge Retrieval」ノードのページの手順です。

  1. チャットフロー(またはワークフロー)に、「Knowledge Retrieval」ノードを足します。先に、ナレッジが1つ以上できている必要があります。
  2. 「Query Text」に、テキストの変数を選びます(チャットフローでは userinput.query が例)。
  3. 使うナレッジを選びます(複数も可)。同時に探して、結果をまとめます。
  4. 「Retrieval Setting」で、Rerank、Top K、Score Threshold を決めます。複数のナレッジでの重みづけ(Weighted Score)は、すべてのナレッジが High Quality のときだけ使えます。
  5. ノードの出力は result(チャンクの配列)です。
  6. LLM ノードの「Context」に、この result を選び、システムの指示文のなかで Context の変数を参照します。
  7. チャットフローでは、ナレッジに基づく返答に、出典の表示(citations)が初期状態でつきます。「Features」でオフにできます。

指示文の例(この記事の例。公式の文面ではありません):

あなたは社内の問い合わせ係です。次の資料だけを根拠に、日本語で短く答えてください。資料に書かれていないときは「資料にはありません」と答えてください。

資料:
{{Context}}

{{Context}} の部分は、LLM ノードの画面で変数として差し込む部分です。画面での差し込み方(書き方)は、手元の画面と公式のページで確かめてください。

Chatflow を新しく作るときのボタンの名前は、読んだページに書かれていませんでした(公式のページは、ワークフローを作る手順だけ、はっきり書いています)。

場面4:Agent(ベータ)を作る

公式の「Build an Agent」のページの手順です。このAgentは、公式がベータと書いています。作成と管理には Editor 以上の権限が要ります。

  1. 「Agents」→「Create」→「Create from Blank」を選びます。DSLファイルから始めるなら「Import DSL file」。DSLに、スキルとファイルは含まれません。
  2. 名前を入れます(役割と説明は任意)。
  3. 「Configure」で、次の項目を決めます。
項目 公式の説明
Model ツール呼び出し(native tool calling)が使える、推論が強く、ネイティブなツール呼び出しが使える、新しめのチャットモデルを選ぶ
Prompt 役割と目的、よくある作業の進め方、ツールやファイルをいつ使うか、出力の形式。/ を打つと、スキル・ファイル・ツールを参照できる
Skills 「Add」で、SKILL.md を含む .zip か .skill を上げる(50 MBまで)
Files エージェントが読む資料。大きさの上限:文書15 MB、画像10 MB、動画100 MB、音声50 MB
Tools ワークスペースのDifyのツール(プラグイン、独自のAPI、ワークフロー、MCPサーバー)。認証が要るものもある
Advanced Settings > Environment Variables エージェントのサンドボックスが読める、キーと値。.env を取り込める
  1. 「Build」モードで話しかけて設定させることもできます。変更は「Build draft」に出て、「Apply」で残し、「Discard」で捨てます。「Discard」は、会話と、永続のサンドボックスのファイルも消します。「Apply」のあとの会話の扱いは、読んだページでは確認できていません。
  2. 右のパネルを「Build」から「Preview」に切り替えると、利用者から見える形で試せます。Preview での会話は、設定を変えません。
  3. 編集は下書きに自動で保存されます。準備ができたら公開します。バージョンの履歴から、前の版に戻せます。
  4. 「Access Point」のタブで、Webアプリ、サイトへの埋め込み、サービスAPIを使えます(07を参照)。

公式の実行の上限:1回の実行は1時間で止まり、未完の返答は捨てられます。モデルの呼び出しは、1回の実行で500回まで。返答のファイルは、1つ50 MBまで。サンドボックスはクラウドにあり、社内のURLには届かないので、社内の資料は「Files」に上げる、と書かれています。

指示文の例(この記事の例。公式の文面ではありません):

あなたは「議事録の整理係」です。貼られたメモから、決定事項、担当者、期限を表にして出してください。メモにない情報は「不明」と書いてください。

場面5:公開して使ってもらう

  1. 公式のAgentのページは、「Access Point」のタブで、Webアプリ(共有できるリンク)、サイトへの埋め込み、サービスAPIが使える、と書いています。MCPサーバーも、同じタブのカードです(MCPのページ)。
  2. Webアプリは、初期状態で公開で、URLを知っていれば誰でも開けます(Web App Settings のページ)。このページに、制限のしくみ(ログイン必須、メンバー限定など)の記載はありません。共有の前に、URLを渡す相手と、アプリに入れたデータを確かめてください。
  3. 設定できるもの:アプリの名前、アイコン、説明(公式は160文字未満を「for best results」の趣旨で挙げており、厳しい上限とは書いていない)、入力欄のヒント(64文字まで、チャット形式のアプリのみ)、色と明暗のテーマ、言語、著作権表示、プライバシーポリシーのリンク。
  4. アプリの設定で有効にした機能(会話の開始文、事前のフォーム、音声入力、出典の表示、フィードバック、レート制限)は、公開したWebアプリに引き継がれます。公開のあとで設定を変えたら、「Publish」で反映します。

埋め込み、API、MCPサーバーは07にまとめます。

場面6:動かして、直す

やりたいこと 操作(公式の記載)
全体を試す 右上の「Test Run」→「Start Run」
抜けがないか見る 「Checklist」
1つのノードの結果を見る そのノードの「Last Run」のログ
途中の値を書き換えて試す キャンバス下の「View cached variables」
エラーを調べる 公式の索引には、「Single Node」「Variable Inspector」「Run History」「Error Types」「Handle Errors」のページがあります。中身は今回読んでいません

公式のクイックスタートは、能力の高いモデルのほうが、一般によい出力になる、と書いています。出力がおかしいときは、プロンプトだけでなく、モデルの選択も見直す、という読み方ができます(これは僕らの見立てです)。

場面7:Webhookで外から起動する

公式の「Webhook Trigger」のページの手順です。トリガーは、ワークフローのアプリでだけ使えます。

  1. キャンバスで右クリックし、「Add Node」→「Start」→「Webhook Trigger」を選びます。複数のトリガーも置けます。下流のノードを共有するときは、「Variable Aggregator」でまとめます。
  2. 「HTTP Method」と「Content-Type」を決めます。送る側と合っていないと、リクエストは拒否されます。使える形式は、application/json、application/x-www-form-urlencoded、multipart/form-data、text/plain。
  3. 取り出す項目(クエリ、ヘッダー、本文)を決めます。それぞれが出力の変数になります。「Variable Name」は、リクエストのキーと一致させます(ヘッダー名のハイフンは、アンダースコアになる)。「Required」の項目が欠けると、ワークフローは起動しません。
  4. テスト用のURL(Test webhook URL)で試します。「Run this step」か、ワークフローのテスト実行をしておくと、テストのリクエストを受け取れます。
  5. 本番のURLは、Dify Cloud のドメインに置かれ、外から届く、と公式は書いています(URLの取得方法や形は、そのページには書かれていません)。セルフホストでは、.env の TRIGGER_URL(既定 http://localhost)が、公開側のベースです(05を参照)。
  6. 応答:既定は 200 OK。ステータス(200〜399)と本文は変えられます。400、404、413、500 は変えられません。

公式のページに、認証の設定、本文の大きさやレートの数値の制限は書かれていませんでした。外に公開するトリガーなので、送信元の確認が必要かどうかは、公式の資料では確認できていません。

つまずきと直し方

症状 公式の記載から読める原因 直し方(公式の記載)
Test Run を押しても進まない 「Checklist」に未設定の項目が残っている 「Checklist」を見て、直す
ワークフローを公開したのに、変更が反映されない 変更後に、再度の公開をしていない 「Publish」→「Publish Update」
Agent が、ツールを使わない/エラー モデルが、ネイティブなツール呼び出しに対応していない ツール呼び出しに対応したモデルを選ぶ。OpenAI互換のモデルでは、プロバイダーのモデル設定の「Token parameter name」も確かめる。一部のOpenAIモデルでは、資格情報の「API Protocol」を Responses API にする
Agent が、画像を無視する モデルに Vision がない Vision のタグのあるモデルを選ぶ
Agent が、社内のURLに届かない サンドボックスがクラウドにある 資料を「Files」に上げる
ナレッジの検索で、思ったチャンクが返らない チャンクの分け方、検索の方法、TopK、Score Threshold 「Preview」で確かめ、設定を直す。TopK と Score は、Rerank の段階で効く
Webhook が起動しない メソッドか Content-Type の不一致、必須項目の欠け 送る側と合わせる。「Last Run」の Input で確かめる
Webhook のテストで何も受け取れない 未公開のトリガーは、何も受け取らない 「Run this step」か、テスト実行をしてから送る

気をつけること

出典