top of page

DeepSeek DeepInfer 开源发布揭示推理引擎,服务组件仍未公开

49分钟前
讀畢需時 13 分鐘

DeepSeek 已发布其内部推理框架 DeepInfer,但支撑完整生产服务所需的多个组件并未纳入公开软件包。此次 DeepSeek DeepInfer 开源发布支持 DeepSeek-V4.1-Flash,并公开了用于运行该公司模型的软件。它也清晰揭示了一项重要区别:获得推理引擎,并不意味着能够复现围绕它构建的服务体系。

DeepSeek 随附的文档描述了一套围绕专用硬件、协同调度和可复用计算构建的基础设施。公开发布版本提供离线推理,即开发者无需部署完整在线服务即可生成输出。缓存基础设施、拆分后的服务阶段以及部分负载均衡功能,仍需要额外集成。

这条边界的重要性超过了简单的开源与闭源标签。DeepInfer 借鉴了 vLLM、SGLang 和 TensorRT-LLM,这些成熟的推理项目已在应对部署挑战。DeepSeek 正将自身的实现贡献给这一共享领域。对于基础设施团队而言,眼下的问题是:哪些工程决策可以迁移到自身环境,哪些则依赖于 DeepSeek 仅作说明的系统。

DeepSeek DeepInfer 开源发布实际包含什么

DeepSeek 发布的是经过大量优化的模型执行引擎,而非其托管服务的完整副本。

inference engine 文档将 DeepSeek-V4.1-Flash 列为支持的模型。其默认检查点,即模型保存版本,为 DeepSeek-V4.1-Flash-1017。该发布版本列出了受支持的硬件:NVIDIA SM100 图形处理器和 Huawei Ascend 950 神经处理器。

这些具体信息界定了最初的目标用户。这是面向使用所列模型和加速器平台团队的基础设施软件。文档并未确认其对所有 DeepSeek 模型、旧款显卡或通用计算环境均提供同等支持。

DeepInfer 包含优化内核,即在加速器上执行数值运算的小型程序。它还包含协调模型执行和输出选择的运行时。这些层决定了模型指令如何高效地转化为硬件上的有效工作。

公开的功能列表不止涵盖数值例程。它包括分布式执行,即将推理工作拆分到多个处理器上,以及协调传入工作与设备执行的调度功能。它还包括结构化输出,可将生成文本限制为指定格式。

这些能力很重要,因为模型服务并不仅仅是加载其权重,即训练过程中学得的数值。请求会争夺内存和计算资源。它们的输入长度不同,输出完成的时间也各不相同。引擎必须管理这些差异,同时避免昂贵的硬件处于闲置状态。

DeepSeek 以 Apache 2.0 协议发布 DeepInfer。该协议规定了框架代码的条款;但它并不免除对模型和依赖项条款进行单独核查的必要。组织仍需评估其计划部署的完整软件包。

未包含的部分同样具体。README 列出了 KV 缓存系统、拆分的视觉编码、提示词处理和生成服务,以及跨副本的负载均衡。KV 缓存会存储中间注意力计算结果,以便后续处理复用早先的工作。

据 DeepSeek 称,这些服务所需的部分引擎功能已经存在。然而,公开软件包并不包括它们的完整部署。这一区别避免“完全开源”这一说法成为对整个运营平台的不准确描述。

因此,此次发布改变了外部人员可检查和运行的内容。它公开了 DeepSeek 推理选择的可运行实现,并附带示例和基准测试脚本。但它并不能证明外部团队仅通过构建该代码库,就能复现 DeepSeek 的生产服务。

对于希望了解 DeepSeek DeepInfer 的读者而言,这正是最关键的起点。代码发布真实存在,范围也相当可观,而其文档所界定的边界同样是故事的一部分。

基础设施团队获得代码,也承接集成决策

直接压力落在评估自托管 DeepSeek 的团队身上,因为他们现在多了一种需要根据自身运营要求进行评估的实现方案。

模型提供商的内部引擎,与通用服务框架构成了不同的参考点。DeepSeek 可以公开围绕其模型架构和观察到的工作负载设计的优化方案。外部运营者可以检查这些选择,而不必从托管服务的行为中推断它们。

这改变了技术评估的方式。调查响应缓慢问题的团队,可以在公开实现中检查调度、通信和输出处理。它可以区分模型执行问题与周边应用引入的问题。

不过,这种机会也带来了工作。团队必须确定公开的硬件要求是否符合可用容量。他们还必须决定如何将引擎连接至请求处理、存储、监控和恢复系统。

