unslothai/unsloth · warning · SystemExit

unknown family '{name}'

Error message

unknown family '{name}'

What it means

Thrown by parseOptionalBaseUrl (chat-providers-dialog.tsx:464-466) when the input parses as a URL but its scheme is neither http: nor https:. This is a deliberate protocol allowlist: the base URL is used for server-side fetches to chat completions endpoints, and schemes like file:, ftp:, or javascript: are meaningless or dangerous there.

Source

Thrown at scripts/image_speedmem_bench.py:168

    return diffusers


def _target():
    """Stand-in for DiffusionDeviceTarget: what the real lever functions read."""
    import torch
    return types.SimpleNamespace(
        device = "cuda",
        dtype = torch.bfloat16,
        supports_default_torch_compile = True,
    )


def _find_family(name: str):
    from core.inference.diffusion_families import _FAMILIES as ALL
    for fam in ALL:
        if fam.name == name:
            return fam
    raise SystemExit(f"unknown family '{name}'")


def _apply_levers(
    pipe,
    cfg: dict,
    *,
    fam_obj,
    no_epc: bool = False,
    unarm_cache: bool = False,
    logger = None,
) -> dict:
    """Apply the configured levers with the loader's own argument values, in the loader's
    order (diffusion.py): TE quant -> attention -> step cache -> eager patches -> speed."""
    from core.inference.diffusion_precision import quantize_text_encoders
    from core.inference.diffusion_attention import (
        apply_attention_backend,
        select_attention_backend,
    )

View on GitHub (pinned to 203007d190)

Solutions

  1. Use the HTTP(S) endpoint of the inference server, e.g. 'http://127.0.0.1:8000/v1' for a local llama.cpp/vLLM server.
  2. Do not point this field at local model files — local models are loaded through the model picker, not a custom provider.
  3. Fix scheme typos ('httpss', 'http:/').

Example fix

// before
ws://127.0.0.1:8000/ws

// after
http://127.0.0.1:8000/v1
Defensive patterns

Strategy: validation

Validate before calling

function usesHttpScheme(input: string): boolean {
  try { const p = new URL(input.trim()).protocol; return p === 'http:' || p === 'https:'; } catch { return false; }
}

Prevention

When it happens

Trigger: Entering e.g. 'file:///models/endpoint', 'ftp://host/api', 'ws://localhost:8000', or any URL whose scheme the URL constructor accepts but the dialog rejects. Commonly happens when users paste a WebSocket endpoint or a local file path into the Base URL field.

Common situations: Confusing an OpenAI-compatible HTTP endpoint with a WebSocket/GRPC URL; pasting a filesystem path to a local model (local models are chosen elsewhere in the studio, not via this dialog); typos like 'httpss://'.

Related errors


AI-assisted analysis of unslothai/unsloth@203007d190 (2026-08-15). Data as JSON: /api/errors/7184b088efabcb54. Report an issue: GitHub.