主要な用語
ドメインの関係性
Jinba Toolbox のエンティティは明確な階層で構成されています:- Organizationは1つ以上のToolSetを含みます。
- ToolSetは1つ以上のToolを含み、複数の公開済みVersionを持てます。
- 各RunはToolSet内のToolの1回の実行を記録します。
- ユーザーはロールが割り当てられたメンバーシップを通じてOrganizationに所属します。
エンティティ関係図
Organization
Organization はトップレベルの所有単位です。すべてのToolSet、APIキー、課金はOrganizationに属します。- ユーザーは複数のOrganizationのメンバーになれます。
- 各メンバーシップにはロールがあります:
owner、admin、member。 - APIキーはOrganizationにスコープされ、
read、write、execute、adminの権限スコープを持ちます。
ToolSet
ToolSetは、共有のSandbox設定を持つ関連ツールをグループ化します。主なプロパティは以下の通りです:Tool
Toolは最小の実行可能ユニットです。各Toolは以下を定義します:
入出力スキーマは自動的にバリデーションされます。入力がスキーマに一致しない場合、Sandboxリソースが消費される前に実行が拒否されます。
Version
Versionは、ToolSetの不変スナップショットです。公開されたVersionは変更できません。- Versionはセマンティックバージョニングに従います(例:
1.0.0、1.2.3)。 - Versionの公開時に、その時点のすべてのTool、スキーマ、コードがキャプチャされます。
- ToolSetの
latestVersionフィールドは、最新の公開Versionを常に指します。 - AIエージェントや外部の利用者は、安定性のために特定のVersionにピン留めすることを推奨します。
Run
Runは1回のツール実行を表し、その詳細をすべて記録します:
Runはツール実行の完全な可観測性を提供し、障害のデバッグやパフォーマンスの監視を容易にします。
Sandbox実行
すべてのツールは隔離されたSandboxコンテナ内で実行されます。Sandboxシステムはプラグイン可能なプロバイダーアーキテクチャで構築されています:
Sandboxプロバイダーは、ToolSetレベルで設定されます。ToolSet内のすべてのToolは、言語ランタイム、インストール済みパッケージ、リソース制限を含む同一のSandbox設定を共有します。
アクセス制御
Jinba Toolbox は複数のレイヤーでアクセス制御を提供します:- Organizationメンバーシップにより、ToolSetの管理やRunの閲覧権限を管理します。
- ToolSetのVisibility(
private、public、restricted)により、ツールの検索・実行権限を制御します。 - APIキースコープ(
read、write、execute、admin)により、プログラムからのアクセスに対するきめ細かな権限制御を提供します。
次のステップ
クイックスタート
ToolSetを作成してツールを実行する
Webコンソール
ツール管理のためのWebインターフェースを探索する