mlx-vlm

GitHub
4.3k 472 简单 1 次阅读 今天MIT语言模型开发框架
AI 解读 由 AI 自动生成,仅供参考

mlx-vlm 是一款专为 Mac 用户打造的开源工具包,旨在让视觉语言模型(VLM)及多模态模型(支持图像、音频和视频)的推理与微调变得简单高效。它基于 Apple 的 MLX 框架开发,解决了在 macOS 本地运行大型多模态 AI 模型时常见的配置复杂、依赖繁琐及性能优化不足等痛点。

无论是希望快速体验最新多模态能力的普通用户,还是需要定制模型的研究人员与开发者,都能从中受益。普通用户可通过命令行或图形界面轻松实现“看图说话”、“听音描述”甚至图文音混合交互;开发者则能利用其提供的 Python 接口进行深度集成,或对 DeepSeek-OCR、Phi-4、Gemma 等主流模型进行微调训练。

mlx-vlm 的技术亮点在于针对 Apple Silicon 芯片的深度优化,支持激活值量化、TurboQuant KV 缓存加速以及视觉特征缓存等高级功能,显著提升了推理速度并降低了显存占用。此外,它还原生支持多轮多图对话及独特的“思考预算”控制,允许用户在处理复杂推理任务时精确管理模型的思考过程。只需一条 pip 命令即可完成安装,是 Mac 平台上探索前沿多模态 AI 的理想入口。

使用场景

一位独立开发者需要在配备 Apple Silicon 芯片的 MacBook Pro 上,快速构建一个能同时理解截图、文档照片及语音备注的多模态辅助工具,用于自动化整理每日工作日志。

没有 mlx-vlm 时

  • 硬件闲置与依赖冲突:无法直接利用 Mac 强大的统一内存运行大型视觉语言模型(VLM),被迫依赖昂贵的云端 GPU 或在配置复杂的 Linux 环境中挣扎。
  • 多模态处理割裂:处理图像、文本和音频需要分别调用不同的 API 或模型,难以在一个流程中实现“看图听音写总结”的连贯操作。
  • 推理延迟高昂:云端请求受网络波动影响大,且按次计费成本高,导致本地实时交互体验卡顿,无法流畅进行多轮对话。
  • 微调门槛极高:若想针对特定业务场景(如识别特定格式发票)优化模型,缺乏在本地高效进行微调的工具链,数据隐私也难以保障。

使用 mlx-vlm 后

  • 原生性能释放:通过一行 pip install 即可在 Mac 上直接运行量化后的 VLM 和 Omni 模型,充分利用 MLX 框架加速,实现低延迟的本地推理。
  • 全模态一键融合:利用 CLI 或 Python 脚本,单条命令即可同时输入图像和音频(如 --image--audio 参数),让模型直接输出综合描述,流程丝滑顺畅。
  • 成本归零与隐私安全:所有计算均在本地完成,无需联网发送敏感数据,彻底消除云 API 费用,且支持离线环境下的稳定运行。
  • 便捷定制化能力:内置细调(Fine-tuning)功能,开发者可轻松使用私有数据集在本地优化模型,使其更精准地适应特定办公场景。

mlx-vlm 将 Mac 变成了强大的本地多模态 AI 工作站,让开发者能以零成本、高隐私的方式轻松落地复杂的视觉与听觉理解应用。

运行环境要求

操作系统
  • macOS
GPU
  • 非必需
  • 主要设计用于 Apple Silicon (M1/M2/M3 等) Mac 的统一内存架构
  • 若使用 NVIDIA GPU 需配合 MLX CUDA 后端,并可能需要激活量化 (Activation Quantization)
内存

未说明 (取决于所选模型大小,利用 macOS 统一内存)

