Skip to content

はじめに

DataCoreはナレッジウェアハウスです。チームが生のリソース (PDF、GitHubリポジトリ、CSV、音声、 Markdown) を登録すると、システムは各リソースを設定可能なプラグインステップのパイプラインへ 自動的にルーティングし、パイプラインは下流のLLMが問い合わせ可能な再利用可能な成果物 (ベクトル 埋め込み、ナレッジグラフ、要約、またはカスタム分析データ) を生成します。

コアコンセプト

概念内容
リソース (Resource)ユーザーが登録する生データの1件 — 名前、ソース (アップロードファイルまたはURL)、タイプを持ちます。すべてのリソースにはステータスがあります: PendingProcessingCompleted/Failed
パイプライン (Pipeline)特定のリソースタイプに対して自動的に実行される、順序付けられた処理ステップの並びです。トリガータイプごとに最大1つのパイプラインが存在します。
プラグイン (Plugin)パイプラインの1ステップを実行し、イベントブローカー経由で成果物 (または失敗) を報告する独立したワーカー (専用のDockerコンテナ) です。
成果物 (Artifact)プラグインステップによってリソースに対して生成される再利用可能な出力 — ベクトル埋め込み、グラフ、テキスト要約、またはプラグインが定義する任意のカスタム分析データタイプです。

なぜイベント駆動なのか

コア (ウェアハウスAPI) とプラグインワーカーは同期的に互いを呼び出しません。代わりに:

  1. リソースがパイプラインに一致すると、コアが RESOURCE_CREATED を発行します。
  2. Pipeline Routerがそれを受け取り、最初のステップを PIPELINE_STEP_DISPATCHED イベントとして、 担当プラグインへルーティングします。
  3. プラグインは処理を行い、単一の内部HTTPコールバック (POST /api/v1/internal/artifacts/{resource_id}) 経由で結果を報告します — これがシステム全体で 唯一の同期呼び出しです。
  4. コアは次のステップへ進むか、リソースを Completed/Failed としてマークします。

これにより、プラグインがクラッシュ・ハング・低速になっても、コアや他のプラグインを停止させることは 決してありません — 詳しい理由はアーキテクチャを参照してください。

自分で実行してみたいですか? クイックスタートへ進んでください。