Skip to main content
Phase 5 — experimentalRequires Chrome 113+ / Edge 113+ / Safari 18+

Browser Node

This page lets you try a small AI model directly in your browser. The local demo stays on your device; serving the live mesh from a browser tab is still experimental and depends on relay support.

This tab can become an IICP mesh node. Step one runs a real AI model in your browser — no installation, no server, no data leaving your device — and the mesh-participation panel below shows exactly what stands between this tab and serving the live network. Model weights download once (~300–1500 MB) and are cached locally.

Powered by @mlc-ai/web-llm (WebGPU + WASM). Part of the hybrid browser node epic (Phase 5).

What this experiment proves

AI can run near the user

Not every AI task has to start on a distant server. Some work can happen on a personal device.

Browsers are not full servers

A tab cannot accept normal inbound traffic, so mesh participation still needs relay and stability work.

What the model knows about this page

Chat calls receive a short factual IICP context. A mesh answer is described as coming through IICP from a selected provider. A WebLLM answer is described as running locally in this browser, with no remote provider selected. The context includes only facts this client can establish and does not reveal hidden routing data or turn the model into an IICP persona.

Checking browser compatibility…

How it works

1WebGPU runtime

Chrome 113+ exposes WebGPU — a low-level GPU API. @mlc-ai/web-llm compiles small open models (Qwen, Llama) to run on your device via a WASM kernel, using the GPU when available.

2IndexedDB cache

Model weights (~300–1500 MB) download once and are stored in your browser's IndexedDB. Subsequent page loads are instant.

3CIP-compatible output

The runtime exposes the same chat() interface as the IICP client SDKs, and the provider glue can register this tab as a mesh node via a relay. The mesh-participation panel above shows whether a relay is available right now.

Constraints

Browser supportThe in-browser model needs WebGPU. We test it on Chrome / Edge 113+ (Chromium). Safari 18+ and Firefox (with dom.webgpu.enabled) also ship WebGPU and should work, but we haven't automated those engines — try the load button to confirm. The “Ask the mesh” path below needs no WebGPU and works on any modern browser.
MemoryLlama 3.2 1B requires ~1.5 GB VRAM; 3B requires ~4 GB. Phones and older integrated GPUs may OOM.
First-run download300–1500 MB depending on model. Subsequent loads use the cached weights.
Inference speedSlower than a dedicated local GPU. Suitable for interactive chat; not for high-throughput batch workloads.
Provider registrationBrowser nodes serve through a relay (a tab can't accept inbound connections directly). When a relay is available, the panel above un-gates “Start serving” automatically — relays are currently experimental and best-effort, so availability can come and go.
Privacy boundaryLocal inference keeps your own prompt on this device. If you serve tasks for others, their requests reach this tab through the relay path; treat browser-provider mode as experimental and do not use it for regulated or sensitive workloads yet.