依赖
notes该工具专为 macOS 上的 Apple Silicon 芯片优化,利用 MLX 框架进行推理和微调。支持视觉语言模型 (VLM) 及包含音频/视频支持的全能模型。若在 NVIDIA GPU 上运行 (实验性),需启用激活量化以支持 mxfp8 或 nvfp4 量化模式。安装可通过 pip 直接完成。
python未说明
mlx
mlx-vlm
gradio
fastapi
numpy
mlx-vlm hero image

快速开始

上传 Python 包

MLX-VLM

MLX-VLM 是一个用于在您的 Mac 上使用 MLX 对视觉语言模型(VLM)和全能模型(支持音频和视频的 VLM)进行推理和微调的软件包。

目录

模型专用文档

部分模型提供了详细的文档,包括提示格式、示例和最佳实践:

模型 文档
DeepSeek-OCR 文档
DeepSeek-OCR-2 文档
DOTS-OCR 文档
DOTS-MOCR 文档
GLM-OCR 文档
Phi-4 Reasoning Vision 文档
MiniCPM-o 文档
Phi-4 多模态 文档
MolmoPoint 文档
Moondream3 文档
Gemma 4 文档
Falcon-OCR 文档
Granite Vision 3.2 文档
Granite 4.0 Vision 文档

安装

开始使用的最简单方法是使用 pip 安装 mlx-vlm 包:

pip install -U mlx-vlm

使用

命令行界面 (CLI)

使用 CLI 从模型生成输出:

# 文本生成
mlx_vlm.generate --model mlx-community/Qwen2-VL-2B-Instruct-4bit --max-tokens 100 --prompt "你好,最近怎么样?"

# 图像生成
mlx_vlm.generate --model mlx-community/Qwen2-VL-2B-Instruct-4bit --max-tokens 100 --temperature 0.0 --image http://images.cocodataset.org/val2017/000000039769.jpg

# 音频生成(新功能)
mlx_vlm.generate --model mlx-community/gemma-3n-E2B-it-4bit --max-tokens 100 --prompt "描述你听到的内容" --audio /path/to/audio.wav

# 多模态生成(图像 + 音频)
mlx_vlm.generate --model mlx-community/gemma-3n-E2B-it-4bit --max-tokens 100 --prompt "描述你看到和听到的内容" --image /path/to/image.jpg --audio /path/to/audio.wav

思考预算

对于具备思考能力的模型(例如 Qwen3.5),您可以限制思考块中消耗的标记数量:

mlx_vlm.generate --model mlx-community/Qwen3.5-2B-4bit \
  --thinking-budget 50 \
  --thinking-start-token "<think>" \
  --thinking-end-token "</think>" \
  --enable-thinking \
  --prompt "计算 2+2"
