paint-brush
ポジティブな結果: Coze で究極の子犬トレーナー AI チャットボットを構築する方法@marcushaldd
853 測定値
853 測定値

ポジティブな結果: Coze で究極の子犬トレーナー AI チャットボットを構築する方法

Daria Leonova9m2024/08/31
Read on Terminal Reader

長すぎる; 読むには

私は、ユーザーフレンドリーなコード不要のプラットフォームである Coze を使用して、AI 搭載の子犬トレーナー ボットを作成しました。このボットは、オーストラリアン シェパードの Jenny の世話に関する詳細な指示とリマインダーを提供し、トレーニングに役立ちました。このプラットフォームの柔軟な機能 (複数のエージェント、プラグイン、メモリ変数など) により、ニーズに合わせてボットを簡単にカスタマイズできました。Coze はコーディングなしでボットを作成するのに最適ですが、複雑なロジックをもう少し制御できるとさらに良いでしょう。全体として、Coze は、パーソナライズされた AI ボットを簡単に作成したい人にとって素晴らしいツールです。
featured image - ポジティブな結果: Coze で究極の子犬トレーナー AI チャットボットを構築する方法
Daria Leonova HackerNoon profile picture

3 週間前、私はジェニーという名前の愛らしいオーストラリアン シェパードの子犬を飼い始めました。同じ頃、HackerNoon から、Coze の AI ボットをチェックするようにというメールを受け取りました。それは運命的なメールでした。私が構築したボットがトレーニングに大いに役立ったからです。


「ルームメイトを頼んでない」

しかし、まずは第一に。


全体的に、 Coze はさまざまな AI システムを 1 か所にまとめたオールインワンの AI チャットボット開発プラットフォームです。まったく異なるシナリオでさまざまなボットを作成できます。


  • ニュースダイジェスト
  • 天気予報
  • 翻訳者
  • 画像生成
  • トリップアドバイザー


+その他数え切れないほど。


可能性はそれだけではありません。既存の AI システムに限定されず、Coze を使用すると独自のソリューションをカスタマイズして構築できます。


それでは、私が作成した子犬トレーナーボットを見て、ジェニーが良い子になっていくかどうか見てみましょう🐶

簡単簡単子犬スクイージー

Coze の紛れもない利点の 1 つは、詳細な説明が付属するユーザーフレンドリーなインターフェースです。新しいペットを家に連れて帰ったばかりのときは、自由時間はあまりないことは想像できます。しかし、最初のイテレーションを行ってトレーナー ヘルパーを受け取るまでにかかった時間はわずか 2 時間でした。これはすべて、プラットフォームの入門レベルが非常に低いためです。


Coze を使用してAI ボットを構築するプロセスは次のようになります。

  1. モードを選択します*:

    1. 1 つのタスクに焦点を絞った単一のエージェント。たとえば、「翻訳者」など。

    2. ワークフロー。構造化されたコマンドが次々と続く複雑なロジック向け。フォームの入力など。

    3. マルチエージェント。さまざまな機能を備えた複雑で連続的ではない会話向け。


  2. エージェントのモデル、データベース、メモリ変数を設定する


  3. スキルの追加: プラグインとトリガー


  4. エージェントの作成プロンプトを設定します*。


*必須のアクションにはアスタリスクが付いています。


ショートカットや音声などの他の機能を使用してボットを改善/拡張することもできます。それらについては以下をお読みください。ここ

最初の反復では、新しいコマンドを教える方法を詳しく説明するという 1 つのタスクのみを持つ単一のエージェントを作成しました。計画によると、モード (当然、単一のエージェント) を選択し、プロンプトに入力する必要があります。

プロンプト

正直に言うと、私はプロンプト作成のプロではありません。実際、自分の考えを言葉で表現するのに苦労することがあります。😅 しかし、Coze を使用すると、プロセスが非常に簡単かつスムーズになります。日常の人間の言葉、または 5 歳児が言うような言い方で、自分が望むことを伝えるだけです。

 You are a skilled dog trainer. You use positive reinforcement training. You can teach the proper techniques for teaching commands. … Oh! And I want an ice cream 🍦 (just kidding)


次に、魔法の「A」ボタンをクリックするだけで、ウィッシュリストが意図的なプロンプトになります。


最良の結果を得るために、プロンプトを数回編集し、必要な書式を追加して、「A」ボタンを繰り返し押しました。


以上です!私のニーズにはこれで十分でした。まさに魔法のようです🪄✨


マルチエージェント

