はじめに
今回はOpenAIを用いたせどり対象商品の選定を、n8nで実行する方法を紹介します。
OpenAIの有料プラン(5ドルの課金)が必要になります。
本手法では下記のn8nのノードを使用します。
ノード名 | 説明・役割 | 主な用途・特徴 |
Read/Write Files from Disk | ローカルディスクからファイルの読み書きを行うノード。ファイルの保存や読み込みが可能。 | CSV, JSON, テキストファイルなどの入出力・データ保存 |
Extract from File | ファイルから特定のデータや内容を抽出するノード。例えば、テキスト、CSV、PDFなどから情報を取り出す。 | ファイル内容の抽出・必要な部分のみデータ取得 |
AI Agent | 指定したAIエージェント(AIサービス)に指示を送り、結果を受け取るノード。ChatGPTなどのAIと連携できる。 | 生成AIへの問い合わせ・自動応答や要約 |
OpenAI Chat Model | OpenAIのGPT系AIチャットモデルと直接やり取りするノード。テキスト生成や会話を自動化できる。 | ChatGPT APIとの連携・文章生成・要約・翻訳など |
Code | JavaScriptで任意のコードを実行するノード。柔軟なデータ加工や独自ロジックの実装が可能。 | データ変換、カスタム処理、複雑な条件分岐 |
Convert to File | 任意のデータ(JSON、テキストなど)をファイル形式(例:CSVやPDF)に変換して出力するノード。 | データのファイル化、レポート出力、外部サービス連携用 |
今回の作成箇所
構築予定のn8nのワークフローの全体像は下記となります。
今回の作成箇所は下記となります。
ワークフローを実行すると下記のようなCSVファイルを出力することができます。
<サンプル画像>
方法の概要
紹介するワークフローの概要は下記となります。
- OpenAIでアカウントを作成
- OpenAIのAPI キーを作成
- 作成したOpenAIのAPI キーをn8nに登録
- 登録したAPIキーの動作確認
- プロンプト(指示文)の用意
- プロンプトを読み込むノードを作成
- AIが選定した商品候補をCSVファイルに保存するノードを作成
OpenAIでアカウントを作成
AI AgentのノードからOpenAIへのプロンプト送信は、OpenAIのAPIを利用します。
APIを利用するためにOpenAIにアカウントを作成します。
1.OpenAIにログインします。
https://auth.openai.com/log-in
2.いずれかの方法でアカウントを作成してください
3.アカウントの作成を終えて、OpenAIにログインすると下記のページが表示されます。
4.APIを利用するためには課金が必要です。
課金の支払い方法はクレジットカードとなります。
右上の「Settings」をクリックします。
5.左フレームの「Billing」→「Payment methods」→「Add payment method」の順にクリックします。
6.カード情報を入力して「Add payment method」をクリックします。
7.登録に成功すると「Payment methods」にカード情報が登録されます。
8.事前に課金します。
「Billing」→「Overview」→「Add credit balance」の順にクリックします。
9.課金の最低金額は「$5」です。
金額を入力したあと「Payment methods」で先ほど登録したカード情報を選択します。
「Continue」をクリックします。
10.Credit balanceに「$5.00」が表示されます。
OpenAIのアカウントの作成は完了です。
OpenAIのAPIキーの作成
1.OpenAIのAPIキーを作成します。
左フレームの「API keys」→「Create new secret key」の順にクリックします。
2.APIキーを作成するための情報を入力します。
入力が終わったら「Create secret key」をクリックします。
- Owner by
「You」を選択します。
「Service account」は複数人で1つのAPIキーを使用する場合に選択します。 - Name Optional
キーの名前を入力します。
名前は任意のローマ字を設定してください。 - Project
「Default Project」を選択します。 - Permissions
細かい権限設定を行い場合は「Registered」あるいは「Read Only」を選択します。
3.APIキーが作成されたら、必ずAPIキーをメモしてください。
APIキーは生成後に一度しか表示されません。
必ずコピーして安全な場所に保存してください。
コピーが終わったら「Done」をクリックします。
OpenAIのAPIキーの作成は以上です。
作成したOpenAIのAPI キーをn8nに登録
作成したOpenAIのAPIキーをAI Agentノードで利用するためには、n8nにAPIキーを登録しておく必要があります。
1.「Create Workflow」→「Create Credential」をクリックします。
2.検索フォームから「Open」と入力し「OpenAi」を選択し「Continue」をクリックします。
3.「API key」に作成したAPIキーを入力し「Save」をクリックします。
作成したAPIキーのn8nへの登録は完了です。
登録したAPIキーの動作確認
AI Agentノードで登録したAPIキーを利用できるか動作確認を行います。
1.「Create Workflow」をクリックします。
2.「Add first step…」をクリックします。
3.検索フォームで「AI Agent」を入力し「AI Agent」をクリックします。
4.下部にある「Create Model*」の「+」をクリックします。
5.入力フォームに「OpenAI」を入力し「Open AI Chat Model」をクリックします。
6.Modelのプルダウンから「gpt-3.5-turbo」を選択し左上の「←Back to canvas」をクリックします。
動作確認となるのでModelは何を選択しても構いません。
ここでは最も利用料が低い「gpt-3.5-turbo」を選択しています。
モデルを選択したら左上にある「←Back to canvas」をクリックします。
7.「Type Message」に何か質問を入力し「➤」をクリックし、OUTPUTに回答が返ってくるとこを確認します。
OUTPUTが返ってきたら、登録したAPIキーの動作確認は完了です。
プロンプト(指示文)の用意
AI AgentノードのINPUTはChat以外にも対応しています。
プロンプト(指示文)を用意し、そのプロンプトをINPUTとして扱うことができます。
1.Cドライブ直下に「n8n」フォルダを作成します。
2.「n8n」フォルダ内に「AIへのメッセージ.txt」を作成します。
ファイルパス:”C:\n8n\AIへのメッセージ.txt”
3.「AIへのメッセージ.txt」に下記の内容を記載します。
あなたはプロのせどりコンサルタントです。
以下の条件を満たす商品カテゴリの候補を**JSON配列形式**で作成してください。
【条件】
- 回転率が高く、Amazonで実績のある商品カテゴリを提案する
- 各カテゴリに具体的な商品ジャンル例を含める
- 各ジャンルにおすすめの商品名を提示する
- 日本語の「キーワード」と、その英語版「keyword」を両方記載する
- 仕入れ参考価格とAmazon販売参考価格を含め、利益率は20%前後を目安にする
- JSON配列に仕入れ参考価格とAmazon販売参考価格は含めない
- 検索数は一律「5」とする
- コメントには簡単な用途説明を記載する
【出力形式】
下記の各項目をもつJSON配列で10件出力してください。
[
{
"No": 1,
"カテゴリ": "家電",
"キーワード": "iPhone 11 64GB ブラック MWLT2J/A",
"keyword": "iPhone 11 64GB ブラック MWLT2J/A",
"検索数": 5,
"コメント": "人気のスマートフォン"
},
...
]
プロンプトの用意は完了です。
プロンプトを読み込むノードを作成
用意したプロンプトを読み込み、その内容をAI AgentノードにINPUTするワークフローを作成します。
1.現状のAI AgentノードへのINPUTはChatになっています。ChatからのINPUTを削除します。
「When chat messge received」を選択しゴミ箱アイコンをクリックします。
2.「AIへのメッセージ.txt」を読み込むノードを作成します。
キャンバスの右上にある「+」をクリックし検索フォームに「Read/Write」を入力します。
「Read/Write Files from Disk」をクリックします。
3.Actionsタブの「Read File(s) From Disk」をクリックします。
4.「File(s) Selector」に「C:/n8n/AIへのメッセージ.txt」を入力します。
!!注意!!
フォルダやファイルの区切りは「\」ではなく「/」です。
5.「Execute step」をクリックしOUTPUTが下記のように表示されることを確認します。
読み込みに成功したら画面右上の「←Back to canvas」をクリックします。
6.読み込んだファイルを処理するノードを作成します。
「Read/Write Files from Disk」の右から出ている「+」をクリックし検索フォームに「Extract」を入力します。
「Extract from File」をクリックします。
7.「Actions」から「Extract from text file」をクリックします。
8.「Execute step」をクリックしOUTPUTが下記のように表示されることを確認します。
読み込みに成功したら画面右上の「←Back to canvas」をクリックします。
9.「Extract from File」の赤枠をドラックして「AI Agent」の赤枠にドロップして線を繋げます。
10.「AI Agent」で読み込んだファイルのデータを処理できるように設定します。
「Source for Prompt(User Message)」を「Define below」に変更します。
11.「Prompt(User Message)」に「{{ $json.data }}」を入力します。
12.「Execute step」をクリックしOUTPUTが下記のように表示されることを確認します。
読み込みに成功したら画面右上の「←Back to canvas」をクリックします。
プロンプトを読み込むノードの作成は完了です。
AIが選定した商品候補をCSVファイルに保存するノードを作成
1.AIが選定した商品候補をCSVファイルに保存します。
商品候補のデータはJSON形式で出力されています。
CSVファイルに保存する際、データを処理しやすくするために、一度データを配列に格納します。
「AI Agent」の右から出ている「+」をクリックし検索フォームに「Code」を入力します。
「Code」をクリックします。
2.「JavaScript」に下記の内容を貼り付けます。
// AI Agentから受け取ったoutput(JSON文字列)をオブジェクト配列に変換
let jsonStr = $json.output; // または $json['generations'][0][0]['text'] の場合も
let data = [];
try {
data = JSON.parse(jsonStr);
} catch(e) {
data = [];
}
3.「Execute step」をクリックしOUTPUTが下記のように表示されることを確認します。
読み込みに成功したら画面右上の「←Back to canvas」をクリックします。
4.配列データをファイルに保存します。
「AI Agent」の右から出ている「+」をクリックし検索フォームに「Convert」を入力します。
「Convert to File」をクリックします。
5.「Convert to CSV」をクリックします。
6.「Add option」で「Delimiter」と「File Name」をクリックします。
「File Name」には「検索条件.csv」を入力します。
7.「Execute step」をクリックしOUTPUTが下記のように表示されることを確認します。
読み込みに成功したら画面右上の「←Back to canvas」をクリックします。
8.「Convert to File」の右から出ている「+」をクリックし検索フォームに「Write」を入力します。
「Read/Write Files from Disk」をクリックします。
9.「Write File to Disk」をクリックします。
10.「Operation」を「Write File to Disk」に変更します。
11.「File Path and Name」に「C:/n8n/検索条件.csv」を入力します。
!!注意!!
フォルダやファイルの区切りは「\」ではなく「/」です。
12.「Execute step」をクリックしOUTPUTが下記のように表示されることを確認します。
読み込みに成功したら画面右上の「←Back to canvas」をクリックします。
13.「Execute workflow」をクリックし全てのノードで「✓」が入り、正常に実行できたことを確認します。
14.「C:¥n8n¥検索条件.csv」を開き、AIが選定した商品候補が記載されていることを確認します。
<サンプル画像>
以上です。
コメント