Dino Geek, probeer je te helpen

Hoe verbinding maken met ChatGPT API met Swift?


Je kunt de OpenAI’s ChatGPT API gebruiken in Swift door het volgende proces te volgen. Let op dat je een geldige API-sleutel moet hebben om deze te gebruiken.

```
import Foundation

struct Message: Codable { let role: String let content: String
}

struct OpenAIAPIRequestData: Codable { let model: String let messages: [Message]
}

struct OpenAIAPIResponseData: Codable { let id: String? let object: String? let created: Int? let model: String? let choices: [Choice?]
}

struct Choice: Codable { var message: Message? var finish_reason: String?
}

// Deze functie stuurt verzoek naar OpenAI API en ontvangt het antwoord
func getGPT3Response(prompt: String, completion: @escaping (String) -> Void){

let url = URL! var request = URLRequest(url: url) request.httpMethod = “POST” request.addValue(“Bearer YOUR_OPEN_AI_KEY”, forHTTPHeaderField: “Authorization”) request.addValue(“application/json”, forHTTPHeaderField: “Content-Type”) let message1 = Message(role: “system”, content: “Je bent een behulpzame assistent.”) let message2 = Message(role: “user”, content: prompt) let requestData = OpenAIAPIRequestData(model: “text-davinci-003”, messages: [message1, message2]) let jsonEncoder = JSONEncoder() let jsonData = try! jsonEncoder.encode(requestData) request.httpBody = jsonData let task = URLSession.shared.dataTask(with: request) { (data, response, error) in if let error = error { print(“Error: \(error)”) completion(“Er is een fout opgetreden.”) } else if let data = data { let str = String(data: data, encoding: .utf8) print(“Received data:\n\(str!)”) let jsonDecoder = JSONDecoder() let response = try! jsonDecoder.decode(OpenAIAPIResponseData.self, from: data) DispatchQueue.main.async { if let message = response.choices?0?.message { completion(message.content) } } } } task.resume() } ``` Verander “YOUR_OPEN_AI\_KEY” naar jouw OpenAI sleutel.

Let op: deze code is een basisvoorbeeld en bevat geen uitvoerige foutcontroles en exception handling die nodig kunnen zijn voor productiecode.

Verder is het belangrijk om te weten dat netwerkinteractie vaak asynchrone of “future”-gebaseerde programmeermodellen gebruikt om te voorkomen dat de UI thread wordt geblokkeerd. In dit voorbeeld gebruiken we het `URLSession.shared.dataTask(with:completion:)` API om dit asynchrone gedrag te bereiken.


Genereer eenvoudig artikelen om uw SEO te optimaliseren
Genereer eenvoudig artikelen om uw SEO te optimaliseren





DinoGeek biedt eenvoudige artikelen over complexe technologieën

Wilt u in dit artikel worden geciteerd? Het is heel eenvoudig, neem contact met ons op via dino@eiki.fr

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Domeinnaam | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Juridische Vermelding / Algemene Gebruiksvoorwaarden