summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/client/claude.rs9
-rw-r--r--src/client/cohere.rs6
-rw-r--r--src/client/common.rs8
-rw-r--r--src/client/message.rs2
-rw-r--r--src/client/openai.rs5
-rw-r--r--src/client/qianwen.rs2
-rw-r--r--src/client/vertexai.rs2
7 files changed, 21 insertions, 13 deletions
diff --git a/src/client/claude.rs b/src/client/claude.rs
index 68e9567..1094348 100644
--- a/src/client/claude.rs
+++ b/src/client/claude.rs
@@ -1,5 +1,5 @@
use super::{
- catch_error, extract_sytem_message, ClaudeClient, Client, ExtraConfig, ImageUrl,
+ catch_error, extract_system_message, ClaudeClient, Client, ExtraConfig, ImageUrl,
MessageContent, MessageContentPart, Model, ModelConfig, PromptType, ReplyHandler, SendData,
};
@@ -120,7 +120,10 @@ pub async fn claude_send_message_streaming(
let data: Value = match text.parse() {
Ok(data) => data,
Err(_) => {
- bail!("Invalid respoinse, status: {status}, text: {text}");
+ bail!(
+ "Invalid response data: {text} (status: {})",
+ status.as_u16()
+ );
}
};
catch_error(&data, status.as_u16())?;
@@ -149,7 +152,7 @@ pub fn claude_build_body(data: SendData, model: &Model) -> Result<Value> {
stream,
} = data;
- let system_message = extract_sytem_message(&mut messages);
+ let system_message = extract_system_message(&mut messages);
let mut network_image_urls = vec![];
let messages: Vec<Value> = messages
diff --git a/src/client/cohere.rs b/src/client/cohere.rs
index df86843..27acb6c 100644
--- a/src/client/cohere.rs
+++ b/src/client/cohere.rs
@@ -1,6 +1,6 @@
use super::{
- catch_error, extract_sytem_message, json_stream, message::*, Client, CohereClient, ExtraConfig,
- Model, ModelConfig, PromptType, ReplyHandler, SendData,
+ catch_error, extract_system_message, json_stream, message::*, Client, CohereClient,
+ ExtraConfig, Model, ModelConfig, PromptType, ReplyHandler, SendData,
};
use crate::utils::PromptKind;
@@ -115,7 +115,7 @@ fn build_body(data: SendData, model: &Model) -> Result<Value> {
stream,
} = data;
- let system_message = extract_sytem_message(&mut messages);
+ let system_message = extract_system_message(&mut messages);
let mut image_urls = vec![];
let mut messages: Vec<Value> = messages
diff --git a/src/client/common.rs b/src/client/common.rs
index 1b74de8..5a2fd55 100644
--- a/src/client/common.rs
+++ b/src/client/common.rs
@@ -108,7 +108,7 @@ macro_rules! register_client {
return create_config(&$client::PROMPTS, $client::NAME)
}
)+
- anyhow::bail!("Unknown client {}", client)
+ anyhow::bail!("Unknown client '{}'", client)
}
pub fn list_models(config: &$crate::config::Config) -> Vec<$crate::client::Model> {
@@ -192,7 +192,9 @@ macro_rules! config_get_fn {
format!("{}_{}", env_prefix, stringify!($field_name)).to_ascii_uppercase();
std::env::var(&env_name).ok()
})
- .ok_or_else(|| anyhow::anyhow!("Miss {}", stringify!($field_name)))
+ .ok_or_else(|| {
+ anyhow::anyhow!("Miss '{}' in client configuration", stringify!($field_name))
+ })
}
};
}
@@ -435,7 +437,7 @@ pub fn catch_error(data: &Value, status: u16) -> Result<()> {
} else if let Some(message) = data["message"].as_str() {
bail!("{message}");
}
- bail!("Invalid response, status: {status}, data: {data}");
+ bail!("Invalid response data: {data} (status: {status})");
}
pub fn maybe_catch_error(data: &Value) -> Result<()> {
diff --git a/src/client/message.rs b/src/client/message.rs
index 9aff64a..bdee750 100644
--- a/src/client/message.rs
+++ b/src/client/message.rs
@@ -127,7 +127,7 @@ pub fn patch_system_message(messages: &mut Vec<Message>) {
}
}
-pub fn extract_sytem_message(messages: &mut Vec<Message>) -> Option<String> {
+pub fn extract_system_message(messages: &mut Vec<Message>) -> Option<String> {
if messages[0].role.is_system() {
let system_message = messages.remove(0);
return Some(system_message.content.to_text());
diff --git a/src/client/openai.rs b/src/client/openai.rs
index e5aae24..bb9c07c 100644
--- a/src/client/openai.rs
+++ b/src/client/openai.rs
@@ -107,7 +107,10 @@ pub async fn openai_send_message_streaming(
let data: Value = match text.parse() {
Ok(data) => data,
Err(_) => {
- bail!("Invalid respoinse, status: {status}, text: {text}");
+ bail!(
+ "Invalid response data: {text} (status: {})",
+ status.as_u16()
+ );
}
};
catch_error(&data, status.as_u16())?;
diff --git a/src/client/qianwen.rs b/src/client/qianwen.rs
index 76cc712..68e3666 100644
--- a/src/client/qianwen.rs
+++ b/src/client/qianwen.rs
@@ -320,7 +320,7 @@ async fn upload(model: &str, api_key: &str, url: &str) -> Result<String> {
let status = res.status();
if res.status() != 200 {
let text = res.text().await?;
- bail!("{status}, {text}")
+ bail!("Invalid response data: {text} (status: {status})")
}
Ok(format!("oss://{key}"))
}
diff --git a/src/client/vertexai.rs b/src/client/vertexai.rs
index 47e1a38..0c0608e 100644
--- a/src/client/vertexai.rs
+++ b/src/client/vertexai.rs
@@ -246,7 +246,7 @@ async fn fetch_access_token(
} else if let Some(err_msg) = value["error_description"].as_str() {
bail!("{err_msg}")
} else {
- bail!("Invalid response data")
+ bail!("Invalid response data: {value}")
}
}