标志 描述
--enable-thinking 在聊天模板中启用思考模式
--thinking-budget 思考块内允许的最大标记数
--thinking-start-token 打开思考块的标记(默认:<think>
--thinking-end-token 关闭思考块的标记(默认:</think>

当超过预算时,模型会强制输出 \n</think> 并过渡到回答。如果传递了 --enable-thinking 但模型的聊天模板不支持该功能,则只有当模型自行生成起始标记时,预算才会生效。

Gradio 聊天界面

使用 Gradio 启动聊天界面:

mlx_vlm.chat_ui --model mlx-community/Qwen2-VL-2B-Instruct-4bit

Python 脚本

以下是一个在 Python 脚本中使用 MLX-VLM 的示例:

import mlx.core as mx
from mlx_vlm import load, generate
from mlx_vlm.prompt_utils import apply_chat_template
from mlx_vlm.utils import load_config

# 加载模型
model_path = "mlx-community/Qwen2-VL-2B-Instruct-4bit"
model, processor = load(model_path)
config = load_config(model_path)

# 准备输入
image = ["http://images.cocodataset.org/val2017/000000039769.jpg"]
# 也可以使用 PIL.Image.Image 对象:image = [Image.open("...")]
prompt = "请描述这张图片。"

# 应用聊天模板
formatted_prompt = apply_chat_template(
    processor, config, prompt, num_images=len(image)
)

# 生成输出
output = generate(model, processor, formatted_prompt, image, verbose=False)
print(output)

音频示例

from mlx_vlm import load, generate
from mlx_vlm.prompt_utils import apply_chat_template
from mlx_vlm.utils import load_config

# 加载支持音频的模型
model_path = "mlx-community/gemma-3n-E2B-it-4bit"
model, processor = load(model_path)
config = model.config

# 准备音频输入
audio = ["/path/to/audio1.wav", "/path/to/audio2.mp3"]
prompt = "请描述这些音频文件中你听到的内容。"

# 应用包含音频的聊天模板
formatted_prompt = apply_chat_template(
    processor, config, prompt, num_audios=len(audio)
)

# 生成包含音频的输出
output = generate(model, processor, formatted_prompt, audio=audio, verbose=False)
print(output)

多模态示例(图像 + 音频)

from mlx_vlm import load, generate
from mlx_vlm.prompt_utils import apply_chat_template
from mlx_vlm.utils import load_config

# 加载多模态模型
model_path = "mlx-community/gemma-3n-E2B-it-4bit"
model, processor = load(model_path)
config = model.config

# 准备输入
image = ["/path/to/image.jpg"]
audio = ["/path/to/audio.wav"]
prompt = ""

# 应用聊天模板
formatted_prompt = apply_chat_template(
    processor, config, prompt,
    num_images=len(image),
    num_audios=len(audio)
)

# 生成输出
output = generate(model, processor, formatted_prompt, image, audio=audio, verbose=False)
print(output)

服务器 (FastAPI)

启动服务器:

mlx_vlm.server --port 8080

# 在启动时预加载模型(Hugging Face 仓库或本地路径)
mlx_vlm.server --model <hf_repo_or_local_path>

# 使用适配器预加载模型
mlx_vlm.server --model <hf_repo_or_local_path> --adapter-path <adapter_path>

# 启用信任远程代码(某些模型需要)
mlx_vlm.server --trust-remote-code

服务器选项

  • --model: 在服务器启动时预加载模型,接受 Hugging Face 仓库 ID 或本地路径(可选;若省略,则在首次请求时按需加载)
  • --adapter-path: 用于与预加载模型一起使用的适配器权重路径
  • --host: 主机地址(默认:0.0.0.0
  • --port: 端口号(默认:8080
  • --trust-remote-code: 从 Hugging Face Hub 加载模型时信任远程代码
  • --kv-bits: KV 缓存量化位数(例如,3.5 表示 TurboQuant)
  • --kv-quant-scheme: KV 缓存量化后端(uniformturboquant

您也可以通过环境变量设置信任远程代码:

MLX_TRUST_REMOTE_CODE=true mlx_vlm.server

该服务器提供多个端点以满足不同使用场景,并支持动态加载和卸载模型,同时具备缓存功能(一次仅能加载一个模型)。

可用端点

  • /models/v1/models:列出本地可用的模型
  • /chat/completions/v1/chat/completions:兼容 OpenAI 的聊天式交互端点,支持图像、音频和文本
  • /responses/v1/responses:兼容 OpenAI 的响应端点
  • /health:检查服务器状态
  • /unload:从内存中卸载当前模型

使用示例

列出可用模型
curl "http://localhost:8080/models"
文本输入
curl -X POST "http://localhost:8080/chat/completions" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mlx-community/Qwen2-VL-2B-Instruct-4bit",
    "messages": [
      {
        "role": "user",
        "content": "你好,最近怎么样"
      }
    ],
    "stream": true,
    "max_tokens": 100
  }'
图像输入
curl -X POST "http://localhost:8080/chat/completions" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mlx-community/Qwen2.5-VL-32B-Instruct-8bit",
    "messages":
    [
      {
        "role": "system",
        "content": "你是一个有用的助手。"
      },
      {
        "role": "user",
        "content": [
          {
            "type": "text",
            "text": "这是加利福尼亚州今日的能源需求图表。你能对这张图进行分析,并谈谈它对加州可再生能源的影响吗?"
          },
          {
            "type": "input_image",
            "image_url": "/path/to/repo/examples/images/renewables_california.png"
          }
        ]
      }
    ],
    "stream": true,
    "max_tokens": 1000
  }'
音频支持(新增)
curl -X POST "http://localhost:8080/generate" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mlx-community/gemma-3n-E2B-it-4bit",
    "messages": [
      {
        "role": "user",
        "content": [
          { "type": "text", "text": "请描述这些音频文件中听到的内容" },
          { "type": "input_audio", "input_audio": "/path/to/audio1.wav" },
          { "type": "input_audio", "input_audio": "https://example.com/audio2.mp3" }
        ]
      }
    ],
    "stream": true,
    "max_tokens": 500
  }'
多模态(图像 + 音频)
curl -X POST "http://localhost:8080/generate" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mlx-community/gemma-3n-E2B-it-4bit",
    "messages": [
      {
        "role": "user",
        "content": [
          {"type": "input_image", "image_url": "/path/to/image.jpg"},
          {"type": "input_audio", "input_audio": "/path/to/audio.wav"}
        ]
      }
    ],
    "max_tokens": 100
  }'
响应端点
curl -X POST "http://localhost:8080/responses" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "mlx-community/Qwen2-VL-2B-Instruct-4bit",
    "messages": [
      {
        "role": "user",
        "content": [
          {"type": "input_text", "text": "这张图片里有什么?"},
          {"type": "input_image", "image_url": "/path/to/image.jpg"}
        ]
      }
    ],
    "max_tokens": 100
  }'

