pub struct LLMMiniLoopExecutor { /* private fields */ }Expand description
Production MiniLoopExecutor backed by a real LLM provider.
Uses a fast/cheap model for lightweight decisions such as task complexity classification, compression decisions, retry classification, and routing.
Implementations§
Source§impl LLMMiniLoopExecutor
impl LLMMiniLoopExecutor
pub fn new(provider: Arc<dyn LLMProvider>, model: String) -> Self
Trait Implementations§
Source§impl MiniLoopExecutor for LLMMiniLoopExecutor
impl MiniLoopExecutor for LLMMiniLoopExecutor
Source§fn decide<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_session: &'life1 Session,
prompt: &'life2 str,
context: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<MiniLoopDecision, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn decide<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
_session: &'life1 Session,
prompt: &'life2 str,
context: &'life3 str,
) -> Pin<Box<dyn Future<Output = Result<MiniLoopDecision, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Execute a fast decision using a cheap model.
Source§fn evaluate_task<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_session: &'life1 Session,
_tool_calls: &'life2 [ToolCall],
_round: usize,
) -> Pin<Box<dyn Future<Output = Result<MiniLoopDecision, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn evaluate_task<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_session: &'life1 Session,
_tool_calls: &'life2 [ToolCall],
_round: usize,
) -> Pin<Box<dyn Future<Output = Result<MiniLoopDecision, AgentError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Evaluate task progress using a fast model.
Auto Trait Implementations§
impl Freeze for LLMMiniLoopExecutor
impl !RefUnwindSafe for LLMMiniLoopExecutor
impl Send for LLMMiniLoopExecutor
impl Sync for LLMMiniLoopExecutor
impl Unpin for LLMMiniLoopExecutor
impl UnsafeUnpin for LLMMiniLoopExecutor
impl !UnwindSafe for LLMMiniLoopExecutor
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