pub struct AgentCapabilities {
pub tags: HashSet<String>,
pub input_types: HashSet<InputType>,
pub output_types: HashSet<OutputType>,
pub max_context_length: Option<usize>,
pub reasoning_strategies: Vec<ReasoningStrategy>,
pub supports_streaming: bool,
pub supports_conversation: bool,
pub supports_tools: bool,
pub supports_coordination: bool,
pub custom: HashMap<String, Value>,
}Expand description
Agent 能力描述
用于能力发现和任务路由
Fields§
能力标签 (如 “llm”, “coding”, “research”)
input_types: HashSet<InputType>支持的输入类型
output_types: HashSet<OutputType>支持的输出类型
max_context_length: Option<usize>最大上下文长度 (对于 LLM 类 Agent)
reasoning_strategies: Vec<ReasoningStrategy>支持的推理策略
supports_streaming: bool是否支持流式输出
supports_conversation: bool是否支持多轮对话
supports_tools: bool是否支持工具调用
supports_coordination: bool是否支持多 Agent 协调
custom: HashMap<String, Value>自定义能力标志
Implementations§
Source§impl AgentCapabilities
impl AgentCapabilities
Sourcepub fn builder() -> AgentCapabilitiesBuilder
pub fn builder() -> AgentCapabilitiesBuilder
创建构建器
Sourcepub fn supports_input(&self, input_type: &InputType) -> bool
pub fn supports_input(&self, input_type: &InputType) -> bool
检查是否支持指定输入类型
Sourcepub fn supports_output(&self, output_type: &OutputType) -> bool
pub fn supports_output(&self, output_type: &OutputType) -> bool
检查是否支持指定输出类型
Sourcepub fn matches(&self, requirements: &AgentRequirements) -> bool
pub fn matches(&self, requirements: &AgentRequirements) -> bool
检查是否匹配需求
Sourcepub fn match_score(&self, requirements: &AgentRequirements) -> f64
pub fn match_score(&self, requirements: &AgentRequirements) -> f64
计算与需求的匹配分数 (0.0 - 1.0)
Trait Implementations§
Source§impl Clone for AgentCapabilities
impl Clone for AgentCapabilities
Source§fn clone(&self) -> AgentCapabilities
fn clone(&self) -> AgentCapabilities
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 AgentCapabilities
impl Debug for AgentCapabilities
Source§impl Default for AgentCapabilities
impl Default for AgentCapabilities
Source§fn default() -> AgentCapabilities
fn default() -> AgentCapabilities
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for AgentCapabilities
impl<'de> Deserialize<'de> for AgentCapabilities
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
Auto Trait Implementations§
impl Freeze for AgentCapabilities
impl RefUnwindSafe for AgentCapabilities
impl Send for AgentCapabilities
impl Sync for AgentCapabilities
impl Unpin for AgentCapabilities
impl UnsafeUnpin for AgentCapabilities
impl UnwindSafe for AgentCapabilities
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