Catalog
Find models in the registry, pin versions, and pull weights locally.
Once a model is in the registry, anyone in the organization (and every org, for public models) can find it, pin a version, and pull it. The Hub and the CLI are two views of the same data.
List models in your organization
Section titled “List models in your organization”dn model listacme/support-assistant@1.2.0 private - 7B assistant fine-tuned on support tickets.acme/support-assistant-lora@0.3.0 private - LoRA adapter for Llama-3.1-8B-Instruct, rank 16.acme/intent-classifier@0.1.0 public - DistilBERT intent classifier.Add --include-public to see every organization’s public models alongside yours:
dn model list --include-public--search <text> filters on name or description; --limit N caps the result count; --json emits the raw response for scripting.
Inspect a model
Section titled “Inspect a model”dn model info acme/support-assistantacme/support-assistant@1.2.0 private - 7B assistant fine-tuned on support tickets. versions: 1.2.0, 1.1.0, 1.0.0, 0.1.0info shows the latest version’s summary and the full version history. Pass a specific version to fetch that record (dn model info acme/support-assistant@1.0.0). Use --json to see the full manifest payload — tags, base model, license, and the aliases attached to each version.
For a side-by-side view with metrics, aliases, and sizes across 2–5 versions, use dn model compare — see Versions & metrics.
Pinned references
Section titled “Pinned references”org/name@version is the canonical way to refer to a model. Every downstream consumer resolves this same shape:
| Where | Example |
|---|---|
| Training base model | base_model: acme/support-assistant@1.2.0 in model.yaml |
| SDK pull | dn.pull_package(["model://acme/support-assistant:1.2.0"]) |
| SDK load | dn.load_package("model://acme/support-assistant@1.2.0") |
| CLI pull | dn model pull acme/support-assistant@1.2.0 |
Omit @version for “latest visible” — handy for interactive inspection, but avoid it in automation. A moving latest turns reruns into moving targets. Prefer an alias (@champion) for human-readable promotion and a pinned version for reproducible runs.
When the model lives in your own organization, the org/ prefix is optional. The CLI and SDK resolve bare names against your active org.
Pull a model locally
Section titled “Pull a model locally”The SDK pulls the full directory into local storage and makes it available to Model:
import dreadnode as dnfrom dreadnode.models import Model
dn.pull_package(["model://acme/support-assistant:1.2.0"])model = Model("acme/support-assistant", version="1.2.0")See Using in code for loading weights and tokenizers.
The CLI’s dn model pull issues a pre-signed download URL — useful for an out-of-band fetch or a browser download:
dn model pull acme/support-assistant@1.2.0# Download URL (expires 2026-04-21T18:23:00Z):# https://...Add --output <path> to save the download directly instead of printing the URL:
dn model pull acme/support-assistant@1.2.0 --output ./support-assistant.safetensorsThe SDK path is the right choice when you plan to load the weights from Python. Reach for dn model pull when you want a raw artifact on disk without a Python session.
Browse in the Hub
Section titled “Browse in the Hub”The Hub shows the same listings with facet filters (tags, license, task categories, framework, size category), a card/table view toggle, a per-version detail panel with framework, base model, metrics, and aliases, and the full version history with comparison charts. Authoring happens through the CLI or SDK; discovery happens through either.
Scope tabs
Section titled “Scope tabs”Three tabs above the listing decide which models you see. Each carries a count that reflects your active filters.
| Tab | Shows |
|---|---|
| Mine | Models you created |
| Your organization | Every model in the organization, whoever created it |
| Public | Public models from every organization, including your own |
The middle tab carries your organization’s name — acme in the examples above — and is the default.
These are independent lenses, not a hierarchy. Everything under Mine also sits under your organization, but your organization and Public overlap without either containing the other: your org’s public models appear under both, another org’s public models appear only under Public, and your org’s private models appear only under your organization’s tab.
The CLI cuts the same data differently. dn model list --include-public returns your organization’s models plus every organization’s public ones — a superset of your org tab, and not the same set as Public, which excludes your org’s private models. No CLI flag reproduces the Public tab on its own.
What to reach for next
Section titled “What to reach for next”- Cut a new version or change visibility → Publishing
- Compare versions, attach metrics, or move aliases → Versions & metrics
- Load the pulled model in Python → Using in code
- Every CLI verb →
dn model