Skip to main content

DependencyGraphProvider

Trait DependencyGraphProvider 

Source
pub trait DependencyGraphProvider: Send + Sync {
    // Required method
    fn provide_graph(
        &self,
        task: &str,
        available_actions: &[String],
    ) -> Option<DependencyGraph>;
}
Expand description

DependencyGraph を提供するトレイト

このトレイトを実装することで、様々な方法で DependencyGraph を生成できる:

  • LLM による動的生成(BatchInvoker が実装)
  • 静的な事前定義グラフ
  • テスト用のモック

§Example

use swarm_engine_core::exploration::{DependencyGraph, DependencyGraphProvider};

struct StaticProvider {
    graph: DependencyGraph,
}

impl DependencyGraphProvider for StaticProvider {
    fn provide_graph(&self, _task: &str, _actions: &[String]) -> Option<DependencyGraph> {
        Some(self.graph.clone())
    }
}

Required Methods§

Source

fn provide_graph( &self, task: &str, available_actions: &[String], ) -> Option<DependencyGraph>

タスクとアクション一覧から DependencyGraph を生成

§Arguments
  • task: タスクの説明(goal)
  • available_actions: 利用可能なアクション名の一覧
§Returns
  • Some(DependencyGraph): グラフが生成された場合
  • None: 生成をスキップする場合(LLM エラー等)

Implementors§