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

初始化带自定义适配器的SystemLanguageModel时始终返回nil的问题求助

初始化带自定义适配器的SystemLanguageModel时始终返回nil的问题求助

各位好,我最近在FoundationModels框架里尝试用自定义适配器来初始化LanguageModelSession,但卡在了一个问题上——SystemLanguageModel(adapter: adapter)这行代码总是返回nil,导致我只能走后面的降级分支,完全用不了自定义适配器的功能。

先给大家看一下我的代码实现:

do {
    guard let adapterURL = Bundle.main.url(forResource: "my_adapter", withExtension: "fmadapter") else {
        fatalError("Adapter file not found")
    }
    do {
        let adapter = try SystemLanguageModel.Adapter(fileURL: adapterURL)
        let baseModel = SystemLanguageModel(adapter: adapter) // 这里始终返回nil
        session = LanguageModelSession(model: baseModel, instructions: instructions)
    } catch {
        throw NSError(domain: "Can't find my_adapter", code: 0, userInfo: nil)
    }
} catch {
    print("failed to setup adapter", error.localizedDescription)
    session = LanguageModelSession(tools: [], instructions: instructions)
}

我已经做了不少排查工作,但还是没找到问题根源:

  • 分别在iOS 26.0的真机和模拟器上测试过,结果完全一致
  • 确认fmadapter文件确实存在于项目Bundle中,获取到的URL路径是正确的
  • 适配器对象adapter已经成功初始化,没有抛出任何错误
  • 用Python命令测试过这个适配器文件的可用性:python3.11 -m examples.generate --prompt "hello",能正常生成内容,说明适配器本身是没问题的
  • 也检查了Xcode里这个适配器文件的配置,目标membership已经勾选,确保会被打包进Bundle

有没有朋友遇到过类似的情况?或者能给我一些新的排查方向建议?

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.07 07:48:04