请求参数

  • model: 模型标识符(必填)
  • messages: 用于聊天/OpenAI 兼容端点的对话消息
  • max_tokens: 最大生成标记数
  • temperature: 采样温度
  • top_p: Top-p 采样参数
  • top_k: Top-k 采样截断值
  • min_p: Min-p 采样阈值
  • repetition_penalty: 重复标记惩罚因子
  • stream: 启用流式响应

激活量化(CUDA)

当在配备 MLX CUDA 的 NVIDIA GPU 上运行时,使用 mxfp8nvfp4 模式量化的模型需要启用激活量化才能正常工作。这会将 QuantizedLinear 层转换为 QQLinear 层,从而对权重和激活都进行量化。

命令行

使用 -qa--quantize-activations 标志:

mlx_vlm.generate --model /path/to/mxfp8-model --prompt "描述这张图片" --image /path/to/image.jpg -qa

Python API

load 函数中传入 quantize_activations=True

from mlx_vlm import load, generate

# 启用激活量化后加载模型
model, processor = load(
    "path/to/mxfp8-quantized-model",
    quantize_activations=True
)

# 正常生成
output = generate(model, processor, "描述这张图片", image=["image.jpg"])

支持的量化模式

  • mxfp8:8 位 MX 浮点数
  • nvfp4:4 位 NVIDIA 浮点数

注意:此功能是 CUDA 上 mxfp/nvfp 量化模型所必需的。而在 Apple Silicon(Metal)上,这些模型无需该标志即可正常工作。

多图像聊天支持

MLX-VLM 支持使用部分模型同时分析多张图像。此功能能够实现更复杂的视觉推理任务,并在单次对话中对多张图像进行全面分析。

使用示例

Python 脚本

from mlx_vlm import load, generate
from mlx_vlm.prompt_utils import apply_chat_template
from mlx_vlm.utils import load_config

model_path = "mlx-community/Qwen2-VL-2B-Instruct-4bit"
model, processor = load(model_path)
config = model.config

images = ["path/to/image1.jpg", "path/to/image2.jpg"]
prompt = "比较这两张图片。"

