lablup/mlxcel

High-performance LLM/VLM inference runtime and server for Apple Silicon / NVIDIA CUDA devices

解决的问题

mlxcel 是一个高性能的推理运行时和服务器,旨在消除部署大型语言模型(LLMs)和视觉语言模型(VLMs)时对 Python 环境的需求。它提供了一个原生的、单进程执行环境,简化了部署、打包和运维,同时保持与基于 Python 的 MLX 参考实现相当的性能。

工作原理

mlxcel 使用 Rust 实现,通过原生 MLX C++ 绑定执行模型。支持 Apple Silicon、NVIDIA CUDA 兼容设备,以及实验性的 OpenXLA 兼容设备。运行时在单个原生进程中处理模型加载、调度和推理,可直接从 mlx-community 检查点运行模型,无需转换步骤。

适用人群

适用于希望以最小开销部署本地或小规模集群推理服务器的开发者和运维人员,从 llama.cpp 迁移的用户(因其具有 OpenAI 兼容 API 和类似的标志结构),以及使用 Apple Silicon 或 NVIDIA GPU 的用户。

主要亮点

  • 原生性能:实现与 mlx-lmmlx-vlm 几乎相当的解码吞吐量,短提示文本预填充速度显著更快。
  • 广泛模型支持:支持包括 Llama、Qwen、Gemma、Phi、Mistral、DeepSeek 等在内的多种文本和视觉语言模型家族。
  • OpenAI 兼容:提供 /v1/chat/completions/v1/completions/v1/responses 的 OpenAI 兼容 HTTP API。
  • 生产就绪功能:包含连续批处理、提示前缀缓存、推测解码和 KV 缓存压缩。
  • 模型手术:支持在加载时通过 YAML 文件进行第一级的模型手术(缩放、添加、剪枝、替换、插值),无需重新训练即可修改权重空间。
  • 分布式推理:为部分模型家族实现张量并行和流水线并行。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目