バンドルの共有とインポート
DataCoreバンドルは、他の人のDataCoreインスタンス上で一連のリソースを再現するための共有可能な 「レシピ」です — 処理済みデータそのもののコピーではありません。
バンドルに含まれるもの
- ローカルのパイプラインすべて: それぞれについて、名前、トリガータイプ、順序付けられたステップ (各ステップはプラグインを名指しし、そのプラグインのリポジトリへリンクします。これによりインポート 者は何を取得すべきかがわかります。プラグインディレクトリと緩やかに 相互参照されますが、ここから何かが自動的にインストールされることはありません)。バンドルはローカルの パイプライン一覧全体であり、選んだ1つのパイプラインではありません。
- リソース: 各リソースの名前、タイプ、ソースURL。対象となるのは
CompletedかつソースがURLの リソースのみで、さらにエクスポートされたパイプランのいずれかが対応するタイプのものだけです — アップロードされたファイルのソースはエクスポート元自身のMinIOへのプライベートなs3://パスであり、 共有できません。
成果物そのもの (要約テキスト、埋め込みベクトル、分析JSON) についてはいかなる情報も含まれません。
共有 (エクスポート)
リソース → バンドルとして共有 から:
- ローカルのすべてのパイプラインが自動的に含まれます — 1つ選ぶ必要はありません。
- すべてのパイプラインの全ステップについて、リポジトリURLを入力してください (必須 — バンドルの スキーマはこれらを
http(s)URLとして検証します)。 - 対象に含めるリソースを選択してください (いずれかのパイプラインが対応するタイプの、URLソースの
Completedリソースはすべて事前に選択されています)。 - バンドル名と説明を入力し、タグを追加して送信してください。
これにはログインし、確認済みメールアドレスを持っている必要があります (ユーザーアカウント を参照) — まだログインしていない場合、初回はログインを求められます。
インポート
リソース → コミュニティからインポート から (ログイン不要 — インポートは投稿ではなく、 読み取り+ローカル登録のアクションです):
- 共有バンドルを検索してください。
- 1つ選んでください — バンドルの各パイプラインについて、そのトリガータイプに一致するローカル パイプラインをすでに持っているかどうかが表示されます:
- 持っている場合: そのタイプのリソースはインポート後すぐに処理が始まります。
- 持っていない場合: そのタイプのリソースは登録されます (FR-003aに従い
Pendingのままに なります) — 必要なプラグインとそのリポジトリリンクが表示されるので、何を用意すればよいかが わかります。
- インポートをクリックすると、各リソースが自分自身のコアAPI経由 (
POST /api/v1/resources) で 登録されます。これは「リソースを追加」フォームに自分で入力したのとまったく同じです。
なぜコピーではなく再処理なのか
核となる設計判断: バンドルは入力とレシピを運び、実際に成果物を生成するのはインポート側での再処理 です。これは以下を意味します:
- インポート者自身のプラグインが実行されます — 自分自身のモデル/APIキー、自分自身のストレージ、 自分自身のバージョンのプラグインを使うため、結果はエクスポート元とわずかに異なる可能性があり、 それは想定内で明示されています。
- 大きなデータや機密性の高い処理済みコンテンツがエクスポート元のインフラから外に出る必要は一切 ありません。
- 単一のDataCoreインスタンスを支配するストレージの分離と同じ原則が、 インスタンス間の共有にも自然に拡張されます: 境界を越えるのは参照と定義のみで、生のコンテンツは 決して越えません。