@@ -57,53 +57,13 @@ pub struct AssistantObject {
5757 pub model : String ,
5858 #[ serde( skip_serializing_if = "Option::is_none" ) ]
5959 pub instructions : Option < String > ,
60- pub tools : Vec < Tools > ,
60+ pub tools : Vec < types :: Tools > ,
6161 #[ serde( skip_serializing_if = "Option::is_none" ) ]
6262 pub tool_resources : Option < ToolResource > ,
6363 pub metadata : Option < HashMap < String , String > > ,
6464 pub headers : Option < HashMap < String , String > > ,
6565}
6666
67- #[ derive( Debug , Deserialize , Serialize , Clone ) ]
68- #[ serde( tag = "type" ) ]
69- #[ serde( rename_all = "snake_case" ) ]
70- pub enum Tools {
71- CodeInterpreter ,
72- FileSearch ( ToolsFileSearch ) ,
73- Function ( ToolsFunction ) ,
74- }
75-
76- #[ derive( Debug , Deserialize , Serialize , Clone ) ]
77- pub struct ToolsFileSearch {
78- #[ serde( skip_serializing_if = "Option::is_none" ) ]
79- pub file_search : Option < ToolsFileSearchObject > ,
80- }
81-
82- #[ derive( Debug , Deserialize , Serialize , Clone ) ]
83- pub struct ToolsFunction {
84- pub function : types:: Function ,
85- }
86-
87- #[ derive( Debug , Deserialize , Serialize , Clone ) ]
88- pub struct ToolsFileSearchObject {
89- pub max_num_results : Option < u8 > ,
90- pub ranking_options : Option < FileSearchRankingOptions > ,
91- }
92-
93- #[ derive( Debug , Deserialize , Serialize , Clone ) ]
94- pub struct FileSearchRankingOptions {
95- pub ranker : Option < FileSearchRanker > ,
96- pub score_threshold : Option < f32 > ,
97- }
98-
99- #[ derive( Debug , Deserialize , Serialize , Clone ) ]
100- pub enum FileSearchRanker {
101- #[ serde( rename = "auto" ) ]
102- Auto ,
103- #[ serde( rename = "default_2024_08_21" ) ]
104- Default2024_08_21 ,
105- }
106-
10767#[ derive( Debug , Deserialize , Serialize , Clone ) ]
10868pub struct ToolResource {
10969 #[ serde( skip_serializing_if = "Option::is_none" ) ]
0 commit comments