ナレッジベースは、エージェントに参照データを提供するツールであり、エージェントがより正確で望ましい出力を生成するために重要な機能です。AI Agent Foundryは2種類のナレッジベースを提供します。1つは_Database_、もう1つは_Text_です。以下の手順に従って、新しいナレッジベースを作成します。
- Treasure コンソールを開きます。
- AI Agent Foundryに移動します。
- Knowledge Baseを選択し、Create knowledge baseを選択します。

- 使用方法を指定するナレッジベース名を入力します
- Databaseタイプを選択し、データベースを選択します。

データベースナレッジベースを作成する際、Format Typeを選択することで、クエリ結果をAIエージェントにどのような形式で返すかを指定できます。
- Markdown-KV (推奨)
- JSON (レガシー)

Markdown-KVは、新しいナレッジベースに推奨される形式です。クエリ結果を見出しとキー・バリューペアで構成された人間にも読みやすい形式で返すため、LLMが結果を理解しやすくなります。エージェントのクエリはユーザー自身の権限で実行されるため、アクセス制御はテーブルフィルタリングではなく権限レベルで実施されます。
主なメリット:
- Max rowsとTimeout seconds設定を適切に挙動させるためのFormat Typeです
- 結果がMax rows制限を超えた場合に自動的に切り捨て警告が表示され、エージェントが追加のWHERE条件でクエリを絞り込むよう促されます
設定オプション:
- Max rows: 返される最大行数を設定します(1〜100、デフォルト:50)
- Timeout seconds: クエリのタイムアウトを設定します(10〜300秒、デフォルト:60)
JSONは将来的に廃止予定のレガシー形式です。この形式は、ナレッジベースを特定のテーブルに制限する必要がある場合にのみ使用してください。
JSONを使用する場合:
- データベースに多数のテーブルがあり、クエリパフォーマンスを向上させたい場合
- 類似したテーブル名やカラム名が存在し、エージェントの混乱を防ぎたい場合
- ナレッジベースを特定のテーブルセット(例:
customersとordersのみ)に制限する必要がある場合。Table設定オプションで含めるテーブルを指定できます。
制限事項:
- Max rowsとTimeout secondsの設定が無視される場合があります
- 結果が切り捨てられた際にエージェントへの警告が表示されません
_Add table_ボタンをクリックして、テーブル情報を定義します
フォームに入力します。
| フィールド | 説明 |
|---|---|
| Name | ナレッジベースの名前を入力します。 |
| Type | Databaseを選択します。 |
| TD Database Name | クエリが実行されるTreasure Dataデータベースを入力します。 データベースはPlazma DBに存在する必要があります。 |
| Table | ナレッジベースがサポートするテーブルを定義します。 |
| TD Query | 選択したデータベースを使用してテーブルを定義するTrino SQLを提供します。Exclude Columns: 保持したいすべての列をリストします。Exclude Records: WHERE句でレコードをフィルタリングします。 |
| Name | 参照するテーブル名を入力します。 |
| + Add table | ナレッジベースにさらにテーブルを追加する場合に選択します。 |
- Saveを選択します。
Saveを選択すると、データ読み込みプロセスが開始されます。ナレッジベースを使用する前に、ステータスがSuccessになるまで待ちます。
- 使用方法を指定するナレッジベース名を入力します
- Textタイプを選択し、フォームに入力します

| フィールド | 説明 |
|---|---|
| Name | ナレッジベースの名前を入力します。 |
| Type | Textを選択します。 |
| Text-input | 最大18,000文字の参照テキストを入力します。 |
ペアレントセグメントナレッジベースは、ペアレントセグメント設定で「LLM enabled」スイッチが有効になっている場合に自動的に作成されます。現在、カスタムLLMプロジェクトで作成する方法はありません。
次のステップ
クエリシミュレーションを通じてナレッジベースの設定を確認します。