Get Started

短期メモリリーダーノードの使い方

短期メモリリーダーノードの使い方

短期メモリリーダーノードの使い方

アドバンスドガイドのチュートリアルでは、Agentriaで作成できるより多様なワークフロー構築プロセスを扱います。

このチュートリアルでは、短期メモリリーダーノードとLLMノードを使用してエージェントを構成し、チャットテストを実行して結果を確認します。

このプロセスを通じて、会話型エージェントのワークフローを構築する方法を学びます。


前提条件


はじめに、Agentriaでプロジェクトを作成し、エージェントキャンバスを開いてください。

キャンバスへのアクセス手順の詳細は、🔗3-Step Core Guide のStep 1(Create a Project and Select a Composer)を参照してください。


このチュートリアルを完了すると、次のことができるようになります:

  1. 短期メモリリーダーノードを使用する

  2. 複数のノードを接続する

  3. エージェントのワークフローを構成する

  4. チャットテストでワークフローの結果を検証する


Step 1:入力変数を宣言する



Agentriaのキャンバスには、デフォルトで Start NodeEnd Node が1つずつ用意されています。


  • Start Nodeはワークフロー全体を開始します。

  • End Nodeはワークフローを終了します。


会話型エージェントのワークフローを作成するには、まずStart Nodeで必要な変数を宣言する必要があります。

Start Nodeをダブルクリックすると、ポップアップでノードエディタが開きます。

ここで、データ型・名前・説明を設定して変数を定義できます。



Agent Start Nodeには、チャットテスト用のデフォルト入力変数が含まれています。

必要に応じて追加の変数を追加することもできます。

このチュートリアルでは、新しい変数は追加せず、デフォルト変数のみを使用します。

続けるためにキャンバスに戻ってください。


Step 2:ドラッグ&ドロップでノードを追加する



次に、チャットテスト中にユーザー入力を記憶できるようにするノードを追加します。

Short-term Memory Reader ノードを使用すると、会話の途中でもユーザーメッセージを保持し参照できるようになります。

キャンバス下部の +Add Node ボタンをクリックし、AI Agentカテゴリを開いてください。


また、記憶した情報をもとにエージェントが返答を生成できるよう、LLMノードも追加します。

このチュートリアルでは Azure OpenAI LLM ノードを使用します。


Step 3:エッジでノードを接続する



短期メモリリーダーノードがStart Nodeから受け取った変数を利用できるようにするには、2つのノードを接続する必要があります。

この接続線をエッジ(Edge)と呼びます。

Start Node右側のOut-Pinから、短期メモリノード左側のIn-Pinへ接続してください。これにより、Start Nodeの入力値がメモリノードに渡されます。


次に、短期メモリノードからLLMノードへも同様に接続し、処理されたデータがLLMに流れるようにします。


Step 4:短期メモリノードを設定する



短期メモリリーダーノードでは、メモリバッファに保存するユーザーメッセージ数を指定できます。

たとえば、Number of Recent Messagesを 10 に設定すると、会話中に直近10件のユーザーメッセージを記憶して利用します。

このチュートリアルでは、デフォルト設定のまま進めます。


Step 5:LLMノードのプロンプトを書く


LLMノードのプロンプトを記述することで、エージェントが適切な応答を生成するよう誘導できます。

役割や出力形式に関する指示を具体的にするほど、結果の品質が高くなります。


5-1)システムプロンプト



System Prompt欄には、AIの役割と出力形式を定義する明確な指示を書きます。

このチュートリアルではシンプルな会話型エージェントの構築に焦点を当てるため、次の例を使用してください:


これまでの会話に基づいて応答してください。 会話履歴は次のとおりです:


5-2)ユーザープロンプト


User Prompt欄では、AIに渡す入力データを設定します。

このステップで、短期メモリリーダーノードから受け取った情報をAIモデルへ渡します。

このチュートリアルでは、Step 6 のとおり変数を入力します。


Step 6:ドラッグ&ドロップで変数をバインドする



Agentriaでは、コードを書かずにドラッグ&ドロップで簡単に変数をバインドできます。

次のようにバインドしてください:


System Prompt:

memory_output


User Prompt:

input_message


Step 7:LLMの出力変数を宣言する



LLMノードをEnd Nodeに接続するには、LLMノードで出力変数を宣言する必要があります。

データ型を String に設定し、変数名を Message にしてください。

これでLLMノードの設定は完了です。


Step 8:End Nodeを接続する



最後に、生成した応答をEnd Nodeへ渡します。

キャンバスに戻り、LLMノードからEnd Nodeへエッジで接続してください。

End Nodeをダブルクリックしてノードエディタを開くと、デフォルトで String 型のアダプター変数 output_message が含まれています。

LLMノードの Message 変数を、このアダプターに選択またはドラッグ&ドロップでリンクしてください。

これで「短期メモリリーダーノードを使用した会話型エージェントワークフロー」が完成です。


Step 9:チャットテストでワークフローをテストする



キャンバス右下の CHAT TEST ボタンをクリックして、ワークフロー全体を実行します。

エージェントのテストはチャットインターフェース上で行われ、スムーズに対話できるか確認しながら調整し、機能を改善できます。


Step 10:会話生成プロセスを確認する



チャットテストでは、エージェントの会話生成ロジックを可視化できます。

エージェントの応答をクリックすると右側にサイドバーが開き、生成された返信の背後にあるノードごとの処理を確認できます。

この機能は、エージェントの調整とパフォーマンス改善に役立ちます。


次のステップ



🎉 おめでとうございます! Agentria を使って「会話型エージェント」のワークフローを作成できました。

次はチャットテストにさまざまなメッセージを入力して結果を確認し、ノードを調整してワークフローの性能を高めてみてください。


Agentria は、アイデアが現実になる場所です。あなたの想像力次第でワークフローは無限に広がります。



  • より多くのAbility例については、🔗Ability Guide を参照してください。

  • Agentベースの例については、🔗Agent Guide を参照してください。