实验性双 DGX Spark + DeepSeek-V4-Flash + n8n + Hermes 栈
高级10 分钟阅读私有/本地AI

实验性双 DGX Spark + DeepSeek-V4-Flash + n8n + Hermes 栈

如何评估面向 DeepSeek-V4-Flash 的实验性社区双 DGX Spark 路径:用 n8n 处理确定性流程,用 Hermes 处理需要判断的流程。

您应该能够做到的事情

双 Spark DeepSeek-V4-Flash 服务是实验性社区路径,不是 NVIDIA 或 vLLM 生产配方。在添加 n8n 与 Hermes 之前验证确切构建,并由人工把关每个不可逆操作。

仅在此浏览器中保存。
本文内容

购买第二台 DGX Spark 后,可以考虑这样一套实验室架构:运行大型模型的本地推理、与业务系统交互的自动化,以及智能体运行时。它不是受官方支持的交钥匙技术栈。

更严谨的方案范围要窄得多。评估时应把以下四层保持为可分离组件:

  1. 互连层: 两台 Spark 用于分布式推理(NVIDIA 集群文档连接两台 Spark 的 playbook)。
  2. 实验性模型服务器: 一条由社区构建、跨两个节点运行的 OpenAI 兼容路径,用于 DeepSeek-V4-Flash(或 DSpark 投机解码变体)。
  3. 确定性自动化: n8n 负责 webhook、定时任务、CRM/电子邮件/Slack 等有副作用的操作、验证和人工审批关卡。
  4. 判断型运行时: Hermes Agent 负责分流、起草、调查,以及需要记忆和多步骤推理的工具使用(官方 API 服务器文档官方 webhook 文档)。

本文中的 n8n 与 Hermes 组合只是说明性集成,并非任一供应商记录或支持的开箱即用路径。如果工作流需要把智能体结果返回 n8n,请使用经过 bearer 认证的 Hermes API 服务器。Hermes 的 HMAC webhook 适配器是另一种事件入口:它会触发智能体,并把结果发送到配置好的目标,而不是为 n8n 定义通用的同步返回接口。

可选的第五层是 OpenClaw,用于聊天频道用户体验(Telegram、Slack 等);需要沙箱策略时,可选择通过 NemoClaw 和 OpenShell 启动。NemoClaw 目前是 alpha 早期预览项目,而非生产就绪软件。以下三个工作流都不要求使用 OpenClaw 或 NemoClaw。

不要让智能体循环自动发送客户邮件、提交法律文件、更改生产基础设施或执行付款。在日志、幂等控制和经过审阅的运行次数足以让你信任整条路径之前,所有不可逆操作都必须经过人工审批节点。

DeepSeek-V4-Flash 在两台 Spark 上改变了什么

DeepSeek-V4-Flash 是混合专家模型,官方模型卡标明其有 284B 总参数、13B 激活参数1M-token 上下文窗口。Instruct 权重对路由专家使用 FP4,其余部分使用 FP8。该组合在 Spark 上很重要,因为:

  • 与标称规模相近的稠密模型相比,较少的激活参数有助于控制解码成本。
  • 长上下文适合处理仓库片段、工单历史和策略包等智能体工作负载,前提是检索到正确材料,并继续核验输出中的主张。
  • DSpark 的检查点是同一个模型,附加了一个投机解码模块。其官方模型卡示例使用一个四 GPU GB300 节点,而不是两台 Spark;下面讨论的社区 vLLM 报告使用非 DSpark 检查点在两个 GB10 系统上。

应把公开的 tokens/秒和最大上下文结果视为特定配方的报告,而不是对你的线缆、驱动、容器或并发配置的保证。官方模型卡没有记录经过验证的双 Spark 部署;DSpark 示例使用的是一个四 GPU GB300 节点。2026-08-10 重新核对时,open vLLM issue #40969 报告称,在两台 GB10 系统上采用 FULL_AND_PIECEWISE CUDA 图、分块预填充、Marlin MoE、FP8 KV 缓存和 TP=2 的固定 vLLM 构建版本时,第六或第七次请求会挂起。这只是该配置的证据,不能推广到所有部署。请把这条路径限制为固定版本的实验,并保留回滚方案。

参考架构

                    ┌─────────────────────────────┐
   Forms/CRM/Git ──►│ n8n (validate, branch, HITL) │──► Slack / CRM / email
                    └──────────────┬──────────────┘
                                   │ HTTPS + bearer auth
                                   ▼
                    ┌─────────────────────────────┐
                    │ Hermes (memory, tools, draft)│
                    └──────────────┬──────────────┘
                                   │ OpenAI-compatible /v1
                                   ▼
              ┌────────────────────────────────────────┐
              │ Spark A ◄── QSFP / RoCE ──► Spark B    │
              │ experimental community TP=2 model path │
              └────────────────────────────────────────┘

要避免整套系统停留在演示阶段,应遵循以下设计规则:

