Makes generate content error result into Error

This commit is contained in:
2024-05-01 17:14:32 +01:00
parent 9754618153
commit a640d97efb
8 changed files with 108 additions and 58 deletions

View File

@@ -38,13 +38,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
.generate_content(&request, "gemini-1.0-pro-002")
.await?;
if let GenerateContentResponse::Ok {
candidates,
usage_metadata: _,
} = result
{
println!("Response: {:?}", candidates[0].get_text().unwrap());
}
println!("Response: {:?}", result.candidates[0].get_text().unwrap());
Ok(())
}

View File

@@ -23,16 +23,18 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
let queue = gemini.stream_generate_content(&request, "gemini-pro").await;
while let Some(response) = queue.pop().await {
if let GenerateContentResponse::Ok {
candidates,
usage_metadata: _,
} = response
{
let text = candidates
.iter()
.filter_map(|c| c.get_text())
.collect::<String>();
print!("{}", text);
match response {
Ok(result) => {
let text = result
.candidates
.iter()
.filter_map(|c| c.get_text())
.collect::<String>();
print!("{}", text);
}
Err(error) => {
println!("{error}");
}
}
}