You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用OpenAISwift调用ChatGPT API无响应问题求助

解决办法
  • 用对聊天模型的调用接口
    GPT-3.5 Turbo这类聊天模型不能用sendCompletion(这是给文本补全模型设计的接口),必须使用sendChat方法适配聊天模型的调用逻辑。修改你的ask方法如下:

    func ask(text: String) async {
        isLoading = true
        do {
            guard let client = client else {
                recievedError = true
                respnse = "客户端初始化失败"
                isLoading = false
                return
            }
            // 构造聊天消息,指定用户角色
            let chatMessages = [ChatMessage(role: .user, content: text)]
            let chatResult = try await client.sendChat(
                with: chatMessages,
                model: .chat(.gpt3_5Turbo),
                maxTokens: 200
            )
            // 提取聊天模型返回的回复内容
            self.respnse = chatResult.choices?.first?.message.content.trimmingCharacters(in: .newlines) ?? "无有效响应"
        } catch let error as OpenAIError {
            // 打印OpenAI返回的具体错误信息,方便排查根源
            print("OpenAI错误详情: \(error.localizedDescription), 错误码: \(error.code ?? "未知")")
            recievedError = true
            respnse = "请求失败: \(error.localizedDescription)"
        } catch {
            print("其他错误: \(error)")
            recievedError = true
            respnse = "请求失败"
        }
        isLoading = false
    }
    
  • 确认模型枚举对应正确的可用模型
    OpenAISwift的.chat枚举要匹配OpenAI当前支持的模型:

    • GPT-3.5 Turbo对应.chat(.gpt3_5Turbo)(模型ID为gpt-3.5-turbo)
    • 若不确定枚举映射关系,可以直接传入模型ID字符串:
      model: .custom("gpt-3.5-turbo")
      

    避免使用已被OpenAI停用的模型标识。

  • 校验客户端初始化状态
    在init或ask方法中检查client是否初始化成功,防止因client为nil导致无响应:

    init() {
        let apiKey = "sk-*******"
        guard !apiKey.isEmpty else {
            print("API密钥未配置")
            return
        }
        client = OpenAISwift(config: .makeDefaultOpenAI(apiKey: apiKey))
    }
    
  • 打印完整错误信息
    不要只打印error.localizedDescription,捕获OpenAIError类型能获取API返回的具体错误(比如权限不足、模型不存在、请求格式错误等),这是快速定位问题的核心手段。

  • 检查网络环境
    确保设备能正常访问OpenAI API,部分地区需要配置代理,同时排查防火墙或网络设置是否拦截了请求。

内容的提问来源于stack exchange,提问作者Mc.Lover

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 01:27:36