带有文本到语音功能的 ChatGPT 的 Swift 库

SwiftGPTPlus

SwiftGPTPlus 允许你轻松将 OpenAI GPT-3.5 Turbo 模型、GPT-4 模型与“文转语音”功能集成到你的 Swift 应用程序中,以进行自然语言处理任务。

SWIFT

特性

  • 与 OpenAI 的 GPT-3.5 Turbo 模型无缝集成。
  • 易于使用的 Swift API,用于文本生成和处理。
  • 可定制的参数以生成文本。
  • 文本转语音功能(支持 30 种口音)

安装

🚀 SwiftGPTPlus 入门 📦

将 SwiftGPTPlus 集成到你的项目中非常简单!按照以下简单的步骤操作:

📂 拖放框架: 只需拖放即可将 SwiftGPTPlus.framework 添加到你的 Xcode 项目。 🚀 嵌入和签名: 通过为 SwiftGPTPlus.framework 设置“嵌入和签名”嵌入选项,确保无缝集成。 就是这样!你现在可以利用 SwiftGPTPlus 的强大功能来满足你的所有自然语言处理需求。祝你编码愉快!🎉🚀💬

使用

要开始使用 SwiftGPTPlus,请按照以下简单步骤操作:

import SwiftGPTPPlus

如下所示设置你的 ViewController/Class 作为代理:

class ViewController: UIViewController, SwiftGPTPlusDelegate

接下来,为 GPTController 创建一个实例

gptPlus = GPTController(gptAuthKey: "<YOUR_OPEN_AI_AUTH_KEY>",gptOrgKey: "<OPTIONAL YOUR_OPEN_AI_ORG_ID>", gptModel: "<GPT Model gpt3.5-turbo is default>")

启用 TTS

var isSet = gptPlus?.enableSpeech(voice: Voice.Flo,speed: 0.6) // Check available values from Voice enum. If isSet is false, reasons may be voice not available on device, or you sent wrong value for speed (0 to 1)
        //  If you  want to disable speech
        //  gptPlus?.disableSpeech()

为 GPT 设置角色:

gptPlus?.setGPTRole(role: "You are a maths professor!") // Set role for chatGPT

要向 ChatGPT 发送消息,请使用 askAI() 函数(在后台线程而非主线程中调用此函数)

gptPlus?.askAI(message: message)

你将在代理函数中收到回复 func didReceiveValidationError(error: String) ——如果缺少 open ai 授权密钥。 func didReceiveError(error: Error) ——来自 OpenAI 的错误

func didReceiveResponse(message: SwiftGPTPPlus.GPTChatResponse) {
        print(message.choices.first!.message.content) // Response from chatGPT
    }

GPTChatResponse 结构

public struct GPTChatResponse: Codable {
    public let id: String
    public let object: String
    public let created: Int
    public let model: String
    public let choices: [Choice]
    public let usage: Usage
}

public struct Choice: Codable {
    public let index: Int
    public let message: GPTMessage
    public let finish_reason: String
}

public struct GPTMessage: Codable {
    public let role: String
    public let content: String
}

public struct Usage: Codable {
    public let prompt_tokens: Int
    public let completion_tokens: Int
    public let total_tokens: Int
}

贡献

我欢迎社区的贡献。请联系我获取该框架的源代码。

GitHub

点击跳转