@@ -49,41 +49,42 @@ impl Groq {
49
49
}
50
50
}
51
51
52
- pub fn add_message ( mut self , msg : Message ) -> Self {
52
+ pub fn add_message ( & mut self , msg : Message ) {
53
+ //! Non Consuming
53
54
//! Adds a message to the internal message vector
54
55
self . messages . push ( msg) ;
55
- self
56
56
}
57
57
58
- pub fn add_messages ( mut self , msgs : Vec < Message > ) -> Self {
58
+ pub fn add_messages ( & mut self , msgs : Vec < Message > ) {
59
+ //! Non Consuming
59
60
//! Add messages to the internal message vector
60
61
self . messages . extend ( msgs) ;
61
- self
62
62
}
63
63
64
- pub fn clear_messages ( mut self ) -> Self {
64
+ pub fn clear_messages ( & mut self ) {
65
+ //! Non Consuming
65
66
//! Clears the internal message vector.
66
67
//! And shrink the capacity to 3.
67
68
self . messages . clear ( ) ;
68
69
self . messages . shrink_to ( 3 ) ;
69
- self
70
70
}
71
71
72
72
/// Clears the internal tmp_messages vector.
73
73
/// # Note
74
74
/// Fucntion is created for internal use and is not recomended for external use.
75
75
pub fn clear_disposable_msgs_override ( & mut self ) {
76
+ //! Non Consuming
76
77
self . disposable_msgs . clear ( ) ;
77
78
}
78
79
79
- pub fn add_disposable_msgs ( mut self , msgs : Vec < Message > ) -> Self {
80
+ pub fn add_disposable_msgs ( & mut self , msgs : Vec < Message > ) {
81
+ //! Non Consuming
80
82
self . disposable_msgs . extend ( msgs) ;
81
- self
82
83
}
83
84
84
- pub fn add_disposable_msg ( mut self , msg : Message ) -> Self {
85
+ pub fn add_disposable_msg ( & mut self , msg : Message ) {
86
+ //! Non Consuming
85
87
self . disposable_msgs . push ( msg) ;
86
- self
87
88
}
88
89
89
90
fn get_disposable_msgs ( & self ) -> Option < Vec < Message > > {
@@ -102,7 +103,7 @@ impl Groq {
102
103
if self . disposable_msgs . is_empty ( ) {
103
104
self . messages . clone ( )
104
105
} else {
105
- return vec ! [ self . messages. clone( ) , self . disposable_msgs. clone( ) ] . concat ( ) ;
106
+ vec ! [ self . messages. clone( ) , self . disposable_msgs. clone( ) ] . concat ( )
106
107
}
107
108
}
108
109
@@ -111,7 +112,7 @@ impl Groq {
111
112
fn get_request_messages_with_disposable_clear ( & mut self ) -> Vec < Message > {
112
113
let all = self . get_all_request_messages ( ) ;
113
114
self . clear_disposable_msgs_override ( ) ;
114
- return all;
115
+ all
115
116
}
116
117
117
118
async fn create_stream_completion (
@@ -173,7 +174,7 @@ impl Groq {
173
174
if body. status ( ) == reqwest:: StatusCode :: OK {
174
175
Ok ( CompletionOption :: NonStream ( body. json :: < Response > ( ) . await ?) )
175
176
} else {
176
- let statcode = body. status ( ) . clone ( ) ;
177
+ let statcode = body. status ( ) ;
177
178
let mut error: ErrorResponse = serde_json:: from_str ( & body. text ( ) . await ?) ?;
178
179
error. code = statcode;
179
180
anyhow:: bail!( error)
@@ -243,8 +244,8 @@ mod completion_test {
243
244
let request = builder:: RequestBuilder :: new ( "mixtral-8x7b-32768" . to_string ( ) ) ;
244
245
let api_key = env ! ( "GROQ_API_KEY" ) ;
245
246
246
- let client = Groq :: new ( api_key) ;
247
- let mut client = client. add_messages ( messages) ;
247
+ let mut client = Groq :: new ( api_key) ;
248
+ client. add_messages ( messages) ;
248
249
249
250
let res = client. create ( request) . await ;
250
251
assert ! ( res. is_ok( ) ) ;
@@ -263,8 +264,8 @@ mod completion_test {
263
264
builder:: RequestBuilder :: new ( "mixtral-8x7b-32768" . to_string ( ) ) . with_stream ( true ) ;
264
265
let api_key = env ! ( "GROQ_API_KEY" ) ;
265
266
266
- let client = Groq :: new ( api_key) ;
267
- let mut client = client. add_messages ( messages) ;
267
+ let mut client = Groq :: new ( api_key) ;
268
+ client. add_messages ( messages) ;
268
269
269
270
let res = client. create ( request) . await ;
270
271
assert ! ( res. is_ok( ) ) ;
@@ -284,8 +285,8 @@ mod completion_test {
284
285
builder:: RequestBuilder :: new ( "mixtral-8x7b-32768" . to_string ( ) ) . with_stream ( true ) ;
285
286
let api_key = "" ;
286
287
287
- let client = Groq :: new ( api_key) ;
288
- let mut client = client. add_messages ( messages) ;
288
+ let mut client = Groq :: new ( api_key) ;
289
+ client. add_messages ( messages) ;
289
290
290
291
let res = client. create ( request) . await ;
291
292
assert ! ( res. is_err( ) ) ;
@@ -305,14 +306,14 @@ mod completion_test {
305
306
let api_key = env ! ( "GROQ_API_KEY" ) ;
306
307
307
308
let client = Groq :: new ( api_key) ;
308
- let mut client = client
309
- . add_messages ( messages)
310
- . add_disposable_msg ( Message :: UserMessage {
311
- role : Some ( "user" . to_string ( ) ) ,
312
- content : Some ( "Explain the importance of fast language models" . to_string ( ) ) ,
313
- name : None ,
314
- tool_call_id : None ,
315
- } ) ;
309
+ let mut client = client;
310
+ client . add_messages ( messages) ;
311
+ client . add_disposable_msg ( Message :: UserMessage {
312
+ role : Some ( "user" . to_string ( ) ) ,
313
+ content : Some ( "Explain the importance of fast language models" . to_string ( ) ) ,
314
+ name : None ,
315
+ tool_call_id : None ,
316
+ } ) ;
316
317
317
318
assert ! ( client. get_disposable_msgs( ) . is_some( ) ) ;
318
319
let res = client. create ( request) . await ;
0 commit comments