summaryrefslogtreecommitdiffstats
path: root/src/client/ernie.rs
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2024-04-26 07:43:35 +0800
committerGitHub <noreply@github.com>2024-04-26 07:43:35 +0800
commit740ca2413a1992d151c0a9ea62c12e69321c0973 (patch)
treeccacd2fd5789064c091b212f26f3c46561f71f69 /src/client/ernie.rs
parenta21e1213ccdd11d76f6338436c431e459ab8e574 (diff)
downloadaichat-740ca2413a1992d151c0a9ea62c12e69321c0973.tar.gz
refactor: simplify impl client trait (#445)
Diffstat (limited to 'src/client/ernie.rs')
-rw-r--r--src/client/ernie.rs44
1 files changed, 22 insertions, 22 deletions
diff --git a/src/client/ernie.rs b/src/client/ernie.rs
index 22f9362..5cc546c 100644
--- a/src/client/ernie.rs
+++ b/src/client/ernie.rs
@@ -30,28 +30,6 @@ pub struct ErnieConfig {
pub extra: Option<ExtraConfig>,
}
-#[async_trait]
-impl Client for ErnieClient {
- client_common_fns!();
-
- async fn send_message_inner(&self, client: &ReqwestClient, data: SendData) -> Result<String> {
- self.prepare_access_token().await?;
- let builder = self.request_builder(client, data)?;
- send_message(builder).await
- }
-
- async fn send_message_streaming_inner(
- &self,
- client: &ReqwestClient,
- handler: &mut ReplyHandler,
- data: SendData,
- ) -> Result<()> {
- self.prepare_access_token().await?;
- let builder = self.request_builder(client, data)?;
- send_message_streaming(builder, handler).await
- }
-}
-
impl ErnieClient {
list_models_fn!(
ErnieConfig,
@@ -118,6 +96,28 @@ impl ErnieClient {
}
}
+#[async_trait]
+impl Client for ErnieClient {
+ client_common_fns!();
+
+ async fn send_message_inner(&self, client: &ReqwestClient, data: SendData) -> Result<String> {
+ self.prepare_access_token().await?;
+ let builder = self.request_builder(client, data)?;
+ send_message(builder).await
+ }
+
+ async fn send_message_streaming_inner(
+ &self,
+ client: &ReqwestClient,
+ handler: &mut ReplyHandler,
+ data: SendData,
+ ) -> Result<()> {
+ self.prepare_access_token().await?;
+ let builder = self.request_builder(client, data)?;
+ send_message_streaming(builder, handler).await
+ }
+}
+
async fn send_message(builder: RequestBuilder) -> Result<String> {
let data: Value = builder.send().await?.json().await?;
maybe_catch_error(&data)?;