formatted_prompt = apply_chat_template(
    processor, config, prompt, num_images=len(images)
)

output = generate(model, processor, formatted_prompt, images, verbose=False)
print(output)

命令行

mlx_vlm.generate --model mlx-community/Qwen2-VL-2B-Instruct-4bit --max-tokens 100 --prompt "比较这些图片" --image path/to/image1.jpg path/to/image2.jpg

视频理解

MLX-VLM 还支持视频分析,例如字幕生成、摘要提取等,适用于部分模型。

支持的模型

以下模型支持视频聊天:

  1. Qwen2-VL
  2. Qwen2.5-VL
  3. Idefics3
  4. LLaVA

更多模型即将推出。

使用示例

命令行

mlx_vlm.video_generate --model mlx-community/Qwen2-VL-2B-Instruct-4bit --max-tokens 100 --prompt "描述这段视频" --video path/to/video.mp4 --max-pixels 224 224 --fps 1.0

这些示例展示了如何使用 MLX-VLM 处理多张图片,以完成更复杂的视觉推理任务。

视觉特征缓存

在关于同一张图片的多轮对话中,即使图片没有变化,视觉编码器也会在每一轮都运行。VisionFeatureCache 会将投影后的视觉特征存储在一个基于图片路径的 LRU 缓存中,这样昂贵的视觉编码器就只需对每张唯一图片调用一次。

工作原理

  1. 第一轮(缓存未命中) —— encode_image() 会运行完整的视觉处理流程(视觉塔 + 投影器),并将结果存储在缓存中,然后传递给语言模型。
  2. 后续轮次(缓存命中) —— 直接通过 cached_image_features 传递缓存中的特征,完全跳过视觉编码器。
  3. 图片切换 —— 当图片发生变化时,会生成一个新的缓存键,因此需要重新计算并缓存特征。如果再次切换回之前的图片,则会命中缓存。

缓存最多可容纳 8 个条目(可配置),并采用 LRU 策略进行淘汰。

命令行界面

所有聊天界面都会自动使用 VisionFeatureCache

# Gradio 聊天界面
python -m mlx_vlm.chat_ui --model google/gemma-4-26b-a4b-it

# 带有 Rich UI 的交互式聊天(使用 /image 命令加载图片)
python -m mlx_vlm.chat --model google/gemma-4-26b-a4b-it

# 内联聊天模式
python -m mlx_vlm.generate \
  --model google/gemma-4-26b-a4b-it \
  --image path/to/image.jpg \
  --chat \
  --max-tokens 200

Python 示例

from mlx_vlm import load, stream_generate, VisionFeatureCache
from mlx_vlm.prompt_utils import apply_chat_template

model, processor = load("google/gemma-4-26b-a4b-it")
cache = VisionFeatureCache()

image = "path/to/image.jpg"

# 第一轮 —— 缓存未命中,编码图片
prompt1 = apply_chat_template(processor, model.config, "请描述这张图片。", num_images=1)
for chunk in stream_generate(model, processor, prompt1, image=[image],
                              max_tokens=200, vision_cache=cache):
    print(chunk.text, end="")

# 第二轮 —— 缓存命中,跳过视觉编码器
prompt2 = apply_chat_template(processor, model.config, "你看到了哪些颜色?", num_images=1)
for chunk in stream_generate(model, processor, prompt2, image=[image],
                              max_tokens=200, vision_cache=cache):
    print(chunk.text, end="")

服务器端

服务器会自动为同一张图片的多个请求缓存视觉特征。无需任何配置——缓存会在模型加载时创建,并在卸载时清空。

mlx_vlm.server --model google/gemma-4-26b-a4b-it

通过 /v1/chat/completions(流式和非流式)以及 /responses 接口进行的多轮对话都将受益于这一功能。同一张图片在多个请求中只会被编码一次。

性能

google/gemma-4-26b-a4b-it 模型上进行了 10 轮多轮对话测试:

