summaryrefslogtreecommitdiffstats
path: root/src/rag
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2024-06-23 07:17:26 +0800
committerGitHub <noreply@github.com>2024-06-23 07:17:26 +0800
commit6d148c9c53cd4ac7849f52b956aba87e84cc3d4d (patch)
tree4434dd21d5f6a4e70ab8d9b018948f8b9be69c5a /src/rag
parent590c525048152345cfd6fc5e4e093e9af32a2a73 (diff)
downloadaichat-6d148c9c53cd4ac7849f52b956aba87e84cc3d4d.tar.gz
refactor: embedding model add price and dimension (#636)
Diffstat (limited to 'src/rag')
-rw-r--r--src/rag/mod.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/rag/mod.rs b/src/rag/mod.rs
index 116beea..30ca92f 100644
--- a/src/rag/mod.rs
+++ b/src/rag/mod.rs
@@ -548,9 +548,12 @@ pub fn split_document_id(value: DocumentId) -> (usize, usize) {
}
fn select_embedding_model(models: &[&Model]) -> Result<String> {
- let model_ids: Vec<_> = models.iter().map(|v| v.id()).collect();
- let model_id = Select::new("Select embedding model:", model_ids).prompt()?;
- Ok(model_id)
+ let models: Vec<_> = models
+ .iter()
+ .map(|v| SelectOption::new(v.id(), v.description()))
+ .collect();
+ let result = Select::new("Select embedding model:", models).prompt()?;
+ Ok(result.value)
}
fn set_chunk_size(model: &Model) -> Result<usize> {