Layr-Labs/d-inference
Private Inference Network on Idle Macs
Darkbloom (d‑inference)
What it is – Darkbloom は、Apple‑silicon Mac の所有者が空きの GPU/CPU サイクルを OpenAI 互換のバックエンドとしてレンタルできる、パブリック・アルファ版の分散型推論サービスです。ユーザーは通常の OpenAI や Anthropic のリクエスト形式で、単一の HTTPS エンドポイント(https://api.darkbloom.dev/v1)にアクセスします。リクエストは、Apple の MLX ライブラリを介してモデルを インプロセス で実行するプロバイダーマシンにルーティングされます。
コアアイデア
| アイデア | Darkbloom の実装方法 |
|---|---|
| 分散型コンピューティング | M1‑M2‑Ultra など、Mac は出力方向の WebSocket を通じて GCP Confidential VM(AMD‑SEV)で実行される Go ベースのコーディネーターに接続する、強化された Swift CLI(darkbloom)を実行します。 |
| プライバシー設計 | • 各リクエストに対して、NaCl Box(X25519 + XSalsa20‑Poly1305)によるエンドツーエンド暗号化。 • プロバイダープロセスはロックダウン済み(Hardened Runtime、SIP、 PT_DENY_ATTACH)で、マシン所有者がデバッガーをアタッチしたりメモリを読んだりできないようにしています。 • プレーンテキストが露出するのはコーディネーターのハードウェア暗号化 VM メモリ内のみであり、ログや永続化は一切行われません。 |
| ハードウェア認証 | 4段階のチェーン: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[Consumer (SDK / curl / UI)] -->|HTTPS| CO[Coordinator (Go, GCP Confidential VM)]
CO -->|WebSocket + NaCl Box| P[Provider (Swift CLI on macOS)]
P -->|Metal GPU via MLX| GPU[Apple Silicon GPU]
P -.->|encrypted SSE| CO
CO -.->|streamed response| U
- コーディネーター – 認証、課金、プロバイダー選定、ペイロードの再暗号化、SSE チャンクのリレーを担当。
- プロバイダー –
mlx‑swift‑lmでモデルをロードし、オンデバイスで推論を実行する、強化された macOS プロセス。OS ユーザーにプレーンテキストを露出することはありません。 - モデル – 中央で管理(
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 以上 RAM、50 GB 以上の空きディスク、出力 HTTPS 接続。
- インストール – 1行で:
スクリプトは署名を検証し、Secure Enclave ヘルパーをプロビジョニングし、認証用に MDM プロファイルを(オプションで)インストールします。curl -fsSL https://api.darkbloom.dev/install.sh | bash - デーモンの起動
darkbloom start # background launchd service darkbloom login # アカウントをリンクするための device-code フロー darkbloom status # ハードウェア、信頼度、収益を確認 - モデル管理 –
darkbloom models download gemma-4-26b、darkbloom models list、darkbloom models remove …。 - 収益 – Web コンソール(
https://console.darkbloom.dev)で確認。自らのノードにルーティングされたリクエストは無料。それ以外のトラフィックは以下のトークン単価に従います。
料金(パブリック API)
| トークンタイプ | デフォルト料金 |
|---|---|
| 入力 | $0.05 / 1 M トークン |
| 出力 | $0.20 / 1 M トークン |
| 1リクエストあたりの最低課金額 | $0.0001 |
| プラットフォーム手数料 | docs/architecture/billing.md#invariants で定義 |
料金はモデルごとに異なり、個々のプロバイダーが上書き可能。ライブリストは常に GET /v1/pricing で確認可能。
セキュリティとプライバシーのハイライト
- ゼロ観測表面 – 推論は、暗号化されたペイロードを受け取るプロセス内に完全に実行される。サブプロセスも、ローカルサーバーも、IPC も存在しない。
- カーネルレベルのデバッガー拒否 –
PT_DENY_ATTACHにより、外部デバッガーのアタッチが不可能。 - ハードened Runtime と 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 Developer Program Agreement の対象となる可能性があるとの免責事項も含んでいます。
どんな人が使うべきか?
- センタライズされたクラウドコストを避けたいが、OpenAI 互換エンドポイントが必要な 開発者。
- コモディティハードウェア上でプライバシー保護型推論のテストベッドを探している 研究者。
- データをプライベートに保ちながら、空きの GPU サイクルを収益化したい Mac 所有者。
- 自社の 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 コンピューティングの注目すべき例となっています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト