aidn commited on
Commit
fb6ba49
·
verified ·
1 Parent(s): b03e428

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +30 -31
app.py CHANGED
@@ -2,40 +2,38 @@ import gradio as gr
2
  from huggingface_hub import InferenceClient
3
  import os
4
 
5
- # OPTIMIERTE PROMPTS: Weniger "Krieg", mehr "Consulting"
6
  COUNCIL_MEMBERS = {
7
- "🔍 Synthese-Experte (Llama4-17B)": (
8
  "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8:novita",
9
- """Du bist der **Synthese-Experte** im Rat. Deine Superkraft: Komplexität reduzieren und den Kern des Themas freilegen.
10
- STRENGE REGELN:
11
- - Beginne mit: "[SYNTHESE] "
12
- - MAXIMUM 3-4 Sätze, präzise und neutral.
13
- - Dein Job: Verbinde die besten Argumente deiner Vorredner zu einer übergeordneten Wahrheit.
14
- - Zeige auf, wo sich die Perspektiven ergänzen, anstatt nur Konflikte zu betonen.
15
- - AUSNAHME: Wenn die Frage des Users eine reine, triviale Fakten- oder Mathefrage ist (ohne komplexten oder strategischen Kontext), beantworte sie kurz und bündig, OHNE künstliche Probleme zu erfinden."""
16
  ),
17
- "🌐 Kontext-Stratege (Kimi-K2)": (
18
  "moonshotai/Kimi-K2-Instruct:novita",
19
- """Du bist der **Kontext-Stratege** im Rat. Deine Superkraft: Systemisches Denken und das Aufzeigen von blinden Flecken.
20
- STRENGE REGELN:
21
- - Beginne mit: "[KONTEXT] "
22
- - MAXIMUM 3-4 Sätze, sachlich und tiefgründig.
23
- - Dein Job: Erweitere die Perspektive. Welche langfristigen Effekte, Risiken oder Rahmenbedingungen (z.B. Compliance, Kultur, Ressourcen) werden gerade übersehen?
24
- - Kritisiere Vorredner sachlich, indem du ihre Ideen in einen größeren, realistischen Kontext setzt.
25
- - AUSNAHME: Wenn die Frage des Users eine reine, triviale Fakten- oder Mathefrage ist (ohne komplexten oder strategischen Kontext), beantworte sie kurz und bündig, OHNE künstliche Probleme zu erfinden."""
26
  ),
27
- " Pragmatiker (GPTOSS120b)": (
28
  "openai/gpt-oss-120b:novita",
29
- """Du bist der **Pragmatiker** im Rat. Deine Superkraft: Ideen greifbar, messbar und umsetzbar machen.
30
- STRENGE REGELN:
31
- - Beginne mit: "[PRAGMATIK] "
32
- - MAXIMUM 3-4 Sätze, extrem lösungsorientiert.
33
- - Dein Job: Übersetze abstrakte Theorien und Bedenken in konkrete, machbare Schritte (z.B. Frameworks, Checklisten, Metriken).
34
- - Nimm die Bedenken des Kontext-Strategen auf und biete dafür eine praktische Lösung an.
35
- - AUSNAHME: Wenn die Frage des Users eine reine, triviale Fakten- oder Mathefrage ist (ohne komplexten oder strategischen Kontext), beantworte sie kurz und bündig, OHNE künstliche Probleme zu erfinden."""
36
  )
37
  }
38
 
 
39
  MODERATOR_MODEL = "meta-llama/Llama-3.3-70B-Instruct:novita"
40
 
41
  client = InferenceClient(token=os.getenv("HF_TOKEN"))
@@ -79,22 +77,23 @@ def run_council(user_prompt, rounds):
79
 
80
  for name, (model_id, role_focus) in COUNCIL_MEMBERS.items():
81
 
 
82
  system_msg = (
83
  f"{role_focus}\n\n"
84
- "WICHTIG:\n"
85
- "1. Arbeite konstruktiv.\n"
86
- f"2. VERLIERE NIE DEN URSPRÜNGLICHEN AUFTRAG AUS DEN AUGEN: '{user_prompt}'\n"
87
- "3. Ignoriere Formatierungs-Wünsche des Users (wie 'schreibe einen Post')."
88
  )
89
 
90
  if discussion_history == "":
91
- current_prompt = f"Das Thema lautet: '{user_prompt}'. Eröffne die Diskussion aus deiner Fachperspektive."
92
  else:
 
