![見出し画像](https://assets.st-note.com/production/uploads/images/141331779/rectangle_large_type_2_256157a36a7661ccaca3eb2d209896d6.png?width=800)
Difyのワークフロー完全攻略ガイド:全てのブロックを徹底解説
DifyはAIアプリをノーコードで作れる開発環境として注目されています。
簡単な使い方は以下の記事を参照してください。
Difyの「ワークフロー」は「ブロック」や「組み込みツール」を線でつないでプログラムするのですが、その「ブロック」について調べました。
![](https://assets.st-note.com/img/1716262060248-KPiITS8Fcb.png)
開始
ワークフローに必ず1つ必要
入力フィールドを追加できる。アプリ実行時に入力欄になる。入力フィールドに入った値は以降のブロックから変数として参照できる。参照する時は「/」を入力すると一覧が出てくる。
入力フィールドは「1行」「複数行」「□選択」「数値」が選べる。
![](https://assets.st-note.com/img/1716262318670-5KMPUAu5kw.png)
終了
フローの最後に必須。分岐する時はそれぞれに必要。 出力変数を追加でき、アプリが終了時に表示される。
![](https://assets.st-note.com/img/1716262405014-qCJMIqzV40.png)
LLM
AIによる処理。SYSTEM(USER,ASSISTANT)にプロンプトを書いて処理を行う。「/」を入れることで前ブロックの「変数」を参照できる。
![](https://assets.st-note.com/img/1716262438217-HIyKP9C0v2.png)
![](https://assets.st-note.com/img/1716279031301-bFZmhNUWhv.png)
![](https://assets.st-note.com/img/1716262453189-uNzjZEoJN3.png)
![](https://assets.st-note.com/img/1716262470803-9XsF250bgy.png)
知識取得
予め上部メニューの「ナレッジ」で登録した(ファイルのアップロードなど)知識を元に検索し結果を返すことが出来る
![](https://assets.st-note.com/img/1716262503282-KstOrCbe7V.png)
質問分類器
質問をAIによって「クラス」に書かれた内容に従って分類し次の処理に分岐する。知識取得の前に質問を分類するのに使える。
![](https://assets.st-note.com/img/1716262544255-KK48F74GLu.png)
詳しい説明は以下を読んでください。
IF/ELSE
変数を登録しその値によって処理を分岐する。演算子は変数が文字列か数字かで変わる。
![](https://assets.st-note.com/img/1716262622439-cWwl0LJQWO.png)
![](https://assets.st-note.com/img/1716262658139-saJWehpI0p.png)
コード
PythonまたはJavaScriptのコードが書ける
![](https://assets.st-note.com/img/1716262691113-a5w9sKM3h6.png)
テンプレート
テンプレートに基づき変数を文字列にします。以下の記事で使い方書いてあります。
※勝手にDify のノード紹介パート3
— Seiki Mitsumori (@seikimitsumori) May 26, 2024
(公式はノードだったのでこれからはノードにします🙇♂️)
今回は「テンプレートノード」✨
Jinja2を使うことで出力を動的にもできるんだ!ということがわかったので、簡単な情報共有です🙌
他にもforなど色々な機能がありますので、ぜひ活用してみては💪#Dify https://t.co/K6wsQkChw0 pic.twitter.com/xPxWaHvdJP
![](https://assets.st-note.com/img/1716262720240-RCCsN5FbTM.png)
変数集約器(旧 変数割り当て)
これは複数に分かれたフローの変数を統合し1つの変数にして次のブロックへ渡す。
![](https://assets.st-note.com/img/1716262754473-LYBd6vA14t.png)
「変数を割り当てる」を「+」を押して追加して前のブロックの変数を入れるとつなげれるようになる。
![](https://assets.st-note.com/img/1716262796700-nThI14iv3K.png)
HTTPリクエスト
URLを指定してサイトの情報を読む
![](https://assets.st-note.com/img/1716262834517-1DEvmKIMfV.png)
![](https://assets.st-note.com/img/1716262848227-DBd77bUgMe.png)
この記事が気に入ったらサポートをしてみませんか?