Add ToolChoiceType::Required

This commit is contained in:
hansel
2024-07-15 10:12:19 +08:00
parent 357e7927b8
commit f8114a4f0a

View File

@ -10,6 +10,7 @@ use crate::v1::common;
pub enum ToolChoiceType { pub enum ToolChoiceType {
None, None,
Auto, Auto,
Required,
ToolChoice { tool: Tool }, ToolChoice { tool: Tool },
} }
@ -265,6 +266,7 @@ where
match value { match value {
Some(ToolChoiceType::None) => serializer.serialize_str("none"), Some(ToolChoiceType::None) => serializer.serialize_str("none"),
Some(ToolChoiceType::Auto) => serializer.serialize_str("auto"), Some(ToolChoiceType::Auto) => serializer.serialize_str("auto"),
Some(ToolChoiceType::Required) => serializer.serialize_str("required"),
Some(ToolChoiceType::ToolChoice { tool }) => { Some(ToolChoiceType::ToolChoice { tool }) => {
let mut map = serializer.serialize_map(Some(2))?; let mut map = serializer.serialize_map(Some(2))?;
map.serialize_entry("type", &tool.r#type)?; map.serialize_entry("type", &tool.r#type)?;