unilm
微软55+前沿AI模型开源集合,涵盖多模态大模型(Kosmos)、文档理解(LayoutLM)、1-bit大模型(BitNet)等核心方向
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
微软55+前沿AI模型开源集合,涵盖多模态大模型(Kosmos)、文档理解(LayoutLM)、1-bit大模型(BitNet)等核心方向
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
你或许听说过微软的 GPT-4,但你可能不知道,OpenAI 背后的金主微软,还有一个更接地气的大动作——在 GitHub 上悄悄建了一座 AI 模型的「超级兵工厂」。这就是微软于 2021 年初开源的 microsoft/unilm 项目,截至 2025 年中已积累超过 22000 颗星、收录 55 个独立子项目,横跨 NLP、视觉、语言、多模态、文档理解等多个领域,被业内称为「微软 AI 研究的 GitHub 主阵地」。
unilm 的全称是 UniLM —— Unified Language Model Pre-training,直译即「统一语言模型预训练」。这个项目的诞生背景,是 2020 年前后 NLP 领域正在经历一场范式革命:BERT 和 GPT 两条路线各自为战,微软认为,与其让研究者分别在预训练语言模型上各自探索,不如把预训练的「地基」打牢,让下游任务都能直接站在同一个基础上做微调。
UniLM 最初的设计思路是将「理解」与「生成」统一在一个模型框架下——传统的 BERT 擅长理解文本,但生成能力弱;GPT 擅长生成,但理解上下文的能力有限。微软通过巧妙设计遮罩(Mask)策略,让一个 Transformer 编码器同时掌握两种能力。这一思路后来深刻影响了 T5、GLM 等国产大模型架构。
但微软的野心远不止于一个语言模型。随着项目演进,unilm 逐渐从一个代码仓库演变成微软 AI 研究成果的官方开源出口——每个重大研究方向都有对应的子目录,技术路线互相独立但共享同一个品牌入口。这种「联邦式」组织方式,让它成为了全球 AI 研究者观察微软最新动向的第一窗口。
unilm 的子项目可以分为几大阵营,每个阵营对应一个前沿研究方向:
Kosmos-1 是微软在 2023 年初发布的里程碑式多模态大语言模型(MLLM),它能同时处理文本、图像和音频输入,被视为 GPT-4V 之前最具代表性的开源多模态方案之一。Kosmos-2 在此基础上引入了「视觉定位」(Grounding)能力——模型不仅能说「图里有一只猫」,还能精确标出猫在图中的位置。
Kosmos-2.5 则是该系列的最新力作,专门针对「文本密集型图像」设计,可看作是一个超级 OCR + Markdown 生成器的结合体。它能识别发票、合同、学术论文、PPT 等复杂文档,将其中的文字提取出来并转换为结构化的 Markdown 格式,同时保留文字的空间坐标信息。
图1:Kosmos-2.5 的输入——文本密集型图片(如论文截图、发票、PPT)
图2:使用 OCR prompt 输出的空间感知文字块,每个文字块附带其在图中的坐标
图3:使用 Markdown prompt 输出的结构化文本,保留标题、段落、表格等文档结构
这意味着 Kosmos-2.5 可以原生理解文档的「版式」,而不是简单地把图片转成文字。这对于企业级文档理解、智能归档、内容审核等场景意义重大。
LayoutLMv3 是该系列最成熟、最广泛落地的子项目,被大量企业用于文档智能(Document AI)场景。它将文本、布局信息和图像视觉特征联合建模,让模型能够理解文档的结构——比如区分标题和正文、识别表格位置、理解多栏排版。微软官方发布的 Hugging Face transformers 集成,让它的使用门槛大幅降低。
图4:LayoutLMv3 架构图,展示文本、布局、视觉三模态融合的设计
LayoutLM 系列的影响力远超学术圈:金融领域的票据识别、医疗行业的病历结构化、法律行业的合同解析——几乎所有需要「读懂文档」的 B 端场景,背后都有 LayoutLM 的身影。v3 版本更是引入了「统一文本图像遮罩」(Unified Text and Image Masking)策略,大幅简化了训练流程。
如果说 KOSMOS 和 LayoutLM 是「应用层」,那这几个子目录就是「基础层」。
BitNet 是 2023 年底引爆学术界的工作——它证明了 LLM 可以用 1-bit 权重训练,即每个参数只有 -1、0、+1 三个取值,而性能几乎不下降。这直接挑战了「模型越大、能耗越高」的固有认知,被认为是大模型端侧部署(手机、边缘设备)的关键技术路径之一。
DeepNet 将 Transformer 扩展到 1000 层,研究的是训练稳定性和深度Scaling的极限。RetNet 提出了 Retention 机制,被认为是 Transformer 的有力继任者,在保持并行训练效率的同时实现了线性推理复杂度。LongNet 则将上下文窗口扩展到 10 亿 tokens,专门解决超长文本处理问题。
BEiT-3 是微软多模态融合的集大成之作——它用一个统一的 Transformer 架构同时处理文本、图像和视觉-语言多模态任务,在 2022 年刷新了多个 SOTA 记录,被视为「多模态大一统」趋势的代表作之一。
从代码结构看,unilm 采用的是典型的研究代码组织方式:每个子项目独立成目录,有各自的 requirements.txt、README 和训练脚本,但没有统一的入口脚本或封装好的 Python 包。这意味着,如果你只是想用 LayoutLMv3 做一次文档分类,可以直接参考 examples/ 目录下的示例;如果你想复现 Kosmos-2.5,则需要自己搭建完整的训练 pipeline。
这种「毛坯房」式的开放策略有其深意:它鼓励研究者深入理解代码细节,而不是简单调用 API「黑盒」使用。对于有深度学习经验的开发者来说,这种开放性是宝贵的;对于希望快速集成的团队来说,这无疑提高了上手门槛。
实事求是地说,unilm 不适合「一键部署」。主要原因:
好消息是:LayoutLMv3 和部分 BEiT 模型已集成到 Hugging Face transformers 官方库,这意味着可以通过 pipeline 接口零代码推理,门槛大幅降低。而 Kosmos 系列、BitNet 等更前沿的工作则需要从源码编译。
unilm 的增长曲线,本身就是一部浓缩的 AI 发展史:
从 2021 年初 UniLM 首次开源的数千星,到 2022 年 BEiT-3 引发的多模态热潮,再到 2023 年 Kosmos 系列和 BitNet 的爆发式增长——每个 AI 圈内的热点话题,几乎都能在 unilm 里找到对应的开源实现。
更重要的是,微软通过 unilm 展示了大型科技公司参与开源研究的新范式:不完全开源(部分模型权重需要申请)」但充分开源代码,既保护了商业利益,又让学术社区受益。这种「半开放」策略正在被更多公司效仿。
适合使用 unilm 的场景:
建议避开的场景:
推荐的上手路径:
pipeline("document-question-answering"))总结:microsoft/unilm 不是一个「开箱即用」的工具库,而是一座「AI 研究者宝库」。它的价值不在于降低了使用门槛,而在于将微软最前沿的研究成果以代码形式透明地呈现给社区。如果你是一位 AI 研究者或深度学习开发者,这里几乎可以找到过去五年微软在 NLP 和多模态领域最重要的技术脉络。