From b666bc0cdc4a712f52137bacb0ffcfa9b7ab0500 Mon Sep 17 00:00:00 2001 From: OnlyFerris <153568011+OnlyFerris@users.noreply.github.com> Date: Thu, 4 Jan 2024 14:02:28 +0000 Subject: [PATCH] Make fields of Tool public. Rename a field. --- src/v1/chat_completion.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/v1/chat_completion.rs b/src/v1/chat_completion.rs index 1592bbc..ce23c08 100644 --- a/src/v1/chat_completion.rs +++ b/src/v1/chat_completion.rs @@ -263,7 +263,7 @@ where Some(ToolChoiceType::Auto) => serializer.serialize_str("auto"), Some(ToolChoiceType::ToolChoice { tool }) => { let mut map = serializer.serialize_map(Some(2))?; - map.serialize_entry("type", &tool.tool_type)?; + map.serialize_entry("type", &tool.r#type)?; map.serialize_entry("function", &tool.function)?; map.end() } @@ -273,7 +273,12 @@ where #[derive(Debug, Serialize, Deserialize, Clone)] pub struct Tool { - #[serde(rename = "type")] - tool_type: String, - function: Function, + pub r#type: ToolType, + pub function: Function, +} + +#[derive(Debug, Serialize, Deserialize, Copy, Clone)] +#[serde(rename_all = "snake_case")] +pub enum ToolType { + Function, }