fix: --sample 0 no longer panics; avoid needless corpus clone

This commit is contained in:
2026-05-18 19:06:56 +02:00
parent d08cd293a0
commit 2934bbc8f4
+8 -9
View File
@@ -60,18 +60,17 @@ fn main() {
.expect("ionos client (token?)");
let store = EmbeddingStore::open(&cfg.index_dir, &cfg.embed_model).expect("store");
let subset: Vec<String> = match sample {
Some(n) => texts.iter().take(n).cloned().collect(),
None => texts.clone(),
};
if sample.is_some() {
if let Some(n) = sample {
let subset: Vec<String> = texts.iter().take(n).cloned().collect();
let est = estimate(&subset);
eprintln!("SMOKE: embedding {} sample texts ({} chars)…", est.items, est.chars);
let n = build_corpus_embeddings(&client, &store, &cfg.embed_model, &subset, 32)
let n_done = build_corpus_embeddings(&client, &store, &cfg.embed_model, &subset, 32)
.expect("sample embed failed");
let dim = store.get(&subset[0]).map(|v| v.len()).unwrap_or(0);
eprintln!("SMOKE OK: embedded {n}, vector dim = {dim}. \
let dim = subset.first()
.and_then(|t| store.get(t))
.map(|v| v.len())
.unwrap_or(0);
eprintln!("SMOKE OK: embedded {n_done}, vector dim = {dim}. \
Inspect, then run `index --full --confirm`.");
return;
}