symfonic.memory.orchestrator.builders¶
builders ¶
Layer and router construction for :class:OrchestratorFactory.
Split out of :mod:symfonic.memory.orchestrator.factory (352 lines against the
300-line budget). factory decides which orchestrator to build -- uniform
backends, hybrid per-layer backends, or a caller-supplied set. The three
functions here are how each of those decisions is carried out, and they are
also the registry consumers: LAYER_FACTORIES lives here with the two
builders that read it.
factory imports and calls them, so its public surface is unchanged.
HybridBackendConfig
dataclass
¶
HybridBackendConfig(layer_graph_backends: dict[MemoryLayer, GraphBackend] = dict(), layer_vector_backends: dict[MemoryLayer, VectorBackend] = dict(), layer_embedding_providers: dict[MemoryLayer, EmbeddingProvider] = dict())
Per-layer backend overrides for hybrid storage configurations.
Allows routing different memory layers to different backends. For example: episodic -> MongoDB, semantic -> Postgres, working -> in-memory.
Any layer not listed in the override dicts falls back to the defaults
supplied to :meth:OrchestratorFactory.build_hybrid.