前回の「AIニュース収集アシスタント構築ガイド」で紹介した、ノーコードで実現するAIプロセッシング・パイプラインを、実際にn8nで構築するための完全な設定ガイドです。
このガイドに従って手を動かせば、あなただけのAIアシスタントがすぐに稼働を始めます。
はじめに:必要なもの(事前準備)
このワークフローを構築・実行するために、以下の3つのサービスとアカウントが必要です。
- n8n環境: n8n Cloudアカウント、またはセルフホスト環境。
- ChatGPT/OpenAI APIキー: ニュースを要約・翻訳するために必要です。
- News APIキー: ニュースソースからデータを取得するために必要です。
- Googleアカウント: 司令塔となるスプレッドシートの作成と、結果の保存に使用します。
Step 1: 司令塔スプレッドシートの作成
AIワークフローをコントロールするための「司令塔」シートを作成します。
| 列名 | 役割 | 入力例 | 補足 | 
| A: 検索要否 | 検索を実行するかどうかを判断( 必要/不要) | 必要 | n8nのフィルタリングに使用 | 
| B: 検索ワード | News APIに渡す検索キーワード(英語推奨) | Large Language Model | |
| C: 最終取得日 | ニュース取得が完了した日付 | (空欄) | ワークフロー実行後に自動で記入されます | 
結果を書き出すためのシートは、別に用意しておきましょう。
Step 2: n8nワークフローの基本設定
2-1. ワークフロー全体の構成
最初に、以下の5つの主要ノードをn8nのエディタに配置し、接続します。
2-2. Trigger ノードの設定
| ノード名 | 設定項目 | 値 / 説明 | 
| Schedule Trigger | Time Interval | Every Week | 
| Weekday | Sunday(例) | |
| Time | 09:00(例) | |
| 補足 | これで、毎週日曜日の午前9時にワークフローが自動で起動します。 | 
2-3. Google Sheets (Read) ノードの設定
司令塔シートを読み込み、「必要」なキーワードのみを取得します。
| ノード名 | 設定項目 | 値 / 説明 | 
| Google Sheets | Operation | Read Data | 
| Resource | Sheet | |
| Spreadsheet ID | 作成した司令塔シートのID | |
| Range | A:B | |
| Options: Filters | Column A: 検索要否が必要と等しい | 
2-4. IF(条件分岐)ノードの設定
読み込んだ行が一つもない場合(全て「不要」だった場合)にワークフローを停止させます。
| ノード名 | 設定項目 | 値 / 説明 | 
| IF | Value 1 | {{ $items("Google Sheets").length }} | 
| Operation | is greater than | |
| Value 2 | 0 | |
| 補足 | データがある場合(True)のみ、次のNews APIに進みます。 | 
Step 3: News APIとAIプロセッサーの設定
3-1. HTTP Request (News API) ノードの設定
ここで、Step 2で読み込んだキーワードを使って外部ニュースを取得します。
| ノード名 | 設定項目 | 値 / 説明 | 
| HTTP Request | URL | https://newsapi.org/v2/everything | 
| Request Method | GET | |
| Query Parameters | ||
| q | ||
| language | ||
| pageSize | ||
| Header | ||
| X-Api-Key | ||
| 補足 | News APIの認証情報は事前にn8nのCredentialsに登録してください。 | 
3-2. OpenAI Chat (ChatGPT) ノードの設定
取得したニュースを「翻訳」と「50文字要約」で加工します。
| ノード名 | 設定項目 | 値 / 説明 | 
| OpenAI Chat | Model | gpt-4oまたはgpt-3.5-turbo | 
| System Prompt | ||
| 「あなたは、海外ニュースを日本語で要約するプロの編集者です。ユーザーから提供されたニュース記事を読み、以下の指示に従って要約してください。」 | ||
| User Prompt | ||
| 「以下の記事を読み、次の2点を満たすように出力せよ。\n1. 記事の内容を正確に伝える、50文字以内の日本語要約。\n2. 元記事のURLと発行日を添える。\n\n記事本文:\n{{ $json.description }}\n元URL: {{ $json.url }}\n発行日: {{ $json.publishedAt }}」 | ||
| 補足 | OpenAIの認証情報は事前にn8nのCredentialsに登録してください。 | 
Step 4: 結果の書き出しと最終調整
4-1. Google Sheets (Append) ノードの設定
ChatGPTが生成した加工済みの結果を、結果保存用のシートに追記します。
| ノード名 | 設定項目 | 値 / 説明 | 
| Google Sheets | Operation | Append Data | 
| Spreadsheet ID | 結果を保存するシートのID | |
| Data to Append | {{ $json.choices[0].message.content }} | |
| 補足 | 出力結果をパース(整形)してから書き出すために、間に Setノードを挟むと綺麗に整理できます。 | 
4-2. 司令塔シートの更新(オプション)
最後に、司令塔シートの「最終取得日」を更新することで、前回の実行日時を記録できます。
- Google Sheets (Update Data) ノードを追加し、司令塔シートの該当行の「最終取得日」列に現在の日時を書き込みます。
まとめ:ワークフロー実行の確認
- 全てのノードが正しく接続されているかを確認します。
- 各ノードの認証情報(Credentials)が設定されているかを確認します。
- 司令塔シートのA列に必要と入力された行があることを確認します。
- n8nの右上にあるActiveトグルをONにして、ワークフローを本稼働させます。
これで、あなたのAIニュース収集アシスタントが、設定したスケジュールで自動的に稼働し始めます。
