Spaces:
Configuration error
Configuration error
| from resonance import ResonanceSimulator | |
| from mappings import IcosaMap, DodecaMap | |
| from music import MusicAdapter | |
| from memory import MemoryStore | |
| from self_improvement import SelfImprover | |
| from api_helpers import chat_refine | |
| import pandas as pd, json, os, time | |
| class SavantEngine: | |
| def __init__(self): | |
| self.memory = MemoryStore("SAVANT_memory.jsonl") | |
| self.icosa = IcosaMap() | |
| self.dodeca = DodecaMap() | |
| self.resonator = ResonanceSimulator() | |
| self.music = MusicAdapter() | |
| self.self_improver = SelfImprover(self.memory) | |
| def _classify(self, text): | |
| t = text.lower() | |
| if any(k in t for k in ("equation", "dirac", "hamiltoniano")): return "equation" | |
| if any(k in t for k in ("node", "icosahedron", "nodo")): return "node" | |
| if any(k in t for k in ("freq", "music", "nota", "resonance")): return "resonance" | |
| return "chat" | |
| def handle_query(self, text, base_output=None): | |
| kind = self._classify(text) | |
| if kind == "resonance": | |
| r = self.resonator.simulate(text) | |
| seq = self.music.adapt_text_to_music(text) | |
| response = f"🎵 Resonancia detectada. Frecuencia dominante: {r['summary']['dom_freq']:.4f} Hz. Secuencia inicial: {seq[:5]}" | |
| else: | |
| refined = chat_refine(text, base_output or "", self_improver=self.self_improver) | |
| response = refined | |
| self.memory.add({"type": kind, "query": text, "response": response, "_ts": time.time()}) | |
| return {"response": response} |