fix: --sample 0 no longer panics; avoid needless corpus clone
This commit is contained in:
+8
-9
@@ -60,18 +60,17 @@ fn main() {
|
|||||||
.expect("ionos client (token?)");
|
.expect("ionos client (token?)");
|
||||||
let store = EmbeddingStore::open(&cfg.index_dir, &cfg.embed_model).expect("store");
|
let store = EmbeddingStore::open(&cfg.index_dir, &cfg.embed_model).expect("store");
|
||||||
|
|
||||||
let subset: Vec<String> = match sample {
|
if let Some(n) = sample {
|
||||||
Some(n) => texts.iter().take(n).cloned().collect(),
|
let subset: Vec<String> = texts.iter().take(n).cloned().collect();
|
||||||
None => texts.clone(),
|
|
||||||
};
|
|
||||||
|
|
||||||
if sample.is_some() {
|
|
||||||
let est = estimate(&subset);
|
let est = estimate(&subset);
|
||||||
eprintln!("SMOKE: embedding {} sample texts ({} chars)…", est.items, est.chars);
|
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");
|
.expect("sample embed failed");
|
||||||
let dim = store.get(&subset[0]).map(|v| v.len()).unwrap_or(0);
|
let dim = subset.first()
|
||||||
eprintln!("SMOKE OK: embedded {n}, vector dim = {dim}. \
|
.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`.");
|
Inspect, then run `index --full --confirm`.");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user