Back to blog
    LLM 真的能在 iPhone 上運行嗎?效能基準與實際表現
    iPhonebenchmarkson-device AIllama.cppiOSperformancesegment:mobile-builder

    LLM 真的能在 iPhone 上運行嗎?效能基準與實際表現

    透過 llama.cpp 在 iPhone 上運行 LLM 的真實基準資料。從 iPhone 12 到 iPhone 16 Pro 各機型的 token 生成速度、記憶體使用量和溫度表現。

    EErtas Team·

    可以。現代 iPhone 以對話級速度運行 1-3B 參數的語言模型。A 系列晶片結合 llama.cpp 中的 Metal GPU 加速,根據模型和裝置的不同,可提供每秒 15-45 個 token。

    這不是技術示範。這是可用於生產的效能,適用於真實的行動 AI 功能。

    硬體規格

    自 iPhone 12(A14,2020 年)以來的每一款 iPhone 都擁有足夠的運算能力和記憶體來運行小型語言模型。關鍵規格:

    iPhone晶片RAM神經網路引擎GPU 核心
    iPhone 12A144GB16 核4 核
    iPhone 13A154GB16 核4/5 核
    iPhone 14A15/A166GB16 核5 核
    iPhone 14 ProA166GB16 核5 核
    iPhone 15A166GB16 核5 核
    iPhone 15 ProA17 Pro8GB16 核6 核
    iPhone 16A188GB16 核5 核
    iPhone 16 ProA18 Pro8GB16 核6 核

    關鍵數字是 RAM。模型必須能夠放入可用記憶體中(總 RAM 減去 iOS 和其他程序使用的部分)。實際上:

    • 4GB 裝置(iPhone 12/13):僅限 1B 模型,記憶體很緊張
    • 6GB 裝置(iPhone 14/15):1B 很舒適,3B 在 Q4 量化下可行
    • 8GB 裝置(iPhone 15 Pro/16):1B 和 3B 都很舒適,7B 在積極量化下可行

    基準測試結果

    所有基準測試使用 llama.cpp 搭配 Metal GPU 加速。模型為 GGUF 格式,使用 Q4_K_M 量化(除非另有說明)。測試在 2048 上下文長度下運行。每秒 token 數在生成階段測量(不包含提示詞處理)。

    1B 參數模型(約 600MB GGUF Q4)

    裝置Token/秒首個 Token 時間記憶體使用量
    iPhone 16 Pro (A18 Pro)40-5080-120ms~800MB
    iPhone 15 Pro (A17 Pro)35-45100-150ms~800MB
    iPhone 15 (A16)28-35120-180ms~800MB
    iPhone 14 (A15)25-32130-200ms~800MB
    iPhone 13 (A15)22-28150-220ms~800MB
    iPhone 12 (A14)18-24180-250ms~800MB

    過去 4 年以上的每一款 iPhone 都能以足夠快的速度運行 1B 模型進行即時聊天。即使 iPhone 12 的 18-24 tok/s 也比大多數人的閱讀速度更快。

    3B 參數模型(約 1.7GB GGUF Q4)

    裝置Token/秒首個 Token 時間記憶體使用量
    iPhone 16 Pro (A18 Pro)22-28150-250ms~2.2GB
    iPhone 15 Pro (A17 Pro)18-25180-300ms~2.2GB
    iPhone 15 (A16)14-18250-400ms~2.2GB
    iPhone 14 (A16)14-18250-400ms~2.2GB
    iPhone 13 (A15)10-14350-500ms~2.2GB
    iPhone 12 (A14)不建議N/A超出安全記憶體

    3B 模型在 6GB 以上裝置上運行良好。iPhone 15 Pro 和 16 系列表現出色。iPhone 13 可用但處於較低端。iPhone 12 的 4GB RAM 對於生產環境中的 3B 模型太過緊張。

    7B 參數模型(約 4GB GGUF Q4)

    裝置Token/秒首個 Token 時間記憶體使用量
    iPhone 16 Pro (A18 Pro)8-12500-800ms~5GB
    iPhone 15 Pro (A17 Pro)6-10600-1,000ms~5GB
    所有其他 iPhone不可行N/A超出可用記憶體

    7B 模型僅在 8GB Pro 裝置上可行,且仍然推高記憶體限制。對行動應用程式來說,1-3B 是實用範圍。

    這些數字對 UX 的意義

    每秒 20 token 以上: 文字看起來流暢地串流。使用者感覺回應是「即時」的。適合聊天、自動完成和智慧建議。

    10-20 tok/s: 文字在生成時可讀。有輕微的打字速度感。大多數功能都可接受。

    5-10 tok/s: 明顯緩慢。使用者可以看到單個字詞逐一出現。對摘要可接受(使用者預期等待),但不適合聊天。

    低於 5 tok/s: 對互動功能來說太慢。使用者會放棄。

    對於大多數行動 AI 功能,瞄準 1B 模型以獲得廣泛裝置支援,或瞄準 3B 模型支援 iPhone 14 以上機型,能在品質和效能之間取得最佳平衡。

    溫度表現

    持續推理會產生熱量。在 iPhone 上,熱節流可能在長時間使用(持續生成 5 分鐘以上)期間將效能降低 20-30%。

    實際影響:

    • 短互動(1-3 輪):無熱影響
    • 中等工作階段(5-10 輪):後續輪次的效能略有下降
    • 長時間生成(摘要長文件):第一分鐘後預計速度慢 20-30%

    緩解措施:在生成之間加入短暫暫停。即使 2-3 秒的閒置時間也能讓晶片稍微冷卻。對於批次處理任務,分段處理而非一次持續生成。

    記憶體壓力

    iOS 會積極回收背景應用程式的記憶體。當你的模型載入時(800MB-2.2GB 在 RAM 中),iOS 可能會終止背景應用程式,在極端情況下,如果系統記憶體壓力過大,甚至終止你自己的應用程式。

    最佳實踐:

    • 僅在 AI 功能啟用時載入模型
    • 使用者離開時釋放模型記憶體
    • 處理 didReceiveMemoryWarning 卸載模型
    • 載入前檢查可用記憶體:os_proc_available_memory()

    對開發者的意義

    基準資料支持一個清晰的策略:

    1. 以 1B 模型為目標以獲得廣泛相容性。 iPhone 12 以上的每一款機型都能良好運行。這涵蓋了 95% 以上的在用 iPhone。

    2. 在較新裝置上使用 3B 模型以提升品質敏感功能。 iPhone 14+(6GB RAM)可以舒適地處理 3B 模型。在運行時偵測可用 RAM 並提供適當的模型。

    3. 行動裝置跳過 7B。 裝置覆蓋範圍太窄,記憶體壓力太高。如果你需要 7B 品質,在你的領域資料上微調 3B 模型。經過微調的 3B 在特定任務上通常優於通用 7B。

    4. 微調你的領域。 經過微調的 1B 模型在領域特定任務上優於透過提示詞使用的 3B 模型,同時運行速度快 2 倍。像 Ertas 這樣的平台處理完整的流程:上傳訓練資料、使用 LoRA 微調、匯出 GGUF、部署到裝置端。

    硬體已經就緒。推理引擎(llama.cpp 搭配 Metal)已經成熟。剩下的步驟就是將正確的模型放到裝置上。

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Ship AI that runs on your users' devices.

    Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.

    Keep reading