diff options
| author | sigoden <sigoden@gmail.com> | 2025-07-30 08:37:19 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-07-30 08:37:19 +0800 |
| commit | 5cd9c83153d55e33fad997f35ac4fe01186edbe6 (patch) | |
| tree | 6973097073ff2d06cef41c969177ae71749ddac9 /src | |
| parent | d5b28e13a0bb5399d201754938fe5f9a5180944e (diff) | |
| download | aichat-5cd9c83153d55e33fad997f35ac4fe01186edbe6.tar.gz | |
refactor: several improvements (#1363)
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/claude.rs | 6 | ||||
| -rw-r--r-- | src/client/openai.rs | 56 |
2 files changed, 31 insertions, 31 deletions
diff --git a/src/client/claude.rs b/src/client/claude.rs index 4b77870..d696b8b 100644 --- a/src/client/claude.rs +++ b/src/client/claude.rs @@ -42,7 +42,7 @@ fn prepare_chat_completions( self_: &ClaudeClient, data: ChatCompletionsData, ) -> Result<RequestData> { - let api_key = self_.get_api_key().ok(); + let api_key = self_.get_api_key()?; let api_base = self_ .get_api_base() .unwrap_or_else(|_| API_BASE.to_string()); @@ -53,9 +53,7 @@ fn prepare_chat_completions( let mut request_data = RequestData::new(url, body); request_data.header("anthropic-version", "2023-06-01"); - if let Some(api_key) = api_key { - request_data.header("x-api-key", api_key) - } + request_data.header("x-api-key", api_key); Ok(request_data) } diff --git a/src/client/openai.rs b/src/client/openai.rs index 7f62ec6..0c46fc3 100644 --- a/src/client/openai.rs +++ b/src/client/openai.rs @@ -240,36 +240,37 @@ pub fn openai_build_chat_completions_body(data: ChatCompletionsData, model: &Mod let Message { role, content } = message; match content { MessageContent::ToolCalls(MessageContentToolCalls { - tool_results, - text: _, - sequence, - }) => { + tool_results, + text: _, + sequence, + }) => { if !sequence { - let tool_calls: Vec<_> = tool_results.iter().map(|tool_result| { - json!({ - "id": tool_result.call.id, - "type": "function", - "function": { - "name": tool_result.call.name, - "arguments": tool_result.call.arguments.to_string(), - }, + let tool_calls: Vec<_> = tool_results + .iter() + .map(|tool_result| { + json!({ + "id": tool_result.call.id, + "type": "function", + "function": { + "name": tool_result.call.name, + "arguments": tool_result.call.arguments.to_string(), + }, + }) }) - }).collect(); + .collect(); let mut messages = vec![ - json!({ "role": MessageRole::Assistant, "tool_calls": tool_calls }) + json!({ "role": MessageRole::Assistant, "tool_calls": tool_calls }), ]; for tool_result in tool_results { - messages.push( - json!({ - "role": "tool", - "content": tool_result.output.to_string(), - "tool_call_id": tool_result.call.id, - }) - ); + messages.push(json!({ + "role": "tool", + "content": tool_result.output.to_string(), + "tool_call_id": tool_result.call.id, + })); } messages } else { - tool_results.into_iter().flat_map(|tool_result| { + tool_results.into_iter().flat_map(|tool_result| { vec![ json!({ "role": MessageRole::Assistant, @@ -293,11 +294,12 @@ pub fn openai_build_chat_completions_body(data: ChatCompletionsData, model: &Mod }).collect() } - }, - MessageContent::Text(text) if role.is_assistant() && i != messages_len - 1 => vec![ - json!({ "role": role, "content": strip_think_tag(&text) } - )], - _ => vec![json!({ "role": role, "content": content })] + } + MessageContent::Text(text) if role.is_assistant() && i != messages_len - 1 => { + vec![json!({ "role": role, "content": strip_think_tag(&text) } + )] + } + _ => vec![json!({ "role": role, "content": content })], } }) .collect(); |
