OA0
OA0 是一个探索 AI 的社区
现在注册
已注册用户请  登录
OA0  ›  代码  ›  MLX Swift Examples — 在 Apple 芯片上实践本地 AI 的示例集合

MLX Swift Examples — 在 Apple 芯片上实践本地 AI 的示例集合

 
  curiosity ·  2026-03-01 01:11:35 · 7 次点击  · 0 条评论  

MLX Swift 示例

MLX Swift 的示例程序。语言模型示例使用了在 MLX Swift LM 中实现的模型。

  • MNISTTrainer: 一个可在 iOS 和 macOS 上运行的示例,它会下载 MNIST 训练数据并训练一个 LeNet 模型。

  • LLMBasic: 一个极简的 LLM 聊天示例应用。它只有两个功能:加载模型和评估提示词。

  • LLMEval: 一个可在 iOS 和 macOS 上运行的示例,它会从 Hugging Face 下载一个 LLM 和分词器,并根据给定的提示词生成文本。它包含一些预设提示词、工具集成等。此外,它还显示运行的详细统计信息。

  • MLXChatExample: 一个可在 iOS 和 macOS 上运行的聊天应用示例,支持 LLM 和 VLM。

  • LoRATrainingExample: 一个在 macOS 上运行的示例,它会下载一个 LLM 并使用 LoRA(低秩适应)和训练数据对其进行微调。

  • LinearModelTraining: 一个训练简单线性模型的示例。

  • StableDiffusionExample: 一个可在 iOS 和 macOS 上运行的示例,它会从 Hugging Face 下载一个稳定扩散模型,并根据给定的提示词生成图像。

  • llm-tool: 一个命令行工具,用于使用 Hugging Face hub 上提供的各种 LLM 生成文本。

  • image-tool: 一个命令行工具,用于使用 Hugging Face 的稳定扩散模型生成图像。

  • mnist-tool: 一个命令行工具,用于在 MNIST 数据集上训练 LeNet 模型。

[!IMPORTANT]
MLXLMCommonMLXLLMMLXVLMMLXEmbedders 已移至一个包含可复用库的新仓库:mlx-swift-lm

之前的 URL 和标签将继续有效,但今后对这些库的所有更新都将在另一个仓库中进行。新仓库也支持之前的标签。

[!TIP]
希望同时编辑 mlx-swift-examplesmlx-swift-lm 的贡献者可以使用 Xcode 中的这个技巧

可复用库

LLM 和 VLM 的实现可在 MLX Swift LM 中找到:

  • MLXLLMCommon -- LLM 和 VLM 的通用 API
  • MLXLLM -- 大语言模型示例实现
  • MLXVLM -- 视觉语言模型示例实现
  • MLXEmbedders -- 流行的编码器/嵌入模型示例实现

MLX Swift Examples 也包含一些可复用的库,你可以通过在 Package.swift 中添加以下代码或在 Xcode 中引用 URL 来导入:

.package(url: "https://github.com/ml-explore/mlx-swift-examples/", branch: "main"),

然后将一个或多个库作为依赖项添加到目标中:

.target(
    name: "YourTargetName",
    dependencies: [
        .product(name: "StableDiffusion", package: "mlx-libraries")
    ]),
  • StableDiffusion -- SDXL Turbo 和 Stable Diffusion 模型示例实现
  • MLXMNIST -- 满足你所有数字识别需求的 MNIST 实现

运行

应用程序和命令行工具示例可以从 Xcode 或命令行运行:

./mlx-run llm-tool --prompt "swift programming language"

注意:mlx-run 是一个 shell 脚本,它使用 xcode 命令行工具来定位构建好的二进制文件。它与从 Xcode 本身运行是等效的。

另请参阅:

7 次点击  ∙  0 人收藏  
登录后收藏  
0 条回复
关于 ·  帮助 ·  PING ·  隐私 ·  条款   
OA0 - Omni AI 0 一个探索 AI 的社区
沪ICP备2024103595号-2
耗时 80 ms
Developed with Cursor