FastVLM|理解工作原理及使用用法
了解 Apple 最新开源的 FastVLM 视觉模型,并在 Xcode 项目中使用它。

两个核心文件
两个核心文件:
- FastVLM
- FastVLMModel
这个 FastVLMModel
文件本质上是一个 ViewModel,封装了对底层 FastVLM 模型的所有访问:
- 处理模型加载和初始化
- 管理模型运行状态
- 协调异步操作
- 处理输入输出转换
FastVLMModel 作为中间层,将复杂的 VLM 模型操作简化为几个简单的 API (load/generate/cancel),同时提供了状态属性(running/output/evaluationState 等)让 UI 层可以轻松使用。
我将 FastVLMModel
重命名为 FastVLMViewModel
,以便更好的集成到项目中。
FastVLMViewModel 文件
MLX-Libraries 库
在初始化方法中,FastVLM.register 注册了一个 modelFactory 参数。

进一步查看,发现它是一个 ModelFactory 类,是属于 mlx-libraries 库的一部分:

所以,在上面这部分代码中,FastVLM 注册了 VLMModelFactory,这是一个工厂类,负责创建和管理视觉语言模型的实例。