barrel_embed_openai (barrel_embed v2.3.0)
View SourceOpenAI embedding provider
Uses OpenAI's Embeddings API for embedding generation. Requires an OpenAI API key.
Requirements
An OpenAI API key, either: - Set via OPENAI_API_KEY environment variable - Passed in config as api_key => <<"sk-...">>>
Configuration
Config = #{
api_key => <<"sk-...">>, %% API key (or use env var)
url => <<"https://api.openai.com/v1">>, %% API base URL (default)
model => <<"text-embedding-3-small">>, %% Model name (default, 1536 dims)
timeout => 30000, %% Timeout in ms (default)
dimension => 1536 %% Vector dimension (default)
}.Supported Models
- <<"text-embedding-3-small">> - Default, 1536 dims, fast and cheap - <<"text-embedding-3-large">> - 3072 dims, higher quality - <<"text-embedding-ada-002">> - 1536 dims, legacy model
Summary
Functions
Check if OpenAI API is available.
Get dimension for this provider.
Generate embedding for a single text.
Generate embeddings for multiple texts. OpenAI supports native batch embedding.
Initialize the provider.
Provider name.
Functions
Check if OpenAI API is available.
-spec dimension(map()) -> pos_integer().
Get dimension for this provider.
Generate embedding for a single text.
Generate embeddings for multiple texts. OpenAI supports native batch embedding.
Initialize the provider.
-spec name() -> atom().
Provider name.