scene_service.scene_graph.store

Scene graph store — holds the latest snapshot and manages caches.

Cache persistence uses simple JSON files so the system can survive restarts without re-calling the LLM for every object pair. Cache I/O failures are swallowed — the worst case is a redundant LLM call.

Classes

SceneGraphStore([cache_dir])

In-memory snapshot + on-disk JSON cache.

class scene_service.scene_graph.store.SceneGraphStore(cache_dir: str = '/data/robonix/scene_graph/cache')[source]

Bases: object

In-memory snapshot + on-disk JSON cache.

flush_caches() None[source]
get_cached_caption(node: SceneGraphNode) str | None[source]
get_cached_relation(a: SceneGraphNode, b: SceneGraphNode) SceneGraphEdge | None[source]
get_snapshot() SceneGraphSnapshot | None[source]
put_cached_caption(node: SceneGraphNode) None[source]
put_cached_relation(a: SceneGraphNode, b: SceneGraphNode, edge: SceneGraphEdge) None[source]
save_snapshot(snapshot: SceneGraphSnapshot) None[source]