ChatGPTSwift
Access ChatGPT “Official” API from Swift. Works on all Apple platforms.
Supported Platforms
- iOS/tvOS 15 and above
- macOS 12 and above
- watchOS 8 and above
Requirement
Register for API key from OpenAPI. Initialize with api key
let api = ChatGPTAPI(apiKey: "API_KEY")
Usage
There are 2 APIs: stream and normal
Stream
The server will stream data one by one until complete, the method AsyncThrowingStream
which you can loop using For-Loop like so:
Task {
do {
let stream = try await api.sendMessageStream(text: "What is ChatGPT?")
for try await line in stream {
print(line)
}
} catch {
print(error.localizedDescription)
}
}
Normal
A normal HTTP request and response lifecycle. Server will send the complete text (it will take more time to response)
Task {
do {
let response = try await api.sendMessage(text: "What is ChatGPT?")
print(response)
} catch {
print(error.localizedDescription)
}
}