生成AIチャレンジ:4日目 – n8nでワークフローを作ってみよう!②

前回の生成AIチャレンジ3日目は、Dockerでn8nを利用する環境構築をしました。

4日目は、いよいよ n8nでワークフローを1本完成 させます。
今日のゴールは「ノードをつなぐ感覚」と「自分の作業に置き換えるイメージ」を掴むことです。


前回の振り返り

前回はDockerでn8nを立ち上げて終わったと思います。

ログインが完了すると以下のような画面になるので、今回はこの画面からの作業をご紹介します。


今回作るもの

「生成AIチャレンジのアイディアを考えてもらう」ワークフローを組んでいきます。

100日チャレンジ達成できるほどのアイディアが思いつかん…と悩んでいたんですが、生成AIはアイディア出しもできるらしいので、手伝ってもらうことにしました。

ワークフローのイメージはこちらです。

  1. Google Drive から「生成AIチャレンジ」の記事(Google ドキュメント)を読み込む
  2. Gemini に投げて「次の展開アイディア」を出してもらう
  3. 返ってきた内容を Google ドキュメントとしてGoogle Driveに書き出す

認証情報の準備

n8nからGoogle DriveやGeminiにアクセスするということは、n8nが誰かのアカウントでアクセスする必要があるということです。

そのために必要なのが APIキーアクセスキー のような 認証キー です。

今回は主に2つの認証キーを発行していきます。

  • Google Driveやドキュメントに接続するため認証キー
  • Gemini にアクセスするためのAPIキー

また、Google DriveなどのGoogle Workspaceのサービスにアクセスするために、APIの有効化が必要です。

① Google Workspaceの認証キー発行とAPI有効化

GCP(Google Cloud Platform)から認証キーを発行します。

プロジェクトを作成し、メニューから APIとサービス > 認証情報 をクリックしてください。

画面上にある 認証情報を作成OAuth クライアントID から認証キーを作成しましょう。

作成が完了したら、クライアントIDクライアントシークレットID を控えておきましょう。

次に、APIの有効化をしていきます。APIとサービス > ライブラリ から、「Google Drive API」や「Google Docs API」を検索してAPIを有効化しましょう。

② Gemini のAPIキー発行

GeminiのAPIキーは Google AI Studioで発行します。

Google AI Studio | Gemini API にアクセスしてログインをします。左メニューの Get API Key をクリックして、APIキーを作成 から作成しましょう。

以上で、認証キーの準備は終わりです。

では、実際にn8nでワークフローを作成していきます。


ワークフローを作ってみよう!

n8nは主に3種類のノードがあります。

  • 開始(Trigger):ワークフローの「スタートボタン」役
  • 処理(Action):「取得する」「作る」「更新する」「送る」など、外部サービスに対して作業するノード
  • 便利機能(Core):特定サービスではなく、ワークフローを組み立てるための汎用ノード

これらのノードを組み合わせてワークフローは構成されています。

まずは、ノード作成時に必要な認証周りについてご紹介します。

Google Workspaceの認証

Googleドキュメント関連のノードを選択すると、以下のように 接続するための認証情報 があるので、こちらから新しく認証情報を入力していきます。

以下のように、クライアントIDとクライアントシークレットIDを入力できるので、先ほど作成したものを入力します。

次に OAuth Redirect URL をコピーします。
認証キーを作成したGCPに戻り、OAuth 2.0 クライアントID にある先ほど作成したものの編集画面に遷移します。
以下のように、承認済みのリダイレクト URI へコピーしたURLを貼り付けして保存します。

これでGoogle DriveやGoogleドキュメントにアクセスできるようになります。

Geminiの認証

Google Workspaceの認証と同様に、Geminiの認証情報も入力していきます。

APIキーには先ほど取得したキーを入力します。
ホストは以下を入力してください。

https://generativelanguage.googleapis.com

これでGeminiを利用できるようになります。

ノードを組む

以下のように、ノードを組みました。

  • 開始トリガー:クリックによる開始
  • 処理(Search):生成AIチャレンジ記事ファイル抽出
  • 処理(Get):記事ファイルの中身取得
  • 整形(Code):複数テキストを単一テキストに変換
  • 処理(Analyze):今までの記事からアイディア出し
  • 整形(Code):データ整形_要約テキスト抽出
  • 処理(Create):出力先のファイル作成
  • 整形(Code):データ整形_ファイルID抽出
  • 統合(CombineBySQL):データを統合
  • 処理(Update):ファイル出力

ポイントとなりそうなところを補足していきます。

整形(Code):複数テキストを単一テキストに変換

記事の取得では、見つかった記事を配列として取得しています。このままGeminiに投げてしまうと、記事をそれぞれ読み込んでそれぞれに対して「こんなことやってるんですね、こんなアイディアはどうですか?」と返ってきます。今やりたいのは、書いた記事をまとめて読み込んで1つの返答が欲しいです。そのため、以下のようにJavaSpcriptを利用して1つのテキストに変換します。

