File tree Expand file tree Collapse file tree 1 file changed +9
-6
lines changed
Sources/OpenAI/Public/Parameters/Chat Expand file tree Collapse file tree 1 file changed +9
-6
lines changed Original file line number Diff line number Diff line change @@ -208,13 +208,17 @@ public struct ChatCompletionParameters: Encodable {
208208 public enum ToolChoice : Encodable , Equatable {
209209 case none
210210 case auto
211- case function( type: String ? , name: String )
211+ case function( type: String = " function " , name: String )
212212
213213 enum CodingKeys : String , CodingKey {
214214 case none = " none "
215215 case auto = " auto "
216- case name = " name "
217216 case type = " type "
217+ case function = " function "
218+ }
219+
220+ enum FunctionCodingKeys : String , CodingKey {
221+ case name = " name "
218222 }
219223
220224 public func encode( to encoder: Encoder ) throws {
@@ -227,10 +231,9 @@ public struct ChatCompletionParameters: Encodable {
227231 try container. encode ( CodingKeys . auto. rawValue)
228232 case . function( let type, let name) :
229233 var container = encoder. container ( keyedBy: CodingKeys . self)
230- try container. encode ( name, forKey: . name)
231- if let type {
232- try container. encode ( type, forKey: . type)
233- }
234+ try container. encode ( type, forKey: . type)
235+ var functionContainer = container. nestedContainer ( keyedBy: FunctionCodingKeys . self, forKey: . function)
236+ try functionContainer. encode ( name, forKey: . name)
234237 }
235238 }
236239 }
You can’t perform that action at this time.
0 commit comments