Skip to content

Commit 43225df

Browse files
🎷 [UPDATE] Stream support added, messages parameters added as model.
1 parent 1f0e6e1 commit 43225df

File tree

2 files changed

+26
-2
lines changed

2 files changed

+26
-2
lines changed
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
//
2+
// ACMChatMessageModel.swift
3+
//
4+
//
5+
// Created by burak on 18.12.2023.
6+
//
7+
8+
import UIKit
9+
10+
public final class ACMChatMessageModel: Codable {
11+
public let role: String?
12+
public let content: String?
13+
14+
public init(from decoder: Decoder) throws {
15+
let container = try decoder.container(keyedBy: CodingKeys.self)
16+
role = try container.decodeIfPresent(String.self, forKey: .role)
17+
content = try container.decodeIfPresent(String.self, forKey: .content)
18+
}
19+
20+
public init(role: String?, content: String?) {
21+
self.role = role
22+
self.content = content
23+
}
24+
}

Sources/ACMOpenAI/Requests/Chat/ACMOAIChatRequest.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ public extension ACMOAIChatRequest {
1111
/// model: required*
1212
public var model: String
1313
/// messages: required*
14-
public var messages: [[String: String]]
14+
public var messages: [ACMChatMessageModel]
1515
/// temperature: optional
1616
public var temperature: Double?
1717
/// top_p: optional
@@ -34,7 +34,7 @@ public extension ACMOAIChatRequest {
3434
public var user: String?
3535

3636
/// Init function for creating request
37-
public init(model: String, messages: [[String: String]], temperature: Double? = nil, top_p: Double? = nil, n: Int? = nil, stream: Bool? = nil, stop: [String]? = nil, max_tokens: Int? = nil, presence_penalty: Double? = nil, frequency_penalty: Double? = nil, logit_bias: [String: Int]? = nil, user: String? = nil) {
37+
public init(model: String, messages: [ACMChatMessageModel], temperature: Double? = nil, top_p: Double? = nil, n: Int? = nil, stream: Bool? = nil, stop: [String]? = nil, max_tokens: Int? = nil, presence_penalty: Double? = nil, frequency_penalty: Double? = nil, logit_bias: [String: Int]? = nil, user: String? = nil) {
3838
self.model = model
3939
self.messages = messages
4040
self.temperature = temperature

0 commit comments

Comments
 (0)