File tree Expand file tree Collapse file tree 1 file changed +12
-3
lines changed Expand file tree Collapse file tree 1 file changed +12
-3
lines changed Original file line number Diff line number Diff line change @@ -316,13 +316,22 @@ impl<C: Config> Client<C> {
316
316
317
317
backoff:: future:: retry ( self . backoff . clone ( ) , || async {
318
318
let request = request_maker ( ) . await . map_err ( backoff:: Error :: Permanent ) ?;
319
- let response = client
319
+ let mut response = client
320
320
. execute ( request)
321
321
. await
322
322
. map_err ( OpenAIError :: Reqwest )
323
323
. map_err ( backoff:: Error :: Permanent ) ?;
324
324
325
325
let status = response. status ( ) ;
326
+
327
+ // Handle bad base URLs
328
+ if status. as_u16 ( ) == 404 {
329
+ response = response
330
+ . error_for_status ( )
331
+ . map_err ( OpenAIError :: Reqwest )
332
+ . map_err ( backoff:: Error :: Permanent ) ?;
333
+ } ;
334
+
326
335
let bytes = response
327
336
. bytes ( )
328
337
. await
@@ -378,7 +387,7 @@ impl<C: Config> Client<C> {
378
387
}
379
388
380
389
/// Make HTTP POST request to receive SSE
381
- pub async fn post_stream < I , O , E > (
390
+ pub async fn post_stream < I , O , E > (
382
391
& self ,
383
392
path : & str ,
384
393
request : I ,
@@ -479,7 +488,7 @@ where
479
488
String :: from_utf8_lossy( message. data. as_bytes( ) ) ,
480
489
) ;
481
490
Err ( Into :: < E > :: into ( e) )
482
- } ,
491
+ }
483
492
Ok ( output) => Ok ( output) ,
484
493
} ;
485
494
You can’t perform that action at this time.
0 commit comments