Cargo fix
This commit is contained in:
@@ -247,7 +247,9 @@ Use only the specific details provided above. Mention people's names, places, or
|
||||
/// Returns a 768-dimensional vector as Vec<f32>
|
||||
pub async fn generate_embedding(&self, text: &str) -> Result<Vec<f32>> {
|
||||
let embeddings = self.generate_embeddings(&[text]).await?;
|
||||
embeddings.into_iter().next()
|
||||
embeddings
|
||||
.into_iter()
|
||||
.next()
|
||||
.ok_or_else(|| anyhow::anyhow!("No embedding returned"))
|
||||
}
|
||||
|
||||
@@ -275,7 +277,10 @@ Use only the specific details provided above. Mention people's names, places, or
|
||||
|
||||
let embeddings = match primary_result {
|
||||
Ok(embeddings) => {
|
||||
log::debug!("Successfully generated {} embeddings from primary server", embeddings.len());
|
||||
log::debug!(
|
||||
"Successfully generated {} embeddings from primary server",
|
||||
embeddings.len()
|
||||
);
|
||||
embeddings
|
||||
}
|
||||
Err(e) => {
|
||||
@@ -294,11 +299,17 @@ Use only the specific details provided above. Mention people's names, places, or
|
||||
.await
|
||||
{
|
||||
Ok(embeddings) => {
|
||||
log::info!("Successfully generated {} embeddings from fallback server", embeddings.len());
|
||||
log::info!(
|
||||
"Successfully generated {} embeddings from fallback server",
|
||||
embeddings.len()
|
||||
);
|
||||
embeddings
|
||||
}
|
||||
Err(fallback_e) => {
|
||||
log::error!("Fallback server batch embedding also failed: {}", fallback_e);
|
||||
log::error!(
|
||||
"Fallback server batch embedding also failed: {}",
|
||||
fallback_e
|
||||
);
|
||||
return Err(anyhow::anyhow!(
|
||||
"Both primary and fallback servers failed. Primary: {}, Fallback: {}",
|
||||
e,
|
||||
@@ -328,14 +339,11 @@ Use only the specific details provided above. Mention people's names, places, or
|
||||
}
|
||||
|
||||
/// Internal helper to try generating an embedding from a specific server
|
||||
async fn try_generate_embedding(
|
||||
&self,
|
||||
url: &str,
|
||||
model: &str,
|
||||
text: &str,
|
||||
) -> Result<Vec<f32>> {
|
||||
async fn try_generate_embedding(&self, url: &str, model: &str, text: &str) -> Result<Vec<f32>> {
|
||||
let embeddings = self.try_generate_embeddings(url, model, &[text]).await?;
|
||||
embeddings.into_iter().next()
|
||||
embeddings
|
||||
.into_iter()
|
||||
.next()
|
||||
.ok_or_else(|| anyhow::anyhow!("No embedding returned from Ollama"))
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user