pub struct AgentConfig {
pub name: String,
pub model: String,
pub preamble: String,
pub temperature: Option<f64>,
pub max_tokens: Option<u64>,
pub extra_params: Option<Value>,
pub tool_policy: RiskyToolPolicy,
pub max_history_messages: usize,
pub max_tool_output_chars: usize,
pub json_mode: bool,
pub persona: Option<Persona>,
pub role: AgentRole,
}Expand description
Configuration for an Agent
Fields§
§name: StringName of the agent (for logging/identity)
model: StringModel to use (provider specific string)
preamble: StringSystem prompt / Preamble
temperature: Option<f64>Temperature for generation
max_tokens: Option<u64>Max tokens to generate
extra_params: Option<Value>Additional provider-specific parameters
tool_policy: RiskyToolPolicyPolicy for risky tools
max_history_messages: usizeMax history messages to send to LLM (Sliding window)
max_tool_output_chars: usizeMax characters allowed in tool output before truncation
json_mode: boolEnable strict JSON mode (response_format: json_object)
persona: Option<Persona>Optional personality profile
role: AgentRoleRole of the agent in a multi-agent system
Trait Implementations§
Source§impl Clone for AgentConfig
impl Clone for AgentConfig
Source§fn clone(&self) -> AgentConfig
fn clone(&self) -> AgentConfig
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 AgentConfig
impl Debug for AgentConfig
Auto Trait Implementations§
impl Freeze for AgentConfig
impl RefUnwindSafe for AgentConfig
impl Send for AgentConfig
impl Sync for AgentConfig
impl Unpin for AgentConfig
impl UnwindSafe for AgentConfig
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::RequestSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request