0. はじめに
Dify、Gumloop、n8n等のAIワークフロー構築が最近盛んです。
Difyは日本国内でかなり広がっていますし、書籍も販売されだしました。
今回はn8nというワークフロー自動化ツールを触ってみましたので、そのメモを記録しておきます。
- 動作環境
・ OS : Windows11 pro
・ WSL: 2.4.13.0 (Ubuntu 24.04.2 LTS)
・ Node.js : 22.15.0
・ n8n : 1.91.3
・公式
・Github
・ドキュメント
1. AI自動化ツール比較
Xのポストとかで一番よく聞くのは圧倒的に「Dify」だと思います。
今回は以下を参考に表へまとめてみました
ツール名 | 主な特徴 | 最適な用途 | 短所 |
---|---|---|---|
Relevance AI | • 事前構築テンプレートあり • モジュラー構造で簡単カスタマイズ • ローコードで簡単操作 |
技術知識が少ない個人・企業 | 視覚的直感性に欠ける |
Stack AI | • 複数のデプロイ方法対応 • 企業向けカスタマイズ • セキュリティ重視設計 |
スケーラビリティと セキュリティ重視の企業 |
採用率が低い |
Dify AI | • オープンソース • セルフホスト型 • 高度カスタマイズ可能 |
データプライバシーと AIモデル制御重視の企業 |
学習曲線が急 |
Lindy AI | • メール対応の自動化 • 主要サービスとの連携 • 各種セキュリティ基準に準拠 |
メールベースの営業・ サポート自動化チーム |
統合機能が限定的 |
Vector Shift | • 豊富なサードパーティ連携 • フォームのカスタマイズ • コード/ノーコード両対応 |
深い統合を必要とする 代理店や企業 |
市場採用率が低い |
Gumloop | • 直感的なドラッグ&ドロップ • 豊富なテンプレート • 多様なサービス連携 • 企業レベルのセキュリティ |
ユーザーフレンドリーさと 高セキュリティを求める企業 |
上位プランは高額 |
n8n | • 高度にカスタマイズ可能 • API直接統合 • セルフホスト対応 |
技術に精通したユーザーや オンプレミス志向の企業 |
非開発者には難しい |
今回はこの中にもあるn8nを使用してみます
2. n8nで作成するワークフローに関して
今回は毎日定期的にQiitaのトレンド記事を3行要約させてメール配信させるワークフローにします。
(注意)Gmailの認証に別途Google Cloudを使用しますので、Gmailの部分までやる為にはGoogle Cloudにプロジェクトを作成する必要があります
3. n8nの導入と起動(localhost)
今回の記事は簡単のため、WSLの導入に関しては書きません。WSLの導入はWindows11だと簡単にできますので、他の記事に任せます
①まずWSLを起動してください。
wsl
②次にNode.jsとnpmのインストールします ※Node.js 16以上が必要
# パッケージリストを更新
sudo apt update
# Node.jsと関連パッケージをインストール
sudo apt install -y nodejs npm
# バージョン確認
node -v
npm -v
③n8nのインストール
# n8nをグローバルインストール
sudo npm install -g n8n
# インストールの確認
n8n --version
④n8nの起動
# n8nを起動
n8n
Editor is now accessible via:
http://localhost:5678
Press "o" to open in Browser.
ここで「o」をクリックするとブラウザが開き、n8nがlocalhostで起動します
最初はログイン等の設定をする必要があります
(Eメール、名前、パスワード)
次に利用目的を入れます
(私は「I'm not using n8n for work」を押し、何でn8nを知った?には ※私はTwitterとした)
これでようやく使えるようになるはずです
4. n8nでワークフローを作成する
以下で2で示したワークフローを順を追って作成していく
4-1. トリガーを立てる
まず初期画面だと思うので、+ボタンを押すと以下図のように「このワークフローのトリガを何にする?」と言われるので、今回は定期実行をさせる為「On a schedule」
を押す
※他にも色々なトリガーを立てられる。
するとトリガの設定ができるので、スケジュール設定を行う(ここは難しくないと思うので割愛する)
設定が終わったら「Test step」
を押すと、テスト可能。エラーが出なければOK
※Back to canvasを押せば元のフローへ戻る
4-2. LLMの設定
スケジュールの横にある「+」を押してAIのワークフローを追加する
今回はその中(AIをクリックした次の画面)から「OpenAI」
をクリックする。
するとActionsで何をさせるか?と聞かれるのでメールを送る為、「Message a model」
を選択する
するとOpenAIの設定画面になるので入力していく。
MODELに関してはWeb検索を依頼する為、「GPT-4O-SERCH-PREVIEW」
を選んだ
アカウント設定にhOpenAIのAPI Keyを入れ、Base URLに「https://api.openai.com/v1」
を入れる
プロンプトは簡単に以下とした
以下のURLの最新トレンド記事を上から5つ確認し、タイトルと中身の3行要約(30文字以内)を付与して通知してください
https://qiita.com/
この状態まで入力できたら、ここでも「Test step」
を押すと、その内容でその時点でのQiitaからトレンド記事を解説してくれるはずである
4-3. Gmailの設定
4-3-1. Gmailの設定
先ほど同様に「+」を押して今度は「Action in an app」
をクリックし、「Gmail」
を選ぶ
そうすると、AI同様「Actions」を聞かれるので、「Send a message」
をクリックする
後は設定をしていく。
4-3-2. Google CloudにてOAuth認証情報を作成する
ここを詳細に解説すると記事が長くなりすぎるので、若干端折りながら解説をする。
(Google Cloudのプロジェクトは事前に作成する必要があります)
① Google Cloudを起動し、APIとサービスをクリック
②「認証情報を作成」⇒「OAuthクライアントID」を押す
※初回の場合は「OAuth同意画面」を作成しろと言われるので道なりに作成する
③認証情報は、アプリの種類「ウェブアプリケーション」
、名前は適当(私はn8nのメール配信)、認証済のリダイレクトURLはhttp://localhost:5678/rest/oauth2-credential/callback
が以下図に元々記載されているのでそれをコピペして貼ればいい
④そうすると、OAuth 2.0 クライアント IDが設定でき、その名前をクリックすると、ページ右側(Additional information)にクライアントIDとクライアントシークレットが記載されているので、それをn8nのGoogleアカウント設定以下図の2か所に記載する
⑤ただこれだけだと駄目で、OAuth同意画面を再度クリックして「対象」の中の「テストユーザー」に認証するメールアドレスを設定する必要がある
⑥これができたら設定完了。Gmail account画面で認証ができ、2個前の図「Account connected」という緑ステータスになる
4-3-3. Gmailのテスト
後はn8nのGmail設定で今まで同様に「Test step」
をクリックすれば、Qiitaのトレンドが対象メールアドレスへメールで送られてくるはずである。
4-4. 連動テストとアクティブ化
全体画面に戻り、「Test workflow」を押すとトリガー~AI~Gmailの一連の連動動作確認ができる。
実際にメールがくればOKである
テスト後はこれをアクティブにする必要があるので、Saveボタンを押した後にActiveを有効にすればOK。
PCさえ起動できていれば時間になったらワークフローが自動で動いてメールが届くことが確認できる
5. おわりに
正直このようなワークフローをやるなら、それこそGoogle CloudやAWSでとかでやらせたほうがいいのかもしれないが、ローカルでワークフローを組むことができるn8nはかなり面白いと感じたのでメモを残しておきました。
正直Difyよりもこっちのほうがやれることも多い上に今後求められるのはAIと他のツールの連携だと思うので少しとっつきにくいと思うかもですが、試してみてはいかがでしょうか?