设想一个示例性的企业文档助手,它反复接收一组共享的技术手册。其提示词包含重叠内容,而单个问题和回答长度各不相同。这是一个部署场景,并非已有文档记载的 DeepInfer 客户案例。

引擎会影响每项请求的运行效率。周边缓存系统则影响重复文档内容是否需要重新计算。当流量在机器之间转移时,请求路由会影响有价值的已存储计算结果是否仍可访问。

引擎基准测试只能反映其中一部分体验。员工还会注意到回答开始前的等待、生成过程中的中断,以及需求上升时出现的故障。这些结果取决于数值执行以外的服务组件。

同样的区别也适用于采购。考虑自托管的买方需要获得有关运营责任、硬件可用性和应用兼容性的证据。公开代码的存在扩大了可供评估的选择,但并未解决这些问题。

DeepSeek 对部署的说明也表明,为何基础设施归属至关重要。其内部设计协调存储与计算,而不是将二者视为彼此独立的优化目标。复现这一安排,需要就网络、存储容量和故障处理作出决策。

对于规模较小的团队而言,采用部分理念或组件可能比重建整个架构更为实际。这是从该发布范围得出的分析性推论,而非由独立测试确立的部署建议。

因此,相关的竞争比较不应局限于原始生成速度。即使另一种实现公开了有吸引力的优化方案,契合现有运营体系的框架仍可能更可取。工程投入、可靠性和支持的工作负载都会影响决策。

技术知识管理也会在此处发挥作用。团队可以将基准测试配置、事故发现和部署假设保存在一个可搜索的知识库中。这一记录有助于避免后续比较混淆不兼容的测试条件。

DeepSeek DeepInfer 开源发布让更多实现细节可供审视。基础设施团队仍需自行判断采用什么、集成什么,以及其应用需要哪些证据。

该架构取决于工作如何在系统中流转

DeepInfer 的意义在于协同执行决策,其价值取决于硬件组织方式和工作负载形态。

DeepSeek 的部署架构将提示词处理与回答生成分开。Prefill 处理输入提示词;decode 生成后续输出 token,即模型读取和生成的单位。这些阶段对硬件提出了不同要求。

内部架构还分离了视觉编码,即将图像转换为语言模型可处理的表示。专用存储支持复用早先的计算结果。架构图描述了这套更广泛的生产系统,其中包括未纳入初始公开服务软件包的组件。

分离各阶段可让运营者依据不同工作负载分配资源。即使回答仍然较短,较长输入也可能带来显著的 prefill 需求。输入处理完成后,较长回答则可能持续产生 decode 需求。

DeepSeek 还介绍了专家并行,即将混合专家模型的专用神经组件分布到多个处理器上。其首选生产配置在 prefill 与 decode 之间有所不同。这反映了每个阶段在计算、内存访问和通信之间的不同平衡。

该公司的 Wide-EP 讨论比较了在 8 个和 64 个处理器上的专家并行。更大的组会改变专家计算和内存流量的分布方式。它也使通信效率和均衡的工作分配成为结果的核心。

这些考量说明,仅凭设备数量并不足够。通过高速本地链路连接的一组设备,与通过较慢网络通信的机器表现不同。硬件拓扑,即设备及其连接方式的布局,应纳入任何有意义的比较。

DeepInfer 还实现了推测解码,即提出草稿 token 并由主模型进行检查。DeepSeek 的 DSpark 机制利用置信度估计,决定多少草稿工作值得验证。其目标是避免将验证计算花在不太可能的候选项上。

这是一项具有可测量权衡的调度决策。检查更多草稿 token 并不会自动带来更多被接受的输出。有效结果取决于接受行为,以及硬件处理验证工作负载的能力。

另一项优化使处理器调度与加速器执行重叠进行。中央处理器在加速器处理当前计算时准备后续工作。DeepSeek 在解释这一方法时,明确致谢了现有的 SGLang 和 NanoFlow 实现。

这一归属很重要。DeepInfer 是对既有推理工程成果的补充,其中包含已确认的影响来源和共享技术。此次发布并不能证明每项列出的优化都源自 DeepSeek。

该引擎还提供旨在让不同请求批次间结果可复现的控制功能。其文档将批次不变推理和确定性采样功能限制于 NVIDIA。确定性采样需要指定设置,包括固定的序列种子。

这些条件对评估团队在软件变更后对比输出结果至关重要。README 中出现某项功能,并不意味着它在两类受支持的硬件平台上具有完全一致的可用性。因此,从架构角度理解 DeepSeek DeepInfer,讲述的是一系列协同约束,而非通用的性能捷径。

deepseek-recipe 处理应用与模型之间的边界

