Skip to content

Internals

Device drops and recovery

What the room does when a device freezes, locks, reloads or leaves, how long it waits, and when it deals the layers again. Answers carry on from the last token shown.

What the room does when a device freezes, locks, reloads or leaves. Every token passes through every device that holds layers, so the room waits first (a device that comes back keeps its layers), then deals its layers to the others.

This is what the host’s screen shows when a device in the chain goes quiet in the middle of an answer.

After What happens What you see
3.5–5 s The host notices the silence (the limit grows with the device’s round-trip time). The answer is held, not failed, and new questions wait. “laptop stopped responding; waiting for it (Stop gives up)”
Any time it answers again It finishes the answer and keeps its place and layers. No re-deal. “laptop is back”
15 s (computer) or 60 s (phone) The device is dropped from the room, as if it had left. Every lap in flight fails and the room waits for it to come back into its slot. “laptop stopped responding (layers 20–39): waiting for it to come back, then this answer carries on”, and a Re-deal the layers button. In an idle room: “…waiting for it to come back (re-dealing without it in 60 s), or re-deal the layers”.
60 s after the drop With Re-deal on its own on (the default), the host deals the layers over the devices still here. In the room log: “laptop did not come back in 60 s: re-dealing the layers (experimental auto re-deal)”

A device that is still loading its layers is never dropped for silence. Its tab can block for seconds while it converts weights.

The answer, or the Code run, does not start over. When the room is whole again, the host runs the same generation from where it stopped: the prompt plus every token already shown. Nothing on screen changes, and with Exact wording the text is the same as if nothing had happened. A run can recover this way up to 3 times.

With Re-deal on its own turned off (Room settings → Model), the room waits for the device or for you to press Re-deal, and a waiting answer gives up after 6 minutes.

If a network stays silent for about 15 s, the browser can give up on a connection for good even though both devices are fine. The room redials that link with the same layers. The answer in flight fails at once with “ask again”, and the next question starts clean. If the redial doesn’t happen, the other side closes the link after 45 s.

A locked iPhone, or Safari in the background, stops running the page, so phones get 60 s instead of 15 s before they are dropped. A phone that was away for 3 s or more reconnects by itself and keeps its layers if its slot didn’t change. On an iPhone with 30 s in the background, the answer finished with the same text. How to keep a phone awake: Phones and tablets.

A device reloads. It rejoins the room by itself under the same name, within 10 minutes, and the host puts it back into its old slot. Pooled keeps a copy of each device’s part of the conversation’s checkpoints on disk, so the next question resumes from the last saved answer instead of reading the whole conversation again.

The host reloads. The page offers to resume the room for 15 minutes. It takes the same room code back, restores the conversation and waits up to 25 s for the devices that held layers, then deals again.

The host’s tab closes. The other devices keep knocking for a minute (“Host reconnecting”). If it doesn’t come back, the room is over and each screen offers to start a new one.

The disk copies use at most 4 GiB. More in Long context and sessions.

A phone can be killed by the browser while it loads its layers if it runs out of memory. When it comes back:

  1. First time: the host deals again with about half the share for that device (at least one layer) and tells it why.
  2. Second time, or if it was already down to one layer: the host deals without it. The device stays in the room and can still ask.

To avoid it, lend less from phones (phone caps).

When a device joins with a name a quiet device holds, the host pings the old one for 1.5 s. If it doesn’t answer, the newcomer (usually the same device after a crash) takes the name and its layers back. If it answers, the newcomer gets a number (“laptop 2”).

Option Effect
?ckptdisk=0 Keep conversation checkpoints on the GPU only, not on disk.
?hb=0 Turn off the host’s mid-answer silence check. Developer option.

See URL options.