diff options
| author | sigoden <sigoden@gmail.com> | 2024-11-03 08:07:46 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-11-03 08:07:46 +0800 |
| commit | 6b77890ec400090caa5d9fa3bffee0db91c9adfc (patch) | |
| tree | 1982f43443034bdd84bbafb5a3365ae50852d5a4 /src/rag | |
| parent | f5cdd0f136d1d5ba9944135f714edf3979bb7d45 (diff) | |
| download | aichat-6b77890ec400090caa5d9fa3bffee0db91c9adfc.tar.gz | |
feat: support `.edit rag-docs` (#964)
Diffstat (limited to 'src/rag')
| -rw-r--r-- | src/rag/mod.rs | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/rag/mod.rs b/src/rag/mod.rs index fd734e2..5bb4ea4 100644 --- a/src/rag/mod.rs +++ b/src/rag/mod.rs @@ -128,17 +128,23 @@ impl Rag { Ok(rag) } - pub async fn rebuild( + pub fn document_paths(&self) -> &[String] { + &self.data.document_paths + } + + pub async fn refresh_document_paths<T>( &mut self, + document_paths: &[T], config: &GlobalConfig, abort_signal: AbortSignal, - ) -> Result<()> { - debug!("rebuild rag: {}", self.name); + ) -> Result<()> + where + T: AsRef<str>, + { let loaders = config.read().document_loaders.clone(); let spinner = create_spinner("Starting").await; - let paths = self.data.document_paths.clone(); tokio::select! { - ret = self.sync_documents(loaders, &paths, Some(spinner.clone())) => { + ret = self.sync_documents(loaders, document_paths, Some(spinner.clone())) => { spinner.stop(); ret?; } |