deepseek-recipe 解决协议与 Token 转换问题,这与让模型快速运行是两回事。

DeepSeek 在发布引擎公告的同时,还推出了采用 Rust 编写、并提供 Python 绑定的协议转换库。这些库会将请求转换为统一的对话表示形式,随后渲染模型提示词,并将生成的输出转换为受支持的响应格式。

配套项目的 README 早在 10 月 19 日就已修改,早于 DeepInfer README 在 10 月 20 日的修改。因此,两者配套出现不应被理解为两个仓库恰好在同一时刻首次开放。可以确认的是,DeepSeek 在其推理部署说明中将两者一并呈现。

deepseek-recipe 支持 Messages、Chat Completions 和 Responses 请求格式的转换。这些都是应用程序接口格式,即应用程序用于与模型服务交换请求和输出的约定。支持这些格式有助于将现有应用接入推理后端。

这一边界仍然很明确。调用方负责模型推理、工具执行和 HTTP 传输,即承载请求与响应的网络机制。deepseek-recipe 负责转换和解析,并不提供完整服务。

对于要求模型使用工具的应用而言,这种分离十分重要。工具调用是针对外部操作或函数的结构化请求。转换其表示形式并不会执行该操作、授予其权限,或证明其参数正确无误。

同样,格式兼容性并不代表模型行为等价。应用可以收到熟悉的响应结构,同时观察到不同的回答质量或推理行为。DeepSeek 关于与其官方服务保持一致的说法,需要针对应用实际使用的具体功能进行测试。

该项目还处理流式输出,即在生成进行时逐步返回内容。一个输出片段可能在字符、分隔符或工具参数的中途结束。正确的解析必须保留足够状态,以便解释后续片段,同时不损坏此前内容。

DeepSeek 的说明描述了处理这些边界的机制。这项工作不如加速器性能那样显眼,但应用开发者会直接感受到其影响。即使推理引擎能正确生成 Token,格式错误的数据流仍可能导致集成失败。

该 Token 转换设计还区分控制标记与普通文本。控制标记用于告诉模型对话中特定部分的起止位置。DeepSeek 表示,在编码过程中,用户提供的、看起来像这些标记的文本仍会被作为普通内容处理。

这解决的是特定的序列化边界问题。不应将其描述为针对提示注入的通用解决方案;提示注入是指通过不可信内容试图改变模型行为的做法。模型仍可能遇到以普通语言表达的误导性指令。

deepseek-recipe 的文档还对结构化输出作出了另一项有用区分。通过请求转换传递格式约束,本身并不会在生成期间强制执行该约束。推理后端必须应用相关的解码控制机制。

该项目采用 MIT 许可证,而 DeepInfer 使用 Apache 2.0。两者共同展示了部署路径中互补的层级:一个执行模型;另一个帮助应用正确地与模型通信。

生产环境声明与基准图表回答的是不同问题

DeepSeek 的内部运行数据描述的是其自身系统,而公开基准测试描述的是特定测试配置。

该公司表示,单个生产集群每天服务 155 万亿 Token。这是厂商报告的运行数据,并非基于公开版本独立复现的结果。不应将其视为对第三方部署能力的承诺。

部署说明描述了该集群周边的基础设施,包括缓存存储、请求路由和分离的处理阶段。其中多个系统并未包含在公开软件包中。若将这一生产总量视为仅属于引擎的基准表现,就会忽略这些依赖关系。

公开的预填充图表使用了 4 个 NVIDIA SM100 处理器。解码图表使用 64 个,且每项测试均位于单一横向扩展域内,即通过高速本地互连连接的一组设备。在讨论其结果时,应同时说明这些配置。

这些图表衡量的关系也不同。预填充图表比较了非缓存输入吞吐量与延迟,即处理工作所需的时间。解码图表则比较输出吞吐量与每位用户的生成速度。一种部署可以偏向总体容量,同时为每位用户提供不同的体验。

这意味着简单地得出“更快”的结论并没有太多意义。有效的比较需要使用相同的模型检查点、工作负载、数值设置、硬件布局和相关服务约束。否则,结果可能反映的是不同的运行选择,而非更优的引擎。

同样的谨慎也适用于 Wide-EP 图表。它考察的是所提供配置下某种特定的并行策略比较。这并不能证明每一种更大规模的部署都能同样受益,也不能证明任意机器之间的通信都具有相同开销。

DeepInfer 的 README 提供了通过随附扫描脚本复现其基准测试的方法,该脚本可在不同配置下运行测试。这提升了可审查性。本报道没有独立执行这些测试,因此图中展示的性能仍应归因于 DeepSeek。

中立的竞争框架还需要纳入现有推理项目。DeepSeek 表示,DeepInfer 最初主要构建于 vLLM 之上,并从 SGLang 和 TensorRT-LLM 中获得灵感。这一说明不支持将该发布描述为对周边生态系统的孤立替代。

SGLang serving framework面向更广泛的模型和硬件配置提供模型服务。其覆盖范围使运营者有理由在单一模型的性能图表之外对其进行评估。相关选择取决于各部署的需求。

因此,比较 DeepInfer 与 SGLang,不能只对照一个标题式吞吐量数字。还需要在可比条件下考察应用行为、集成工作量、支持的硬件以及故障恢复能力。现有可验证材料并未确定独立的胜者。

引擎内部的专家负载均衡与跨服务副本的请求均衡之间也存在区别。该发布包含专家并行负载均衡功能,但未包含 README 所列的完整副本级服务系统。简单地说“缺少负载均衡”会过于笼统。

DeepSeek DeepInfer 开源发布支持更细致地审视这些边界。它并不能证明应将所有内部生产环境声明纳入对公开软件包的预期。最可靠的评估仍应明确说明测量了什么、发布了什么,以及哪些内容尚未得到验证。

三项进展将显示该发布能走多远

接下来最有价值的证据将依次涉及可复现性、服务集成和应用行为。

首先,应关注包含完整配置的独立基准测试复现。具有参考价值的报告应明确列出准确的代码修订版本、模型检查点、硬件连接、工作负载和生成设置。它还应区分引擎测量结果与完整在线部署。

这类报告将增强外部团队能够从已发布实现中获得可比结果的信心。若存在显著差异,则需要调查,而非立即作出结论。构建设置、输入长度和并发量,即同时处于活跃状态的请求数量,都会改变观察到的性能。

最具参考价值的复现会同时公布总体吞吐量和单次响应时间。服务可以处理更多总量工作,却让特定请求等待更久。两项指标一并报告,有助于读者判断优化是适合交互式应用,还是主要有利于批处理。

其次,应关注周边服务组件的公开范围。DeepSeek 的 README 将缓存基础设施、分离的服务阶段和副本负载均衡列为本次发布之外的要求。未来若出现弥补这些缺口的代码或文档化集成,将减少采用者需承担的工作。

这将加强把 DeepInfer 视为更完整部署基础的理由。如果这些组件仍保持内部使用,该引擎对于审查和实验仍有价值。但它的采用将继续更重度地依赖各运营者现有的基础设施。

维护方面的证据也属于这一信号的一部分。能够反映实际行为的文档、清晰的兼容性要求,以及对已报告问题的修复,有助于判断外部使用者能否实际运行该软件。公开可用是这种关系的起点,而不是其最终深度的证据。

第三,应关注围绕 deepseek-recipe 的应用层兼容性测试。有价值的结果将检验流式边界、工具参数、推理内容和强制输出格式。这些测试将显示共享转换层是否能缩小不同部署环境之间的实际差异。

成功的测试将强化 DeepSeek 的说法,即第三方服务可以与其官方处理行为保持一致。失败则会指出转换支持与后端实现之间的分歧所在。无论哪种结果,都不应被混同为对模型智能水平的总体判断。

对于 DeepInfer 与 SGLang 的评估,这些进展比仓库关注度提供了更有用的依据。独立测量检验性能声明。服务集成关乎运行成本,而应用测试则关乎现有软件能否如预期运行。

未来数月的核心问题是,DeepSeek 已记录的生产方法中,有多少能够在公司之外被复现。这个问题兼顾了该发布的两面:大量公开工程工作,以及清楚说明的基础设施边界。

在采用 DeepSeek DeepInfer 开源发布之前,请将其文档说明的范围与用户实际需要的服务进行比较。阅读引擎要求时,也应结合部署说明,然后确定现有平台已经提供了哪些缺失组件。请将性能声明与其对应的硬件和工作负载条件绑定考虑。对于应用团队而言,应像审视生成速度一样仔细检查协议行为,尤其是在流式输出和工具调用支撑关键工作流时。记录哪些结论来自已发布代码、公司测量结果或你们自己的测试。随后,随着独立复现和集成方案的出现,重新审视这些结论。真正有用的决策在于:对于你的特定部署而言,此次发布是否消除了足够多的不确定性和工程工作,从而值得进一步评估。

 
 

免费开始使用

一款本地优先的AI助手

为了获得更好的人工智能体验,

remio 目前仅支持Windows 10+ (x64)和M-Chip Mac 。

你的 AI 工作伙伴

和 remio 一起高效工作

规划、创作、交付

一站式完成

bottom of page