pub fn embed_passages_parallel_with_embedding_choice(
models_dir: &Path,
texts: &[String],
parallelism: usize,
batch_size: usize,
embedding_backend: EmbeddingBackendChoice,
llm_backend: LlmBackendChoice,
) -> Result<Vec<Vec<f32>>, AppError>Expand description
v1.0.93 (GAP-OR-INGEST): embeds multiple passages with
EmbeddingBackendChoice awareness. When the resolved chain starts
with OpenRouter and the client is initialised, uses the HTTP batch
API (embed_batch) instead of subprocess fan-out — no LLM slot
consumed, ~200ms per batch vs ~15s per subprocess cold-start.
Falls back to embed_passages_parallel_local for LLM backends.