背景
去年Difyを使ってみて、あのとき機能としてはそんなに十分ではなくて、エコシステムの形成にはまだ時間がかかりそうと思いました。
そして最近n8nが流行ってきたので、軽く調べたら機能が多くて、使ってみました。
ナレージ蓄積プロセスを作ってみた
具体的に作ったのは、今までの記事や文章を簡単に貯めて、調べられるような仕組みを作りました。
- トリガーはフォームで、タイトル・カテゴリ・文章内容などを記入
- タイトル・カテゴリなどはDynamoDBに入れて、簡単に一覧出せるように蓄積
- 本文はS3に貯めて、さらにEmbeddings変換でQdrantに保存して、RAGで抽出できるように貯める
非常に簡単な仕組みなので、まだ改善余地がたくさんあります。スクリーンショットは残していないけど、そこからやってみたことは、
- タイトルとカテゴリもAIで判別してもらう
- 文章内容はAIでmdに変換してもらう
- n8nで別のプロセスでQdrantのRAG抽出を作った
などもあります。似たような構築がネットでたくさんあるので詳細は割愛して、感想の方が言ってみたいです。
感想
良かった部分
- ノードの追加・編集が非常に便利、
- 簡単にテストとモニタニングできる
- 変数にjavascript対応するので自由度が高い
- ネイティブの機能・コネクタだけでもかなり十分
足りなかった部分
- ノードとノードのデータ引き継ぎはコネクタによって仕様が違うのでやや煩雑、ノード数増えたらさらに複雑
- 高度な条件分岐やデータ処理は、ソースコードが慣れた人間に対してはソースコードを書いたほうが早い
- 各ノードの設定は1個1個のタブを開かないと見えない
AIでコードを作成してくれる時代なので、正直ノーコードの便利性が低くなる(?)と思います(n8nのJSON定義が今のAIでどこまで理解・作成・修正できるかにもよると思いますが)。
そしてノーコードと言っても使ったことがある人だとわかるとおもいますが、完全にコードの知識がないと厳しいです。なのでノーコードというより、プロセスの可視化の部分は自分から見るとこのツールの最大なメリットだと考えています。
向いているユースケース
- 軽い自動化プロセス、n8nで統合で管理できる
- プロトタイプ作成、プロセス可視化できるので他の方との議論もやりやすい
向いていないユースケース
- 外部ライブラリ多く使うプロセス
- 処理が多くて複雑なプロセス(n8nでモジュールで管理するとそれでもありかも(?))
最後
自分去年Difyを使ったけど、その後Difyもアップデートがもちろんあるので、去年のDifyと比較するのは不公平なので特にDifyの話はここで触れていないです。
昔のおもちゃみたいなノーコードサービスの印象はまだ頭の中に強く残っているけど、この1-2年間AI+自動化+ノーコードのAppの進化が相当早くて、ようやくある程度使えるようにはなりますねと感じています。