var marge_text = "";
for (const item of $input.all()) {
  marge_text += item.json.content;
}
return [{text: marge_text}];

統合に向けたデータの整形

GeminiからのアウトプットやGoogleドキュメントからのアウトプットは、いろいろなデータが混ざって連携されます。そのため、欲しいデータのみに絞ることで見えやすくします。

※統合の部分でデータを絞ることもできるのでそちらでも問題ないです

データの統合

最後に整形したデータを統合します。
Googleドキュメントとして書き出したいとき、少なくとも

  • どのドキュメントに書き出したいのか(ドキュメントID)
  • 何を書き出したいのか(Geminiからのアウトプット)

が必要になります。

基本的に 処理ノードのインプットは1つ なので、これらのデータをまとめておく必要があります。

今回はSQLによるデータ統合をしています。

SELECT * FROM input1
LEFT JOIN input2 ON true

以上で、ワークフローの作成は完了です。

実行すると、指定したフォルダにGoogleドキュメントとして出力してくれました。

こちらが実際に書き出された内容です。

Geminiからのアイディア提案

生成AIチャレンジの記事、拝見しました。LINEスタンプ作成や作曲といった具体的なアウトプットを通じて、生成AIの可能性を体験する素晴らしいチャレンジですね!

記事の内容(特に0日目の「どんなことができるか」や、これからのチャレンジ予定)を踏まえ、さらに多様な生成AIチャレンジのアイデアを提案します。

### **生成AIチャレンジ:アイデアリスト**

記事で触れられていないジャンルや、既存ジャンルの応用、複数のAIを組み合わせたチャレンジを中心に考えました。

#### **1. 動画生成・編集系チャレンジ**

*   **短編アニメーション作成チャレンジ**

    *   **内容**: ストーリー(ChatGPT/Claude)→キャラクターデザイン(Gemini/Canva)→絵コンテ(ChatGPTで指示文生成)→背景画像(Gemini/Midjourney)→動画(RunwayML/Kaiber/Pika Labs)→BGM・効果音(Suno/Udio)。全てを生成AIで作る短編アニメーション。

    *   **得られるスキル**: ストーリーテリング、動画制作フロー理解、AI間の連携。

*   **YouTubeショート/TikTok動画量産チャレンジ**

    *   **内容**: 特定のテーマ(例:役立つ情報、商品紹介)で、企画(ChatGPT)→脚本(ChatGPT)→動画生成(画像生成AI+動画生成AI/Canva)→ナレーション(音声生成AI)→BGM(Suno)までを自動化・半自動化で量産する。

    *   **得られるスキル**: 短尺動画コンテンツ作成、効率的なワークフロー構築。

*   **プレゼンテーション動画作成チャレンジ**

    *   **内容**: 企画書や提案資料のテキストから、構成案(ChatGPT/Claude)→スライドデザイン(Canva)→スライドのアニメーション(Canva/Gamma)→ナレーション(音声生成AI)→BGM(Suno)を生成し、説得力のあるプレゼン動画を作る。

    *   **得られるスキル**: 企画・構成力、動画での情報伝達スキル。

#### **2. より高度な文章生成系チャレンジ**

*   **短編小説/連載小説執筆チャレンジ**

    *   **内容**: プロット(ChatGPT/Claude)→登場人物設定→章立て→各章の執筆補助→校正・推敲までをAIと共に行い、オリジナルの小説を完成させる。

    *   **得られるスキル**: ストーリー構成力、表現力、AIとの共同執筆ノウハウ。

*   **絵本のストーリー&イラスト作成チャレンジ**

    *   **内容**: 子供向けのストーリー(ChatGPT/Claude)→各ページのイラスト指示文生成→イラスト作成(Gemini/Midjourney/DALL-E3)→レイアウト調整(Canva)。ストーリーと絵を同時に生成AIで作る。

    *   **得られるスキル**: ターゲットに合わせた表現、ビジュアルとテキストの連携。

*   **専門分野の論文・レポート下書き作成チャレンジ**

    *   **内容**: 特定のテーマ(例:SDGs、最新テクノロジー)について、情報収集(Gemini/ChatGPT)→構成案作成→本文の下書き生成→要約→参考文献リスト(AIで生成・提案)。学術的な文章作成に挑戦。

    *   **得られるスキル**: 情報整理能力、論理的思考、引用・参考文献の扱い。

#### **3. デザイン・クリエイティブ系チャレンジ(画像応用)**

*   **オリジナルキャラクター図鑑作成チャレンジ**

    *   **内容**: キャラクターの世界観・設定(ChatGPT)→様々なポーズ、表情、衣装のイラスト生成(Gemini/Midjourney/DALL-E3)→キャラクター名・プロフィール生成→図鑑形式にまとめる(Canva)。

    *   **得られるスキル**: キャラクターデザイン、設定構築、統一感のあるビジュアル制作。

*   **架空のブランド立ち上げチャレンジ**

    *   **内容**: ブランドコンセプト(ChatGPT)→ロゴデザイン(Canva/Midjourney)→商品パッケージデザイン→広告バナー作成→SNS投稿画像作成。ブランドの世界観をトータルでデザインする。

    *   **得られるスキル**: ブランディング、マーケティング、デザインツール活用。