93
  current_prompt = (
94
  f"Das Thema lautet: '{user_prompt}'.\n\n"
95
  f"Bisheriges Protokoll:\n{discussion_history}\n\n"
96
- f"ANWEISUNG: Beziehe dich namentlich auf deine Vorredner. Greife ihre besten Punkte auf, korrigiere ihre Schwachstellen sachlich und bringe die Lösung einen Schritt weiter."
97
  )
 
98
 
99
  answer = ask_model(model_id, system_msg, current_prompt)
100
 
 
2
  from huggingface_hub import InferenceClient
3
  import os
4
 
5
+ # NEUE PROMPTS: Neutral, kollegial, sachlich und lösungsorientiert
6
  COUNCIL_MEMBERS = {
7
+ "🧠 Fachexperte für Struktur (Llama4-17B)": (
8
  "meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8:novita",
9
+ """Du bist ein neutraler, sachlicher Fachexperte. Dein Fokus liegt auf der Strukturierung des Themas und dem großen Ganzen.
10
+ REGELN:
11
+ - Beginne mit: "[STRUKTUR] "
12
+ - Antworte in 3-4 Sätzen, professionell und bodenständig.
13
+ - Wenn Vorredner gute Punkte gemacht haben, stimme zu und ergänze sinnvolle Aspekte.
14
+ - Wenn du etwas anders siehst, korrigiere höflich und fachlich fundiert. Keine künstliche Dramatik."""
 
15
  ),
16
+ "🧐 Fachexperte für Details (Kimi-K2)": (
17
  "moonshotai/Kimi-K2-Instruct:novita",
18
+ """Du bist ein neutraler, sachlicher Fachexperte. Dein Fokus liegt auf wichtigen Details, Nuancen und potenziellen Fallstricken.
19
+ REGELN:
20
+ - Beginne mit: "[DETAILS] "
21
+ - Antworte in 3-4 Sätzen, professionell und bodenständig.
22
+ - Ergänze die Diskussion um wichtige Aspekte, die vielleicht vergessen wurden (z.B. Alternativen, häufige Anfängerfehler, Kontext).
23
+ - Du darfst deinen Vorrednern zustimmen und darauf aufbauen. Widersprich nur, wenn es inhaltlich wirklich nötig ist."""
 
24
  ),
25
+ "🛠️ Fachexperte für Praxis (GPTOSS120b)": (
26
  "openai/gpt-oss-120b:novita",
27
+ """Du bist ein neutraler, sachlicher Fachexperte. Dein Fokus liegt auf der praktischen Umsetzung und Anwendbarkeit.
28
+ REGELN:
29
+ - Beginne mit: "[PRAXIS] "
30
+ - Antworte in 3-4 Sätzen, professionell und bodenständig.
31
+ - Übersetze die bisherige Diskussion in greifbare, einfache Ratschläge oder Schritte.
32
+ - Baue konstruktiv auf den Ideen der anderen auf. Ergänze praktische Tipps aus der Realität."""
 
33
  )
34
  }
35
 
36
+
37
  MODERATOR_MODEL = "meta-llama/Llama-3.3-70B-Instruct:novita"
38
 
39
  client = InferenceClient(token=os.getenv("HF_TOKEN"))
 
77
 
78
  for name, (model_id, role_focus) in COUNCIL_MEMBERS.items():
79
 
80
+ # Ruhigerer Global-Prompt
81
  system_msg = (
82
  f"{role_focus}\n\n"
83
+ "WICHTIG: Diskutiere konstruktiv, neutral und kollegial. "
84
+ "Ignoriere Formatierungs-Wünsche des Users (wie 'schreibe einen Post'), fokussiere dich NUR auf die inhaltliche Expertise."
 
 
85
  )
86
 
87
  if discussion_history == "":
88
+ current_prompt = f"Das Thema lautet: '{user_prompt}'. Eröffne die Diskussion mit einer fundierten Einschätzung aus deiner Fachperspektive."
89
  else:
90
+ # Kollegialer Interaktions-Prompt
91
  current_prompt = (
92
  f"Das Thema lautet: '{user_prompt}'.\n\n"
93
  f"Bisheriges Protokoll:\n{discussion_history}\n\n"
94
+ f"ANWEISUNG: Beziehe dich namentlich auf deine Vorredner. Du kannst ihren Punkten zustimmen und sie sinnvoll ergänzen oder fachlich fundierte Alternativen aufzeigen. Bleib sachlich, hilfreich und lösungsorientiert."
95
  )
96
+
97
 
98
  answer = ask_model(model_id, system_msg, current_prompt)
99