pub struct AgentContext {
pub input: AgentInput,
pub messages: Vec<ChatMessage>,
pub tool_results: Vec<ToolResult>,
pub step: usize,
pub max_steps: usize,
}Expand description
Agent 上下文。
包含 Agent 思考所需的所有信息。
Fields§
§input: AgentInput用户原始输入。
messages: Vec<ChatMessage>对话历史。
tool_results: Vec<ToolResult>工具调用结果。
step: usize当前步骤数。
max_steps: usize最大步骤数。
Implementations§
Source§impl AgentContext
impl AgentContext
Sourcepub fn new(input: AgentInput, max_steps: usize) -> Self
pub fn new(input: AgentInput, max_steps: usize) -> Self
创建新的上下文。
Sourcepub fn add_message(&mut self, message: ChatMessage)
pub fn add_message(&mut self, message: ChatMessage)
添加消息到历史。
Sourcepub fn add_tool_result(&mut self, tool_name: String, result: Value)
pub fn add_tool_result(&mut self, tool_name: String, result: Value)
添加工具调用结果。
Sourcepub fn default_chat_request(&self) -> ChatRequest
pub fn default_chat_request(&self) -> ChatRequest
创建默认的对话请求。
所有 LLM 参数(temperature 等)默认为 None,使用模型默认值。
可通过 default_chat_request_with() 传入自定义参数。
Sourcepub fn default_chat_request_with(&self, params: &LlmParams) -> ChatRequest
pub fn default_chat_request_with(&self, params: &LlmParams) -> ChatRequest
创建带 LLM 参数的对话请求。
Trait Implementations§
Source§impl Clone for AgentContext
impl Clone for AgentContext
Source§fn clone(&self) -> AgentContext
fn clone(&self) -> AgentContext
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for AgentContext
impl RefUnwindSafe for AgentContext
impl Send for AgentContext
impl Sync for AgentContext
impl Unpin for AgentContext
impl UnsafeUnpin for AgentContext
impl UnwindSafe for AgentContext
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