Apple Intelligence Error Code 1032 求助:流式响应调用触发异常
关于Apple Intelligence Error Code 1032的排查与解决
问题概述
使用Apple Intelligence实现建议功能时,仅在遍历流式响应阶段触发Error Code 1032,错误信息如下:
Domain=FoundationModels.LanguageModelSession.GenerationError Code=-1 "(null)" UserInfo={NSMultipleUnderlyingErrorsKey=( "Error Domain=ModelManagerServices.ModelManagerError Code=1032 \"(null)\" UserInfo={NSMultipleUnderlyingErrorsKey=(\n)}" )}
问题出现在3台测试设备中的2台,已确认Apple Intelligence开启、系统与Siri语言设置一致,且模型可用性检查逻辑正常通过。
可能原因分析
- 流式响应解析失败:使用
@Generable的[ColorChip]类型对部分流式返回内容无法兼容解析,当模型返回的片段不符合预期Schema时触发底层错误。 - 本地模型状态异常:部分设备的Foundation Models缓存或服务状态损坏,导致流式生成过程中模型服务中断。
- Session生命周期问题:
LanguageModelSession实例在遍历响应时被提前释放,引发底层服务调用异常。
解决方案尝试
1. 优化Schema解析容错
改为先接收原始字符串响应,手动处理解析逻辑,避免部分响应解析失败直接抛出异常:
func generateIdeas(name: String, hero: String, creativity: Creativity, numberOfIdeas: Int) throws -> LanguageModelSession.ResponseStream<String> { try self.checkAvailability() let prompt = """ Please generate at least \(numberOfIdeas) unique primary colors in valid JSON array format. User project name: '\(name)' User project pitch: '\(hero)' """ return colorIdeasModelSession.streamResponse(to: prompt, generating: String.self, options: creativity.generationOptions) } // 调用端解析逻辑 @MainActor func generate() async { self.generatingIdeas = [] focusField = nil do { withAnimation(.snappy) { generationStep = .streaming } let ideaStream = try agent.generateIdeas(name: self.projectName, hero: self.projectPitch, creativity: Creativity.allCases.randomElement() ?? .medium, numberOfIdeas: 5) for try await partialResponse in ideaStream { guard let data = partialResponse.content.data(using: .utf8), let colors = try? JSONDecoder().decode([ColorChip].self, from: data) else { continue // 跳过解析失败的片段 } self.generatingIdeas = colors } withAnimation(.snappy) { generationStep = .finished } generationText = "Generate again" }catch { generationStep = .error(error) } }
2. 重置设备本地模型状态
在出现问题的设备上执行以下操作:
- 关闭再重新开启Apple Intelligence(设置 > Siri与搜索 > Apple Intelligence)
- 重启设备,清除Foundation Models临时缓存
- 升级至最新iOS/iPadOS版本(Apple Intelligence相关修复常包含在系统更新中)
3. 强化Session生命周期管理
确保colorIdeasModelSession实例在流式响应遍历期间保持存活:
// 在持有类中声明强引用属性 private let colorIdeasModelSession: LanguageModelSession // 初始化时创建Session,确保生命周期与类实例绑定 init() throws { let config = LanguageModelSession.Configuration(model: .default) self.colorIdeasModelSession = try LanguageModelSession(configuration: config) }
4. 明确Prompt格式要求
在Prompt中指定严格的输出格式,减少解析歧义:
let prompt = """ Generate exactly \(numberOfIdeas) unique primary colors, formatted as a valid JSON array like this: [{"name": "Crimson", "hex": "#DC143C"}, {"name": "RoyalBlue", "hex": "#4169E1"}] User project name: '\(name)' User project pitch: '\(hero)' """
额外建议
在Apple Feedback Assistant反馈中补充以下信息,帮助官方定位问题:
- 出错设备的型号、系统版本
- 可稳定复现错误的操作步骤
- 完整的崩溃调用栈日志
内容的提问来源于stack exchange,提问作者Jon Vogel
相关产品推荐
相关产品推荐

