BlueSkyXN
Deploy DiffusionGemma ZeroGPU Space
b7f1562
Raw
History Blame Contribute Delete
2 kB
from __future__ import annotations
from typing import Any
from src.config import settings
# Intentionally small registry. This is not an arbitrary repo downloader.
MODEL_REGISTRY: dict[str, dict[str, Any]] = {
settings.model_name: {
"id": settings.model_name,
"repo_id": settings.gguf_repo_id,
"filename": settings.gguf_filename,
"owned_by": "unsloth",
"backend": "llama-diffusion-cli",
"supports_openai_stream": "final_delta_only",
"supports_diffusion_visual": True,
},
# Convenience aliases.
settings.gguf_repo_id: {
"id": settings.model_name,
"repo_id": settings.gguf_repo_id,
"filename": settings.gguf_filename,
"owned_by": "unsloth",
"backend": "llama-diffusion-cli",
"supports_openai_stream": "final_delta_only",
"supports_diffusion_visual": True,
},
}
def default_model_id() -> str:
return settings.model_name
def get_model_config(model_id: str | None) -> dict[str, Any]:
requested = model_id or default_model_id()
if requested not in MODEL_REGISTRY:
available = sorted({v["id"] for v in MODEL_REGISTRY.values()})
from src.errors import ApiError
raise ApiError(
code="unsupported_model",
message=f"Unsupported model: {requested}. Available models: {available}",
status_code=400,
)
cfg = dict(MODEL_REGISTRY[requested])
cfg["requested_id"] = requested
return cfg
def public_model_list() -> list[dict[str, Any]]:
seen: set[str] = set()
models: list[dict[str, Any]] = []
for cfg in MODEL_REGISTRY.values():
mid = cfg["id"]
if mid in seen:
continue
seen.add(mid)
models.append(
{
"id": mid,
"object": "model",
"owned_by": cfg.get("owned_by", "unsloth"),
"backend": cfg.get("backend"),
}
)
return models