层次负责内容不得负责
n8n触发器、schema、重试、SaaS 写入、审批局域网上开放的 shell
Hermes分类、起草、研究步骤、工具使用在生产环境中静默触发副作用
模型服务器token 输入与输出业务凭据
OpenClaw(可选)人工聊天渠道 + 允许列表未受沙箱保护的主机 root 权限

把 Hermes(以及使用时的 n8n AI 节点)指向集群端点,将其作为标准的 OpenAI 兼容 base URL。API 密钥应限制在 LAN 或 VPN 内;不要把 vLLM 端口暴露到公共互联网。

上线前启用清单(顺序很重要)

1. 双 Spark 互连

遵循 NVIDIA 手册,而非传闻:

  • 两个节点使用相同的用户名。
  • 在匹配的 ConnectX-7 端口之间使用一根 QSFP 电缆。NVIDIA 的操作指南指出,使用一根电缆即可实现满带宽,且未记录在相同两台系统之间使用第二根电缆时的吞吐量提升。
  • 为高速路径分配专用的 L3 地址 / netplan;将 10 GbE 或 Wi-Fi 保留用于管理及互联网连接。
  • 节点之间启用免密 SSH。
  • 在排查 NCCL 错误之前,请确认接口状态显示为 Upibdev2netdev / NVIDIA 步骤)。

NVIDIA Sync 的 Cluster Assistant 可为受支持拓扑配置 ConnectX-7 与 SSH;它不为你安装推理栈。

2. 模型服务器

  • 选择一套具体的社区配方,明确固定容器或构建版本、CUDA 技术栈、vLLM 补丁、启动命令和已知限制。不要从本文的零散片段拼出生产命令。
  • 确认该配方明确支持你的两台 GB10 节点和确切的 DeepSeek-V4-Flash 检查点。张量并行度为 2 是此处需要测试的假设,而非官方支持承诺。
  • 仅在私有接口上暴露 /v1/models/v1/chat/completions
  • 记录实际配置的最大上下文长度、最大并发序列数、KV 数据类型,以及是否启用了投机解码。
  • 当前 Hermes 文档要求配置的模型上下文至少为 64K 个 token。上下文更小的服务配置不能证明与当前 Hermes 兼容;连接之前,应配置并持续负载测试 64K 或更大的服务配置。

接入智能体前,应使用短提示、长提示、重复提示和并发提示进行冒烟测试。已报告的双 Spark 故障会在多次请求后才出现,因此单次 “hello” 几乎不能证明什么。在固定版本通过你的硬件持续负载测试前,不应把这条路径视为生产就绪。

3. Hermes

  • 按官方 Hermes 快速入门 安装,并把模型提供方配置为私有 OpenAI 兼容 base URL。
  • 对于以下请求-响应工作流程,请启用 API 服务器,设置一个强 API_SERVER_KEY,将其部署在私有接口上,并验证 GET /health(默认文档端口 8642)。使用 /v1/responses 获取直接结果,或使用 /v1/runs 加上状态轮询处理长时间任务。
  • 如果你的使用场景是事件入站并转发到其他位置,请使用单独的 webhook 适配器:命名路由、V2 时间戳 HMAC、请求 ID 用于去重,以及默认端口 8644。请勿将它的确认信息误认为是智能体的输出。
  • 在配置允许列表并安排人员监控日志之前,请勿开放宽泛的 shell 权限。API 密钥授权的是对智能体工具的访问,而不只是模型文本。

在 DGX Spark 上,NemoClaw 可以在 OpenShell 中运行 Hermes,并应用文件系统/网络/进程策略。请将其视为一个 alpha 评估路径,而非生产环境的安全保证。

4. n8n

  • 在同一可信网络(或 VPN)上自托管。优先采用 n8n 本地 OpenAI 兼容端点幂等性与人工审批关卡 中的模式。
  • 对于下文使用的请求-响应 Hermes 交接,请使用 n8n 官方 HTTP 请求节点,配置 Bearer 凭据和明确的超时时间。在 n8n 或业务系统中保留持久的业务幂等性记录。Hermes 的 API 服务器支持 Idempotency-Key 响应缓存,持续时间为五分钟,但该有限的传输层窗口不能替代持久的工作流去重。如果你有意选择单独的 Hermes webhook 路径,n8n 的 Crypto 节点 可以生成 HMAC,但签名字节和 V2 时间戳头必须严格遵循 Hermes webhook 契约。n8n ↔ Hermes webhook 交接 是一个示例设计,而非官方供应商集成。

三种候选评估工作负载

用例 A:私有支持分诊

问题: 工单含你不想放进公共模型提供方的客户文本。分诊仍需要判断:严重度、产品区域、重复检测、起草回复。

流程:

  1. 帮助台 webhook → n8n。
  2. n8n 验证模式,剥离机密信息(令牌、原始信用卡号),按工单 ID 去重。
  3. n8n 记录工作流级幂等键,再把最小化后的载荷发送到私有 Hermes API 服务器,使用范围明确且版本化的 support-triage 提示约定,并通过 Bearer 身份验证。
  4. Hermes 调用本地 DeepSeek-V4-Flash 并返回响应。n8n 解析并验证请求的 {severity, product, confidence, draft, needs_human} 对象;格式错误或不完整的输出将转交人工审核。
  5. n8n 分支处理:低置信度或 needs_human → Slack 审批;高置信度 + 允许列表内的操作 → 仅更新工单字段(在完成正式上线验收之前仍不得自动发送)。