指标 无缓存 有缓存
提示词 TPS ~48 ~550-825
加速倍数 -- 11 倍以上
峰值内存 52.66 GB 52.66 GB(持平)

生成速度(约 31 tok/s)和内存占用不受影响——只有提示词的处理速度得到了提升。

TurboQuant KV 缓存

TurboQuant 在生成过程中压缩 KV 缓存,从而在保持质量的同时,以更少的内存实现更长的上下文长度。

快速入门

# 3.5 位 KV 缓存量化(3 位键 + 4 位值)
mlx_vlm generate \
  --model mlx-community/Qwen3.5-4B-4bit \
  --kv-bits 3.5 \
  --kv-quant-scheme turboquant \
  --prompt "您的长提示在这里..."
from mlx_vlm import generate

result = generate(
    model, processor, prompt,
    kv_bits=3.5,
    kv_quant_scheme="turboquant",
    max_tokens=256,
)
# 启用 TurboQuant 的服务器
mlx_vlm server \
  --model google/gemma-4-26b-a4b-it \
  --kv-bits 3.5 \
  --kv-quant-scheme turboquant

工作原理

TurboQuant 使用随机旋转 + 码本量化(arXiv:2504.19874)将 KV 缓存条目从 16 位压缩到每维 2–4 位:

  • 键与值:采用 Hadamard 旋转的 MSE 码本量化
  • 分数位(如 3.5 位):使用较低的位数表示键,较高的位数表示值(3 位键 + 4 位值)

自定义 Metal 内核可以直接在打包的量化数据上融合打分计算和值聚合,避免在解码过程中进行完全的反量化。

性能

在 Qwen3.5-4B-4bit 模型上,使用 128k 上下文长度进行测试:

指标 基线 TurboQuant 3.5 位
KV 内存 4.1 GB 0.97 GB(减少 76%
峰值内存 18.3 GB 17.3 GB(减少 1.0 GB

在 512k+ 上下文长度下,由于减少了内存带宽需求,TurboQuant 的逐层注意力计算速度比 FP16 SDPA 更快

在 gemma-4-31b-it 模型上,使用 128k 上下文长度进行测试:

指标 基线 TurboQuant 3.5 位
KV 内存 13.3 GB 4.9 GB(减少 63%
峰值内存 75.2 GB 65.8 GB(减少 9.4 GB

支持的位宽

位数 压缩比 最佳用途
2 ~8x 最大压缩,质量略有损失
3 ~5x 质量与压缩之间的良好平衡
3.5 ~4.5x 推荐默认设置(3 位键 + 4 位值)
4 ~4x 质量最佳,压缩适度

兼容性

TurboQuant 会自动量化 KVCache 层(全局注意力)。对于具有 RotatingKVCache(滑动窗口)或 ArraysCache(MLA/吸收键)的模型,它们的原生缓存格式将保持不变,因为这些层本身已经非常高效地利用了内存。

微调

MLX-VLM 支持使用 LoRA 和 QLoRA 对模型进行微调。

LoRA 和 QLoRA

要了解更多关于 LoRA 的信息,请参阅 LoRA.md 文件。

版本历史

v0.4.42026/04/04
v0.4.32026/04/02
v0.4.22026/03/28
v0.4.12026/03/21
v0.4.02026/03/07
v0.3.122026/02/16
v0.3.112026/02/04
v0.3.102026/01/28
v0.3.92025/12/03
v0.3.82025/11/27
v0.3.72025/11/17
v0.3.62025/11/14
v0.3.52025/10/26
v0.3.42025/10/14
v0.3.32025/08/20
v0.3.22025/07/22
v0.3.12025/07/12
v0.3.02025/07/05
v0.2.02025/06/26
v0.1.272025/06/08

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|1周前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|1周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

156k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|4天前
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|5天前
插件Agent图像

markitdown

MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器

93.4k|★★☆☆☆|1周前
插件开发框架