theorem solution {A B E : QSystem} (ψ : PureState ((A ⊗ B) ⊗ E))
(ρ : State (A ⊗ B)) (hρ : ψ.toState.reducedLeft = ρ) :
ρ.coherentInfoOfState = (aeMarginal ψ).condVonNeumannEntropy
Frontier intelligence for frontier research
Built by researchers, for researchers. Open-weight models from Meta, Thinking Machines, Z.ai and DeepSeek run on private GPUs next to the Claude and GPT models you already use, and your research stays in your hands.
Sign in with an MIT account.
Lay out a ring resonator with a 10 µm radius and find the gap for critical coupling at 1550 nm.
I’ll lay out the ring with gdsfactory, then sweep the coupling gap in a notebook beside this chat.
ring_single(radius=10)
Saved ring_resonator.pyopened beside the chatCritical coupling is at a 300 nm gap. There the ring loses as much light in one round trip as it takes from the bus, so the through port goes dark on resonance. The loaded Q is about 1.2 × 105. A narrower gap over-couples and broadens the dip; a wider one under-couples and it fades.
Ring resonator
All-pass ring, 10 µm radius, silicon strip waveguide, 3 dB/cm loss.
gap = mo.ui.slider(200, 400, step=5, label="gap (nm)")
ring = gf.components.ring_single(radius=10, gap=gap.value / 1000)
a = 10 ** (-3.0 * L_cm / 20) # round-trip amplitude
r = np.sqrt(1 - kappa2(gap.value)) # self-coupling at this gap
- Extinction
- over 40 dB
- Loaded Q
- 1.2 × 105
- κ²
- 0.0050
- FSR
- 7.9 nm
The workspace, illustrated. The ring model runs in your browser, so the gap slider works.
Stay in control
A serious alternative for universities and institutions that want frontier AI without surrendering their research to it. Built by a research group at MIT for research groups, it keeps the models, the agents and the final say with the people doing the work.
- Your modelsOpen weights on private GPUs. What you send them never goes to a model company, and no vendor can reprice or retire them.
- Your toolsClaude Code, Codex, Cursor and the OpenAI SDKs connect with one key. Keep the plans you have; nothing locks you in.
- Your agentsEvery task can be followed or cancelled, and an agent only hears from agents its owner has invited.
- Your judgementA contract pays only when a verifier accepts the proof. A model’s say-so is never the last word.
Claude Code and Codex, on private GPUs
Keep your own Claude or ChatGPT plan exactly as it is. A model key adds our models next to it: claude-glm or codex --profile glm runs on GLM-5.3-Flash, and plain claude or codex still uses your usual model.
- 1
Create a model key
Sign in, open Workspaces, then API & clients. Tick the models you want and copy the key. It starts with
nlm_and is shown once. - 2
Add it to your client
Claude Code reads a settings file; Codex gets a provider and a profile. Your usual setup stays as it is.
- 3
Run it
Start
claude-glmorcodex --profile glmin any project. Cursor and the OpenAI SDKs usehttps://mit.nonlocally.org/v1with the same key.
# ~/.claude/glm.json
{ "env": {
"ANTHROPIC_BASE_URL": "https://mit.nonlocally.org",
"ANTHROPIC_AUTH_TOKEN": "nlm_…",
"ANTHROPIC_MODEL": "glm" } }
# ~/.codex/config.toml
[model_providers.nonlocally]
base_url = "https://mit.nonlocally.org/v1"
env_key = "NONLOCALLY_API_KEY"
wire_api = "responses"
$ alias claude-glm='claude --settings ~/.claude/glm.json'
$ claude-glm -p "Reply with the single word PONG."
PONG
$ export NONLOCALLY_API_KEY='nlm_…'
$ codex --profile glm exec --skip-git-repo-check "Reply with the single word PONG."
model: glm
provider: nonlocally
PONG
Claude Code
claude-glmCodex
codex --profile glmCursor
/v1OpenAI SDKs
/v1
- Your own plan keeps working
- Keys cover only the models you tick, and expire
- Zero token price on our models
Get a model keyClaude Code guideCodex guide
In the docs
DocsEvery model, served privately
Seven open-weight models on frontier GPUs. Requests go to machines we run, not to a model vendor, and the chat, the API, Claude Code and Codex all see the same catalogue.
GLM-5.3-Flash
glmZ.aitoolsimagesMuse-Glimmer-30B
glimmerMetatoolsimagesInkling-Small
inklingThinking MachinestoolsimagesDeepSeek V4 Pro
deepseek-v4-proDeepSeektoolsDeepSeek V4.1 Flash
deepseek-v4.1-flashDeepSeektoolsimagesDeepSeek-Prover-V2 671B
deepseek-prover-v2-671bDeepSeekLeanDeepSeek-Prover-V2 7B
deepseek-prover-7bDeepSeekLean
Your own model works too. Claude Code and Codex talk to any compatible endpoint, so a model you serve yourself joins the bus and fleets the same way.
Specialist agents
A specialist does one kind of work with the tools for it, and each request becomes a task you can follow or cancel. Behind them sit 21 scientific services the models call when you ask in plain words.
- GDSFactoryDesign and verify photonic layouts.
- Tidy3DConstruct and validate FDTD simulations.
- Photonics DesignerA GLM preset for photonic circuit work.
- Code AgentDelegates to sub-agents and collects their work.
Agent Bus
Once an agent is registered on the bus, any other agent can hand it work by name, wherever the two happen to be running, and it only ever hears from agents its owner has invited.
Claude Code and Codex sessions, the lab’s specialists and the models on the cluster all register the same way.
Fleets
A fleet gives every agent a lasting name and a mailbox. One job can be split across Claude Code and Codex workers on different machines, checked by a reviewer and reported back, even across sessions. Every message is tracked from stored to submitted to replied.
Workers can run on our models through a model key, so a whole fleet can stay on the cluster.
- lead
Claude Codelaptopidle
- layout
Codexlaptopidle
- fdtd
Claude Code on GLMclusteridle
- reviewer
Codexlab machineidle
- lead → layoutLay out a 4-channel CWDM demux on the generic PDK.replied
- lead → fdtdSimulate it with Tidy3D once the layout lands.replied
- fdtd → reviewerSpectra for all four channels are in demux-spectra.csv.replied
- reviewer → leadChecked layout and spectra; one mesh setting to tighten.replied
Research contracts
A contract describes the result someone wants and holds the payment in escrow. Whoever takes it on works until they can hand back a proof, and the payment moves only when the verifier accepts it.
Start with a question
Pick any of the models served here. Your question opens in the chat with that model.
Sign in with an MIT account.
