Seeding safety & setup guide

A plain, honest reference for seeding on this open model archive: what it exposes, how to run it through a VPN without silently breaking, how to cap upload so it never hurts your own connection, and short setup recipes per platform.

What peers can see when you seed

Torrents on this site are public swarms: DHT and PEX are on, and no torrent here carries the "private" flag. That means anyone else in a given swarm — any other peer downloading or seeding the same model — can see the IP address of every other peer, including yours, along with the fact that your IP is participating in that specific swarm (i.e. what you're seeding). This is normal, ordinary BitTorrent behaviour, not a bug or a misconfiguration on our end — it is simply how public swarms work, and it's true of every public torrent, on any site, for any content.

If you don't want your IP visible to other peers in a swarm, seed through a VPN (see below), or don't seed that particular torrent. There is no in-between: on a public swarm, participating means your IP is visible to other participants for as long as you're connected to it.

Seeding through a VPN

Because peers can see your IP (above), many people choose to route their BitTorrent client through a VPN so the IP visible to the swarm is the VPN provider's, not their own.

Bind your client to the VPN's network interface, not just "connect the VPN and hope." Most clients (qBittorrent, Transmission, Deluge) have a setting to restrict outgoing connections to a specific network interface or IP — in qBittorrent it's Tools → Options → Advanced → "Network interface". This matters because of the classic failure mode:

  • The VPN drops, the client doesn't notice, and it keeps seeding over your real connection. If your client isn't bound to the VPN's interface, a dropped VPN connection can mean traffic silently falls back to your regular network path — defeating the point of using a VPN in the first place, with no error or warning. Binding to the VPN interface (rather than just "connect and trust it") is what prevents this: if the VPN interface disappears, a properly bound client simply stops transferring instead of falling back.

Port forwarding: most consumer VPNs do not offer port forwarding, and a growing number have dropped it entirely. Without an open forwarded port, you still seed fine — you just accept fewer inbound connections (peers trying to reach you directly can't), so you may connect to somewhat fewer peers than an unrestricted connection would. It is not required to seed; it's a modest optimization some VPNs happen to support.

Upload caps

Seeding uses your upload bandwidth, and upload is the scarcer direction on most home connections. Set a sane cap so seeding never gets in the way of your own browsing, calls, or gaming.

A commonly used rule of thumb is to cap global upload around roughly 50–80% of your measured upstream (not the number your ISP advertises — run a speed test and use that real figure), leaving headroom for everything else you do online. There's no single "correct" number; if you notice seeding is affecting other traffic, lower the cap.

  • qBittorrent: Tools → Options → Speed, set "Global upload rate limit" (KiB/s). You can also set a lower "Alternative rate limit" and a schedule for it under the same screen.
  • Transmission: Preferences (Edit → Preferences on Linux, Transmission → Preferences on macOS) → Speed tab → enable and set "Upload" under limits.

Selective seeding

You never have to seed everything you've downloaded, and there's no penalty for seeding only a few things (see "How to stop," below — this project has no ratio requirement). Seed what you have the disk space and bandwidth for, and stop there.

If you're deciding where your seeding time is most useful: scarcity matters more than volume. A large model with very few seeders benefits far more from your help than a small, popular file with plenty of seeders already. Check the model page for the current seeder count, or the needs-seeders queue for torrents that most need help right now — seeding one under-seeded model does more for the swarm than seeding several well-seeded ones.

Avoiding duplicate storage

You don't need a second copy of a model just to seed it. Point your torrent client at the model files where they already live — the folder you use for inference — and let it seed in place.

  • Most clients let you add a torrent and choose an existing folder as the save location, then do a recheck/verify pass against the files already there. If the files match, the client marks them complete and starts seeding — no re-download, no second copy.
  • On Linux/macOS, a hardlink (same file, two directory entries, one copy on disk) lets your inference tool and your torrent client each "have their own copy" of a file in different folders without doubling storage, as long as both paths are on the same filesystem/volume. Symlinks work too for tools that follow them, though a symlink doesn't protect you if the original is moved or deleted.

If you use the llmt command-line client, llmt pull downloads and SHA-256-verifies a model against the catalog's signed manifest, llmt verify re-runs that check on files you already have (no re-download — useful before pointing a client at an existing folder), and llmt seed hands a downloaded model to your BitTorrent client to help the swarm. (These three commands — pull, verify, seed — are what llmt ships today; anything beyond that isn't part of the current tool.)

How to stop

It is always fine to stop seeding, at any time, for any reason. There is no ratio requirement and no penalty for seeding less, seeding for a short time, or not seeding at all — seeding here is entirely voluntary.

Removing a torrent from your client is not the same as deleting the files. In qBittorrent, right-click the torrent → "Remove torrent" gives you a choice between removing just the torrent (files stay on disk) and "Remove torrent and Delete Files" (files are deleted) — read the dialog before confirming. Transmission's "Remove" vs. "Remove and Delete Files" options work the same way. If you only want to stop seeding but keep the model, choose the option that keeps files; if you want the disk space back too, choose the delete option.

Per-platform recipes

Short, practical starting points. These are documented guidance based on how each platform's tooling is generally set up, not something we've verified on every version of every platform — your versions/UI may differ slightly.

unRAID (qBittorrent container)

Install the qBittorrent community app from the unRAID Community Applications store. Set its appdata/config path and a media/downloads share as the download path (ideally the same share your inference tool reads from, per "avoiding duplicate storage" above). Set the WebUI port and access it via <unraid-ip>:<port> to configure upload limits and add torrents. If you want the container itself to route through a VPN, several community qBittorrent+VPN container variants exist; check the container's own template notes for its VPN-binding option.

TrueNAS

On TrueNAS SCALE, install qBittorrent from the Apps catalog and set its storage mount to the dataset holding your models. On TrueNAS CORE, run qBittorrent inside a jail or a Docker-capable app (via a plugin), pointed at the same dataset. Either way, keep the app's download path inside your existing model dataset so it seeds in place rather than duplicating data onto a separate dataset.

Docker (qbittorrent-nox)

A minimal compose sketch (documented, not a support commitment — adjust ports/paths for your setup):

services:
  qbittorrent:
    image: lscr.io/linuxserver/qbittorrent:latest
    container_name: qbittorrent
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - WEBUI_PORT=8080
    volumes:
      - ./config:/config
      - /path/to/your/models:/downloads
    ports:
      - 8080:8080
      - 6881:6881
      - 6881:6881/udp
    restart: unless-stopped

Mount your existing model directory straight in as /downloads so the container seeds those files directly instead of copying them.

Windows (qBittorrent)

Install qBittorrent from the official site. Under Tools → Options → Downloads, set the default save path to your existing models folder. Under Speed, set your upload cap (see "Upload caps" above). If using a VPN, check its Windows client for a "kill switch" or network-lock option — this is the Windows-side equivalent of binding to the VPN interface, and it stops all traffic (including seeding) if the VPN drops rather than silently falling back to your normal connection.

Linux (qBittorrent / Transmission)

Desktop: install qBittorrent or Transmission from your distro's package manager and point the download directory at your existing models folder. Headless server: run qbittorrent-nox or transmission-daemon as a systemd service; both expose a web UI (qBittorrent-nox's WebUI, Transmission's transmission-web) for remote configuration of upload caps and adding torrents. To bind either to a VPN interface, most VPN clients (e.g. WireGuard, OpenVPN) create a named interface (like wg0 or tun0) that you can select in the client's network-interface setting, or enforce at the firewall/routing level for a stronger guarantee than the client setting alone.

This is general guidance, not a guarantee for your specific setup. See also How to seed & run a mirror for the quick-start version of seeding on this site.