From ca82ec8e8e2484099de3020233804671387ba9de Mon Sep 17 00:00:00 2001 From: KCaverly Date: Thu, 26 Oct 2023 14:05:55 +0200 Subject: [PATCH] fixed truncation error in fake language model --- crates/ai/src/auth.rs | 2 +- crates/ai/src/test.rs | 4 ++++ crates/semantic_index/src/embedding_queue.rs | 2 +- crates/semantic_index/src/semantic_index.rs | 5 ++++- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/crates/ai/src/auth.rs b/crates/ai/src/auth.rs index a3ce8aece1..c188c30797 100644 --- a/crates/ai/src/auth.rs +++ b/crates/ai/src/auth.rs @@ -1,6 +1,6 @@ use gpui::AppContext; -#[derive(Clone)] +#[derive(Clone, Debug)] pub enum ProviderCredential { Credentials { api_key: String }, NoCredentials, diff --git a/crates/ai/src/test.rs b/crates/ai/src/test.rs index d8805bad1a..bc143e3c21 100644 --- a/crates/ai/src/test.rs +++ b/crates/ai/src/test.rs @@ -29,6 +29,10 @@ impl LanguageModel for FakeLanguageModel { length: usize, direction: TruncationDirection, ) -> anyhow::Result { + if length > self.count_tokens(content)? { + return anyhow::Ok(content.to_string()); + } + anyhow::Ok(match direction { TruncationDirection::End => content.chars().collect::>()[..length] .into_iter() diff --git a/crates/semantic_index/src/embedding_queue.rs b/crates/semantic_index/src/embedding_queue.rs index 9ca6d8a0d9..299aa328b5 100644 --- a/crates/semantic_index/src/embedding_queue.rs +++ b/crates/semantic_index/src/embedding_queue.rs @@ -69,7 +69,7 @@ impl EmbeddingQueue { } pub fn set_credential(&mut self, credential: ProviderCredential) { - self.provider_credential = credential + self.provider_credential = credential; } pub fn push(&mut self, file: FileToEmbed) { diff --git a/crates/semantic_index/src/semantic_index.rs b/crates/semantic_index/src/semantic_index.rs index 5be3d6ccf5..f420e0503b 100644 --- a/crates/semantic_index/src/semantic_index.rs +++ b/crates/semantic_index/src/semantic_index.rs @@ -291,7 +291,6 @@ impl SemanticIndex { } self.embedding_queue.lock().set_credential(credential); - self.is_authenticated() } @@ -299,6 +298,7 @@ impl SemanticIndex { let credential = &self.provider_credential; match credential { &ProviderCredential::Credentials { .. } => true, + &ProviderCredential::NotNeeded => true, _ => false, } } @@ -1020,11 +1020,14 @@ impl SemanticIndex { cx: &mut ModelContext, ) -> Task> { if !self.is_authenticated() { + println!("Authenticating"); if !self.authenticate(cx) { return Task::ready(Err(anyhow!("user is not authenticated"))); } } + println!("SHOULD NOW BE AUTHENTICATED"); + if !self.projects.contains_key(&project.downgrade()) { let subscription = cx.subscribe(&project, |this, project, event, cx| match event { project::Event::WorktreeAdded | project::Event::WorktreeRemoved(_) => {