Configuration
On this page
EmbedderConfig
config_embedder.py defines a single dataclass, EmbedderConfig, holding every default value referenced elsewhere in the package. It takes no required arguments — every field has a default — so EmbedderConfig() always succeeds.
from zerda.embeddings import EmbedderConfig
config = EmbedderConfig()
config = EmbedderConfig(batch_size=64, normalize_embeddings=False)
[!NOTE] Not a global/live config As described in Architecture, each module creates its own
EmbedderConfig()instance at import time and reads values from it once, to populate default argument values. There is no mechanism in the source for a single shared, mutable configuration object that affects already-constructed or not-yet-constructed embedders at runtime. To change behavior, pass constructor arguments explicitly to each embedder — that is the only configuration path that reliably works for every embedder.
Per-embedder configuration
The hosted-API and local embedders each define their own additional constructor parameters beyond what EmbedderConfig covers (API keys, rate limits, cost tracking, retry behavior, task types, model dimension overrides, etc.). These are documented on each class's own page:
Arabic normalization tables (__init__.py)
embeddings/__init__.py also defines several module-level constant tables that are not classes but are part of the public surface of the package (accessible as embeddings.__arabic_normalization__, etc., though not listed in __all__ and therefore not imported by from embeddings import *):
__arabic_normalization__— list of the eight normalization pattern names used internally byArabicEmbedder.ARABIC_NORMALIZATION_PATTERNS.__valid_levels__— human-readable descriptions of the three normalization levels (minimal,standard,aggressive).__task_types_gemini__— bilingual (Arabic/English) descriptions of the five Gemini task types, duplicated (with additionalstatus/release_datefields) asGeminiEmbedder.TASK_TYPES.__gemini_embedding_models__— spec table for older Gemini models, duplicated (with additions) asGeminiEmbedder.MODEL_SPECS.
These four dunder-named module attributes exist only in __init__.py and appear to be reference copies of data that also lives (in expanded form) inside GeminiEmbedder and ArabicEmbedder. They are not consumed programmatically anywhere else in the source.