fastllm
fastllm 是一款基于 C++ 自主研发的高性能大模型推理库,旨在摆脱对 PyTorch 的依赖,提供轻量、极速且兼容性极强的推理方案。它核心解决了大模型在消费级显卡或老旧硬件上难以部署、显存占用过高以及推理速度慢的痛点。无论是开发者还是研究人员,只需一张显存大于 10GB 的显卡(涵盖从古老的 K80 到最新的 RTX 5090,甚至包括 AMD、国产天数、沐曦及华为昇腾等芯片),即可流畅运行如 DeepSeek R1 671B 这类超大规模模型。
fastllm 的独特亮点在于其强大的混合推理能力:支持 CPU 与 GPU 协同工作,通过张量并行技术,让单卡也能“满血”运行千亿参数模型;同时原生支持 FP8 计算和动态量化,显著降低资源门槛并提升并发吞吐量。此外,它还支持多卡奇数并行、流式输出及跨平台部署(含安卓),并提供命令行、WebUI 和 API 等多种便捷启动方式。对于希望在不依赖庞大深度学习框架的前提下,快速将 Qwen、Llama、DeepSeek 等主流模型落地到本地服务器或边缘设备的用户而言,fastllm 是一个高效且灵活的理想选择。
使用场景
某初创团队希望在单张消费级显卡(显存 12G)上私有化部署满血版 DeepSeek-R1 671B 模型,以构建低成本的企业内部智能知识库。
没有 fastllm 时
- 硬件门槛极高:传统推理框架依赖 PyTorch 且显存优化不足,运行 671B 参数模型通常需要多张 A100/H800 组建集群,单卡根本无法加载。
- 环境依赖复杂:配置 CUDA、PyTorch 版本及各类算子库耗时费力,不同显卡架构兼容性差,老款显卡(如 P100)或国产卡往往无法运行。
- 推理速度缓慢:即便勉强通过量化拆分运行,由于缺乏针对 MOE 结构的混合调度,首字延迟高,生成速度远低于实用标准(<5 tokens/s)。
- 部署成本高昂:为满足显存和算力需求,必须采购昂贵的服务器集群,导致项目初期投入远超预算。
使用 fastllm 后
- 单卡运行大模型:凭借无依赖的 C++ 自有算子和 CPU+GPU 混合推理技术,仅需一张 10G 以上显存的显卡即可完整运行满血版 DeepSeek-R1 671B。
- 极简部署流程:无需安装庞大的 PyTorch 环境,一条
pip install命令即可完成安装,支持从 M40 到 RTX 5090 乃至国产芯片的广泛兼容。 - 性能显著提升:在双路服务器配合单卡场景下,INT4 量化模型单并发速度可达 30 tokens/s,多并发更突破 60 tokens/s,实现流畅对话体验。
- 大幅降低成本:直接利用现有闲置显卡或低成本设备替代昂贵集群,将百万级的硬件投入压缩至万元以内,让大模型落地触手可及。
fastllm 通过极致的底层优化与混合推理架构,打破了超大参数模型对高端算力的垄断,让高性能大模型真正能在普通设备上“满血”运行。
运行环境要求
- Linux
- Windows
- 非必需(支持纯 CPU 推理)
- 若使用 GPU,支持 NVIDIA (M40, K80, P100 至 5090 全系列), AMD (MI50, 7900 等), 以及天数、沐曦、燧原、华为昇腾等国产卡
- 单卡推理满血 DeepSeek R1 671B 模型需显存 > 10GB
- NVIDIA 用户建议安装 CUDA 12+ (pip 包不含 CUDA 依赖),AMD 用户需安装 ROCm 6.3.3
- 支持任意显卡的 FP8 推理
未说明(多 CPU 加速模式下只占用 1 份内存)

