❎iOS 本地 AI:用 AnyLanguageModel 加 MLX 跑開源模型
AnyLanguageModel 讓 Hugging Face 上的開源 LLM 很容易下載與開始使用,只要三行程式碼就可以呼叫 MLX 框架以及配套工具。我也更新了範例專案,可以直接在 Mac 與 iOS 裝置上試玩。
介紹一些我很愛用的套件
AnyLanguageModel 讓 Hugging Face 上的開源 LLM 很容易下載與開始使用,只要三行程式碼就可以呼叫 MLX 框架以及配套工具。我也更新了範例專案,可以直接在 Mac 與 iOS 裝置上試玩。
Swift Dependencies 的語法設計受到 SwiftUI Environment 啟發,兩者的宣告方式幾乎完全相同。透過互相對照,讓你一次學會兩種機制。
我過去對於推廣使用 Point-Free 的許多套件有所保留,因為使用 Swift Macros 來簡化語法,連帶依賴的 SwiftSyntax 會浪費大量的編譯時間。我甚至為了這個問題而換電腦。幸好自從 Xcode 16.4 以後獲得解決了!
UUID 的隨機性讓測試變得不可預測。透過 Swift Dependencies 的 UUIDGenerator,我們可以在測試時產生遞增的 UUID,確保排序邏輯正確。還會自動識別運作環境,不影響實際 app 運作。
透過 Swift Dependencies 最基本的功能,就做到讓原本無法掌握的系統時間,變得完全可控。讀完肯定讓你躍躍欲試!
Swift Dependencies 是我最常使用的套件。它讓外部條件變成完全可控,解決了測試困難和 SwiftUI Preview 編譯緩慢的問題。使用它以後,我在區分元件職責、設計測試的功力都大幅提升。
今年 iPlayground,我自告奮勇接下了 iOS app 的開發。開發背後的一些小故事,我覺得可以拿出來分享,就寫了這篇文章。
分享一下自己的 EDC──身為 iOS 開發者的日常兼旅行背包,都放了什麼東西。
Swift Tagged 是我幾乎寫每個 iOS App 都會預設使用的 Swift Package。這篇文章會介紹它解決的問題,以及解法背後的思路哲學。
這篇延續 iPlayground 2024 演講內容,深入解說 SwiftUI 的核心觀念「狀態驅動」與 TCA 的單向資料流。為什麼 UIKit 的經驗反而會成為學習阻礙?SwiftUI 的思維轉換關鍵在哪?我畫了圖,也用實例說明,希望幫助你建立正確的心智模型。會員可以留言提問,我會持續補充到你懂為止。
很榮幸能夠在 iPlayground 2024 擔任開場講者,分享「Why SwiftUI? Why TCA?」這個題目。投影片在這裡獨家提供給會員下載參考。如果你對 SwiftUI 與 TCA 有興趣,這份簡報會是很好的切入點。