from mediatok.container.gtkv import GtkvReader from mediatok.runtime.scheduler import TokenScheduler from mediatok.runtime.mapper import MemoryMapper from mediatok.runtime.streamer import GPUStreamer from mediatok.runtime.cache import TokenCache from mediatok.runtime.prefetch import PrefetchEngine class RuntimeEngine: """Top-level orchestrator for the GigaToken Runtime. Wires together the memory mapper, token scheduler, GPU streamer, cache, and prefetch engine into a unified playback/generation interface. """ def __init__(self, path: str, device: str = "cpu"): self.mapper = MemoryMapper(path) self.reader = GtkvReader(path) self.scheduler = TokenScheduler() self.streamer = GPUStreamer(device=device) self.cache = TokenCache() self.prefetch = PrefetchEngine() self._device = device def open(self): self.mapper.open() def close(self): self.mapper.close() self.reader.close() @property def device(self) -> str: return self._device