package dev.kreuzberg; import java.util.List; /** * Bridge interface for the EmbeddingBackend plugin system. * * Implementations are wrapped by EmbeddingBackendBridge and exposed to the native * runtime through Panama FFM upcall stubs. */ public interface IEmbeddingBackend { /** Plugin name (used for registry keying). */ String name(); /** Plugin version. */ String version(); /** Initialize the plugin. */ default void initialize() throws Exception {} /** Shut down the plugin. */ default void shutdown() throws Exception {} /** dimensions. */ long dimensions() throws Exception; /** embed. */ List> embed(List texts) throws Exception; }