*   **バーチャル背景作成チャレンジ**

    *   **内容**: 特定のシチュエーション(例:SF、ファンタジー、会議室)のバーチャル背景を画像生成AIで複数作成し、そのクオリティや雰囲気を比較する。

    *   **得られるスキル**: プロンプトエンジニアリング(風景描写)、空間デザイン。

#### **4. 音声・音楽系チャレンジ(応用)**

*   **オーディオブック作成チャレンジ**

    *   **内容**: 著作権フリーの短編小説や自身のブログ記事をテキストとして入力し、音声生成AI(ElevenLabs/Descriptなど)で朗読させ、オリジナルのオーディオブックを作る。

    *   **得られるスキル**: 音声編集、物語の読み聞かせ表現。

*   **オリジナルポッドキャスト番組作成チャレンジ**

    *   **内容**: 特定のテーマで、企画(ChatGPT)→台本(ChatGPT/Claude)→ナレーション(音声生成AI)→BGM・効果音(Suno/Udio)→オープニング・エンディング作成まで行い、短時間のポッドキャスト番組を完成させる。

    *   **得られるスキル**: 音声コンテンツ制作、情報発信スキル。

#### **5. 開発・自動化系チャレンジ(記事予告の発展形)**

*   **簡単なWebサイト/LP作成チャレンジ**

    *   **内容**: サイトの目的・構成(ChatGPT)→HTML/CSSコード生成(ChatGPT/Claude Code)→デザイン提案(Canva)→簡単なデプロイまで。

    *   **得られるスキル**: Web制作の基礎、AIによるコード生成活用。

*   **LINE Bot/Slack Bot開発チャレンジ**

    *   **内容**: 特定の機能(例:天気予報、AIとの雑談、特定情報の検索)を持つBotの企画(ChatGPT)→実装コードの生成(ChatGPT/Claude Code)→簡単なデプロイ。

    *   **得られるスキル**: プログラミング基礎、API連携。

*   **データ分析とレポート自動生成チャレンジ**

    *   **内容**: 特定のデータセット(例:公開されているCSVデータ)をAIに読み込ませ、分析(ChatGPT Advanced Data Analysis/Gemini)→グラフ生成→考察文のレポートを自動生成する。

    *   **得られるスキル**: データ分析、視覚化、レポート作成。

#### **6. 複合・体験系チャレンジ**

*   **AIで「未来の日記」作成チャレンジ**

    *   **内容**: 自分の現在の状況や目標をAIに伝え、数日後、数ヶ月後、数年後の「未来の日記」を生成AIに書かせる。その内容を実際に目指してみる、あるいは比較してみる。

    *   **得られるスキル**: 自己分析、目標設定、想像力。

*   **AIと共同でボードゲーム/カードゲーム開発チャレンジ**

    *   **内容**: ゲームのテーマ(ChatGPT)→ルール作成→カードのデザイン・テキスト生成(画像生成AI+ChatGPT)→簡単な試作。

    *   **得られるスキル**: 論理的思考、ゲームデザイン。

これらのチャレンジを通じて、生成AIの多様な可能性に触れ、新しいスキルや知見を得られることと思います。ぜひ、次のチャレンジの参考にしてみてください!

見出しや太文字などMarkdown形式で出力されていますが、ちゃんと提案してくれていますね!

詰まりポイント

以下のようなところで詰まるかもしれません。

  • OAuth同意画面の設定(アプリ名・メールなど)
  • テストユーザー追加が必要なケース
  • スコープ(Drive/Docs)を求められることがある

ChatGPTやGeminiにエラーメッセージをコピペして聞いてみると、解決が早いかもしれませんので、ぜひ聞いてみてください。

まとめ

今回は、n8nで「読む→考える→書き出す」というワークフローを作りました。

認証周りが難所ですが、普段の仕事を効率化できるのでは!?と思っていただけたら幸いです。

今回はGoogleサービス中心の構成でしたが、n8nのようなノーコード自動化ツール強みは「複数サービスをまたいだ自動化」や「 HTTPリクエスト で拡張できること」にあります。

ノーコード自動化ツールと言いつつ、エンジニアリングできないと難しいじゃん!という感じではありますが、こんなこともできちゃうの…!と可能性が無限大です。ぜひ、試してみてください!

ちなみに

Googleのサービスのみで完結しているので、Googleが提供しているOpalを使った方が簡単に組めるかもしれません!(2025年12月現在、運用試験として無料で使えるとのことです!)

参考:Opal のご紹介: AI ミニアプリの記述、作成、共有

Googleサービスしか使わない方や興味がある方はぜひ触ってみてください!

次回予告

次回、生成AIチャレンジ5日目では、
生成AIを使ってデータ分析をしてみよう! をテーマにしたいと考えています。

せっかくGeminiが提案してくれたので、採用していかないとですね!

では、お楽しみに〜