SwiftOpenAI v3.9.9
OpenRouter

OpenRouter provides an OpenAI-compatible completion API to 314 models & providers that you can call directly, or using the OpenAI SDK. Additionally, some third-party SDKs are available.
// Creating the service
let apiKey = "your_api_key"
let servcie = OpenAIServiceFactory.service(apiKey: apiKey,
overrideBaseURL: "https://openrouter.ai",
proxyPath: "api",
extraHeaders: [
"HTTP-Referer": "<YOUR_SITE_URL>", // Optional. Site URL for rankings on openrouter.ai.
"X-Title": "<YOUR_SITE_NAME>" // Optional. Site title for rankings on openrouter.ai.
])
// Making a request
let prompt = "What is the Manhattan project?"
let parameters = ChatCompletionParameters(messages: [.init(role: .user, content: .text(prompt))], model: .custom("deepseek/deepseek-r1:free"))
let stream = service.startStreamedChat(parameters: parameters)
For more inofrmation about the OpenRouter
api visit its documentation.
DeepSeek
The DeepSeek API uses an API format compatible with OpenAI. By modifying the configuration, you can use SwiftOpenAI to access the DeepSeek API.
// Creating the service
let apiKey = "your_api_key"
let service = OpenAIServiceFactory.service(
apiKey: apiKey,
overrideBaseURL: "https://api.deepseek.com")
// Making a request
let prompt = "What is the Manhattan project?"
let parameters = ChatCompletionParameters(messages: [.init(role: .user, content: .text(prompt))], model: .custom("deepseek-reasoner"))
let stream = service.startStreamedChat(parameters: parameters)
For more inofrmation about the DeepSeek
api visit its documentation.