pub struct ContextLoader { /* private fields */ }Expand description
Composable loader that gathers context Items from multiple
ContextSource implementations.
Sources are loaded in the order they were added and the resulting items are
concatenated into a single Vec<Item>. These items carry
ItemKind::Context and can be prepended to the transcript before the
user message.
§Example
use agentkit_context::{AgentsMd, ContextLoader};
let items = ContextLoader::new()
.with_source(AgentsMd::discover("."))
.load()
.await?;
println!("loaded {} context items", items.len());Implementations§
Source§impl ContextLoader
impl ContextLoader
Sourcepub fn with_source(self, source: impl ContextSource + 'static) -> Self
pub fn with_source(self, source: impl ContextSource + 'static) -> Self
Add a ContextSource to this loader.
Sources are loaded in the order they are added. This method consumes
and returns self so calls can be chained.
Sourcepub async fn load(&self) -> Result<Vec<Item>, ContextError>
pub async fn load(&self) -> Result<Vec<Item>, ContextError>
Load all registered sources and return a combined list of context
Items.
§Errors
Returns the first ContextError encountered while loading. Sources
that appear before the failing source will have already been loaded.
Trait Implementations§
Source§impl Default for ContextLoader
impl Default for ContextLoader
Source§fn default() -> ContextLoader
fn default() -> ContextLoader
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for ContextLoader
impl !UnwindSafe for ContextLoader
impl Freeze for ContextLoader
impl Send for ContextLoader
impl Sync for ContextLoader
impl Unpin for ContextLoader
impl UnsafeUnpin for ContextLoader
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