快速开始
fastllm
| 快速开始 | 部署DeepSeek | 部署Qwen3 | 版本日志 | 英文文档
- 近期更新较大,发布了
fastllm-nightly版本供提前体验,使用文档参见 fastllm-nightly 使用文档
引用说明
本项目参考了许多开源项目的代码和相关文章,具体请参考 参考代码和文章
介绍
fastllm是c++实现自有算子替代Pytorch的高性能全功能大模型推理库,可以推理Qwen, Llama, Phi等稠密模型,以及DeepSeek, Qwen-moe等moe模型
- 具有优良的兼容性,支持M40, K80到5090全系列N卡,支持MI50,7900等A卡,支持天数,沐曦等国产卡,支持ThinkForce NPU推理
- 支持任意显卡的FP8推理
- 任意显卡只需要显存 > 10G就可以支持单卡推理满血DeepSeek R1 671B模型
- 双路9004/9005服务器 + 单显卡部署DeepSeek R1 671B - FP8原版模型,单并发速度可达20左右,部署INT4模型单并发速度可达30左右,最高并发速度可达60+
部署交流QQ群: 831641348
微信群:目前群聊超过200人,请添加小助手微信号fastllmxzs加群:
新功能速览
- Fastllm目前支持Qwen3-Next模型的混合推理了!
- Fastllm目前支持导出通用动态量化模型了!参考动态量化说明
- Fastllm目前可以支持部分GGUF模型的读取了!需要注意,目前需要使用
--ori参数指定源模型配置文件夹,请阅读 使用指南
亮点功能
- 🚀 安装使用简单方便,一条命令就能成功安装,一条命令就能成功运行。
- 🚀 支持CPU + GPU混合推理MOE大参数模型(单显卡即可推理DEEPSEEK 671B)。
- 🚀 使用C++实现自有底层算子,不依赖PyTorch。
- 🚀 兼容性好,PIP安装支持可以支持到P100、MI50等老卡,源码安装支持更多设备。
- 🚀 支持多卡张量并行推理,支持3、5、7等奇数张卡。
- 🚀 支持GPU + CPU混合张量并行推理
- 🚀 支持CPU和显卡实现FP8运算,老设备也可以运行
- 🚀 支持多CPU加速,且只占用1份内存
- 🚀 支持ROCM,AMD GPU;支持天数,沐曦,燧原;支持华为昇腾。
- 🚀 支持动态Batch,流式输出;前后端分离设计,可跨平台移植,可在安卓上直接编译。
- 🚀 支持Python自定义模型结构
快速开始
安装
pip安装支持Nvidia GPU和AMD GPU,其余GPU请使用源码安装pip安装速度慢时,可使用镜像加速
pip config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple
Linux系统 + Nvidia GPU:
由于目前PyPI限制库大小,安装包中不含CUDA依赖,安装ftllm之前建议先手动安装CUDA 12以上版本 (已安装cuda可跳过)
wget https://developer.download.nvidia.com/compute/cuda/12.8.1/local_installers/cuda_12.8.1_570.124.06_linux.run
sudo sh cuda_12.8.1_570.124.06_linux.run
然后用pip安装,命令如下:
pip install ftllm -U
Linux系统 + AMD GPU:
由于目前PyPI限制库大小,安装包中不含ROCM依赖,安装ftllm之前建议先手动安装ROCM 6.3.3 (若已安装ROCM可跳过)
wget wget https://repo.radeon.com/amdgpu-install/6.3.3/ubuntu/jammy/amdgpu-install_6.3.60303-1_all.deb
apt install ./amdgpu-install_6.3.60303-1_all.deb -y
amdgpu-install --usecase=hiplibsdk,rocm,dkms -y
然后用pip安装,命令如下:
pip install ftllm-rocm -U
Windows系统 (仅支持Nvidia GPU):
第一次安装前需要安装依赖库:
pip install https://www.modelscope.cn/models/huangyuyang/fastllmdepend-windows/resolve/master/ftllmdepend-0.0.0.1-py3-none-win_amd64.whl
然后用pip安装,命令如下:
pip install ftllm -U
- Hint
Conda下安装有时候会出现环境错误,如果出现可以尝试在Conda外或使用venv等虚拟环境尝试
(若使用时报错,可参考ftllm报错 )
运行demo程序
可以运行一个较小模型测试安装是否成功, 以Qwen/Qwen3-0.6B模型为例
命令行聊天:
ftllm run Qwen/Qwen3-0.6B
WebUI:
ftllm webui Qwen/Qwen3-0.6B
API Server (OpenAI 风格):
ftllm server Qwen/Qwen3-0.6B
使用指南
1. 如何启动模型
基本的启动命令格式如下:
ftllm run Qwen/Qwen3-0.6B # 启动本地对话
ftllm webui Qwen/Qwen3-0.6B # 启动WebUI
ftllm server Qwen/Qwen3-0.6B # 启动API Server
根据你需要开启的服务,选择相应的命令。以 server 命令为例,格式如下:
ftllm server model
这里的model可以是:
- Huggingface上的模型,例如
Qwen/Qwen3-0.6B代表 千问3-0.6B模型 - 本地模型路径。例如
/mnt/Qwen3-0.6B,高速下载模型可以参考 模型下载
无论是在线模型还是本地模型,目前支持以下几种格式 (均以在线模型举例,可以在Huggingface上搜到对应模型):
FP16,BF16格式的原始模型,例如Qwen/Qwen3-0.6BFP8格式的模型,例如Qwen/Qwen3-0.6B-FP8AWQ格式的模型,例如Qwen/Qwen3-14B-AWQFastllm格式的模型,例如fastllm/DeepSeek-V3-0324-INT4。也可以下载原始模型后通过 模型导出 中的命令导出GGUF格式的模型,需要用--ori参数指定原始模型路径,例如
ftllm server DeepSeek-V3-0324-Q4_K_M-00001-of-00009.gguf --ori DeepSeek-V3
这里的DeepSeek-V3是原始模型文件夹,无需下载权重文件,可以参考如下命令下载:
ftllm download deepseek-ai/DeepSeek-V3 --exclude "*safetensors*"
如果您是第一次使用ftllm,建议直接使用基本的启动命令启动,所有的参数都会自动设置。如果您希望继续调参,请参照下面的参数设置说明
2. 如何设定推理精度
当启动的模型为浮点精度时(BF16, FP16, FP8)时,可以通过以下参数来设置模型的推理精度:
--dtype:- 描述: 指定模型的数据类型。
- 可选值:
int4gint4int8fp8float16或其他支持的数据类型。 - 示例:
--dtype int4
--moe_dtype:- 描述: 指定模型MOE层的数据类型。
- 可选值:
int4gint4int8fp8float16或其他支持的数据类型。 - 示例:
--moe_dtype int4 - 说明: 如果指定的模型不是
moe结构的模型,这个参数不会生效
命令示例:
ftllm server Qwen/Qwen3-0.6B --dtype int8
# 上面的命令会读取原始模型(这个模型是BF16精度),并在线量化为INT8精度推理
ftllm server deepseek-ai/DeepSeek-V3-0324 --dtype fp8 --moe_dtype int4
# 上面的命令会读取原始模型(这个模型是FP8精度),并使用FP8 + INT4的混合精度推理
--dtype_config:- 描述: 指定动态量化配置文件。
- 说明: 参考动态量化说明
若不设定这些参数,ftllm会使用模型中设定的精度来进行推理
若使用的模型已经是量化好的模型(例如AWQ模型,Fastllm导出的量化模型等),建议不指定这些参数
3. 如何设定运行设备
可以通过以下参数来设定执行推理的设备
--device:- 描述: 指定模型运行的计算设备。
- 示例:
--device cpu,--device cuda - 常用值说明:
cpu使用cpu推理cuda使用gpu推理numa使用多路numa节点加速推理,在多CPU的机器才会有提升。使用numa加速时,强烈建议关闭系统numa平衡。(ubuntu中可使用命令sudo sysctl -w kernel.numa_balancing=0)multicuda使用多设备张量并行推理- 使用多显卡:
--device multicuda:0,1 - 使用多显卡+CPU:
--device multicuda:0,cpu - 按比例使用多显卡+CPU:
--device multicuda:0:4,1:5,cpu:1(cuda:0计算4/10,cuda:1计算5/10,cpu计算1/10)
- 使用多显卡:
- 串行计算: 一些场景下可以指定不同的device串行执行。例如
--device "{'cuda:0':3,'cuda:1':2}": 这样3/5的层会运行在cuda:0上,2/5的层会运行在cuda:1上--device "{'multicuda:0,1':3,'cuda:1':2}": 这样3/5的层会使用cuda:0,cuda:1张量并行,2/5的层仅仅运行在cuda:1上- 简写:
--device cudapp=N表示N卡均匀串行,例如--device cudapp=4等价于--device "{'cuda:0':1,'cuda:1':1,'cuda:2':1,'cuda:3':1}" - 简写:
--device cudapp=1:2:3表示三卡按1:2:3比例串行,等价于--device "{'cuda:0':1,'cuda:1':2,'cuda:2':3}'
--moe_device:- 描述: 指定 MOE(Mixture of Experts)层的计算设备。
- 示例:
--moe_device cpu,--moe_device numa - 常用值说明:
cpu使用cpu推理numa使用多路numa节点加速推理,在多CPU的机器才会有提升cuda使用gpu推理 (MOE层需要大量显存,一般不建议指定为cuda)
- 说明: 一般和device指定为不同的设备实现混合推理,例如
--device cuda --moe_device cpu来实现MOE模型的单卡+CPU混合推理。--device cuda --moe_device numa来实现MOE模型的单卡+多NUMA节点加速推理 如果指定的模型不是moe结构的模型,这个参数不会生效
若不设定这些参数,会使用默认配置来推理,默认配置如下:
| 模型类型 | device | moe_device |
|---|---|---|
| 稠密模型 | cuda | 不生效 |
| MOE模型 | cuda | cpu |
如果只设置了device没设置moe_device,则moe_device会跟随device
对于发烧友而言,如果想更进一步榨干硬件,可以参考 混合推理指南
4. 如何设定运行参数
可以通过下列参数设置运行参数。
需要注意的是,速度和参数设置并不一定正相关,如果对性能要求高,可以多方向尝试一下
-t或--threads:- 描述: 设置使用的CPU线程数。
- 当
device为cpu时,这个参数决定了推理使用的线程数 - 当
device为numa时,推理线程数主要由环境变量FASTLLM_NUMA_THREADS决定,threads参数请设得小一点(推荐设为1)
- 当
- 示例:
-t 27
- 描述: 设置使用的CPU线程数。
例如我们在多CPU设备上用GPU + 多CPU混合部署一个MOE模型fastllm/DeepSeek-V3-0324-INT4,可以尝试这些命令:
export FASTLLM_NUMA_THREADS=27 && ftllm server fastllm/DeepSeek-V3-0324-INT4 --device cuda --moe_device numa -t 1
# 使用多numa推理,每个numa节点使用27个线程
export FASTLLM_NUMA_THREADS=16 && ftllm server fastllm/DeepSeek-V3-0324-INT4 --device cuda --moe_device numa -t 1
# 使用多numa推理,每个numa节点使用16个线程
numactl -C 0-31 -m 0 ftllm server fastllm/DeepSeek-V3-0324-INT4 --device cuda --moe_device cpu -t 27
# 绑定单numa节点,使用CPU推理,使用27线程
不同硬件上,不同参数发挥出的性能有很大不同。一般而言,CPU上使用的线程数不建议超过物理核数
5. 其它参数
--moe_experts:- 描述: 指定 MOE(Mixture of Experts)层使用的专家数。不设定则根据模型配置设定。减少专家数可以提高推理速度,但可能降低推理准确度
- 示例:
--moe_experts 6
--cuda_se:- 描述: 指定 MOE中的共享专家 是否在cuda上执行,默认为true
- 示例:
--cuda_se false
--port:- 描述: 指定服务运行的端口号。
- 示例:
--port 8080
--help:- 描述: 查看模块参数详细信息。
- 示例:
ftllm server --help
--version或-v:- 描述: 查看ftllm版本号。
- 示例:
ftllm -v
--hide_input:- 描述: server模式隐藏日志中的请求信息。
- 示例:
ftllm server --hide_input
--api_key:- 描述: server模式设定api_key。
- 示例:
ftllm server --api_key xxxxxxxx
--max_token:- 描述: webui模式指定最大输出。
- 示例:
ftllm webui --max_token
--think:- 描述: 强制思考。
- 示例:
ftllm webui --think
--cache_dir:- 描述: 指定在线Huggingface模型的缓存目录
- 示例:
ftllm --cache_dir /mnt
--chat_template:- 描述: 指定chat_template文件
- 示例:
ftllm --chat_template deepseekv31.jinja
工具调用
目前以下模型支持工具调用:
- GLM4.5, GLM4.5-AIR
- Qwen3-Instruct系列
- Qwen3-Coder系列
- Kimi-K2
- DeepSeekV3.1, 需要指定chat_template, 文件位于本项目
example/chat_template/deepseekv31.jinja
模型获取
模型下载
可以使用如下命令将模型下载到本地(使用高速镜像,无需科学上网)
ftllm download deepseek-ai/DeepSeek-R1
模型导出
如果使用量化加载模型(如--dtype int4),那么每次读取模型时会在线量化,读取速度较慢。
ftllm export 是一个用于导出和转换模型权重的工具。它支持将模型权重转换为不同的数据类型。以下是如何使用 ftllm export 的详细说明。
命令格式
ftllm export <模型路径> -o < 输出路径 > --dtype < 数据类型 > -t < 线程数 >
示例命令
ftllm export /mnt/DeepSeek-V3 -o /mnt/DeepSeek-V3-INT4 --dtype int4 -t 16
混合精度
可以通过指定--moe_dtype来实现混合精度,例如
ftllm export /mnt/DeepSeek-V3 -o /mnt/DeepSeek-V3-FP16INT4 --dtype float16 --moe_dtype int4 -t 16
加载导出后的模型
导出后的模型使用方法和原始模型类似,使用导出模型时--dtype参数将被忽略
例如
ftllm run /mnt/DeepSeek-V3-INT4/
支持的模型
如果需要运行更多早期的模型,请参考支持模型列表
源码安装
若pip安装失败或有其它特殊需求,可以用源码编译安装 源码安装后如果需要卸载,方法和PIP安装一样
pip uninstall ftllm
建议使用cmake编译,需要提前安装gcc,g++ (建议9.4以上), make, cmake (建议3.23以上)
需要安装numa库,在Ubuntu下的安装命令一般使用:
apt-get install libnuma-dev
如果编译出错,建议使用AI工具帮忙安装环境
GPU编译需要提前安装好CUDA编译环境,建议使用尽可能新的CUDA版本,并安装NCCL包
使用如下命令编译
bash install.sh -DUSE_CUDA=ON -D CMAKE_CUDA_COMPILER=$(which nvcc) # 编译GPU版本
# bash install.sh -DUSE_CUDA=ON -DCUDA_ARCH=89 -D CMAKE_CUDA_COMPILER=$(which nvcc) # 可以指定CUDA架构,如4090使用89架构
# bash install.sh # 仅编译CPU版本
其他平台编译
其他不同平台的编译可参考文档
编译中遇到问题可参考 FAQ文档
参考代码和文章
大量NN底层算子的实现思路
大量LLM具体的模型实现
GGML中的一些量化方法、以及计算Kernel
FlashInfer中的一些库,主要是Attention, MLA等部分
MOE算子线程不平衡时动态调度的思路
基于numa改进的MOE动态调度算子
Function call解析相关的代码
json的构造和解析
感谢大佬对开源社区的贡献!如发现未标明的引用代码可在issue中提出
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
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 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
gemini-cli
gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。
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 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器