1週間後、状況が落ち着き、ジェニーは場所や新しい人々に慣れ、私たちも彼女に慣れてきたので、私はAIボットを拡張する時間を見つけました。

今回の私の質問には、先週の経験に基づいたいくつかのタスクが含まれていました。まず第一に、私は過保護で心配性な母親のようで、子犬に「異常」がないか常に見張っています。体重は十分ですか? 食べる量が少なすぎませんか? おしっこが多すぎませんか? 😅 ですから、私を落ち着かせ、子犬の健康に関するアドバイスをしてくれるヘルパーが必要なのです。

次に、AI を使って何か楽しいことを試してみたかったんです。もちろん、写真のことを考えていました。


これらの新機能を組み込むために、「シングル エージェント」モードから「マルチ エージェント」モードに切り替えました。考え方は非常にシンプルです。ノードが複数あり、それぞれが独自の機能を実行し、それが自分の「仕事」でない場合は、ユーザー リクエストを別のエージェントに委任するだけです。


各エージェントには 4 つのフィールドがあります。

  • シナリオ。このエージェントはいつ使用すればよいですか?
  • エージェントプロンプト
  • スキル。この代理店はどのようなツールやプラグインを使用していますか?
  • 自動提案。手動でテキスト入力する代わりに、ユーザーが選択できるオプションが生成されます。

単一ノード、つまりエージェントは、1 つの例外を除いて、シングル モードの場合とほぼ同じです。ボット全体にペルソナを指定する必要があります。


したがって、私の場合、ボットのペルソナは「犬のトレーニングとケアの専門家」です。一方、「トレーニング エージェント」は、ユーザーが「座る」ためのヒントを尋ねると呼び出されます。これがそのシナリオです。「ケア エージェント」は、ユーザーが子犬が頻繁にオシッコをするかどうかを尋ねると呼び出されます。



各ノードでは、そのタスクに合わせてカスタマイズされた特定のプロンプトを使用する必要があります。私は魔法の「A」ボタンでちょっとしたハックを使用しました。大まかな、半分完成したプロンプトをボットの「ペルソナとプロンプト」フィールドに挿入し、Coze に魔法をかけさせました。その結果、美しく作成されたプロンプトができたので、それをエージェントのプロンプト フィールドに挿入しました。簡単で効果的です。


そこで、私のケアヘルパーでは、どの AI モデルを使用するかを確実に指定しました。このトピックでは、信頼できるデータ ソースが不可欠であるように思われるからです。実際には、これを行うには 2 つのオプションがあります (テキスト出力について話している場合)。


  1. モデル設定。各エージェントはモデルに基づいて動作し、デフォルトでは GPT が使用されます。このモデルは、このノードでのユーザーとのやり取りを担当します。プロンプトやユーザー入力に関するユーザーへの回答や質問を生成し、提案の生成を処理します。

  1. モデル自体は、プラグインを使用してユーザータスクを処理できます。たとえば、画像を生成したい場合は、プロンプトで次のようにします。 Use {text2img} to generate a cartoonish image of a dog from user inputモデルに別の画像を使用するように指示します。ああ、このプラグイン{text2img}をスキルに追加することを忘れないでください😀

エージェント自体と出力生成に異なるテキスト モデルを使用すると、ユーザーへの話しかけ方が気に入らない場合に便利だとわかりました。メモリ変数について説明したところで、具体的な例を紹介します。


全体的に、エージェントには Claude 3.5 Sonnet を選択し、子犬の健康状態に関する最も正確な情報を取得するために GPT-4 を使用するように依頼しました。結果は良好で、私にとって最も重要なことは安心できることです 😄

プラグイン

利用可能なプラグインの多様性に誰もが無関心ではいられません。当然、私はさらに多くのプラグインを試してみることにしました。素晴らしいのは、1 つのエージェント内で使用できるプラグインの数に制限がないことです。プラグインを組み合わせることで、単純なフローを作成することはできません。ユーザー入力を 1 つの出力から別の出力に変換するだけです。

たった 2 つのプラグインを使ったシンプルなアイデアを思いつきましたが、出来上がりにとても満足しています。コンセプトは、子犬の画像から成犬の写真を生成することです。


現時点では、プラットフォーム上で(画像 + テキスト)を新しい画像に変換できるプラグインはありません。そのため、次の 2 つを使用しました。

  1. img2text 。入力(子犬の写真)を詳細な写真の説明に変換します。


  2. text2img 。生成されたテキストを再度画像に変換します。ただし、今回は成犬の写真であるという情報を追加します。


