用途:在 iOS 26+ 应用中集成 Apple 设备端语言模型,实现隐私保护、可离线运行的 AI 功能,如文本生成与摘要、从自然语言提取结构化数据、自定义工具调用以及流式 UI 更新。
主要能力:使用 SystemLanguageModel.default 检查模型可用性;用 LanguageModelSession 进行单轮或多轮对话,并通过 instructions 设定角色、任务、风格与安全策略;用 @Generable 与 @Guide 生成结构化 Swift 类型,支持 .range、.count 等约束;通过 Tool 协议定义工具并让模型调用;用 streamResponse 与 PartiallyGenerated 类型实现快照流式输出,便于 SwiftUI 实时展示。
使用方式:先检查 model.availability 并处理 deviceNotEligible、appleIntelligenceNotEnabled、modelNotReady 等不可用情况;创建会话后调用 respond(to:) 获取结果,结果通过 response.content 访问;结构化生成时传入 generating: 类型;工具调用时在会话中传入 tools 数组,并捕获 ToolCallError;流式场景遍历异步序列更新状态。
适用场景:隐私敏感型应用、离线 AI 功能、表单或命令的自然语言结构化提取、需要逐步展示生成内容的界面,以及搜索、计算、查询等领域特定动作。
限制:设备端模型上下文窗口为 4,096 token,且覆盖 instructions、prompt 与输出总和,大输入需分块;单个会话一次只能处理一个请求,需检查 isResponding,并发场景应创建多个会话;模型可用性受设备资格与系统设置影响,不能假定始终可用;应使用 response.content 而非 .output;避免用原始字符串解析替代 @Generable,也不要把复杂多步逻辑塞进单个提示。官方未提供收费、价格或平台支持范围等更多信息。