Key Concepts
ストレージとは?
アビリティ(Ability)やエージェント(Agent)のワークフローは、実行の過程でさまざまなデータを扱います。このデータを次回の実行でも活用するには、どこかに保存しておく必要があります。Agentriaは、こうしたデータを保存・管理する場所をストレージ(Storage)という概念で提供します。
ストレージは、構造化データ(Structured Data)と非構造化データ(Unstructured Data)をそれぞれ異なる方法で扱い、データストレージ(Data Storage)・データ構造(Data Structure)・バルクランテスト(Bulk Run Test)・スリップボックス(Slipbox)の4つの機能で構成されています。
ストレージ:構造化・非構造化データのための保存領域
プロジェクトサイドバーのストレージメニューの下には、データストレージ・データ構造・バルクランテスト・スリップボックスという4つのサブメニューがまとまっています。
ストレージは、データの性質に応じて2つに分かれます。列と型が明確な構造化データは、データ構造を土台にしたデータストレージで管理し、ドキュメントのように決まった形式のない非構造化データはスリップボックスで管理します。
この2つの保存方式に加えて、バルクランテストという機能も提供されています。バルクランテストは、データストレージに蓄積されたデータを活用してアビリティを大量に実行・検証する機能で、構造化データの保存体系が整っていて初めて使用できます。
構造化データ:データ構造とデータストレージ
構造化データは、データ構造とデータストレージという2つの段階で管理されます。

データ構造は、ストレージに保存するデータの列名・型・必須かどうか・インデックスの有無を定義するスキーマです。データ構造1つにつき最大3つのフィールドまでインデックスを設定でき、インデックスを設定したフィールドは以降の検索・絞り込みが高速になります。

データストレージは、こうして作成したデータ構造を選択して作成する実際の保存領域です。つまり、データ構造を先に定義して初めて、その構造を土台にデータストレージを作成できるという順序関係にあります。データ構造なしにデータストレージだけを単独で作成することはできません。
データストレージが用意できると、ワークフロー内でDB Writer、DB Reader、DB Updater、DB Deletorノードを使って、データの保存・取得・更新・削除ができます。
非構造化データ:スリップボックス

スリップボックスは、実行判断型エージェントのための業務知識の頭脳です。商品企画者やサポート担当者が持つ暗黙的な判断基準や業務ルールを、エージェントが読み取って実行できる知識体系に変換し、エージェントが必要な文書を見つけて実際の業務成果を生み出せるよう支援します。
データ構造のように列や型をあらかじめ定義する必要はなく、その代わりに索引・ノートなどスリップ(Slip)単位のドキュメントで知識を階層的に管理します。ただし、スリップボックスがすべての非構造化データに対応しているわけではなく、動画のような一部のデータ形式はまだ対応していません。
バルクランテスト:ストレージデータによる大量テスト

バルクランテストは、アビリティがさまざまな入力値に対して一貫した結果を出せるかを検証する大量実行テスト機能です。
使用するには、まずデータ構造を作成し、その構造を土台にデータストレージを作成しておく必要があります。このとき、入力に使うストレージと結果を受け取るストレージは、それぞれ別のストレージである必要があります。
動作方式は以下のとおりです。
入力ストレージの設定でアビリティのインプットに合わせて列を接続すると、入力ストレージの各行が1回の実行として扱われ、行数の分だけ順次実行されます。
出力ストレージの設定で接続したアビリティのアウトプットだけが実行結果として保存され、出力ストレージの既存データの下に新しい行として追加されます。
これにより、さまざまな入力条件でアビリティがどれだけ安定して動作するかを一度に確認できます。
詳しく見る
実際にストレージを構成してみたい方は、以下のガイドを参考にしてください。
🔗データストレージの使い方 — データ構造を作成し、データストレージを作成する方法を案内します。
🔗バルクランテストの使い方 — ストレージデータでアビリティを大量実行・検証する方法を案内します。
🔗スリップボックスの使い方 — 非構造化知識をスリップ単位で管理する方法を案内します。
よくある質問
ストレージとは何ですか?
Agentriaのストレージ(Storage)は、ワークフローが扱うデータを保存・管理する場所です。構造化データ向けのデータストレージ・データ構造、非構造化データ向けのスリップボックス、そして保存したデータでアビリティを検証するバルクランテストという4つの機能で構成されています。
ストレージはどのような時に使いますか?
ワークフロー実行中に生成したデータを次回の実行でも再利用したい場合や、複数のワークフローが同じデータを共有する必要がある場合にストレージを使用します。列が明確な構造化データにはデータストレージを、ドキュメントのように決まった形式のない非構造化データにはスリップボックスを使用します。
データストレージとスリップボックスはどう違いますか?
データストレージは、データ構造で列と型をあらかじめ定義する必要がある構造化データの保存領域です。一方スリップボックスは、そうしたスキーマなしにスリップ単位のドキュメントで知識を管理する非構造化データの保存領域です。両者は競合する関係ではなく、データの性質(構造化・非構造化)に応じて使い分けるものです。
データ構造とデータストレージはどのような関係ですか?
データ構造が先で、データストレージが後です。データ構造は列名・型・必須かどうか・インデックスを定義するスキーマであり、データストレージはそのデータ構造を選択して作成する実際の保存領域です。データ構造なしにデータストレージを作成することはできません。
バルクランテストはデータストレージとどのような関係ですか?
バルクランテストはデータストレージの上で動作する機能です。入力用のデータストレージに保存されたデータを1行ずつ処理しながらアビリティを繰り返し実行し、その結果を別の出力用データストレージに蓄積します。そのため、バルクランテストを使用するには、あらかじめデータ構造とデータストレージが用意されている必要があります。