もっともらしい結果を得るためには、プロンプトをいろいろ試して、色、斑点、それらの位置に注意を払うことが重要だと指定する必要がありました。しかし、それは楽しく、比較的正確でした。


信じられる

トリガー

プラグイン以外にも、「トリガー」(スキル)機能が気に入っています。子犬トレーナー ボットでは、いくつかの理由からこれが役立ちます。

  1. 餌を与える時間、外出する時間、トレーニングする時間などのルーチンを確立するのに役立ちます。子犬に関するすべての情報を 1 か所にまとめておくと、別のアラームを設定する必要がなくなり便利です。


  2. 子犬はいつも楽しいとは限りません。子犬が何でも噛んだり、行儀が悪かったり、カーペットにおしっこをしたりすると、がっかりするかもしれません。トリガーは、困難な状況になったときに、ユーザーが肯定的な強化ややる気を起こさせるヒントのリマインダーを設定できるようにすることで役立ちます。


リマインダーを有効にするには、左側のパネルでオンにします。カスタム リマインダーを作成するには、同じ左側のパネルを使用して「+」ボタンをクリックします。


残念ながら、この機能は執筆時点では Discord でのみ利用可能です。

メモリ変数

ボットに個性を加えるには、メモリ変数機能を使用できます。このような小さな変更により、ユーザーは実際の人間や専門家と話していると感じられるようになるのは驚くべきことです。もちろん、メモリ変数の応用分野は他にもありますが、私の子犬トレーナーにとって重要なのは個性です。


左のパネルでは、チャットがユーザーについて記憶するメモリ変数を追加できます。この情報は、最近必要になった場合に更新されます。私の場合は、ジェニーに関する情報です。犬種と年齢は保存しておくと便利です。ケアのアドバイスはこれらの情報によって左右されるため、これらの詳細を何度も入力する必要はありません。場合によっては、トレーニングのアドバイスも犬種によって左右されることがあります。


ボーダーコリー:

「1日目: コリーにボールを取って来るように教える。」

2 日目: 高度なフェッチング - 複雑なルートや障害物コースが含まれます。

7 日目: 新聞、スリッパ、朝食を待ちます。ボーダーコリーが持って来てくれます。」

ブルドッグ:

「1 日目: ブルドッグにボールを取ってくることを教えます... ブルドッグがそれをしたいと思ったら。

2 日目: ボールを見ただけでも祝福しましょう。

7 日目: 赤ちゃんがまたお昼寝の時間だと判断する前に、ボールを 10 秒間じっと見つめることを目指します。」






ボーナス。メモリ変数またはモデル設定

約束どおり、モデル設定についてもう少しお話ししたいと思います。当初、知人エージェントには GPT-4 を使用していましたが、ひどい結果になりました。何らかの理由で、私が提供したデータが常に無視されたのです。


新しいモデル設定を試すことを検討するまでに、しばらく時間がかかりました。それには十分な理由がありました。別のモデルに切り替えると、最終的に望みどおりの結果が得られました。子犬の名前を繰り返し尋ねられなくなったのです。

展開中

結局、デプロイはプロセス全体の中で最も簡単な部分であることがわかりました。必要なのは、Coze が親切に提供してくれた指示に従うことだけです。指示はわかりやすく整理されており、明確な見出しと詳細なスクリーンショットが付いています。Coze チームに拍手を送ります!


簡単に言えば、必要なのはボット トークンだけです。場合によっては追加のトークンと ID も必要です。ほとんどのパブリッシング プラットフォームでそれらを取得するには、認証して設定に移動する必要があります。それほど難しくはありません。ただし、面倒な場合があります。










結論

うちのジェニーはもうたくさん学んでいて💪、いい子になっていく途中と信じています。今のところ私のお気に入りのコマンドは「前足」と「真ん中」です。とってもかわいいから!💕



Coze については、間違いなくお勧めできます。最初に述べたように、このプラットフォームは非常に使いやすいです。初めてのボットの作成が、こんなにも楽に楽しくなるとは想像もつきません。また、さまざまなモードとさまざまなプラグインによって提供される柔軟性も強調したいと思います。文字通り、何にでもボットを作成できます。

コードベースのものが足りなかったのかもしれません。いくつかのフローはかなり決まっています。例えば、

 If puppyName.isEmpty { ask name } else { goto training }

永続的な AI ではなく、人間の言語プロンプトだけでは、このシナリオを 100% 達成することはできません。


しかし、それ以外に大きな問題は思い当たりません。ボットの構築を簡単、楽しく、柔軟にしてくれる素晴らしいツールです。