pub enum TaskComplexity {
Simple,
Medium,
Code,
Complex,
}Expand description
Prompt complexity assessment (migrated from router.rs).
Variants§
Implementations§
Source§impl TaskComplexity
impl TaskComplexity
Sourcepub fn assess(prompt: &str) -> Self
pub fn assess(prompt: &str) -> Self
Assess complexity of a prompt string.
Uses tree-sitter AST parsing (when the ast feature is enabled) for
accurate code detection: if a code block parses successfully as any
supported language, it’s definitively code. Falls back to keyword
heuristics for prompts that mention code without containing code blocks.
Sourcepub fn required_capabilities(&self) -> Vec<ModelCapability>
pub fn required_capabilities(&self) -> Vec<ModelCapability>
Map complexity to required capabilities.
Sourcepub fn inference_task(&self) -> InferenceTask
pub fn inference_task(&self) -> InferenceTask
Map complexity to the InferenceTask type.
Trait Implementations§
Source§impl Clone for TaskComplexity
impl Clone for TaskComplexity
Source§fn clone(&self) -> TaskComplexity
fn clone(&self) -> TaskComplexity
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for TaskComplexity
impl Debug for TaskComplexity
Source§impl<'de> Deserialize<'de> for TaskComplexity
impl<'de> Deserialize<'de> for TaskComplexity
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for TaskComplexity
impl PartialEq for TaskComplexity
Source§impl Serialize for TaskComplexity
impl Serialize for TaskComplexity
impl Copy for TaskComplexity
impl Eq for TaskComplexity
impl StructuralPartialEq for TaskComplexity
Auto Trait Implementations§
impl Freeze for TaskComplexity
impl RefUnwindSafe for TaskComplexity
impl Send for TaskComplexity
impl Sync for TaskComplexity
impl Unpin for TaskComplexity
impl UnsafeUnpin for TaskComplexity
impl UnwindSafe for TaskComplexity
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more