pub struct ParallelAgent { /* private fields */ }Available on crate feature
agents only.Expand description
Parallel agent executes sub-agents concurrently
Implementations§
Source§impl ParallelAgent
impl ParallelAgent
pub fn new( name: impl Into<String>, sub_agents: Vec<Arc<dyn Agent>>, ) -> ParallelAgent
pub fn with_description(self, desc: impl Into<String>) -> ParallelAgent
pub fn before_callback( self, callback: Box<dyn Fn(Arc<dyn CallbackContext>) -> Pin<Box<dyn Future<Output = Result<Option<Content>, AdkError>> + Send>> + Sync + Send>, ) -> ParallelAgent
pub fn after_callback( self, callback: Box<dyn Fn(Arc<dyn CallbackContext>) -> Pin<Box<dyn Future<Output = Result<Option<Content>, AdkError>> + Send>> + Sync + Send>, ) -> ParallelAgent
pub fn with_skills(self, index: SkillIndex) -> ParallelAgent
Available on crate feature
skills only.pub fn with_auto_skills(self) -> Result<ParallelAgent, AdkError>
Available on crate feature
skills only.pub fn with_skills_from_root( self, root: impl AsRef<Path>, ) -> Result<ParallelAgent, AdkError>
Available on crate feature
skills only.pub fn with_skill_policy(self, policy: SelectionPolicy) -> ParallelAgent
Available on crate feature
skills only.pub fn with_skill_budget(self, max_chars: usize) -> ParallelAgent
Available on crate feature
skills only.Enables shared state coordination for sub-agents.
When enabled, a fresh SharedState instance is created for each
run() invocation and injected into each sub-agent’s context.
Sub-agents can then use ctx.shared_state() to access the store.
Trait Implementations§
Source§impl Agent for ParallelAgent
impl Agent for ParallelAgent
fn name(&self) -> &str
fn description(&self) -> &str
fn sub_agents(&self) -> &[Arc<dyn Agent>]
fn run<'life0, 'async_trait>(
&'life0 self,
ctx: Arc<dyn InvocationContext>,
) -> Pin<Box<dyn Future<Output = Result<Pin<Box<dyn Stream<Item = Result<Event, AdkError>> + Send>>, AdkError>> + Send + 'async_trait>>where
'life0: 'async_trait,
ParallelAgent: 'async_trait,
Auto Trait Implementations§
impl Freeze for ParallelAgent
impl !RefUnwindSafe for ParallelAgent
impl Send for ParallelAgent
impl Sync for ParallelAgent
impl Unpin for ParallelAgent
impl UnsafeUnpin for ParallelAgent
impl !UnwindSafe for ParallelAgent
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more