@@ -137,6 +137,14 @@ class OpenAIClient {
137
137
return Future .value (response);
138
138
}
139
139
140
+ // ------------------------------------------
141
+ // METHOD: _jsonDecode
142
+ // ------------------------------------------
143
+
144
+ dynamic _jsonDecode (http.Response r) {
145
+ return json.decode (utf8.decode (r.bodyBytes));
146
+ }
147
+
140
148
// ------------------------------------------
141
149
// METHOD: _request
142
150
// ------------------------------------------
@@ -378,7 +386,7 @@ class OpenAIClient {
378
386
responseType: 'application/json' ,
379
387
body: request,
380
388
);
381
- return CreateChatCompletionResponse .fromJson (json. decode (r.body ));
389
+ return CreateChatCompletionResponse .fromJson (_jsonDecode (r ));
382
390
}
383
391
384
392
// ------------------------------------------
@@ -402,7 +410,7 @@ class OpenAIClient {
402
410
responseType: 'application/json' ,
403
411
body: request,
404
412
);
405
- return CreateCompletionResponse .fromJson (json. decode (r.body ));
413
+ return CreateCompletionResponse .fromJson (_jsonDecode (r ));
406
414
}
407
415
408
416
// ------------------------------------------
@@ -426,7 +434,7 @@ class OpenAIClient {
426
434
responseType: 'application/json' ,
427
435
body: request,
428
436
);
429
- return CreateEmbeddingResponse .fromJson (json. decode (r.body ));
437
+ return CreateEmbeddingResponse .fromJson (_jsonDecode (r ));
430
438
}
431
439
432
440
// ------------------------------------------
@@ -456,7 +464,7 @@ class OpenAIClient {
456
464
'limit' : limit,
457
465
},
458
466
);
459
- return ListPaginatedFineTuningJobsResponse .fromJson (json. decode (r.body ));
467
+ return ListPaginatedFineTuningJobsResponse .fromJson (_jsonDecode (r ));
460
468
}
461
469
462
470
// ------------------------------------------
@@ -480,7 +488,7 @@ class OpenAIClient {
480
488
responseType: 'application/json' ,
481
489
body: request,
482
490
);
483
- return FineTuningJob .fromJson (json. decode (r.body ));
491
+ return FineTuningJob .fromJson (_jsonDecode (r ));
484
492
}
485
493
486
494
// ------------------------------------------
@@ -503,7 +511,7 @@ class OpenAIClient {
503
511
requestType: '' ,
504
512
responseType: 'application/json' ,
505
513
);
506
- return FineTuningJob .fromJson (json. decode (r.body ));
514
+ return FineTuningJob .fromJson (_jsonDecode (r ));
507
515
}
508
516
509
517
// ------------------------------------------
@@ -536,7 +544,7 @@ class OpenAIClient {
536
544
'limit' : limit,
537
545
},
538
546
);
539
- return ListFineTuningJobEventsResponse .fromJson (json. decode (r.body ));
547
+ return ListFineTuningJobEventsResponse .fromJson (_jsonDecode (r ));
540
548
}
541
549
542
550
// ------------------------------------------
@@ -559,7 +567,7 @@ class OpenAIClient {
559
567
requestType: '' ,
560
568
responseType: 'application/json' ,
561
569
);
562
- return FineTuningJob .fromJson (json. decode (r.body ));
570
+ return FineTuningJob .fromJson (_jsonDecode (r ));
563
571
}
564
572
565
573
// ------------------------------------------
@@ -583,7 +591,7 @@ class OpenAIClient {
583
591
responseType: 'application/json' ,
584
592
body: request,
585
593
);
586
- return ImagesResponse .fromJson (json. decode (r.body ));
594
+ return ImagesResponse .fromJson (_jsonDecode (r ));
587
595
}
588
596
589
597
// ------------------------------------------
@@ -602,7 +610,7 @@ class OpenAIClient {
602
610
requestType: '' ,
603
611
responseType: 'application/json' ,
604
612
);
605
- return ListModelsResponse .fromJson (json. decode (r.body ));
613
+ return ListModelsResponse .fromJson (_jsonDecode (r ));
606
614
}
607
615
608
616
// ------------------------------------------
@@ -625,7 +633,7 @@ class OpenAIClient {
625
633
requestType: '' ,
626
634
responseType: 'application/json' ,
627
635
);
628
- return Model .fromJson (json. decode (r.body ));
636
+ return Model .fromJson (_jsonDecode (r ));
629
637
}
630
638
631
639
// ------------------------------------------
@@ -648,7 +656,7 @@ class OpenAIClient {
648
656
requestType: '' ,
649
657
responseType: 'application/json' ,
650
658
);
651
- return DeleteModelResponse .fromJson (json. decode (r.body ));
659
+ return DeleteModelResponse .fromJson (_jsonDecode (r ));
652
660
}
653
661
654
662
// ------------------------------------------
@@ -672,6 +680,6 @@ class OpenAIClient {
672
680
responseType: 'application/json' ,
673
681
body: request,
674
682
);
675
- return CreateModerationResponse .fromJson (json. decode (r.body ));
683
+ return CreateModerationResponse .fromJson (_jsonDecode (r ));
676
684
}
677
685
}
0 commit comments