mirror of
https://github.com/hanzoai/swift-sdk.git
synced 2026-10-30 18:20:19 +00:00
288 of hanzoai/ai's 294 operations now declare a response, against 1 before. GET /v1/models, POST /v1/chat/completions, /v1/embeddings, /v1/messages — every address a client actually calls — used to reach this client untyped, because cloud's relay carried an operation's sentence and dropped the shapes it named. It carries both now. Fleet-wide the document goes from 69% to 81% of operations declaring what comes back, which is where the ~208 new models here come from.
62 lines
2.3 KiB
Swift
62 lines
2.3 KiB
Swift
//
|
|
// OpenaiChatCompletionMessage.swift
|
|
//
|
|
// Generated by openapi-generator
|
|
// https://openapi-generator.tech
|
|
//
|
|
|
|
import Foundation
|
|
|
|
public struct OpenaiChatCompletionMessage: Sendable, Codable, ParameterConvertible, Hashable {
|
|
|
|
public var multiContent: [OpenaiChatMessagePart]?
|
|
public var content: String?
|
|
public var functionCall: OpenaiFunctionCall?
|
|
public var name: String?
|
|
public var reasoningContent: String?
|
|
public var refusal: String?
|
|
public var role: String?
|
|
public var toolCallId: String?
|
|
public var toolCalls: [OpenaiToolCall]?
|
|
|
|
public init(multiContent: [OpenaiChatMessagePart]? = nil, content: String? = nil, functionCall: OpenaiFunctionCall? = nil, name: String? = nil, reasoningContent: String? = nil, refusal: String? = nil, role: String? = nil, toolCallId: String? = nil, toolCalls: [OpenaiToolCall]? = nil) {
|
|
self.multiContent = multiContent
|
|
self.content = content
|
|
self.functionCall = functionCall
|
|
self.name = name
|
|
self.reasoningContent = reasoningContent
|
|
self.refusal = refusal
|
|
self.role = role
|
|
self.toolCallId = toolCallId
|
|
self.toolCalls = toolCalls
|
|
}
|
|
|
|
public enum CodingKeys: String, CodingKey, CaseIterable {
|
|
case multiContent = "MultiContent"
|
|
case content
|
|
case functionCall = "function_call"
|
|
case name
|
|
case reasoningContent = "reasoning_content"
|
|
case refusal
|
|
case role
|
|
case toolCallId = "tool_call_id"
|
|
case toolCalls = "tool_calls"
|
|
}
|
|
|
|
// Encodable protocol methods
|
|
|
|
public func encode(to encoder: Encoder) throws {
|
|
var container = encoder.container(keyedBy: CodingKeys.self)
|
|
try container.encodeIfPresent(multiContent, forKey: .multiContent)
|
|
try container.encodeIfPresent(content, forKey: .content)
|
|
try container.encodeIfPresent(functionCall, forKey: .functionCall)
|
|
try container.encodeIfPresent(name, forKey: .name)
|
|
try container.encodeIfPresent(reasoningContent, forKey: .reasoningContent)
|
|
try container.encodeIfPresent(refusal, forKey: .refusal)
|
|
try container.encodeIfPresent(role, forKey: .role)
|
|
try container.encodeIfPresent(toolCallId, forKey: .toolCallId)
|
|
try container.encodeIfPresent(toolCalls, forKey: .toolCalls)
|
|
}
|
|
}
|
|
|