Difyを使われて長い方にとっては当たり前のことでしょうが、私はふと思い立ち試してみたら、ChatflowとWorkflowって全然役割違うやん、、ということに気が付きました。
今まで、なぜかWorkflowをよく使っていたのですが、RAGを使っての壁打ちはChatflowの方がいいですね。
使い始めの方もいるかと思いますので、その紹介を致します。
以前Knowledgeの作り方は紹介しました。
![](https://hilablife.blog/wp-content/uploads/2024/05/IMG_1146-160x160.jpg)
ここではWorkflow内にでAIとKnowledgeを元にした会話を実行していました。
まず、AIとの会話を考えると次の3つが考えられます。
1, Agent モード
2, Workflow モード
3, Chatflow モード
![](https://hilablife.blog/wp-content/uploads/2024/06/image-3-1024x516.png)
このような設定ですと
![](https://hilablife.blog/wp-content/uploads/2024/06/image-4-876x1024.png)
Knoeledgeに基づかない、一般的な話が返ってきます。
そのため、『Knowledgeに元づいて』という言葉を入れます。(質問文か、instructionに)
![](https://hilablife.blog/wp-content/uploads/2024/06/image-5-840x1024.png)
・flow-up questionを作るようにを設定できる
・同じ流れで一般的な話も質問できる
・ある時はKnowledgeベースで、ある時はWeb情報を引用して、という使い分けが難しい
![](https://hilablife.blog/wp-content/uploads/2024/06/image-6-1024x456.png)
・機能として一回毎に動作として終了する。そのため、今の会話を覚えておいて、次の会話という流れができない。
・Workflowは一回で済む動作(例えばWeb検索など)を組み立てておいて、Tool化してoutputしておいて、他のところで使うのが良い
・Startの変数(variables)に今まで質問という枠を作成し、質問を書いていたが、これは邪道な方法
Workflowのtool化については以前試してみました。
![](https://hilablife.blog/wp-content/uploads/2024/05/IMG_1146-160x160.jpg)
![](https://hilablife.blog/wp-content/uploads/2024/06/image-7-1024x553.png)
![](https://hilablife.blog/wp-content/uploads/2024/06/image-8-837x1024.png)
・LLMにMemory機能がついている(ここをイジるとどうなるかはまだ色々試せていないが、おそらく、Workflowのときと異なり、一時的な記憶がされる可能性が高い)
・ChatGPTのように次の質問ができるようになっている。
・Flowをしっかりと組み立てれば、こちらが意図した通りに、Knowledgeベースの回答かWebベースの回答かを操作することができる(これはAgentにはこちらの意図が反映しづらい)
LLMを用いてChatをするなら、Chatflow
なにか一回の動作をきっちりと動かしたいならWorkflowを使おう