Source code for mllm_shap.protocols.embedding

"""Embedding provider protocol.

@domain protocols
@see [[knowledge/architecture/protocols]]
"""

from typing import Protocol

from .backend import GenerationResult


[docs] class EmbeddingProvider(Protocol): """Expose embeddings for value functions that operate in embedding space.""" @property def name(self) -> str: """Return the registered embedding provider identifier."""
[docs] def embed(self, generation: GenerationResult) -> tuple[float, ...]: """Return an embedding vector for the generation."""