Last updated: 2026-06-12
Managed Models
Catalog
Curated catalog of ZINC-supported managed GGUF models.
The catalog is intentionally small and only includes models that ZINC has explicitly validated for the listed GPU profiles.
18 exports shown
enum
CatalogStatus
pub const CatalogStatus = enum Lifecycle status of a catalog entry, controlling visibility and UI treatment.
struct
CatalogEntry
pub const CatalogEntry = struct A single managed-model entry describing its identity, download location, hardware requirements, and tested GPU profiles.
enum
FitState
pub const FitState = enum VRAM-fit assessment for a catalog entry against a specific GPU budget.
constant
apple_silicon_profile
pub const apple_silicon_profile = "apple-silicon" Shared GPU profile string used for all Apple Silicon (Metal) devices.
constant
entries
pub const entries = [_]CatalogEntry{ The complete list of ZINC-validated managed models available for download.
function
find
pub fn find(id: []const u8) ?*const CatalogEntry Look up a catalog entry by its short identifier, returning null if not found.
function
findForLoadedModel
pub fn findForLoadedModel(managed_id: ?[]const u8, model_path: []const u8, display_name: []const u8) ?*const CatalogEntry Match a loaded model back to a catalog entry, even when it was opened from a raw path instead of a managed-model id.
Resolution order: managed id → parent directory name (for managed-cache `model.gguf` paths) → file-name exact match → file-name compact-case-insensitive match → display-name fuzzy match.
function
profileForGpu
pub fn profileForGpu(config: gpu_detect.GpuConfig) []const u8 Map a detected Vulkan GPU configuration to its catalog profile string.
RDNA4 is split by VRAM tier (≥28 GiB → "amd-rdna4-32gb", ≥14 GiB → "amd-rdna4-16gb", otherwise "amd-rdna4-small"); RDNA3 is split by VRAM tier (≥14 GiB → "amd-rdna3-16gb", otherwise "amd-rdna3-small"); all other vendors map to a single string each.
function
profileForMetal
pub fn profileForMetal() []const u8 Return the catalog profile string for Apple Silicon Metal devices.
constant
nvidia_cuda_profile
pub const nvidia_cuda_profile = "nvidia-cuda" Shared GPU profile string used for all NVIDIA (CUDA) devices.
function
profileForCuda
pub fn profileForCuda() []const u8 Return the catalog profile string for NVIDIA CUDA devices.
The CUDA backend does not split by VRAM tier the way Vulkan/RDNA4 does — fit is decided by the live `freeMemory()` budget — so a single profile string is sufficient.
function
supportsProfile
pub fn supportsProfile(entry: CatalogEntry, profile: []const u8) bool Return whether the entry has been tested on the given GPU profile.
function
fitsGpu
pub fn fitsGpu(entry: CatalogEntry, vram_budget_bytes: u64) bool Return whether the model's VRAM requirement fits within the given budget without enabling MoE offload.
Strict — does not consider the offload escape hatch. Use `fitState` for the offload-aware tri-state assessment.
function
requiredVramWithOffload
pub fn requiredVramWithOffload(entry: CatalogEntry) u64 VRAM required when MoE expert tensors are offloaded to host RAM.
Equal to `required_vram_bytes` for dense models (no offloadable tensors).
function
fitState
pub fn fitState(entry: CatalogEntry, vram_budget_bytes: u64) FitState Tri-state fit assessment that distinguishes "fits as-is" from "fits only with `ZINC_OFFLOAD_MOE_EXPERTS=1`".
Use this to surface the offload escape hatch to users when a model would otherwise look unsupported.
function
requiresOffloadToFit
pub fn requiresOffloadToFit(entry: CatalogEntry, vram_budget_bytes: u64) bool Return true when the model needs `ZINC_OFFLOAD_MOE_EXPERTS=1` to fit (does not fit by itself but does fit with offload enabled).
function
supportedOnCurrentGpu
pub fn supportedOnCurrentGpu(entry: CatalogEntry, profile: []const u8, vram_budget_bytes: u64) bool Return whether the model is both tested on the given profile and fits in VRAM without MoE offload.
Equivalent to `supportsProfile and fitsGpu`.
function
ggufArchForFamily
pub fn ggufArchForFamily(family: []const u8) ?[]const u8 Map a catalog family string to the GGUF architecture string that models in that family use.
Returns null for unrecognized families — the caller should treat that as an error (a catalog entry with no known architecture mapping). Note that `"qwen3.5"` and `"qwen3.6"` both map to `"qwen35"` because the GGUF file declares the SSM+attention hybrid architecture under that name.