pub enum Step {
Show 17 variants
UserInput {
content: Vec<InteractionContent>,
},
ModelOutput {
content: Vec<InteractionContent>,
error: Option<Status>,
},
Thought {
signature: Option<String>,
summary: Vec<ThoughtSummaryContent>,
},
FunctionCall {
name: String,
arguments: Value,
id: String,
},
FunctionResult {
name: Option<String>,
call_id: String,
result: StepResult,
is_error: Option<bool>,
},
CodeExecutionCall {
arguments: CodeExecutionCallArguments,
id: String,
signature: Option<String>,
},
CodeExecutionResult {
result: String,
call_id: String,
is_error: Option<bool>,
signature: Option<String>,
},
UrlContextCall {
id: String,
signature: Option<String>,
arguments: UrlContextCallArguments,
},
UrlContextResult {
result: UrlContextResultData,
is_error: Option<bool>,
call_id: String,
signature: Option<String>,
},
GoogleSearchCall {
arguments: GoogleSearchCallArguments,
search_type: Option<GoogleSearchType>,
id: String,
signature: Option<String>,
},
GoogleSearchResult {
result: GoogleSearchResultItem,
is_error: Option<bool>,
call_id: String,
signature: Option<String>,
},
GoogleMapsCall {
arguments: Option<GoogleMapsCallArguments>,
id: String,
signature: Option<String>,
},
GoogleMapsResult {
result: GoogleMapsResultItem,
call_id: String,
signature: Option<String>,
},
FileSearchCall {
id: String,
signature: Option<String>,
},
FileSearchResult {
citations: Vec<Annotation>,
call_id: String,
signature: Option<String>,
},
McpServerToolCall {
name: String,
server_name: String,
arguments: Value,
id: String,
},
McpServerToolResult {
name: Option<String>,
server_name: Option<String>,
call_id: String,
result: StepResult,
},
}Expand description
A single step in an interaction — type-tagged polymorphic.
Each step represents a typed action in the interaction history: user input, model output, thoughts, function calls, tool invocations, etc.
Variants§
UserInput
Fields
§
content: Vec<InteractionContent>ModelOutput
Thought
FunctionCall
FunctionResult
CodeExecutionCall
CodeExecutionResult
UrlContextCall
UrlContextResult
Fields
§
result: UrlContextResultDataGoogleSearchCall
GoogleSearchResult
Fields
§
result: GoogleSearchResultItemGoogleMapsCall
GoogleMapsResult
FileSearchCall
FileSearchResult
McpServerToolCall
McpServerToolResult
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Step
impl<'de> Deserialize<'de> for Step
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
impl StructuralPartialEq for Step
Auto Trait Implementations§
impl Freeze for Step
impl RefUnwindSafe for Step
impl Send for Step
impl Sync for Step
impl Unpin for Step
impl UnsafeUnpin for Step
impl UnwindSafe for Step
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