Embedding adapter backed by the optional ReqLLM dependency.
Translates Mnemosyne.Embedding calls to ReqLLM's embed/3 API,
preserving input order for batches. Requires a :model option such as
"openai:text-embedding-3-small"; the response reports this requested model
because ReqLLM does not return a model identifier with embeddings.
Options such as :dimensions, :api_key, and :provider_options are
forwarded to ReqLLM. Float encoding and usage reporting are always enabled
to satisfy Mnemosyne's vector and telemetry contracts.