Skip to content

Commit 75b8f09

Browse files
Merge pull request #126 from jamesrochabrun/jroch-reasoning-model-config
Adding configuration instruction to READ.me
2 parents 8bb0ffc + db0e697 commit 75b8f09

File tree

3 files changed

+17
-1
lines changed

3 files changed

+17
-1
lines changed

README.md

+14
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,20 @@ let oganizationID = "your_organixation_id"
133133
let service = OpenAIServiceFactory.service(apiKey: apiKey, organizationID: oganizationID)
134134
```
135135

136+
https://developer.apple.com/documentation/foundation/nsurlsessionconfiguration/1408259-timeoutintervalforrequest
137+
138+
For reasoning models, ensure that you extend the timeoutIntervalForRequest in the URL session configuration to a higher value. The default is 60 seconds, which may be insufficient, as requests to reasoning models can take longer to process and respond.
139+
140+
To configure it:
141+
142+
```swift
143+
let apiKey = "your_openai_api_key_here"
144+
let organizationID = "your_organization_id"
145+
let configuration = URLSessionConfiguration.default
146+
configuration.timeoutIntervalForRequest = 360 // e.g., 360 seconds or more.
147+
let service = OpenAIServiceFactory.service(apiKey: apiKey, organizationID: organizationID, configuration: configuration)
148+
```
149+
136150
That's all you need to begin accessing the full range of OpenAI endpoints.
137151

138152
### How to get the status code of network errors

Sources/OpenAI/Public/Service/DefaultOpenAIService.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ struct DefaultOpenAIService: OpenAIService {
3232
proxyPath: String? = nil,
3333
overrideVersion: String? = nil,
3434
extraHeaders: [String: String]? = nil,
35-
configuration: URLSessionConfiguration = .default,
35+
configuration: URLSessionConfiguration,
3636
decoder: JSONDecoder = .init(),
3737
debugEnabled: Bool)
3838
{

Sources/OpenAI/Public/Service/OpenAIServiceFactory.swift

+2
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,7 @@ public class OpenAIServiceFactory {
140140
public static func service(
141141
apiKey: String,
142142
overrideBaseURL: String,
143+
configuration: URLSessionConfiguration = .default,
143144
proxyPath: String? = nil,
144145
overrideVersion: String? = nil,
145146
extraHeaders: [String: String]? = nil,
@@ -152,6 +153,7 @@ public class OpenAIServiceFactory {
152153
proxyPath: proxyPath,
153154
overrideVersion: overrideVersion,
154155
extraHeaders: extraHeaders,
156+
configuration: configuration,
155157
debugEnabled: debugEnabled)
156158
}
157159
}

0 commit comments

Comments
 (0)