dd99401f3e
- ROLE_IDS (llamaswap, sources) + UI-Rollenlisten (ModelBadges, Discover,
ModelBrowse, Cockpit-Slot-Grid) um `hermes` erweitert: gemma erscheint als
„Hirn", nicht mehr als scout.
- Neuer set_ttl-Helper; set_agent_brain erzwingt ttl:0 (neu + idempotent beim
Re-Setzen) und liefert eine weiche Budget-Warnung (kein Hard-Block) bei OOM.
- brain_status/brain_model_name: zeigen das echte Hirn (Rolle hermes / Hermes
model.default) statt hart `fast` (Bugfix Health-/Ready-Check).
- POST /api/models/{id}/role delegiert die Rolle `hermes` an den warm-bewussten
Flow (Alias + brains-Gruppe + ttl 0 + Hermes-Config + Gateway-Restart).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
36 lines
2.1 KiB
Python
36 lines
2.1 KiB
Python
"""
|
|
Vertrauenswürdige Quellen + Kategorien für die automatische Modell-Entdeckung.
|
|
Rollen = die EINE Quelle der Wahrheit, identisch zu den llama-swap-Serving-Rollen
|
|
und der UI: fast · heavy · coder · vision · hermes (Agent-Hirn) · scout.
|
|
"""
|
|
|
|
# HF-Orgs, die zuverlässig aktuelle, hochwertige GGUF-Quants veröffentlichen.
|
|
TRUSTED_AUTHORS = ["unsloth", "bartowski", "ggml-org", "lmstudio-community"]
|
|
|
|
# Kanonische Rollen — eine Quelle der Wahrheit (deckt sich mit llamaswap.ROLE_IDS,
|
|
# maintenance.ROLE_MAP, frontend ModelBadges.ROLES + Discover.ROLE_METADATA).
|
|
# `hermes` = Lucys Agent-Hirn (warm + ko-resident); UI-Label „Hirn".
|
|
ROLE_IDS = ["fast", "heavy", "coder", "vision", "hermes", "scout"]
|
|
|
|
# Kategorien (Reihenfolge = Anzeige + Zuordnungs-Priorität). Ein Modell wird der
|
|
# ERSTEN Kategorie zugeordnet, deren Stichwort im Repo-Namen vorkommt; sonst „scout".
|
|
# Die `role` ist zugleich der Alias-Vorschlag und EINE der 5 kanonischen Rollen.
|
|
CATEGORIES = [
|
|
{"role": "vision", "title": "Bilder verstehen", "icon": "eye",
|
|
"kw": ["-vl-", "-vl", "vision", "llava", "multimodal", "-mm-", "pixtral"]},
|
|
{"role": "coder", "title": "Coden & Programmieren", "icon": "code",
|
|
"kw": ["coder", "-code-", "code-", "codestral", "starcoder"]},
|
|
{"role": "hermes", "title": "Lucys Hirn (Agent)", "icon": "brain-circuit",
|
|
"kw": ["hermes"]}, # Agent-Hirn: Hermes-Familie am robustesten (natives Tool-Calling).
|
|
{"role": "heavy", "title": "Schweres Reasoning", "icon": "brain",
|
|
"kw": ["reasoning", "-think", "thinking", "gpt-oss", "deepseek-r", "-r1", "qwq",
|
|
"-70b", "-72b", "-120b", "-123b", "-235b", "-405b", "-a10b", "-a22b"]},
|
|
{"role": "fast", "title": "Schnelles Alltags-Hirn", "icon": "zap",
|
|
"kw": ["-a3b", "-a1", "-a2", "-30b", "-32b", "-14b", "-8b", "-7b", "-4b", "-moe"]},
|
|
{"role": "scout", "title": "Multimodal-Allrounder", "icon": "compass",
|
|
"kw": []}, # Fallback: instruct/chat-Modelle, die in keine Spezialrolle fallen
|
|
]
|
|
|
|
# Repo-Namensteile, die bei der Entdeckung übersprungen werden (Roh-/Spezialformate).
|
|
SKIP_TOKENS = ["-base", "-bnb-", "-gptq", "-awq", "-fp8", "draft", "tokenizer"]
|