待验证的假设: n8n 连接器和 Hermes API 调用可能支持此流程。模型端点仍位于私有网络中,但出站工具和 SaaS 连接器仍需跨越该边界,因此需要出站控制。评估增加上下文是否能提升结果;仍需验证草稿。

不要: 让 Hermes 在没有 URL 允许列表时,根据工单文本打开任意 URL(这会引入提示注入风险)。

用例 B:长上下文内部研究助手

问题: 律师、运维或工程负责人需要“读这 40 个 PDF / 此 monorepo 切片并产出结构化简报”,而不把语料上传到 SaaS LLM。

流程:

  1. 人工将任务文件夹放入(或 n8n 监听一个安全邮箱)。
  2. n8n 打包元数据和检索结果(或由 Hermes 工具从允许列表内的路径或 RAG 索引中读取)。
  3. Hermes 对 DeepSeek-V4-Flash 运行多步骤研究提示,并使用明确的引用 schema。
  4. n8n 验证响应结构并将其放入审核队列。要求每个主张都包含来源路径和 span;人工审核后接受或拒绝。

为何选择 V4-Flash: 官方模型卡标明的 1M 上下文窗口和高效长上下文注意力机制是主要理由,但上下文窗口 ≠ 准确性。检索质量和引用核验比最大 token 数更重要。

不要: 自动提交监管报告或医疗摘要。只用于理解材料和起草内容,最终必须由持证专业人员签署。

用例 C:通过聊天界面访问的常驻运维调查助手

问题: 值班人员希望系统“监控这些告警、查询日志并提出运行手册步骤”,还希望能通过 Telegram 或 Slack 追问,同时不赋予模型整个基础设施的 root 权限。

流程:

  1. n8n 定时任务或 PagerDuty webhook 收集告警指纹。
  2. Hermes 通过允许列表内的凭据使用只读工具(日志查询 API、状态端点)进行调查。
  3. Hermes 返回假设、证据和建议的下一步命令,但不执行该命令。
  4. 可选的 OpenClaw 或 NemoClaw 频道,供值班人员通过单独配置的智能体运行时追问,并启用配对允许列表(OpenClaw 安全基础)。不要假设 OpenClaw 与 Hermes 共享会话或内存存储。

双 Spark 假设: 并发调查或更大的模型和上下文可能使第二个节点具有价值。应把它与单台 Spark 和托管推理进行比较,并实际测量队列、质量、延迟、总成本和隐私要求。

不要: 自动修复。建议的命令应交给人工,或交给权限范围严格限定且使用独立认证的运行手册执行器。

第一天就应设计应对的失败模式

故障症状缓解措施
NCCL/RoCE 配置错误挂起或回退到 TCP,导致延迟极高将 NCCL 绑定到 RoCE 接口;在启动智能体之前验证高速互连
上下文占用过大一个长时间任务导致其他任务资源不足限制 max_model_len 和并发数;在 n8n 中排队
入口滥用攻击者触发 HermesBearer 认证或 HMAC + 时间戳;私有网络;速率限制
提示注入工单文本覆盖策略将系统和路由提示与工单文本分离;使用工具允许列表;不把原始 HTML 传给 shell
静默写入 SaaS重复的 CRM 更新使用幂等键;发送前由人工审批
模型漂移容器更新后配方失效固定镜像摘要;在 CI 中进行冒烟测试

达到“完成”的验收标准

只有在以下情况下,你才能声称已测试的范围是有效的:

  1. 固定版本的双 Spark 构建通过重复和并发持续负载测试,并覆盖上游报告的失败模式;记录确切的运行次数、上下文大小和错误率。
  2. n8n → Hermes → 模型整条路径均经过端到端认证并留有日志;n8n 会验证返回的应用层 schema。
  3. 至少有一个命名的工作流在每条外部消息上获得人工批准,并通过其预定义的评估集。
  4. 你已制定书面回滚方案:禁用 n8n 到 Hermes 的调用,回退到仅使用 n8n 的模板,或让 Hermes 指向更小的本地模型。

练习

选择用例 A。只实现以下内容:n8n 中的 webhook 验证、通过 bearer 身份验证的 Hermes API 服务器调用一份版本化提示约定、工作流级幂等记录、本地模型调用、响应 schema 验证和草稿预览。不要连接发送邮件节点。使用规模足够、具有代表性且已获批准的评估集,覆盖常见和罕见情况;预先定义严重度一致性、无依据主张、编辑量、延迟和失败标准。再根据这些证据决定是否需要第二台 Spark 或 V4-Flash。

延伸阅读

继续阅读

通过下一篇文章继续沿着相同的学习路径进行学习。