pub struct AgentRequirements {
pub required_tags: HashSet<String>,
pub preferred_tags: HashSet<String>,
pub input_types: HashSet<InputType>,
pub output_types: HashSet<OutputType>,
pub requires_streaming: bool,
pub requires_tools: bool,
pub requires_conversation: bool,
pub requires_coordination: bool,
}Expand description
Agent 需求描述
用于查找满足特定需求的 Agent
Fields§
必需的标签
优选的标签 (用于排序)
input_types: HashSet<InputType>必需的输入类型
output_types: HashSet<OutputType>必需的输出类型
requires_streaming: bool是否需要流式输出
requires_tools: bool是否需要工具支持
requires_conversation: bool是否需要多轮对话
requires_coordination: bool是否需要多 Agent 协调
Implementations§
Source§impl AgentRequirements
impl AgentRequirements
Sourcepub fn new() -> AgentRequirements
pub fn new() -> AgentRequirements
创建新的需求描述
Sourcepub fn builder() -> AgentRequirementsBuilder
pub fn builder() -> AgentRequirementsBuilder
创建构建器
Sourcepub fn matches(&self, capabilities: &AgentCapabilities) -> bool
pub fn matches(&self, capabilities: &AgentCapabilities) -> bool
检查给定的能力是否满足需求
Sourcepub fn score(&self, capabilities: &AgentCapabilities) -> f32
pub fn score(&self, capabilities: &AgentCapabilities) -> f32
计算匹配分数 (用于排序)
Trait Implementations§
Source§impl Clone for AgentRequirements
impl Clone for AgentRequirements
Source§fn clone(&self) -> AgentRequirements
fn clone(&self) -> AgentRequirements
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 AgentRequirements
impl Debug for AgentRequirements
Source§impl Default for AgentRequirements
impl Default for AgentRequirements
Source§fn default() -> AgentRequirements
fn default() -> AgentRequirements
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for AgentRequirements
impl<'de> Deserialize<'de> for AgentRequirements
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<AgentRequirements, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<AgentRequirements, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for AgentRequirements
impl Serialize for AgentRequirements
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for AgentRequirements
impl RefUnwindSafe for AgentRequirements
impl Send for AgentRequirements
impl Sync for AgentRequirements
impl Unpin for AgentRequirements
impl UnsafeUnpin for AgentRequirements
impl UnwindSafe for AgentRequirements
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<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 moreSource§impl<T> Message for T
impl<T> Message for T
Source§fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
fn from_boxed(m: BoxedMessage) -> Result<Self, BoxedDowncastErr>
Convert a BoxedMessage to this concrete type
Source§fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
fn box_message(self, pid: &ActorId) -> Result<BoxedMessage, BoxedDowncastErr>
Convert this message to a BoxedMessage