Update decision_engine.yaml and prompts.yaml for WP-25: Bump version to 3.1.5, enhance stream definitions with stricter type usage from types.yaml, and refine strategy descriptions for clarity. Introduce new trigger keywords for improved intent classification and ensure compatibility with multi-stream retrieval strategies.
This commit is contained in:
parent
ed3f3e5588
commit
5ab01c5150
|
|
@ -1,100 +1,133 @@
|
|||
# config/decision_engine.yaml
|
||||
# VERSION: 3.1.3 (WP-25: Multi-Stream Sync Fix)
|
||||
# VERSION: 3.1.5 (WP-25: Multi-Stream Agentic RAG)
|
||||
# STATUS: Active
|
||||
# DoD: Harmonisierung der Streams mit prompts.yaml zur Vermeidung von KeyErrors.
|
||||
# DoD: Strikte Nutzung der Typen aus types.yaml (v2.7.0).
|
||||
# Fix für Projekt-Klassifizierung via Keyword-Fast-Path.
|
||||
|
||||
version: 3.1
|
||||
|
||||
settings:
|
||||
llm_fallback_enabled: true
|
||||
router_provider: "auto"
|
||||
# "auto" nutzt den in MINDNET_LLM_PROVIDER gesetzten Standard.
|
||||
router_provider: "auto"
|
||||
# Verweist auf das Template in prompts.yaml
|
||||
router_prompt_key: "intent_router_v1"
|
||||
|
||||
# --- EBENE 1: STREAM-LIBRARY ---
|
||||
# --- EBENE 1: STREAM-LIBRARY (Bausteine basierend auf types.yaml) ---
|
||||
streams_library:
|
||||
values_stream:
|
||||
name: "Identität & Ethik"
|
||||
query_template: "Welche meiner Werte und Prinzipien betreffen: {query}"
|
||||
filter_types: ["value", "principle", "belief"]
|
||||
# Nur Typen aus types.yaml
|
||||
filter_types: ["value", "principle", "belief", "trait", "boundary", "need", "motivation"]
|
||||
top_k: 5
|
||||
edge_boosts: {guides: 3.0, enforced_by: 2.5, based_on: 2.0}
|
||||
edge_boosts:
|
||||
guides: 3.0
|
||||
enforced_by: 2.5
|
||||
based_on: 2.0
|
||||
|
||||
facts_stream:
|
||||
name: "Operative Realität"
|
||||
query_template: "Status, Ressourcen und Fakten zu: {query}"
|
||||
filter_types: ["project", "decision", "resource", "task", "milestone"]
|
||||
# Nur Typen aus types.yaml
|
||||
filter_types: ["project", "decision", "task", "goal", "event", "state"]
|
||||
top_k: 5
|
||||
edge_boosts: {part_of: 2.0, depends_on: 1.5, implemented_in: 1.5}
|
||||
edge_boosts:
|
||||
part_of: 2.0
|
||||
depends_on: 1.5
|
||||
implemented_in: 1.5
|
||||
|
||||
biography_stream:
|
||||
name: "Persönliche Erfahrung"
|
||||
query_template: "Welche Erlebnisse habe ich im Kontext von {query} gemacht?"
|
||||
filter_types: ["experience", "journal"]
|
||||
# Nur Typen aus types.yaml
|
||||
filter_types: ["experience", "journal", "profile", "person"]
|
||||
top_k: 3
|
||||
edge_boosts: {related_to: 1.5, experienced_in: 2.0}
|
||||
edge_boosts:
|
||||
related_to: 1.5
|
||||
experienced_in: 2.0
|
||||
|
||||
risk_stream:
|
||||
name: "Risiko-Radar"
|
||||
query_template: "Gefahren, Hindernisse oder Risiken bei: {query}"
|
||||
filter_types: ["risk", "obstacle"]
|
||||
# Nur Typen aus types.yaml
|
||||
filter_types: ["risk", "obstacle", "bias"]
|
||||
top_k: 3
|
||||
edge_boosts: {blocks: 2.5, impacts: 2.0, risk_of: 2.5}
|
||||
edge_boosts:
|
||||
blocks: 2.5
|
||||
impacts: 2.0
|
||||
risk_of: 2.5
|
||||
|
||||
tech_stream:
|
||||
name: "Technische Referenz"
|
||||
query_template: "Technische Dokumentation und Code-Beispiele für: {query}"
|
||||
filter_types: ["snippet", "reference", "source"]
|
||||
name: "Wissen & Technik"
|
||||
query_template: "Inhaltliche Details und Definitionen zu: {query}"
|
||||
# Nur Typen aus types.yaml
|
||||
filter_types: ["concept", "source", "glossary", "idea", "insight", "skill", "habit"]
|
||||
top_k: 5
|
||||
edge_boosts: {uses: 2.5, implemented_in: 3.0}
|
||||
edge_boosts:
|
||||
uses: 2.5
|
||||
implemented_in: 3.0
|
||||
|
||||
# --- EBENE 2: STRATEGIEN ---
|
||||
# --- EBENE 2: STRATEGIEN (Komposition & Routing) ---
|
||||
strategies:
|
||||
# Spezialisierte Fact-Strategie für zeitliche Fragen
|
||||
FACT_WHEN:
|
||||
description: "Abfrage von Zeitpunkten und Historie."
|
||||
description: "Abfrage von exakten Zeitpunkten und Terminen."
|
||||
preferred_provider: "openrouter"
|
||||
# FAST PATH: Harte Keywords für zeitliche Fragen
|
||||
trigger_keywords: ["wann", "datum", "uhrzeit", "zeitpunkt"]
|
||||
use_streams:
|
||||
- "facts_stream"
|
||||
- "biography_stream"
|
||||
- "tech_stream" # Hinzugefügt für Kompatibilität mit fact_synthesis_v1
|
||||
prompt_template: "fact_synthesis_v1"
|
||||
|
||||
FACT_WHAT:
|
||||
description: "Abfrage von Definitionen und Wissen."
|
||||
preferred_provider: "openrouter"
|
||||
use_streams:
|
||||
- "facts_stream"
|
||||
- "biography_stream" # Hinzugefügt für Kompatibilität mit fact_synthesis_v1
|
||||
- "tech_stream"
|
||||
prompt_template: "fact_synthesis_v1"
|
||||
|
||||
# Spezialisierte Fact-Strategie für inhaltliche Fragen & Listen (FIX für Projekt-Frage)
|
||||
FACT_WHAT:
|
||||
description: "Abfrage von Definitionen, Listen und Inhalten."
|
||||
preferred_provider: "openrouter"
|
||||
# FAST PATH: Zwingt "Welche Projekte" in diese Strategie
|
||||
trigger_keywords: ["was", "welche", "projekt", "projekte", "liste", "übersicht"]
|
||||
use_streams:
|
||||
- "facts_stream"
|
||||
- "tech_stream"
|
||||
- "biography_stream"
|
||||
prompt_template: "fact_synthesis_v1"
|
||||
|
||||
# Entscheidungs-Frage
|
||||
DECISION:
|
||||
description: "Rat, Strategie oder Abwägung."
|
||||
description: "Der User sucht Rat, Strategie oder Abwägung."
|
||||
preferred_provider: "gemini"
|
||||
trigger_keywords: ["soll ich", "entscheidung", "abwägen", "priorität"]
|
||||
use_streams:
|
||||
- "values_stream"
|
||||
- "facts_stream"
|
||||
- "risk_stream"
|
||||
prompt_template: "decision_synthesis_v1"
|
||||
prepend_instruction: "!!! ENTSCHEIDUNGS-MODUS (AGENTIC MULTI-STREAM) !!!"
|
||||
prepend_instruction: |
|
||||
!!! ENTSCHEIDUNGS-MODUS (AGENTIC MULTI-STREAM) !!!
|
||||
Analysiere die Fakten vor dem Hintergrund meiner Werte und evaluiere die Risiken.
|
||||
|
||||
EMPATHY:
|
||||
description: "Reaktion auf emotionale Zustände."
|
||||
preferred_provider: "openrouter"
|
||||
trigger_keywords: ["fühle", "traurig", "glücklich", "stress", "angst"]
|
||||
use_streams:
|
||||
- "biography_stream"
|
||||
- "values_stream"
|
||||
prompt_template: "empathy_template" # Erwartet nur {context_str} oder spezifische Felder
|
||||
prompt_template: "empathy_template"
|
||||
|
||||
CODING:
|
||||
description: "Technische Anfragen und Programmierung."
|
||||
preferred_provider: "gemini"
|
||||
trigger_keywords: ["code", "python", "script", "bug", "syntax"]
|
||||
use_streams:
|
||||
- "tech_stream"
|
||||
- "facts_stream"
|
||||
prompt_template: "technical_template"
|
||||
|
||||
INTERVIEW:
|
||||
description: "Der User möchte Wissen erfassen."
|
||||
description: "Der User möchte Wissen erfassen (Eingabemodus)."
|
||||
preferred_provider: "openrouter"
|
||||
use_streams: []
|
||||
use_streams: []
|
||||
prompt_template: "interview_template"
|
||||
|
|
@ -337,20 +337,27 @@ intent_router_v1:
|
|||
Antworte NUR mit dem Namen der Strategie.
|
||||
|
||||
STRATEGIEN:
|
||||
- FACT_WHEN: Fragen nach "Wann", Daten, Historie.
|
||||
- FACT_WHAT: Fragen nach "Was", Definitionen, Wissen.
|
||||
- DECISION: Rat, Meinung, "Soll ich?", Abwägung.
|
||||
- EMPATHY: Emotionen, Reflexion, "Ich fühle mich...".
|
||||
- CODING: Programmierung, Skripte, Debugging.
|
||||
- INTERVIEW: Dokumentation von Gedanken, Notizen erstellen.
|
||||
- FACT_WHEN: Nur für explizite Fragen nach einem exakten Datum, Uhrzeit oder dem "Wann" eines Ereignisses.
|
||||
- FACT_WHAT: Fragen nach Inhalten, Listen von Objekten/Projekten, Definitionen oder "Was/Welche" Anfragen (auch bei Zeiträumen).
|
||||
- DECISION: Rat, Meinung, "Soll ich?", Abwägung gegen Werte.
|
||||
- EMPATHY: Emotionen, Reflexion, Befindlichkeit.
|
||||
- CODING: Programmierung, Skripte, technische Syntax.
|
||||
- INTERVIEW: Dokumentation neuer Informationen, Notizen anlegen.
|
||||
|
||||
NACHRICHT: "{query}"
|
||||
STRATEGIE:
|
||||
gemini: |
|
||||
Classify query intent for Mindnet. Options: [FACT_WHEN, FACT_WHAT, DECISION, EMPATHY, CODING, INTERVIEW].
|
||||
Classify intent:
|
||||
- FACT_WHEN: Exact dates/times only.
|
||||
- FACT_WHAT: Content, lists of entities (projects, etc.), definitions, "What/Which" queries.
|
||||
- DECISION: Strategic advice/values.
|
||||
- EMPATHY: Emotions.
|
||||
- CODING: Tech/Code.
|
||||
- INTERVIEW: Data entry.
|
||||
Query: "{query}"
|
||||
Result (One word only):
|
||||
openrouter: |
|
||||
Select the best Mindnet strategy for: "{query}".
|
||||
Strategies: FACT_WHEN, FACT_WHAT, DECISION, EMPATHY, CODING, INTERVIEW.
|
||||
Select strategy for Mindnet:
|
||||
FACT_WHEN (timing/dates), FACT_WHAT (entities/lists/what/which), DECISION, EMPATHY, CODING, INTERVIEW.
|
||||
Query: "{query}"
|
||||
Response:
|
||||
Loading…
Reference in New Issue
Block a user