29f37bd916
- recipes.py: 6 kuratierte Use-Case-Stacks (Coding, Vision, Chat, LongDoc, Agents, Fast). - cookbook.py: /recipes (Stack-Fit pro Modell + Gesamturteil) + /install-recipe (download + register aller Modelle mit optimalem, gedeckeltem Kontext). - cookbook.js: Use-Case-Karten als Haupteinstieg + Setup-Modal + 'Komplettes Setup installieren'; Roh-Suche in 'Profi-Modus' (collapsible). - models.py /register: exists()-Check entfernt (fixt frischen Download-Install). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
82 lines
4.7 KiB
Python
82 lines
4.7 KiB
Python
"""
|
|
Kuratierte Use-Case-"Setups" (Stacks) fuers Cookbook 2.0.
|
|
|
|
Idee: Der Nutzer waehlt *wofuer* er es braucht — nicht *welches Modell*. Jedes Setup ist eine
|
|
Kombination aus Rollen (z.B. Haupt-Coder + schneller Coder + Vision). Hardware-Fit + optimaler
|
|
Kontext werden zur Laufzeit aus der echten RAM-Groesse berechnet (hw_math), nicht hier hartkodiert.
|
|
|
|
Daten, kein Code — bewusst getrennt (KISS/SoC). Repo/Datei sind unsloth-GGUFs auf HuggingFace.
|
|
"""
|
|
|
|
RECIPES = [
|
|
{
|
|
"id": "coding", "title": "Coden & Programmieren", "icon": "code",
|
|
"desc": "Ein starker Haupt-Coder, ein flinker für Autovervollständigung und Vision für Screenshots.",
|
|
"models": [
|
|
{"role": "coder", "name": "Qwen2.5 Coder 32B", "repo": "unsloth/Qwen2.5-Coder-32B-Instruct-GGUF",
|
|
"file": "Qwen2.5-Coder-32B-Instruct-Q4_K_M.gguf", "params_b": 32, "quant": "Q4_K_M",
|
|
"why": "Hauptmodell — versteht große Codebasen und komplexe Aufgaben."},
|
|
{"role": "coder-fast", "name": "Qwen2.5 Coder 7B", "repo": "unsloth/Qwen2.5-Coder-7B-Instruct-GGUF",
|
|
"file": "Qwen2.5-Coder-7B-Instruct-Q4_K_M.gguf", "params_b": 7, "quant": "Q4_K_M",
|
|
"why": "Schnelle Autovervollständigung & einfache Edits."},
|
|
{"role": "vision", "name": "Llama 3.2 Vision 11B", "repo": "unsloth/Llama-3.2-11B-Vision-Instruct-GGUF",
|
|
"file": "Llama-3.2-11B-Vision-Instruct-Q4_K_M.gguf", "params_b": 11, "quant": "Q4_K_M",
|
|
"why": "Liest Screenshots & Fehlerbilder für die Analyse."},
|
|
],
|
|
},
|
|
{
|
|
"id": "vision", "title": "Bilder verstehen", "icon": "eye",
|
|
"desc": "Ein multimodales Modell, das Bilder und Text gemeinsam versteht.",
|
|
"models": [
|
|
{"role": "vision", "name": "Llama 3.2 Vision 11B", "repo": "unsloth/Llama-3.2-11B-Vision-Instruct-GGUF",
|
|
"file": "Llama-3.2-11B-Vision-Instruct-Q4_K_M.gguf", "params_b": 11, "quant": "Q4_K_M",
|
|
"why": "Beschreibt Bilder, liest Diagramme, analysiert Screenshots."},
|
|
],
|
|
},
|
|
{
|
|
"id": "chat", "title": "Allrounder & Chat", "icon": "compass",
|
|
"desc": "Ein vielseitiges Modell für alltägliche Fragen, Texte und Brainstorming.",
|
|
"models": [
|
|
{"role": "scout", "name": "Qwen2.5 7B", "repo": "unsloth/Qwen2.5-7B-Instruct-GGUF",
|
|
"file": "Qwen2.5-7B-Instruct-Q4_K_M.gguf", "params_b": 7, "quant": "Q4_K_M",
|
|
"why": "Schneller, kluger Allrounder — guter Standard."},
|
|
{"role": "scout-pro", "name": "Qwen2.5 14B", "repo": "unsloth/Qwen2.5-14B-Instruct-GGUF",
|
|
"file": "Qwen2.5-14B-Instruct-Q4_K_M.gguf", "params_b": 14, "quant": "Q4_K_M",
|
|
"why": "Mehr Tiefe, wenn die Antworten besser sein sollen."},
|
|
],
|
|
},
|
|
{
|
|
"id": "longdoc", "title": "Lange Dokumente", "icon": "file",
|
|
"desc": "Großes Modell mit großem Kontext — für lange Texte, Verträge, Bücher.",
|
|
"models": [
|
|
{"role": "reader", "name": "Qwen2.5 14B", "repo": "unsloth/Qwen2.5-14B-Instruct-GGUF",
|
|
"file": "Qwen2.5-14B-Instruct-Q4_K_M.gguf", "params_b": 14, "quant": "Q4_K_M",
|
|
"why": "Solide Qualität bei großem Kontextfenster (auto-optimiert)."},
|
|
],
|
|
},
|
|
{
|
|
"id": "agents", "title": "Agenten & Tool-Use", "icon": "layers",
|
|
"desc": "Modelle, die gut mit Werkzeugen/Funktionen umgehen — für autonome Agenten.",
|
|
"models": [
|
|
{"role": "agent", "name": "Qwen2.5 32B", "repo": "unsloth/Qwen2.5-32B-Instruct-GGUF",
|
|
"file": "Qwen2.5-32B-Instruct-Q4_K_M.gguf", "params_b": 32, "quant": "Q4_K_M",
|
|
"why": "Stark im Function-Calling und mehrstufigem Denken."},
|
|
{"role": "agent-fast", "name": "Qwen2.5 7B", "repo": "unsloth/Qwen2.5-7B-Instruct-GGUF",
|
|
"file": "Qwen2.5-7B-Instruct-Q4_K_M.gguf", "params_b": 7, "quant": "Q4_K_M",
|
|
"why": "Schneller Helfer für einfache Tool-Schritte."},
|
|
],
|
|
},
|
|
{
|
|
"id": "fast", "title": "Schnell & sparsam", "icon": "bolt",
|
|
"desc": "Kleine, flinke Modelle — ideal bei wenig Speicher oder für schnelle Antworten.",
|
|
"models": [
|
|
{"role": "mini", "name": "Qwen2.5 3B", "repo": "unsloth/Qwen2.5-3B-Instruct-GGUF",
|
|
"file": "Qwen2.5-3B-Instruct-Q4_K_M.gguf", "params_b": 3, "quant": "Q4_K_M",
|
|
"why": "Winzig & sehr schnell für einfache Aufgaben."},
|
|
{"role": "coder-fast", "name": "Qwen2.5 Coder 7B", "repo": "unsloth/Qwen2.5-Coder-7B-Instruct-GGUF",
|
|
"file": "Qwen2.5-Coder-7B-Instruct-Q4_K_M.gguf", "params_b": 7, "quant": "Q4_K_M",
|
|
"why": "Flinker Coder, falls es doch mal Code sein soll."},
|
|
],
|
|
},
|
|
]
|