objectiveai_sdk/agent/completions/message/
assistant_message_log.rs1use schemars::JsonSchema;
9use serde::{Deserialize, Serialize};
10
11use super::RichContentLog;
12use crate::logs::LogReference;
13
14#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
15#[schemars(rename = "agent.completions.message.AssistantMessageLog")]
16pub struct AssistantMessageLog {
17 #[serde(skip_serializing_if = "Option::is_none")]
18 #[schemars(extend("omitempty" = true))]
19 pub content: Option<RichContentLog>,
20 #[serde(skip_serializing_if = "Option::is_none")]
21 #[schemars(extend("omitempty" = true))]
22 pub name: Option<String>,
23 #[serde(skip_serializing_if = "Option::is_none")]
24 #[schemars(extend("omitempty" = true))]
25 pub refusal: Option<LogReference>,
26 #[serde(skip_serializing_if = "Option::is_none")]
27 #[schemars(extend("omitempty" = true))]
28 pub tool_calls: Option<Vec<LogReference>>,
29 #[serde(skip_serializing_if = "Option::is_none")]
30 #[schemars(extend("omitempty" = true))]
31 pub reasoning: Option<LogReference>,
32}