Get Started
応用ガイドのチュートリアルでは、Agentria(エージェントリア)で構築できる、より多様なワークフローの構築手順を扱います。
本チュートリアルでは ReAct ノードを使用してエージェント(Agent)を構成し、チャットテスト(Chat Test)を実行します。
このチュートリアルを通じて、自ら判断して実行する ReAct エージェントのワークフローを作成してみましょう。
ReAct ノード
ReAct ノードは、言語モデルにおける「推論(Reasoning)」と「行動(Acting)」の研究に基づいて実装されたノードです。
ReAct ノードは、接続された ReAct ツール(Tools)の中から適切なノードを選択し、自ら判断して実行します。
研究論文は次のリンクの PDF を参照してください。
事前準備
開始するには、Agentria でプロジェクト(Project)を作成したあと、エージェントキャンバス(Canvas)へ進みます。
キャンバスへの入り方は、🔗3ステップコアガイド のステップ1(プロジェクト作成とコンポーザー選択)を参照してください。
本チュートリアルを完了すると、次の作業ができるようになります。
ReAct ノードを使う
2つ以上のノードを接続する
ReAct ツールノードを接続する
エージェントワークフローを構成する
チャットテストでワークフローの実行結果を検証する
ステップ1:入力変数

Agentria のキャンバスには、基本的に スタートノード(Start Node) と エンドノード(End Node) がそれぞれ1つずつ配置されています。
スタートノードは全体のフローを開始します。
エンドノードは全体のフローを終了します。

エージェントのスタートノードには、チャットテスト用の入力変数がデフォルトで設定されています。
スタートノードをダブルクリックするとノードエディターが開き、そこで型と説明を確認できます。
キャンバスに戻ります。
ステップ2:ドラッグ&ドロップでノードを追加する

自ら判断して実行するノードを追加します。
ReAct ノードは、与えられた目標を達成するために、接続されたツール(Tools)の中から適切なものを自ら選択し、推論と行動を繰り返しながら実行します。
キャンバス下部の +ノード追加(Add Node) ボタンをクリックし、AI Agent カテゴリーから ReAct エージェント ノードをドラッグ&ドロップで配置します。
ステップ3:エッジでノードを接続する
1)基本構造

スタートノードで入力された変数を ReAct ノードで使用するには、2つのノードを接続する必要があります。
この接続線を エッジ(Edge) と呼びます。
スタートノード右側の アウトピン(Out-Pin) を ReAct ノード左側の インピン(In-Pin) にエッジで接続すると、スタートノードの入力値が ReAct ノードへ渡されます。
2)ReAct の構造

ReAct ノードの右側には、アウトピン(Out-Pin)の下にツールピン(Tool-Pin)があります。
アウトピン(Out-Pin) は処理結果を次のノードに渡すときに使用します。
ツールピン(Tool-Pin) は ツールノード(tool_nodes) を接続するときに使用します。
ReAct にツールノードを接続すると、命令を実行するときに接続されたツールノードの中から適切なツールを探して活用できるようになります。
本チュートリアルでは、次の3つのノードをツールノードとして使用します。
Web Tools:DuckDuckGo Web Search ノード
Ability
AI Agent:長期記憶メモリ(Long-term Memory Reader)ノード
このとき、ツールノードは単一ノードのみ可能です。
複数ステップの流れをツール化したい場合は、アビリティとして作成してノードを単一化する必要があります。
アビリティノードは、あらかじめ作成したアビリティを 🔗API でデプロイ したあとに呼び出して使用できます。
本チュートリアルでは 🔗AI ノード活用(LLM) のワークフローを使用します。
ツールノードとして使用するノードをキャンバスに配置し、ツールピン(Tool-Pin) と各ツールノードの インピン(In-Pin) を接続します。
ステップ4:ツールノードを設定する
ReAct ノードは、ツールノードの名前と説明をもとに使用可否を判断します。
そのため、ノードの名前と説明を詳しく明確に書くほど、高い性能が期待できます。

ノードにマウスを合わせて編集アイコンをクリックすると、ノードのタイトルと説明を編集できます。
各ノードに適切な名前と説明を追加してください。
例:
DuckDuckGo Web Search Node
Today’s Fortune Ability Node
Retrieve Long-term Memory
ステップ5:ReAct ノードの変数をバインドする

Agentria では別途コードを書かなくても、ドラッグ&ドロップで変数を簡単に接続できます。
user_input:
input_messagechat_histories:
input_files
ステップ6:ツールノードの変数をバインドする
各ノードのアダプター変数に入力変数を接続します。
1)DuckDuckGo Web Search ノード

search_query:
input_message
2)アビリティノード(AI ノード活用)

Name:
input_messageBirthDay:
input_message
3)長期記憶メモリノード

embedding_model:
input_messagequery:
input_message
ステップ7:エンドノードを接続する

生成された ReAct の出力をエンドノードへ渡します。
キャンバスに戻り、ReAct ノードとエンドノードをエッジで接続します。
エンドノードをダブルクリックしてノードエディターを開くと、デフォルトで String 型の output_message アダプター変数を確認できます。
ここに ReAct ノードで生成した final_answer 変数を選択、またはドラッグ&ドロップで接続します。
これで「ReAct ノードを活用した判断型エージェント」ワークフローが完成です。
ステップ8:チャットテストでワークフローを点検する

キャンバス右下の CHAT TEST ボタンをクリックして、完成したワークフロー全体を実行できます。
エージェントテストは会話形式で進行します。
スムーズにやり取りできているかを確認しながらノードを修正し、機能を向上できます。
「今日の運勢」を確認するためにメッセージを送信します。
例:
私の名前は山田太郎で、誕生日は1999年10月10日です。私の名前と誕生日をもとに今日の運勢を教えてください。
運勢の定義を検索して。
ステップ9:会話生成プロセスを確認する
エージェントのチャットテストでは、エージェントの会話生成ロジックを確認できます。
エージェントの回答をクリックすると、右側に回答生成過程が含まれたノード別ロジックが表示されます。
この機能は、エージェントの詳細な性能改善作業に活用できます。
ReAct ノード > 出力変数 > reasonings で、ReAct ノードが自ら考えて判断していることを確認できます。
1)アビリティノードを使用

ReAct ノードがユーザーメッセージを「今日の運勢を生成してほしい」というリクエストとして認識します。
推論と行動のプロセスとしてアビリティノードを使用し、1つ目のメッセージに対する作業を実行します。
2)Web Search ノードを使用

ReAct ノードがユーザーメッセージを「運勢の定義を検索してほしい」というリクエストとして認識します。
推論と行動のプロセスとして Web Search ノードを使用し、2つ目のメッセージに対する作業を実行します。
次のステップ

🎉 おめでとうございます! Agentria を使って「ReAct エージェント」を完成させました。
チャットテストでさまざまなメッセージを入力して結果を確認し、ノードを修正しながらワークフローの性能を改善してみてください。
Agentria はアイデアを現実に変える可能性の空間です。
あなたのアイデア次第で、ワークフローは無限に広がります。