見出し画像

AIエージェントの作り方

9,656 文字

私の名前はDavid Andreで、deep seekを使ったAIエージェントの作り方をお教えします。AIエージェントの人気は爆発的に広がっているので、2025年にエージェントを作れないでいると、取り残されてしまうでしょう。幸いなことに、プログラマーでなくても、deep seekを使ったAIエージェントの作り方を順を追って説明していきますので、最後までご覧ください。
まず最初のステップは、n8n.ioにアクセスして「get started for free」をクリックすることです。オンボーディングフォームに記入する必要がありますが、とても簡単です。記入が終わるとダッシュボードに入れます。「open workspace」をクリックすると、n8nのオートメーションが表示されます。「create workflow」をクリックしてください。ここでAIエージェントを作っていきます。
最初のステップはトリガーです。これは皆さん自身で決める必要があります。新しいWhatsAppメッセージかもしれませんし、新しいTelegramメッセージや新しいメールかもしれません。n8nには何百もの異なるインテグレーションがあり、それが素晴らしい点です。この例ではGoogle Sheetsを使用します。
これをクリックしてGoogle Sheetsと入力すると、さまざまな方法で使用できます。例えば、ビジネスで新しいリードを受け入れる場合や、私のように採用活動をしている場合などです。ちなみに、経験豊富なフロントエンド開発者の方は、ぜひ応募してください。Googleフォームのリンクは下記に掲載します。
右上には3つの異なるトリガーの可能性があります。行が追加された時、行が更新された時、またはその両方です。これは使用するトリガーによって変わります。例えばGmailを使用する場合は、新しいメールが届いた時にメッセージを受信するようになります。
私はGoogle Sheetsを使用し、行が追加された時をトリガーにします。新しい行が追加されると、このAIエージェントが起動します。まず、n8nにGmailを接続する必要があります。「select credential」をクリックし、「create new credential」をクリックしてGoogleでサインインすると、アカウントが接続されます。
実際にGoogle Sheetが必要なので、私は2つのGoogle Sheetを作成しました。1つは適格なリード用で、これは全て架空のデータです。Geminiを使って入力しただけです。基本的に1つのシートは、このビジネスへの全ての入ってくるリード用で、もう1つは適格なリードのみ用です。
実際にこれを削除して、AIエージェントに実行させてみましょう。n8nに戻って、どのシートで実行するかを選びましょう。documentの下に最近のシートが表示されます。「all leads」を選択します。シートは基本的に下のページを指します。ここには実際に1つしかないので最初のものを選択し、「fetch test event」を実行します。
読み込み中...完了です。11のアイテムが読み込まれましたが、n8nが正しく認識し、ヘッダーをヘッダーとして扱っているのが分かります。これでGoogle Sheetが機能することが分かりました。n8nはこのように構築すべきです。モジュールを追加するたびにテストを実行して、機能することを確認してください。また、大きな変更の後は必ず保存をクリックしてください。
次にAIエージェントを追加します。「AI agent」と入力してクリックします。これがmake.comやzapierと比べてさらにパワフルな理由です。このAIエージェントは多くのことができ、ツール呼び出しは自動的です。コードやJson、その他のことを心配する必要はありません。彼らが美しく処理してくれています。
このAIエージェントは実際にdeep seekのものになるので、「deep seek R1」に名前を変更します。実際にdeep seekをチャットモデルとして接続する方法を説明する前に、新しいSocietyで私が最近リリースした新しいモジュールについて簡単に説明する必要があります。
n8nについて、メールに費やす時間を90%削減する自動メール応答エージェントの構築に必要なことを、一から順を追って教えています。AIエージェントの構築方法、AIスタートアップの立ち上げ方、プロンプトエンジニアリング、cursの使い方など、他のコンテンツにも興味がある方は、新しいSocietyにぜひ参加してください。リンクは下記に掲載します。
n8nに戻りましょう。deep seek R1を使用するために、ここで単にdeep seekと入力することはできません。プロバイダーの1つを使用し、deep seekのSDKを使用する必要があります。複雑に聞こえるかもしれませんが、実際はとても簡単です。
ここでOpenAIを使用し、アカウントを接続する必要があります。私はすでに5つの異なる接続がありますが、初めての場合は何もないはずです。「create new credential」をクリックします。APIキーとベースURLが必要です。deep seekのベースURLはこれで、動画の下にリンクを残しておきます。
実際にはもっと良いことに、完成したら新しいSocietyのテンプレートとプリセットセクションに追加します。資格情報を設定する際は、必ずベースURLをapi.deep seek.comに置き換えてください。
次にDeep seekプラットフォーム(platform.deep seek.com)にアクセスし、APIキーを取得する必要があります。ちなみに、50ドルをチャージする必要はありません。これは過剰です。私の最初のチャージである2ドルくらいで十分です。deep seekモデルは信じられないほど安価だからです。
APIキーをクリックし、「create new API key」をクリックします。「n8n agent」と入力し、APIキーを作成します。これらはパスワードとして扱ってください。この動画をアップロードする前に私のものは無効にします。APIキーは誰とも共有しないでください。
「作成」をクリックしてコピーし、ここに貼り付けます。これで完了です。保存すると、接続のテストが成功したというメッセージが表示されます。この緑のメッセージが表示されたら、クリックして閉じることができます。
次にモデルを設定する必要があります。明らかにGPT 40 miniはdeepモデルではありません。ドキュメントをクリックすると、deep seekのチャット(deep seek V3)またはdeep seekのReasoner(有名なdeep seek R1)が表示されます。これを使用するので、名前をコピーして「expression」をクリックし、「select deeps Reasoner」と入力します。
モデル名を入力したら、クリックして閉じることができます。ここでも保存を忘れずに。これは非常に良い習慣です。次にAIエージェントをセットアップする必要があります。n8nを初めて使用する場合、この画面は圧倒的に見えるかもしれませんが、実際はとてもシンプルです。
左側は入ってくるデータ、中央はデータの処理方法、右側は出力される出力データです。次にプロンプトを決める必要があります。AIエージェントのプロンプトは何になるでしょうか。
ここで定義する必要があります。「prompt source」をクリックし、下の「Define」をクリックします。持っているデータに基づいてカスタム定義を行います。例えば、私たちのビジネスは30歳以上の人のみを受け入れる高級ソナだとしましょう。
シートを少し簡略化しました。必要なのは名前、年齢、リードへの連絡方法、予算、そして追加のメモだけです。n8nに戻って、ステップを再実行する必要があります。保存して、このテスト実行を削除するために「delete」をクリックします。この削除ボタンは、オートメーションには何の影響も与えません。単にこのテスト実行を削除するだけです。
「test workflow」をクリックすると、Google Sheetsの新しいイベントを待機します。実際にLindaをコピーしてみましょう。ここでもう1つモジュール、もう1つのノードを追加する必要があります。これはフィルターになります。
どの行を処理するかをチェックする必要があります。現在11アイテムが出力されていますが、それは望ましくありません。最新のものだけが欲しいのです。メモの代わりに、実際に「processed」を追加します。デフォルトでは「no」になります。
processedが空または「no」の場合にトリガーされます。例えば、これら2つは処理されていないので空です。n8nに戻って、フィルターを再実行する必要があります。それを削除して保存し、もう一度テストワークフローを実行します。
新しい行を待っているので、Michaelをここにコピーします。これがトリガーされるはずです。素晴らしい。フィルターは今、processedを見るはずです。「process value is equal to」を設定し、実際には「is not equal to」にします。「yes」に等しくない限り実行されます。
これを再実行すると、3つのアイテムだけになります。これが望むものです。processedが「yes」でない3つのリードだけがあり、他は全て処理済みです。つまり、リードがあって新しい人が来た場合、全員ではなく新しい人だけが処理されます。これが望むものです。とてもシンプルな方法です。
deep seek R1 AIエージェントをクリックすると、左側に必要なデータが表示されるはずです。これらはオートメーションのノードです。実際には少し問題があります。これは最初のヘッダーを実際の結果として出力しています。
2つ目の条件を追加し、nameの値が「name」に等しくないようにします。このステップをテストします。素晴らしい。ヘッダーではなく、実際のデータだけが流れるようになりました。もっとエレガントな方法があるかもしれませんが、気にしません。機能するAIエージェントを作ることだけを気にします。
deep seek R1は今、finally nameを取得するはずです。ここでこのプロンプトをテストし、実際に重要なデータを入力します。年齢と予算が合致するかどうかを決めるだけですが、実はAIエージェントをもっとパワフルにすることにしました。
メモを追加し、基本的に仕事の説明を加えました。私たちの仮想のソナビジネスが探しているのは、AIに興味のある人々です。これは、AIについて話せて、AIに情熱を持っている人だけを求める高級で排他的なソナです。
ここには様々な人々がいて、おおよそ半分がAIに直接関連し、半分は関連していません。deep seekエージェントがそれを判断することになります。保存して、この実行を削除し、データを再実行する必要があります。
「test workflow」をクリックすると、新しいトリガーを待機します。再びMichaelをここに複製します。トリガーが実行されましたが、Michaelは「yes」と処理されているので処理されませんでした。それを削除して再度実行する必要があります。
新しいリードだけが、処理されていないため通過しています。この場合、私が複製したMichael Grayだけです。フィルターが正しく私たちのAIエージェントに渡され、ここで関連情報を与える必要があります。
名前「Michael Gray」を入力し、このAIエージェントがこの人がAIに関連しているかどうかを判断します。この人は私たちのAI関係者向けの高級で排他的なソナにアクセスできるでしょうか。職業を入力し、ここにメモをドラッグします。
これがユーザープロンプトですが、システムメッセージも追加したいと思います。このウィンドウは少し小さいので、「expression」をクリックし、ここの右のボタンをクリックして拡大できます。
「you are a helpful assistant」はそのままにしておきます。あなたの仕事は、私たちの高級で排他的なソナの潜在的なリードをフィルタリングすることです。私たちはAI分野または直接関連する分野に興味がある/働いている人だけを探しています。
次に出力フォーマットを設定し、AIエージェントにどのように応答して欲しいかを説明します。入ってくる各リードを分析し、詳細な理由付けの段落を書いて応答してください。今のところこれで良いと思います。
外をクリックしてテストステップを実行しましょう。これには数秒かかります。なぜなら、deep seek R1に連絡を取っていて、これは推論モデルで、応答する前に考えるからです。
実際に間違いを犯しました。deep seekのセットアップの中で、V1を入れるのを忘れていました。ベースURLの後に/V1を必ず入れてください。そうしないと機能しません。でも今は私の間違いから学んで、同じ間違いを避けることができます。これでAIエージェントは正しく分類を出力します。このデータサイエンティストはAIを構築しているため、強力な候補者だと判断されました。
この出力は2つ目のAIエージェントに送られます。分類用のdeep seekエージェントの次に、OpenAIを利用した2つ目のエージェントが必要です。OpenAIチャットモデルを選び、新しい資格情報を作成し、OpenAIのAPIキーを取得する必要があります。
platform.open.comにアクセスし、share gbdで使用したのと同じアカウントでログインします。とても簡単です。左側のAPIキーをクリックし、新しいシークレットキーを作成します。「n8n agent」と入力します。これらはパスワードとして扱ってください。APIキーは誰とも共有しないでください。この動画をアップロードする前に無効にします。
これをコピーしてn8nに戻り、貼り付けて保存します。テストが成功しました。素晴らしい。モデルはGPT-4を使用します。私たちが必要とすることには十分すぎるほどです。
次にAIエージェントにシステムプロンプトを与える必要があります。プロンプトも必要です。「Define below」をクリックし、「analysis」と入力して最初のエージェントからの出力を貼り付けます。
システムメッセージには「あなたの仕事は、与えられた分析に基づいて、付属のツールを実行するかどうかを決定することです」と設定します。これで十分でしょう。ただし、おそらくここに「この人が適格なリードリストに属するかどうかについて、明確なyes/no決定を含めてください」と追加すべきでしょう。
deep seek R1をそのために使用する理由は、これが推論モデルだからです。標準のLLMsよりもずっと上手く候補者について考え、推論することができます。そのため、その仕事をずっと良く行うことができます。
ここでツールを与える必要があります。OpenAIエージェントのツールの下の「plus」をクリックする必要があります。Google Sheetsツールを使用します。Google Sheetsアカウントを接続し、シートには同じアカウントを使用してください。
ツールの説明を手動で設定できます。「適格なリードシートに人を追加する」と設定します。次にドキュメントを見つける必要があります。これは適格なリードのシートで、シート1を選びます。操作は「append row」で、シートに新しい行を作成し、列をマッピングします。
元のものとほぼ同じ値を送信する必要があります。名前はフィルターの後、年齢、メール、予算、他に何がありましたか?メモ、予算、処理済みです。メモをここに入力し、予算...バナー列、メモ、これらは削除できます。
このような変更を行う場合は、おそらく再読み込みする必要があります。列リストを更新し、フェッチしています。予算、メモ、処理済みは実際には必要ありません。ここから処理済みを削除できます。
なぜなら、これらは適格なので、全て処理済みになるからです。列リストを更新すると、これは消えるはずです。素晴らしい。
テスト実行をしてみましょう。OpenAI...そしてツールを使用することを決定しました。実際にはこれの名前を変更して、より分かりやすくします。「add to qualified」に変更します。これで明確になりました。
この出力に基づいて、Michaelを適格リストに追加しました。新しいテストをしてみましょう。例えば、Ashleyはプロのゴルファーです。彼女は私たちの排他的なソナには全く適していません。
まず保存してから、このテスト実行を削除し、もう一度テストワークフローを実行します。新しいイベントを待っています。新しいリードとしてAshleyを追加します。便宜上、これをコピーしているだけです。明らかに、新しい人は現在の実行とは異なる見た目になるはずです。
システムを通過するものが全て処理済みとしてマークされていることを確認する必要があります。これは2番目のエージェントの後に行います。Google Sheetsを選び、行を追加または更新する必要があります。
再度Google Sheetsアカウントを選択し、ドキュメントから全てのリードを選び、シートは最初のものです。列をマッチングするように選択し、前のメモを実行する必要があります。
これを適切にテストするには、新しい人を送信する必要があります。Ashleyを試してみましょう。データは既にあるものを使用していますが、明らかに新しいリードが入ってくる場合は、既存のものとは異なる見た目になるはずです。
保存してテストワークフローを実行します。イベントを待っています...新しいイベントを貼り付けました。なぜMichaelだけが認識されているのでしょうか?これは驚きです。
Ashleyはここにいるのでしょうか?これはひどい、Ashleyが認識されていません。おそらく、これを再接続する必要があります。正直なところ、これは非常に奇妙なバグです。これを再選択し、これも再選択して、テストイベントをフェッチします。
それがトリガーで行が追加されましたか?はい、今Ashleyがここにいます。それはクレイジーです。Michaelを手動で処理済みとしてマークしてみましょう。これを再実行すると、2つのアイテムが...なぜでしょう?
データが更新されていませんでした。それは私の間違いです。Ashleyだけの1アイテムです。はい、これを1つずつ実行しています。deep seekエージェントを実行し、次にこのエージェントを実行します。
実際にGoogle Sheetsには、フィルターからマッチングする必要があります。これが終わったら、フィルターからマッチングします。名前やその他に基づいてマッチングする必要がありますが、プロセスを更新する必要があります。
これが終わったら、実際にはこのエージェントを最初に実行する必要はありません。まずこれをセットアップする必要があります。エージェントを実行する必要があるようです。
申し訳ありません。これを実行しましょう。すぐに終わるはずです...決定:いいえ。はい、Ashleyは私たちの排他的なソナには属していません。なぜなら、彼女はプロのゴルファーで、AIについて何も知らないからです。
このシートについて、ついに設定できます。名前に基づいてマッチングする必要があります。フィルターの後、名前をドラッグし、処理済みを「yes」にします。このステップをテストしてみましょう。テストステップ...完了です。
このシートを更新すると、Ashleyは処理済みになっているはずですが、なっていません。なぜかを確認しましょう。処理済み「yes」、行の更新...リストから行を更新...マッチングする列として名前を正しく選択しました。
おそらくシートは更新されていますが...これはデータをコピーする際の問題です。2つのAshがあるため、この行を削除する必要があります。申し訳ありません。これを再実行すると、今度は機能します。
重複する名前があると混乱が生じます。最初の名前を更新するからです。保存をクリックして、完全なテストを実行できます。これが機能するか見てみましょう。実際に、自動で実行されるようにアクティブにします。
John Smithを選びます。ちなみに、この人はAIの分野にいます。重複データを避けるために削除し、待ちます。今は実行中です。John Smithを貼り付けると、実行がトリガーされるはずです。待ちましょう。
John Smith、彼が表示されるか確認する必要があります。彼は適格なので、適格リストに表示されるはずです。実行中です。素晴らしい。実行は進行中で、終了すると表示されます。
サイドを再読み込みして確認しましょう。まず適格なリードで彼を確認し、その後処理済みが「yes」に切り替わるはずです。そこにいます。Johnは処理され、適格リストに表示されました。
ビジネスで何百、何千ものリードが入ってくる場合、これは多くの時間を節約できます。もちろん、予算の判断など単純なことであれば、n8nでオートメーションを構築することはできますが、高度なdeep seekエージェントを使用する必要はありません。
しかし、全てのパラメータを入力して、その人が能力があるかどうか、役割に適しているかどうかを分析するような、より複雑なことの場合は、推論モデルを使用するべきです。実際、推論モデルを使用するのに完璧な用途です。
これがn8nオートメーションです。個人的には、これを私のリード、Google Sheets、採用候補者などに適応させる予定です。繰り返しになりますが、経験豊富なフロントエンド開発者を募集していますので、応募のリンクは下記に掲載します。
これは様々な方法で適応できる非常に便利なAIエージェントです。最後まで見て、実際に作ることができたことを願っています。もしできたなら、これは新しいSocietyに追加されます。
Jsonファイルとしてエクスポートし、テンプレートとプリセットセクションのクラスルームに完全なオートメーションを追加します。そうすれば、これを文字通りコピー&ペーストして、自分のビジネスや生活で使用することができます。
繰り返しになりますが、n8nとn8nを使ったAIエージェントの構築についてもっと学びたい方は、新しいSocietyで3時間前にリリースした新しいモジュールで、n8nを始めるために知っておくべきことを順を追って全て教えています。
AIに真剣に取り組みたい方は、ぜひ新しいSocietyに参加してください。週次のコール、700人以上のメンバーなど、エクスクルーシブなコンテンツが盛りだくさんです。AIの最先端にいたい方は、ぜひ参加してください。説明欄の最初のリンクから参加できます。
以上です。ご視聴ありがとうございました。素晴らしい一日をお過ごしください。さようなら。

いいなと思ったら応援しよう!