barrel_embed_local (barrel_embed v2.3.1)
View SourceLocal Python embedding provider
Uses a Python port with sentence-transformers for CPU-based embeddings. No GPU required, runs entirely on CPU.
Dependencies (sentence-transformers) are installed automatically in the managed venv on first use.
Configuration
Config = #{
model => "BAAI/bge-base-en-v1.5", %% Model name (default, 768 dims)
python => "python3", %% Python executable (default)
timeout => 120000 %% Timeout in ms (default)
}.Supported Models
Any model from sentence-transformers or HuggingFace.
Common models: - "BAAI/bge-base-en-v1.5" - Default, 768 dimensions, good quality/speed - "BAAI/bge-small-en-v1.5" - 384 dimensions, faster - "BAAI/bge-large-en-v1.5" - 1024 dimensions, best quality - "sentence-transformers/all-MiniLM-L6-v2" - 384 dims, fast - "sentence-transformers/all-mpnet-base-v2" - 768 dims, high quality - "nomic-ai/nomic-embed-text-v1.5" - 768 dims, long context
Summary
Functions
Check if provider is available.
Get dimension for this provider.
Generate embedding for a single text.
Generate embeddings for multiple texts.
Initialize the provider. Starts the Python port server.
Provider name.
Functions
Check if provider is available.
-spec dimension(map()) -> pos_integer().
Get dimension for this provider.
Generate embedding for a single text.
Generate embeddings for multiple texts.
Initialize the provider. Starts the Python port server.
-spec name() -> atom().
Provider name.