Layr-Labs/d-inference
Private Inference Network on Idle Macs
Darkbloom (d‑inference)
是什么 – Darkbloom 是一个公开测试版的去中心化推理服务,允许 Apple Silicon Mac 电脑的所有者将其空闲的 GPU/CPU 计算能力作为兼容 OpenAI 的后端出租。消费者通过标准的 HTTPS 端点(https://api.darkbloom.dev/v1)发送 OpenAI 或 Anthropic 格式的请求;请求会被路由到运行模型的提供者 Mac 电脑上,模型通过 Apple 的 MLX 库在进程内执行。
核心理念
| 理念 | Darkbloom 的实现方式 |
|---|---|
| 去中心化计算 | Mac 电脑(M1‑M2‑Ultra 等)运行一个加固的 Swift 命令行工具(darkbloom),通过 WebSocket 以出站方式连接到运行在 GCP 机密虚拟机(AMD‑SEV)中的 Go 编写的协调器。 |
| 隐私优先设计 | • 每个请求均使用 NaCl Box(X25519 + XSalsa20‑Poly1305)进行端到端加密。 • 提供者进程受到严格限制(Hardened Runtime、SIP、 PT_DENY_ATTACH),确保机器所有者无法附加调试器或读取内存。 • 唯一的明文暴露仅存在于协调器的硬件加密 VM 内存中;该数据从不被记录或持久化。 |
| 硬件认证 | 四层链式认证:Secure Enclave 签名的认证数据块 → MDM 交叉验证 → Apple Managed Device Attestation (MDA) → APNs 代码身份签名。提供者的公钥绑定到其 Secure Enclave,协调器每 5 分钟验证一次。 |
| 兼容 OpenAI 的 API | 所有标准端点(/v1/chat/completions、/v1/completions、/v1/messages 等)无需修改即可使用;仅需更改基础 URL。支持流式传输(SSE)、工具调用、视觉功能和连续批处理。 |
| 自路由 / 直接模式 | 如果你拥有提供者节点,可以将请求路由到 你自己的 机器(X‑Darkbloom‑Route: self)以免费使用,或运行本地 OpenAI 兼容服务器(darkbloom start --local)完全绕过协调器。 |
架构概览
flowchart LR
U[消费者 (SDK / curl / UI)] -->|HTTPS| CO[协调器 (Go, GCP 机密 VM)]
CO -->|WebSocket + NaCl Box| P[提供者 (macOS 上的 Swift CLI)]
P -->|Metal GPU 通过 MLX| GPU[Apple Silicon GPU]
P -.->|加密 SSE| CO
CO -.->|流式响应| U
- 协调器 – 负责认证、计费、选择提供者、重新加密负载,并中继 SSE 数据块。
- 提供者 – 一个加固的 macOS 进程,使用
mlx‑swift‑lm加载模型,在设备上运行推理,且从不向操作系统用户暴露明文数据。 - 模型 – 集中存储于
https://models.darkbloom.ai,每个提供者会下载并验证(SHA‑256)模型。模型别名(如gemma-4-26b)在请求时解析。
快速上手(消费者)
from openai import OpenAI
client = OpenAI(base_url="https://api.darkbloom.dev/v1", api_key="sk-db-…")
stream = client.chat.completions.create(
model="gemma-4-26b",
messages=[{"role": "user", "content": "Hello, Darkbloom!"}],
stream=True,
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
或使用 curl:
curl https://api.darkbloom.dev/v1/chat/completions \
-H "Authorization: Bearer sk-db-..." \
-H "Content-Type: application/json" \
-d '{"model":"gemma-4-26b","messages":[{"role":"user","content":"Hello!"}],"stream":true}'
所有标准 OpenAI SDK 仅需更换基础 URL 即可使用。
运行提供者(赚取收益)
- 前提条件 – Apple Silicon(M1+),macOS 14+,≥8 GB 内存,50 GB 可用磁盘空间,支持出站 HTTPS。
- 安装 – 一行命令:
脚本会验证签名,配置 Secure Enclave 辅助工具,并(可选)安装 MDM 配置文件以支持认证。curl -fsSL https://api.darkbloom.dev/install.sh | bash - 启动守护进程
darkbloom start # 后台 launchd 服务 darkbloom login # 使用设备码流程绑定账户 darkbloom status # 查看硬件信息、信任等级、收益 - 模型管理 –
darkbloom models download gemma-4-26b,darkbloom models list,darkbloom models remove …。 - 收益 – 在网页控制台查看(
https://console.darkbloom.dev)。路由到你自己的节点的请求免费;其他所有流量遵循以下每 token 定价。
定价(公共 API)
| Token 类型 | 默认费率 |
|---|---|
| 输入 | $0.05 / 100 万 token |
| 输出 | $0.20 / 100 万 token |
| 每请求最低收费 | $0.0001 |
| 平台费用 | 定义在 docs/architecture/billing.md#invariants 中 |
费率按模型区分,个别提供者可覆盖;实时列表始终可通过 GET /v1/pricing 获取。
安全与隐私亮点
- 零可观测面 – 推理在接收加密负载的同一进程中运行;无子进程、无本地服务器、无 IPC。
- 内核级调试器拒绝 –
PT_DENY_ATTACH阻止任何外部调试器附加。 - 加固运行时与 SIP – 阻止内存读取 API;若要移除保护,必须重启并终止进程。
- 端到端加密 – NaCl Box 使用提供者认证密钥加密请求;响应块则重新加密回协调器。
- 认证链 – Secure Enclave 签名 → MDM → Apple Managed Device Attestation → APNs 代码身份签名,使协调器确信二进制文件真实且未被篡改。
- 威胁模型 – 仅物理攻击者能通过拆焊并探测内存芯片看到明文;所有软件层面攻击均被缓解。
成熟度与许可
- 状态 – 公开测试版。请预期存在破坏性变更、偶尔停机和频繁更新。
- 仓库结构 –
coordinator/(Go) – 控制平面、路由、计费、认证。provider‑swift/(Swift) – 运行在 Mac 上的加固 CLI。console‑ui/,admin‑ui/– Next.js 仪表板。docs/– 详尽的设计、安全与运维文档。
- 许可 – README 提及标准开源许可(见仓库中的
LICENSE),但也包含免责声明:服务按“现状”提供,且提供者软件可能受 Apple 开发者计划协议约束。
谁会使用它?
- 开发者:需要兼容 OpenAI 的端点,但希望避免集中式云服务成本。
- 研究人员:希望在普通硬件上测试隐私保护推理的实验平台。
- Mac 用户:希望在保护数据隐私的同时,将闲置 GPU 资源变现。
- 企业:需要本地推理能力但缺乏自有 GPU 集群;可利用聚合的 Mac 网络替代。
快速链接(来自仓库)
- 文档 –
docs/consumer/quickstart.md,docs/provider/installation.md,docs/architecture/security/encryption.md - API 参考 –
docs/reference/api-contracts.md - 计费不变量 –
docs/architecture/billing.md#invariants - 提供者 CLI 参考 –
docs/provider/cli-reference.md - 自路由指南 –
docs/provider/self-route.md - 直接模式指南 –
docs/provider/direct-mode.md
Darkbloom 是一个真实的开源尝试,旨在将大量闲置的 Apple Silicon Mac 电脑转化为一个隐私保护、兼容 OpenAI 的推理云。其设计依赖于硬件认证、端到端加密和加固的 macOS 进程,是去中心化 AI 计算的一个显著范例。
相关
- 项目
- 项目
- 项目
- 项目
- 项目