supercompat 1.5.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1412 -1038
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +63 -40
- package/dist/index.d.ts +63 -40
- package/dist/index.js +1406 -1040
- package/dist/index.js.map +1 -1
- package/dist/supercompat.cjs +123 -1
- package/dist/supercompat.cjs.map +1 -1
- package/dist/supercompat.d.cts +6 -4
- package/dist/supercompat.d.ts +6 -4
- package/dist/supercompat.js +111 -1
- package/dist/supercompat.js.map +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.d.cts +2 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/prisma.cjs.map +1 -1
- package/dist/types/prisma.d.cts +2 -0
- package/dist/types/prisma.d.ts +2 -0
- package/dist/types/prisma.js.map +1 -1
- package/package.json +11 -8
package/dist/index.cjs
CHANGED
|
@@ -362,9 +362,15 @@ __export(src_exports, {
|
|
|
362
362
|
completionsRunAdapter: function() {
|
|
363
363
|
return completionsRunAdapter;
|
|
364
364
|
},
|
|
365
|
+
groqClientAdapter: function() {
|
|
366
|
+
return groqClientAdapter;
|
|
367
|
+
},
|
|
365
368
|
mistralClientAdapter: function() {
|
|
366
369
|
return mistralClientAdapter;
|
|
367
370
|
},
|
|
371
|
+
openaiClientAdapter: function() {
|
|
372
|
+
return openaiClientAdapter;
|
|
373
|
+
},
|
|
368
374
|
perplexityClientAdapter: function() {
|
|
369
375
|
return perplexityClientAdapter;
|
|
370
376
|
},
|
|
@@ -377,8 +383,10 @@ __export(src_exports, {
|
|
|
377
383
|
});
|
|
378
384
|
module.exports = __toCommonJS(src_exports);
|
|
379
385
|
// src/supercompat.ts
|
|
386
|
+
var import_openai = __toESM(require("openai"), 1);
|
|
387
|
+
// src/supercompatFetch/requestHandlers.ts
|
|
380
388
|
var import_radash = require("radash");
|
|
381
|
-
var
|
|
389
|
+
var requestHandlers = function(param) {
|
|
382
390
|
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
383
391
|
return (0, import_radash.assign)(client, storage({
|
|
384
392
|
runAdapter: (0, import_radash.partob)(runAdapter, {
|
|
@@ -386,6 +394,446 @@ var supercompat = function(param) {
|
|
|
386
394
|
})
|
|
387
395
|
}));
|
|
388
396
|
};
|
|
397
|
+
// src/supercompatFetch/findRequestHandler.ts
|
|
398
|
+
var findRequestHandler = function(param) {
|
|
399
|
+
var url = param.url, requestHandlers2 = param.requestHandlers;
|
|
400
|
+
var pathname = new URL(url).pathname;
|
|
401
|
+
for(var key in requestHandlers2){
|
|
402
|
+
var regex = new RegExp(key);
|
|
403
|
+
if (regex.test(pathname)) {
|
|
404
|
+
return requestHandlers2[key];
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
};
|
|
408
|
+
// src/supercompatFetch/index.ts
|
|
409
|
+
var supercompatFetch = function(param) {
|
|
410
|
+
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
411
|
+
var requestHandlers2 = requestHandlers({
|
|
412
|
+
client: client,
|
|
413
|
+
storage: storage,
|
|
414
|
+
runAdapter: runAdapter
|
|
415
|
+
});
|
|
416
|
+
return function() {
|
|
417
|
+
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
418
|
+
args[_key] = arguments[_key];
|
|
419
|
+
}
|
|
420
|
+
var _args = _sliced_to_array(args, 2), url = _args[0], options = _args[1];
|
|
421
|
+
var pathHandler = findRequestHandler({
|
|
422
|
+
url: url,
|
|
423
|
+
requestHandlers: requestHandlers2
|
|
424
|
+
});
|
|
425
|
+
if (!pathHandler) {
|
|
426
|
+
return fetch.apply(void 0, _to_consumable_array(args));
|
|
427
|
+
}
|
|
428
|
+
var requestHandler = pathHandler[options === null || options === void 0 ? void 0 : options.method];
|
|
429
|
+
if (!requestHandler) {
|
|
430
|
+
return fetch.apply(void 0, _to_consumable_array(args));
|
|
431
|
+
}
|
|
432
|
+
return requestHandler.apply(void 0, _to_consumable_array(args));
|
|
433
|
+
};
|
|
434
|
+
};
|
|
435
|
+
// src/supercompat.ts
|
|
436
|
+
var supercompat = function(param) {
|
|
437
|
+
var client = param.client, storage = param.storage, runAdapter = param.runAdapter;
|
|
438
|
+
return new import_openai.default({
|
|
439
|
+
apiKey: "SUPERCOMPAT_PLACEHOLDER_OPENAI_KEY",
|
|
440
|
+
fetch: supercompatFetch({
|
|
441
|
+
client: client,
|
|
442
|
+
storage: storage,
|
|
443
|
+
runAdapter: runAdapter
|
|
444
|
+
})
|
|
445
|
+
});
|
|
446
|
+
};
|
|
447
|
+
// src/adapters/client/groqClientAdapter/completions/post.ts
|
|
448
|
+
var post = function(param) {
|
|
449
|
+
var groq = param.groq;
|
|
450
|
+
return function() {
|
|
451
|
+
var _ref = _async_to_generator(function(_url, options) {
|
|
452
|
+
var body, response, stream, data, error;
|
|
453
|
+
return _ts_generator(this, function(_state) {
|
|
454
|
+
switch(_state.label){
|
|
455
|
+
case 0:
|
|
456
|
+
body = JSON.parse(options.body);
|
|
457
|
+
if (!body.stream) return [
|
|
458
|
+
3,
|
|
459
|
+
2
|
|
460
|
+
];
|
|
461
|
+
return [
|
|
462
|
+
4,
|
|
463
|
+
groq.chat.completions.create(body)
|
|
464
|
+
];
|
|
465
|
+
case 1:
|
|
466
|
+
response = _state.sent();
|
|
467
|
+
stream = new ReadableStream({
|
|
468
|
+
start: function start(controller) {
|
|
469
|
+
return _async_to_generator(function() {
|
|
470
|
+
var _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, chunk, err;
|
|
471
|
+
return _ts_generator(this, function(_state) {
|
|
472
|
+
switch(_state.label){
|
|
473
|
+
case 0:
|
|
474
|
+
_iteratorAbruptCompletion = false, _didIteratorError = false;
|
|
475
|
+
_state.label = 1;
|
|
476
|
+
case 1:
|
|
477
|
+
_state.trys.push([
|
|
478
|
+
1,
|
|
479
|
+
6,
|
|
480
|
+
7,
|
|
481
|
+
12
|
|
482
|
+
]);
|
|
483
|
+
_iterator = _async_iterator(response);
|
|
484
|
+
_state.label = 2;
|
|
485
|
+
case 2:
|
|
486
|
+
return [
|
|
487
|
+
4,
|
|
488
|
+
_iterator.next()
|
|
489
|
+
];
|
|
490
|
+
case 3:
|
|
491
|
+
if (!(_iteratorAbruptCompletion = !(_step = _state.sent()).done)) return [
|
|
492
|
+
3,
|
|
493
|
+
5
|
|
494
|
+
];
|
|
495
|
+
_value = _step.value;
|
|
496
|
+
chunk = _value;
|
|
497
|
+
controller.enqueue("data: ".concat(JSON.stringify(chunk), "\n\n"));
|
|
498
|
+
_state.label = 4;
|
|
499
|
+
case 4:
|
|
500
|
+
_iteratorAbruptCompletion = false;
|
|
501
|
+
return [
|
|
502
|
+
3,
|
|
503
|
+
2
|
|
504
|
+
];
|
|
505
|
+
case 5:
|
|
506
|
+
return [
|
|
507
|
+
3,
|
|
508
|
+
12
|
|
509
|
+
];
|
|
510
|
+
case 6:
|
|
511
|
+
err = _state.sent();
|
|
512
|
+
_didIteratorError = true;
|
|
513
|
+
_iteratorError = err;
|
|
514
|
+
return [
|
|
515
|
+
3,
|
|
516
|
+
12
|
|
517
|
+
];
|
|
518
|
+
case 7:
|
|
519
|
+
_state.trys.push([
|
|
520
|
+
7,
|
|
521
|
+
,
|
|
522
|
+
10,
|
|
523
|
+
11
|
|
524
|
+
]);
|
|
525
|
+
if (!(_iteratorAbruptCompletion && _iterator.return != null)) return [
|
|
526
|
+
3,
|
|
527
|
+
9
|
|
528
|
+
];
|
|
529
|
+
return [
|
|
530
|
+
4,
|
|
531
|
+
_iterator.return()
|
|
532
|
+
];
|
|
533
|
+
case 8:
|
|
534
|
+
_state.sent();
|
|
535
|
+
_state.label = 9;
|
|
536
|
+
case 9:
|
|
537
|
+
return [
|
|
538
|
+
3,
|
|
539
|
+
11
|
|
540
|
+
];
|
|
541
|
+
case 10:
|
|
542
|
+
if (_didIteratorError) {
|
|
543
|
+
throw _iteratorError;
|
|
544
|
+
}
|
|
545
|
+
return [
|
|
546
|
+
7
|
|
547
|
+
];
|
|
548
|
+
case 11:
|
|
549
|
+
return [
|
|
550
|
+
7
|
|
551
|
+
];
|
|
552
|
+
case 12:
|
|
553
|
+
controller.close();
|
|
554
|
+
return [
|
|
555
|
+
2
|
|
556
|
+
];
|
|
557
|
+
}
|
|
558
|
+
});
|
|
559
|
+
})();
|
|
560
|
+
}
|
|
561
|
+
});
|
|
562
|
+
return [
|
|
563
|
+
2,
|
|
564
|
+
new Response(stream, {
|
|
565
|
+
headers: {
|
|
566
|
+
"Content-Type": "text/event-stream"
|
|
567
|
+
}
|
|
568
|
+
})
|
|
569
|
+
];
|
|
570
|
+
case 2:
|
|
571
|
+
_state.trys.push([
|
|
572
|
+
2,
|
|
573
|
+
4,
|
|
574
|
+
,
|
|
575
|
+
5
|
|
576
|
+
]);
|
|
577
|
+
return [
|
|
578
|
+
4,
|
|
579
|
+
groq.chat.completions.create(body)
|
|
580
|
+
];
|
|
581
|
+
case 3:
|
|
582
|
+
data = _state.sent();
|
|
583
|
+
return [
|
|
584
|
+
2,
|
|
585
|
+
new Response(JSON.stringify({
|
|
586
|
+
data: data
|
|
587
|
+
}), {
|
|
588
|
+
status: 200,
|
|
589
|
+
headers: {
|
|
590
|
+
"Content-Type": "application/json"
|
|
591
|
+
}
|
|
592
|
+
})
|
|
593
|
+
];
|
|
594
|
+
case 4:
|
|
595
|
+
error = _state.sent();
|
|
596
|
+
console.dir({
|
|
597
|
+
error: error
|
|
598
|
+
}, {
|
|
599
|
+
depth: null
|
|
600
|
+
});
|
|
601
|
+
return [
|
|
602
|
+
2,
|
|
603
|
+
new Response(JSON.stringify({
|
|
604
|
+
error: error
|
|
605
|
+
}), {
|
|
606
|
+
status: 500,
|
|
607
|
+
headers: {
|
|
608
|
+
"Content-Type": "application/json"
|
|
609
|
+
}
|
|
610
|
+
})
|
|
611
|
+
];
|
|
612
|
+
case 5:
|
|
613
|
+
return [
|
|
614
|
+
2
|
|
615
|
+
];
|
|
616
|
+
}
|
|
617
|
+
});
|
|
618
|
+
});
|
|
619
|
+
return function(_url, options) {
|
|
620
|
+
return _ref.apply(this, arguments);
|
|
621
|
+
};
|
|
622
|
+
}();
|
|
623
|
+
};
|
|
624
|
+
// src/adapters/client/groqClientAdapter/completions/index.ts
|
|
625
|
+
var completions = function(param) {
|
|
626
|
+
var groq = param.groq;
|
|
627
|
+
return {
|
|
628
|
+
post: post({
|
|
629
|
+
groq: groq
|
|
630
|
+
})
|
|
631
|
+
};
|
|
632
|
+
};
|
|
633
|
+
// src/adapters/client/groqClientAdapter/index.ts
|
|
634
|
+
var groqClientAdapter = function(param) {
|
|
635
|
+
var groq = param.groq;
|
|
636
|
+
return {
|
|
637
|
+
"^/v1/chat/completions$": completions({
|
|
638
|
+
groq: groq
|
|
639
|
+
})
|
|
640
|
+
};
|
|
641
|
+
};
|
|
642
|
+
// src/adapters/client/openaiClientAdapter/completions/post.ts
|
|
643
|
+
var post2 = function(param) {
|
|
644
|
+
var openai = param.openai;
|
|
645
|
+
return function() {
|
|
646
|
+
var _ref = _async_to_generator(function(_url, options) {
|
|
647
|
+
var body, response, stream, data, error;
|
|
648
|
+
return _ts_generator(this, function(_state) {
|
|
649
|
+
switch(_state.label){
|
|
650
|
+
case 0:
|
|
651
|
+
body = JSON.parse(options.body);
|
|
652
|
+
if (!body.stream) return [
|
|
653
|
+
3,
|
|
654
|
+
2
|
|
655
|
+
];
|
|
656
|
+
return [
|
|
657
|
+
4,
|
|
658
|
+
openai.chat.completions.create(body)
|
|
659
|
+
];
|
|
660
|
+
case 1:
|
|
661
|
+
response = _state.sent();
|
|
662
|
+
stream = new ReadableStream({
|
|
663
|
+
start: function start(controller) {
|
|
664
|
+
return _async_to_generator(function() {
|
|
665
|
+
var _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, chunk, err;
|
|
666
|
+
return _ts_generator(this, function(_state) {
|
|
667
|
+
switch(_state.label){
|
|
668
|
+
case 0:
|
|
669
|
+
_iteratorAbruptCompletion = false, _didIteratorError = false;
|
|
670
|
+
_state.label = 1;
|
|
671
|
+
case 1:
|
|
672
|
+
_state.trys.push([
|
|
673
|
+
1,
|
|
674
|
+
6,
|
|
675
|
+
7,
|
|
676
|
+
12
|
|
677
|
+
]);
|
|
678
|
+
_iterator = _async_iterator(response);
|
|
679
|
+
_state.label = 2;
|
|
680
|
+
case 2:
|
|
681
|
+
return [
|
|
682
|
+
4,
|
|
683
|
+
_iterator.next()
|
|
684
|
+
];
|
|
685
|
+
case 3:
|
|
686
|
+
if (!(_iteratorAbruptCompletion = !(_step = _state.sent()).done)) return [
|
|
687
|
+
3,
|
|
688
|
+
5
|
|
689
|
+
];
|
|
690
|
+
_value = _step.value;
|
|
691
|
+
chunk = _value;
|
|
692
|
+
controller.enqueue("data: ".concat(JSON.stringify(chunk), "\n\n"));
|
|
693
|
+
_state.label = 4;
|
|
694
|
+
case 4:
|
|
695
|
+
_iteratorAbruptCompletion = false;
|
|
696
|
+
return [
|
|
697
|
+
3,
|
|
698
|
+
2
|
|
699
|
+
];
|
|
700
|
+
case 5:
|
|
701
|
+
return [
|
|
702
|
+
3,
|
|
703
|
+
12
|
|
704
|
+
];
|
|
705
|
+
case 6:
|
|
706
|
+
err = _state.sent();
|
|
707
|
+
_didIteratorError = true;
|
|
708
|
+
_iteratorError = err;
|
|
709
|
+
return [
|
|
710
|
+
3,
|
|
711
|
+
12
|
|
712
|
+
];
|
|
713
|
+
case 7:
|
|
714
|
+
_state.trys.push([
|
|
715
|
+
7,
|
|
716
|
+
,
|
|
717
|
+
10,
|
|
718
|
+
11
|
|
719
|
+
]);
|
|
720
|
+
if (!(_iteratorAbruptCompletion && _iterator.return != null)) return [
|
|
721
|
+
3,
|
|
722
|
+
9
|
|
723
|
+
];
|
|
724
|
+
return [
|
|
725
|
+
4,
|
|
726
|
+
_iterator.return()
|
|
727
|
+
];
|
|
728
|
+
case 8:
|
|
729
|
+
_state.sent();
|
|
730
|
+
_state.label = 9;
|
|
731
|
+
case 9:
|
|
732
|
+
return [
|
|
733
|
+
3,
|
|
734
|
+
11
|
|
735
|
+
];
|
|
736
|
+
case 10:
|
|
737
|
+
if (_didIteratorError) {
|
|
738
|
+
throw _iteratorError;
|
|
739
|
+
}
|
|
740
|
+
return [
|
|
741
|
+
7
|
|
742
|
+
];
|
|
743
|
+
case 11:
|
|
744
|
+
return [
|
|
745
|
+
7
|
|
746
|
+
];
|
|
747
|
+
case 12:
|
|
748
|
+
controller.close();
|
|
749
|
+
return [
|
|
750
|
+
2
|
|
751
|
+
];
|
|
752
|
+
}
|
|
753
|
+
});
|
|
754
|
+
})();
|
|
755
|
+
}
|
|
756
|
+
});
|
|
757
|
+
return [
|
|
758
|
+
2,
|
|
759
|
+
new Response(stream, {
|
|
760
|
+
headers: {
|
|
761
|
+
"Content-Type": "text/event-stream"
|
|
762
|
+
}
|
|
763
|
+
})
|
|
764
|
+
];
|
|
765
|
+
case 2:
|
|
766
|
+
_state.trys.push([
|
|
767
|
+
2,
|
|
768
|
+
4,
|
|
769
|
+
,
|
|
770
|
+
5
|
|
771
|
+
]);
|
|
772
|
+
return [
|
|
773
|
+
4,
|
|
774
|
+
openai.chat.completions.create(body)
|
|
775
|
+
];
|
|
776
|
+
case 3:
|
|
777
|
+
data = _state.sent();
|
|
778
|
+
return [
|
|
779
|
+
2,
|
|
780
|
+
new Response(JSON.stringify({
|
|
781
|
+
data: data
|
|
782
|
+
}), {
|
|
783
|
+
status: 200,
|
|
784
|
+
headers: {
|
|
785
|
+
"Content-Type": "application/json"
|
|
786
|
+
}
|
|
787
|
+
})
|
|
788
|
+
];
|
|
789
|
+
case 4:
|
|
790
|
+
error = _state.sent();
|
|
791
|
+
console.dir({
|
|
792
|
+
error: error
|
|
793
|
+
}, {
|
|
794
|
+
depth: null
|
|
795
|
+
});
|
|
796
|
+
return [
|
|
797
|
+
2,
|
|
798
|
+
new Response(JSON.stringify({
|
|
799
|
+
error: error
|
|
800
|
+
}), {
|
|
801
|
+
status: 500,
|
|
802
|
+
headers: {
|
|
803
|
+
"Content-Type": "application/json"
|
|
804
|
+
}
|
|
805
|
+
})
|
|
806
|
+
];
|
|
807
|
+
case 5:
|
|
808
|
+
return [
|
|
809
|
+
2
|
|
810
|
+
];
|
|
811
|
+
}
|
|
812
|
+
});
|
|
813
|
+
});
|
|
814
|
+
return function(_url, options) {
|
|
815
|
+
return _ref.apply(this, arguments);
|
|
816
|
+
};
|
|
817
|
+
}();
|
|
818
|
+
};
|
|
819
|
+
// src/adapters/client/openaiClientAdapter/completions/index.ts
|
|
820
|
+
var completions2 = function(param) {
|
|
821
|
+
var openai = param.openai;
|
|
822
|
+
return {
|
|
823
|
+
post: post2({
|
|
824
|
+
openai: openai
|
|
825
|
+
})
|
|
826
|
+
};
|
|
827
|
+
};
|
|
828
|
+
// src/adapters/client/openaiClientAdapter/index.ts
|
|
829
|
+
var openaiClientAdapter = function(param) {
|
|
830
|
+
var openai = param.openai;
|
|
831
|
+
return {
|
|
832
|
+
"^/v1/chat/completions$": completions2({
|
|
833
|
+
openai: openai
|
|
834
|
+
})
|
|
835
|
+
};
|
|
836
|
+
};
|
|
389
837
|
// src/adapters/client/mistralClientAdapter/index.ts
|
|
390
838
|
var mistralClientAdapter = function(param) {
|
|
391
839
|
var mistral = param.mistral;
|
|
@@ -459,11 +907,6 @@ var anthropicClientAdapter = function(param) {
|
|
|
459
907
|
}
|
|
460
908
|
var _args = _to_array(args), firstArg = _args[0], secondArg = _args[1], restArgs = _args.slice(2);
|
|
461
909
|
var messages4 = firstArg.messages;
|
|
462
|
-
console.dir({
|
|
463
|
-
messages: messages4
|
|
464
|
-
}, {
|
|
465
|
-
depth: null
|
|
466
|
-
});
|
|
467
910
|
if (firstArg.messages[0].role != "user") {
|
|
468
911
|
messages4.unshift({
|
|
469
912
|
role: "user",
|
|
@@ -540,11 +983,11 @@ var serializeMessage = function(param) {
|
|
|
540
983
|
message: message
|
|
541
984
|
})
|
|
542
985
|
];
|
|
543
|
-
var
|
|
544
|
-
if (!
|
|
986
|
+
var run2 = message.run;
|
|
987
|
+
if (!run2) return result;
|
|
545
988
|
var messageToolCalls = ((_message_metadata = message.metadata) === null || _message_metadata === void 0 ? void 0 : _message_metadata.toolCalls) || [];
|
|
546
989
|
messageToolCalls.forEach(function(tc) {
|
|
547
|
-
var runStep =
|
|
990
|
+
var runStep = run2.runSteps.find(function(rs) {
|
|
548
991
|
if (rs.type !== "tool_calls") return false;
|
|
549
992
|
return rs.step_details.tool_calls.some(function(rsTc) {
|
|
550
993
|
if (rsTc.type !== "function") return false;
|
|
@@ -565,23 +1008,21 @@ var serializeMessage = function(param) {
|
|
|
565
1008
|
// src/adapters/run/completionsRunAdapter/messages/index.ts
|
|
566
1009
|
var messages = function() {
|
|
567
1010
|
var _ref = _async_to_generator(function(param) {
|
|
568
|
-
var
|
|
1011
|
+
var run2, getMessages2, _, _1, _2;
|
|
569
1012
|
return _ts_generator(this, function(_state) {
|
|
570
1013
|
switch(_state.label){
|
|
571
1014
|
case 0:
|
|
572
|
-
|
|
573
|
-
_1 = (_ = _to_consumable_array(
|
|
1015
|
+
run2 = param.run, getMessages2 = param.getMessages;
|
|
1016
|
+
_1 = (_ = _to_consumable_array(run2.instructions ? [
|
|
574
1017
|
{
|
|
575
1018
|
role: "system",
|
|
576
|
-
content:
|
|
1019
|
+
content: run2.instructions
|
|
577
1020
|
}
|
|
578
1021
|
] : [])).concat;
|
|
579
1022
|
_2 = (0, import_radash2.flat);
|
|
580
1023
|
return [
|
|
581
1024
|
4,
|
|
582
|
-
getMessages2(
|
|
583
|
-
messagesHistoryLength: messagesHistoryLength
|
|
584
|
-
})
|
|
1025
|
+
getMessages2()
|
|
585
1026
|
];
|
|
586
1027
|
case 1:
|
|
587
1028
|
return [
|
|
@@ -673,21 +1114,26 @@ var toolCallsData = function(param) {
|
|
|
673
1114
|
}
|
|
674
1115
|
return newToolCalls;
|
|
675
1116
|
};
|
|
676
|
-
var completionsRunAdapter = function(
|
|
677
|
-
var _param_messagesHistoryLength = param.messagesHistoryLength, messagesHistoryLength = _param_messagesHistoryLength === void 0 ? 10 : _param_messagesHistoryLength, _param_maxTokens = param.maxTokens, maxTokens = _param_maxTokens === void 0 ? void 0 : _param_maxTokens;
|
|
1117
|
+
var completionsRunAdapter = function() {
|
|
678
1118
|
return function() {
|
|
679
1119
|
var _ref = _async_to_generator(function(param) {
|
|
680
|
-
var
|
|
1120
|
+
var clientAdapter, run2, onEvent2, getMessages2, client, opts, _tmp, providerResponse, e, message, toolCallsRunStep, currentContent, currentToolCalls, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, chunk, delta, _delta_content, err;
|
|
681
1121
|
return _ts_generator(this, function(_state) {
|
|
682
1122
|
switch(_state.label){
|
|
683
1123
|
case 0:
|
|
684
|
-
|
|
685
|
-
if (
|
|
1124
|
+
clientAdapter = param.client, run2 = param.run, onEvent2 = param.onEvent, getMessages2 = param.getMessages;
|
|
1125
|
+
if (run2.status !== "queued") return [
|
|
686
1126
|
2
|
|
687
1127
|
];
|
|
1128
|
+
client = supercompat({
|
|
1129
|
+
client: clientAdapter,
|
|
1130
|
+
storage: function() {},
|
|
1131
|
+
// @ts-ignore-next-line
|
|
1132
|
+
runAdapter: {}
|
|
1133
|
+
});
|
|
688
1134
|
onEvent2({
|
|
689
1135
|
event: "thread.run.in_progress",
|
|
690
|
-
data: _object_spread_props(_object_spread({},
|
|
1136
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
691
1137
|
status: "in_progress"
|
|
692
1138
|
})
|
|
693
1139
|
});
|
|
@@ -695,29 +1141,17 @@ var completionsRunAdapter = function(param) {
|
|
|
695
1141
|
return [
|
|
696
1142
|
4,
|
|
697
1143
|
messages({
|
|
698
|
-
run:
|
|
699
|
-
getMessages: getMessages2
|
|
700
|
-
messagesHistoryLength: messagesHistoryLength
|
|
1144
|
+
run: run2,
|
|
1145
|
+
getMessages: getMessages2
|
|
701
1146
|
})
|
|
702
1147
|
];
|
|
703
1148
|
case 1:
|
|
704
1149
|
opts = _object_spread.apply(void 0, [
|
|
705
|
-
(_tmp.messages = _state.sent(), _tmp.model =
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
} : {},
|
|
709
|
-
maxTokens ? {
|
|
710
|
-
max_tokens: maxTokens
|
|
711
|
-
} : {},
|
|
712
|
-
(0, import_radash3.isEmpty)(run.tools) ? {} : {
|
|
713
|
-
tools: run.tools
|
|
1150
|
+
(_tmp.messages = _state.sent(), _tmp.model = run2.model, _tmp.stream = true, _tmp.response_format = run2.response_format, _tmp),
|
|
1151
|
+
(0, import_radash3.isEmpty)(run2.tools) ? {} : {
|
|
1152
|
+
tools: run2.tools
|
|
714
1153
|
}
|
|
715
1154
|
]);
|
|
716
|
-
console.dir({
|
|
717
|
-
opts: opts
|
|
718
|
-
}, {
|
|
719
|
-
depth: null
|
|
720
|
-
});
|
|
721
1155
|
_state.label = 2;
|
|
722
1156
|
case 2:
|
|
723
1157
|
_state.trys.push([
|
|
@@ -738,12 +1172,13 @@ var completionsRunAdapter = function(param) {
|
|
|
738
1172
|
];
|
|
739
1173
|
case 4:
|
|
740
1174
|
e = _state.sent();
|
|
1175
|
+
console.log("error", e);
|
|
741
1176
|
console.error(e);
|
|
742
1177
|
return [
|
|
743
1178
|
2,
|
|
744
1179
|
onEvent2({
|
|
745
1180
|
event: "thread.run.failed",
|
|
746
|
-
data: _object_spread_props(_object_spread({},
|
|
1181
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
747
1182
|
failed_at: (0, import_dayjs.default)().unix(),
|
|
748
1183
|
status: "in_progress",
|
|
749
1184
|
last_error: e.message
|
|
@@ -759,14 +1194,14 @@ var completionsRunAdapter = function(param) {
|
|
|
759
1194
|
id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
|
|
760
1195
|
object: "thread.message",
|
|
761
1196
|
completed_at: null,
|
|
762
|
-
run_id:
|
|
1197
|
+
run_id: run2.id,
|
|
763
1198
|
created_at: (0, import_dayjs.default)().unix(),
|
|
764
|
-
assistant_id:
|
|
1199
|
+
assistant_id: run2.assistant_id,
|
|
765
1200
|
incomplete_at: null,
|
|
766
1201
|
incomplete_details: null,
|
|
767
1202
|
metadata: {},
|
|
768
1203
|
attachments: [],
|
|
769
|
-
thread_id:
|
|
1204
|
+
thread_id: run2.thread_id,
|
|
770
1205
|
content: [
|
|
771
1206
|
{
|
|
772
1207
|
text: {
|
|
@@ -788,9 +1223,9 @@ var completionsRunAdapter = function(param) {
|
|
|
788
1223
|
data: {
|
|
789
1224
|
id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
|
|
790
1225
|
object: "thread.run.step",
|
|
791
|
-
run_id:
|
|
792
|
-
assistant_id:
|
|
793
|
-
thread_id:
|
|
1226
|
+
run_id: run2.id,
|
|
1227
|
+
assistant_id: run2.assistant_id,
|
|
1228
|
+
thread_id: run2.thread_id,
|
|
794
1229
|
type: "message_creation",
|
|
795
1230
|
status: "completed",
|
|
796
1231
|
completed_at: (0, import_dayjs.default)().unix(),
|
|
@@ -810,11 +1245,6 @@ var completionsRunAdapter = function(param) {
|
|
|
810
1245
|
}
|
|
811
1246
|
});
|
|
812
1247
|
currentContent = "";
|
|
813
|
-
console.dir({
|
|
814
|
-
providerResponse: providerResponse
|
|
815
|
-
}, {
|
|
816
|
-
depth: null
|
|
817
|
-
});
|
|
818
1248
|
_iteratorAbruptCompletion = false, _didIteratorError = false;
|
|
819
1249
|
_state.label = 7;
|
|
820
1250
|
case 7:
|
|
@@ -858,9 +1288,9 @@ var completionsRunAdapter = function(param) {
|
|
|
858
1288
|
data: {
|
|
859
1289
|
id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
|
|
860
1290
|
object: "thread.run.step",
|
|
861
|
-
run_id:
|
|
862
|
-
assistant_id:
|
|
863
|
-
thread_id:
|
|
1291
|
+
run_id: run2.id,
|
|
1292
|
+
assistant_id: run2.assistant_id,
|
|
1293
|
+
thread_id: run2.thread_id,
|
|
864
1294
|
type: "tool_calls",
|
|
865
1295
|
status: "in_progress",
|
|
866
1296
|
completed_at: null,
|
|
@@ -886,7 +1316,7 @@ var completionsRunAdapter = function(param) {
|
|
|
886
1316
|
event: "thread.run.step.delta",
|
|
887
1317
|
data: {
|
|
888
1318
|
object: "thread.run.step.delta",
|
|
889
|
-
run_id:
|
|
1319
|
+
run_id: run2.id,
|
|
890
1320
|
id: toolCallsRunStep.id,
|
|
891
1321
|
delta: {
|
|
892
1322
|
step_details: {
|
|
@@ -1007,7 +1437,7 @@ var completionsRunAdapter = function(param) {
|
|
|
1007
1437
|
2,
|
|
1008
1438
|
onEvent2({
|
|
1009
1439
|
event: "thread.run.completed",
|
|
1010
|
-
data: _object_spread_props(_object_spread({},
|
|
1440
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
1011
1441
|
status: "completed",
|
|
1012
1442
|
completed_at: (0, import_dayjs.default)().unix()
|
|
1013
1443
|
})
|
|
@@ -1018,7 +1448,7 @@ var completionsRunAdapter = function(param) {
|
|
|
1018
1448
|
2,
|
|
1019
1449
|
onEvent2({
|
|
1020
1450
|
event: "thread.run.requires_action",
|
|
1021
|
-
data: _object_spread_props(_object_spread({},
|
|
1451
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
1022
1452
|
status: "requires_action",
|
|
1023
1453
|
required_action: {
|
|
1024
1454
|
type: "submit_tool_outputs",
|
|
@@ -1097,21 +1527,16 @@ var serializeContent2 = function(param) {
|
|
|
1097
1527
|
var serializeMessage2 = function(param) {
|
|
1098
1528
|
var message = param.message;
|
|
1099
1529
|
var _message_metadata;
|
|
1100
|
-
console.dir({
|
|
1101
|
-
message: message
|
|
1102
|
-
}, {
|
|
1103
|
-
depth: null
|
|
1104
|
-
});
|
|
1105
1530
|
var result = [
|
|
1106
1531
|
serializeMessageWithContent2({
|
|
1107
1532
|
message: message
|
|
1108
1533
|
})
|
|
1109
1534
|
];
|
|
1110
|
-
var
|
|
1111
|
-
if (!
|
|
1535
|
+
var run2 = message.run;
|
|
1536
|
+
if (!run2) return result;
|
|
1112
1537
|
var messageToolCalls = ((_message_metadata = message.metadata) === null || _message_metadata === void 0 ? void 0 : _message_metadata.toolCalls) || [];
|
|
1113
1538
|
messageToolCalls.forEach(function(tc) {
|
|
1114
|
-
var runStep =
|
|
1539
|
+
var runStep = run2.runSteps.find(function(rs) {
|
|
1115
1540
|
if (rs.type !== "tool_calls") return false;
|
|
1116
1541
|
return rs.step_details.tool_calls.some(function(rsTc) {
|
|
1117
1542
|
if (rsTc.type !== "function") return false;
|
|
@@ -1132,17 +1557,15 @@ var serializeMessage2 = function(param) {
|
|
|
1132
1557
|
// src/adapters/run/anthropicRunAdapter/messages/index.ts
|
|
1133
1558
|
var messages2 = function() {
|
|
1134
1559
|
var _ref = _async_to_generator(function(param) {
|
|
1135
|
-
var
|
|
1560
|
+
var run2, getMessages2, _;
|
|
1136
1561
|
return _ts_generator(this, function(_state) {
|
|
1137
1562
|
switch(_state.label){
|
|
1138
1563
|
case 0:
|
|
1139
|
-
|
|
1564
|
+
run2 = param.run, getMessages2 = param.getMessages;
|
|
1140
1565
|
_ = (0, import_radash4.flat);
|
|
1141
1566
|
return [
|
|
1142
1567
|
4,
|
|
1143
|
-
getMessages2(
|
|
1144
|
-
messagesHistoryLength: messagesHistoryLength
|
|
1145
|
-
})
|
|
1568
|
+
getMessages2()
|
|
1146
1569
|
];
|
|
1147
1570
|
case 1:
|
|
1148
1571
|
return [
|
|
@@ -1164,8 +1587,8 @@ var messages2 = function() {
|
|
|
1164
1587
|
}();
|
|
1165
1588
|
// src/adapters/run/anthropicRunAdapter/serializeTools.ts
|
|
1166
1589
|
var serializeTools = function(param) {
|
|
1167
|
-
var
|
|
1168
|
-
return
|
|
1590
|
+
var run2 = param.run;
|
|
1591
|
+
return run2.tools.map(function(tool) {
|
|
1169
1592
|
if (tool.type === "function") {
|
|
1170
1593
|
return {
|
|
1171
1594
|
name: tool.function.name,
|
|
@@ -1177,48 +1600,41 @@ var serializeTools = function(param) {
|
|
|
1177
1600
|
});
|
|
1178
1601
|
};
|
|
1179
1602
|
// src/adapters/run/anthropicRunAdapter/index.ts
|
|
1180
|
-
var anthropicRunAdapter = function(
|
|
1181
|
-
var _param_messagesHistoryLength = param.messagesHistoryLength, messagesHistoryLength = _param_messagesHistoryLength === void 0 ? 10 : _param_messagesHistoryLength, _param_maxTokens = param.maxTokens, maxTokens = _param_maxTokens === void 0 ? 4096 : _param_maxTokens;
|
|
1603
|
+
var anthropicRunAdapter = function() {
|
|
1182
1604
|
return function() {
|
|
1183
1605
|
var _ref = _async_to_generator(function(param) {
|
|
1184
|
-
var client,
|
|
1606
|
+
var client, run2, onEvent2, getMessages2, isStream, opts, _tmp, providerResponse, e, message, toolCallsRunStep, currentContent, currentToolCalls, _iteratorAbruptCompletion, _didIteratorError, _iteratorError, _iterator, _step, _value, messageStreamEvent, _messageStreamEvent_delta_text, err, textContentBlock, toolUseBlocks;
|
|
1185
1607
|
return _ts_generator(this, function(_state) {
|
|
1186
1608
|
switch(_state.label){
|
|
1187
1609
|
case 0:
|
|
1188
|
-
client = param.client,
|
|
1189
|
-
if (
|
|
1610
|
+
client = param.client, run2 = param.run, onEvent2 = param.onEvent, getMessages2 = param.getMessages;
|
|
1611
|
+
if (run2.status !== "queued") return [
|
|
1190
1612
|
2
|
|
1191
1613
|
];
|
|
1192
1614
|
onEvent2({
|
|
1193
1615
|
event: "thread.run.in_progress",
|
|
1194
|
-
data: _object_spread_props(_object_spread({},
|
|
1616
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
1195
1617
|
status: "in_progress"
|
|
1196
1618
|
})
|
|
1197
1619
|
});
|
|
1198
|
-
isStream = (0, import_radash5.isEmpty)(
|
|
1620
|
+
isStream = (0, import_radash5.isEmpty)(run2.tools);
|
|
1199
1621
|
_tmp = {};
|
|
1200
1622
|
return [
|
|
1201
1623
|
4,
|
|
1202
1624
|
messages2({
|
|
1203
|
-
run:
|
|
1204
|
-
getMessages: getMessages2
|
|
1205
|
-
messagesHistoryLength: messagesHistoryLength
|
|
1625
|
+
run: run2,
|
|
1626
|
+
getMessages: getMessages2
|
|
1206
1627
|
})
|
|
1207
1628
|
];
|
|
1208
1629
|
case 1:
|
|
1209
1630
|
opts = _object_spread.apply(void 0, [
|
|
1210
|
-
(_tmp.messages = _state.sent(), _tmp.stream = isStream, _tmp.model =
|
|
1211
|
-
(0, import_radash5.isEmpty)(
|
|
1631
|
+
(_tmp.messages = _state.sent(), _tmp.stream = isStream, _tmp.model = run2.model, _tmp),
|
|
1632
|
+
(0, import_radash5.isEmpty)(run2.tools) ? {} : {
|
|
1212
1633
|
tools: serializeTools({
|
|
1213
|
-
run:
|
|
1634
|
+
run: run2
|
|
1214
1635
|
})
|
|
1215
1636
|
}
|
|
1216
1637
|
]);
|
|
1217
|
-
console.dir({
|
|
1218
|
-
opts: opts
|
|
1219
|
-
}, {
|
|
1220
|
-
depth: null
|
|
1221
|
-
});
|
|
1222
1638
|
_state.label = 2;
|
|
1223
1639
|
case 2:
|
|
1224
1640
|
_state.trys.push([
|
|
@@ -1244,7 +1660,7 @@ var anthropicRunAdapter = function(param) {
|
|
|
1244
1660
|
2,
|
|
1245
1661
|
onEvent2({
|
|
1246
1662
|
event: "thread.run.failed",
|
|
1247
|
-
data: _object_spread_props(_object_spread({},
|
|
1663
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
1248
1664
|
failed_at: (0, import_dayjs2.default)().unix(),
|
|
1249
1665
|
status: "in_progress",
|
|
1250
1666
|
last_error: e.message
|
|
@@ -1260,14 +1676,14 @@ var anthropicRunAdapter = function(param) {
|
|
|
1260
1676
|
id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
|
|
1261
1677
|
object: "thread.message",
|
|
1262
1678
|
completed_at: null,
|
|
1263
|
-
run_id:
|
|
1679
|
+
run_id: run2.id,
|
|
1264
1680
|
created_at: (0, import_dayjs2.default)().unix(),
|
|
1265
|
-
assistant_id:
|
|
1681
|
+
assistant_id: run2.assistant_id,
|
|
1266
1682
|
incomplete_at: null,
|
|
1267
1683
|
incomplete_details: null,
|
|
1268
1684
|
metadata: {},
|
|
1269
1685
|
attachments: [],
|
|
1270
|
-
thread_id:
|
|
1686
|
+
thread_id: run2.thread_id,
|
|
1271
1687
|
content: [
|
|
1272
1688
|
{
|
|
1273
1689
|
text: {
|
|
@@ -1289,9 +1705,9 @@ var anthropicRunAdapter = function(param) {
|
|
|
1289
1705
|
data: {
|
|
1290
1706
|
id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
|
|
1291
1707
|
object: "thread.run.step",
|
|
1292
|
-
run_id:
|
|
1293
|
-
assistant_id:
|
|
1294
|
-
thread_id:
|
|
1708
|
+
run_id: run2.id,
|
|
1709
|
+
assistant_id: run2.assistant_id,
|
|
1710
|
+
thread_id: run2.thread_id,
|
|
1295
1711
|
type: "message_creation",
|
|
1296
1712
|
status: "completed",
|
|
1297
1713
|
completed_at: (0, import_dayjs2.default)().unix(),
|
|
@@ -1311,11 +1727,6 @@ var anthropicRunAdapter = function(param) {
|
|
|
1311
1727
|
}
|
|
1312
1728
|
});
|
|
1313
1729
|
currentContent = "";
|
|
1314
|
-
console.dir({
|
|
1315
|
-
providerResponse: providerResponse
|
|
1316
|
-
}, {
|
|
1317
|
-
depth: null
|
|
1318
|
-
});
|
|
1319
1730
|
if (!isStream) return [
|
|
1320
1731
|
3,
|
|
1321
1732
|
19
|
|
@@ -1455,9 +1866,9 @@ var anthropicRunAdapter = function(param) {
|
|
|
1455
1866
|
data: {
|
|
1456
1867
|
id: "THERE_IS_A_BUG_IN_SUPERCOMPAT_IF_YOU_SEE_THIS_ID",
|
|
1457
1868
|
object: "thread.run.step",
|
|
1458
|
-
run_id:
|
|
1459
|
-
assistant_id:
|
|
1460
|
-
thread_id:
|
|
1869
|
+
run_id: run2.id,
|
|
1870
|
+
assistant_id: run2.assistant_id,
|
|
1871
|
+
thread_id: run2.thread_id,
|
|
1461
1872
|
type: "tool_calls",
|
|
1462
1873
|
status: "in_progress",
|
|
1463
1874
|
completed_at: null,
|
|
@@ -1505,7 +1916,7 @@ var anthropicRunAdapter = function(param) {
|
|
|
1505
1916
|
2,
|
|
1506
1917
|
onEvent2({
|
|
1507
1918
|
event: "thread.run.completed",
|
|
1508
|
-
data: _object_spread_props(_object_spread({},
|
|
1919
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
1509
1920
|
status: "completed",
|
|
1510
1921
|
completed_at: (0, import_dayjs2.default)().unix()
|
|
1511
1922
|
})
|
|
@@ -1516,7 +1927,7 @@ var anthropicRunAdapter = function(param) {
|
|
|
1516
1927
|
2,
|
|
1517
1928
|
onEvent2({
|
|
1518
1929
|
event: "thread.run.requires_action",
|
|
1519
|
-
data: _object_spread_props(_object_spread({},
|
|
1930
|
+
data: _object_spread_props(_object_spread({}, run2), {
|
|
1520
1931
|
status: "requires_action",
|
|
1521
1932
|
required_action: {
|
|
1522
1933
|
type: "submit_tool_outputs",
|
|
@@ -1535,9 +1946,9 @@ var anthropicRunAdapter = function(param) {
|
|
|
1535
1946
|
};
|
|
1536
1947
|
}();
|
|
1537
1948
|
};
|
|
1538
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1949
|
+
// src/adapters/storage/prismaStorageAdapter/threads/post.ts
|
|
1539
1950
|
var import_dayjs4 = __toESM(require("dayjs"), 1);
|
|
1540
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1951
|
+
// src/adapters/storage/prismaStorageAdapter/threads/serializeThread.ts
|
|
1541
1952
|
var import_dayjs3 = __toESM(require("dayjs"), 1);
|
|
1542
1953
|
var serializeThread = function(param) {
|
|
1543
1954
|
var thread = param.thread;
|
|
@@ -1550,11 +1961,11 @@ var serializeThread = function(param) {
|
|
|
1550
1961
|
tool_resources: null
|
|
1551
1962
|
};
|
|
1552
1963
|
};
|
|
1553
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1554
|
-
var
|
|
1964
|
+
// src/adapters/storage/prismaStorageAdapter/threads/post.ts
|
|
1965
|
+
var post3 = function(param) {
|
|
1555
1966
|
var prisma = param.prisma;
|
|
1556
1967
|
return /*#__PURE__*/ _async_to_generator(function() {
|
|
1557
|
-
var _len, args, _key,
|
|
1968
|
+
var _len, args, _key, body, messages4, metadata, initialCreatedAt, thread;
|
|
1558
1969
|
var _arguments = arguments;
|
|
1559
1970
|
return _ts_generator(this, function(_state) {
|
|
1560
1971
|
switch(_state.label){
|
|
@@ -1562,19 +1973,22 @@ var create = function(param) {
|
|
|
1562
1973
|
for(_len = _arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
1563
1974
|
args[_key] = _arguments[_key];
|
|
1564
1975
|
}
|
|
1565
|
-
|
|
1566
|
-
|
|
1976
|
+
body = JSON.parse(args[1].body);
|
|
1977
|
+
messages4 = body.messages || [];
|
|
1978
|
+
metadata = body.metadata || {};
|
|
1567
1979
|
initialCreatedAt = (0, import_dayjs4.default)().subtract(messages4.length, "seconds").format();
|
|
1568
1980
|
return [
|
|
1569
1981
|
4,
|
|
1570
1982
|
prisma.thread.create({
|
|
1571
|
-
data: {
|
|
1572
|
-
metadata: metadata
|
|
1983
|
+
data: _object_spread_props(_object_spread({
|
|
1984
|
+
metadata: metadata
|
|
1985
|
+
}, metadata.assistantId ? {
|
|
1573
1986
|
assistant: {
|
|
1574
1987
|
connect: {
|
|
1575
|
-
id: metadata.
|
|
1988
|
+
id: metadata.assistantId
|
|
1576
1989
|
}
|
|
1577
|
-
}
|
|
1990
|
+
}
|
|
1991
|
+
} : {}), {
|
|
1578
1992
|
messages: {
|
|
1579
1993
|
create: messages4.map(function(message, index) {
|
|
1580
1994
|
return {
|
|
@@ -1594,24 +2008,36 @@ var create = function(param) {
|
|
|
1594
2008
|
};
|
|
1595
2009
|
})
|
|
1596
2010
|
}
|
|
1597
|
-
}
|
|
2011
|
+
})
|
|
1598
2012
|
})
|
|
1599
2013
|
];
|
|
1600
2014
|
case 1:
|
|
1601
2015
|
thread = _state.sent();
|
|
1602
2016
|
return [
|
|
1603
2017
|
2,
|
|
1604
|
-
serializeThread({
|
|
2018
|
+
new Response(JSON.stringify(serializeThread({
|
|
1605
2019
|
thread: thread
|
|
2020
|
+
})), {
|
|
2021
|
+
status: 200,
|
|
2022
|
+
headers: {
|
|
2023
|
+
"Content-Type": "application/json"
|
|
2024
|
+
}
|
|
1606
2025
|
})
|
|
1607
2026
|
];
|
|
1608
2027
|
}
|
|
1609
2028
|
});
|
|
1610
2029
|
});
|
|
1611
2030
|
};
|
|
1612
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1613
|
-
var
|
|
1614
|
-
|
|
2031
|
+
// src/adapters/storage/prismaStorageAdapter/threads/index.ts
|
|
2032
|
+
var threads = function(param) {
|
|
2033
|
+
var prisma = param.prisma;
|
|
2034
|
+
return {
|
|
2035
|
+
post: post3({
|
|
2036
|
+
prisma: prisma
|
|
2037
|
+
})
|
|
2038
|
+
};
|
|
2039
|
+
};
|
|
2040
|
+
// src/adapters/storage/prismaStorageAdapter/threads/messages/serializeMessage.ts
|
|
1615
2041
|
var import_dayjs5 = __toESM(require("dayjs"), 1);
|
|
1616
2042
|
var import_radash6 = require("radash");
|
|
1617
2043
|
var serializeMessage3 = function(param) {
|
|
@@ -1636,68 +2062,7 @@ var serializeMessage3 = function(param) {
|
|
|
1636
2062
|
} : {})
|
|
1637
2063
|
};
|
|
1638
2064
|
};
|
|
1639
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1640
|
-
var list = function(param) {
|
|
1641
|
-
var prisma = param.prisma;
|
|
1642
|
-
return /*#__PURE__*/ _async_to_generator(function() {
|
|
1643
|
-
var _len, args, _key, _this, threadId, _args_, _ref, // @ts-ignore-next-line
|
|
1644
|
-
limit, // @ts-ignore-next-line
|
|
1645
|
-
order, // @ts-ignore-next-line
|
|
1646
|
-
after, messages4, _id;
|
|
1647
|
-
var _arguments = arguments;
|
|
1648
|
-
return _ts_generator(this, function(_state) {
|
|
1649
|
-
switch(_state.label){
|
|
1650
|
-
case 0:
|
|
1651
|
-
for(_len = _arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
1652
|
-
args[_key] = _arguments[_key];
|
|
1653
|
-
}
|
|
1654
|
-
threadId = args[0];
|
|
1655
|
-
_ref = (0, import_radash7.assign)({
|
|
1656
|
-
// @ts-ignore-next-line
|
|
1657
|
-
limit: 20,
|
|
1658
|
-
order: "desc",
|
|
1659
|
-
after: null
|
|
1660
|
-
}, (_args_ = args[1]) !== null && _args_ !== void 0 ? _args_ : {}), limit = _ref.limit, order = _ref.order, after = _ref.after;
|
|
1661
|
-
return [
|
|
1662
|
-
4,
|
|
1663
|
-
prisma.message.findMany(_object_spread({
|
|
1664
|
-
where: {
|
|
1665
|
-
threadId: threadId
|
|
1666
|
-
},
|
|
1667
|
-
take: limit,
|
|
1668
|
-
orderBy: {
|
|
1669
|
-
createdAt: order
|
|
1670
|
-
}
|
|
1671
|
-
}, after ? {
|
|
1672
|
-
skip: 1,
|
|
1673
|
-
cursor: {
|
|
1674
|
-
id: after
|
|
1675
|
-
}
|
|
1676
|
-
} : {}))
|
|
1677
|
-
];
|
|
1678
|
-
case 1:
|
|
1679
|
-
messages4 = _state.sent();
|
|
1680
|
-
return [
|
|
1681
|
-
2,
|
|
1682
|
-
{
|
|
1683
|
-
data: messages4.map(function(message) {
|
|
1684
|
-
return serializeMessage3({
|
|
1685
|
-
message: message
|
|
1686
|
-
});
|
|
1687
|
-
}),
|
|
1688
|
-
hasNextPage: function() {
|
|
1689
|
-
return messages4.length === limit;
|
|
1690
|
-
},
|
|
1691
|
-
body: {
|
|
1692
|
-
last_id: (_id = (_this = (0, import_radash7.last)(messages4)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
|
|
1693
|
-
}
|
|
1694
|
-
}
|
|
1695
|
-
];
|
|
1696
|
-
}
|
|
1697
|
-
});
|
|
1698
|
-
});
|
|
1699
|
-
};
|
|
1700
|
-
// src/adapters/storage/prismaStorageAdapter/beta/threads/messages/create.ts
|
|
2065
|
+
// src/adapters/storage/prismaStorageAdapter/threads/messages/post.ts
|
|
1701
2066
|
var messageContentBlocks = function(param) {
|
|
1702
2067
|
var content = param.content;
|
|
1703
2068
|
return [
|
|
@@ -1710,230 +2075,234 @@ var messageContentBlocks = function(param) {
|
|
|
1710
2075
|
}
|
|
1711
2076
|
];
|
|
1712
2077
|
};
|
|
1713
|
-
var
|
|
2078
|
+
var post4 = function(param) {
|
|
1714
2079
|
var prisma = param.prisma;
|
|
1715
|
-
return
|
|
1716
|
-
var
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
|
|
1720
|
-
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
|
|
1731
|
-
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
}
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
2080
|
+
return function() {
|
|
2081
|
+
var _ref = _async_to_generator(function(urlString, options) {
|
|
2082
|
+
var url, _url_pathname_match, threadId, body, role, content, message;
|
|
2083
|
+
return _ts_generator(this, function(_state) {
|
|
2084
|
+
switch(_state.label){
|
|
2085
|
+
case 0:
|
|
2086
|
+
url = new URL(urlString);
|
|
2087
|
+
_url_pathname_match = _sliced_to_array(url.pathname.match(new RegExp("^/v1/threads/([^/]+)/messages$")), 2), threadId = _url_pathname_match[1];
|
|
2088
|
+
body = JSON.parse(options.body);
|
|
2089
|
+
role = body.role, content = body.content;
|
|
2090
|
+
return [
|
|
2091
|
+
4,
|
|
2092
|
+
prisma.message.create({
|
|
2093
|
+
data: {
|
|
2094
|
+
threadId: threadId,
|
|
2095
|
+
content: messageContentBlocks({
|
|
2096
|
+
content: content
|
|
2097
|
+
}),
|
|
2098
|
+
role: role === "user" ? "USER" : "ASSISTANT"
|
|
2099
|
+
}
|
|
2100
|
+
})
|
|
2101
|
+
];
|
|
2102
|
+
case 1:
|
|
2103
|
+
message = _state.sent();
|
|
2104
|
+
return [
|
|
2105
|
+
2,
|
|
2106
|
+
new Response(JSON.stringify(serializeMessage3({
|
|
2107
|
+
message: message
|
|
2108
|
+
})), {
|
|
2109
|
+
status: 200,
|
|
2110
|
+
headers: {
|
|
2111
|
+
"Content-Type": "application/json"
|
|
2112
|
+
}
|
|
2113
|
+
})
|
|
2114
|
+
];
|
|
2115
|
+
}
|
|
2116
|
+
});
|
|
2117
|
+
});
|
|
2118
|
+
return function(urlString, options) {
|
|
2119
|
+
return _ref.apply(this, arguments);
|
|
2120
|
+
};
|
|
2121
|
+
}();
|
|
2122
|
+
};
|
|
2123
|
+
// src/adapters/storage/prismaStorageAdapter/threads/messages/get.ts
|
|
2124
|
+
var import_radash7 = require("radash");
|
|
2125
|
+
var get = function(param) {
|
|
2126
|
+
var prisma = param.prisma;
|
|
2127
|
+
return function() {
|
|
2128
|
+
var _ref = _async_to_generator(function(urlString) {
|
|
2129
|
+
var _this, url, _url_pathname_match, threadId, _ref, limit, order, after, messages4, _id;
|
|
2130
|
+
return _ts_generator(this, function(_state) {
|
|
2131
|
+
switch(_state.label){
|
|
2132
|
+
case 0:
|
|
2133
|
+
url = new URL(urlString);
|
|
2134
|
+
_url_pathname_match = _sliced_to_array(url.pathname.match(new RegExp("^/v1/threads/([^/]+)/messages$")), 2), threadId = _url_pathname_match[1];
|
|
2135
|
+
_ref = (0, import_radash7.assign)({
|
|
2136
|
+
limit: "20",
|
|
2137
|
+
order: "desc"
|
|
2138
|
+
}, Object.fromEntries(url.searchParams)), limit = _ref.limit, order = _ref.order, after = _ref.after;
|
|
2139
|
+
return [
|
|
2140
|
+
4,
|
|
2141
|
+
prisma.message.findMany(_object_spread({
|
|
2142
|
+
where: {
|
|
2143
|
+
threadId: threadId
|
|
2144
|
+
},
|
|
2145
|
+
take: parseInt(limit),
|
|
2146
|
+
orderBy: {
|
|
2147
|
+
createdAt: order
|
|
2148
|
+
}
|
|
2149
|
+
}, after ? {
|
|
2150
|
+
skip: 1,
|
|
2151
|
+
cursor: {
|
|
2152
|
+
id: after
|
|
2153
|
+
}
|
|
2154
|
+
} : {}))
|
|
2155
|
+
];
|
|
2156
|
+
case 1:
|
|
2157
|
+
messages4 = _state.sent();
|
|
2158
|
+
return [
|
|
2159
|
+
2,
|
|
2160
|
+
new Response(JSON.stringify({
|
|
2161
|
+
data: messages4.map(function(message) {
|
|
2162
|
+
return serializeMessage3({
|
|
2163
|
+
message: message
|
|
2164
|
+
});
|
|
2165
|
+
}),
|
|
2166
|
+
hasNextPage: function() {
|
|
2167
|
+
return messages4.length === parseInt(limit);
|
|
2168
|
+
},
|
|
2169
|
+
body: {
|
|
2170
|
+
last_id: (_id = (_this = (0, import_radash7.last)(messages4)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
|
|
2171
|
+
}
|
|
2172
|
+
}), {
|
|
2173
|
+
status: 200,
|
|
2174
|
+
headers: {
|
|
2175
|
+
"Content-Type": "application/json"
|
|
2176
|
+
}
|
|
2177
|
+
})
|
|
2178
|
+
];
|
|
2179
|
+
}
|
|
2180
|
+
});
|
|
2181
|
+
});
|
|
2182
|
+
return function(urlString) {
|
|
2183
|
+
return _ref.apply(this, arguments);
|
|
2184
|
+
};
|
|
2185
|
+
}();
|
|
2186
|
+
};
|
|
2187
|
+
// src/adapters/storage/prismaStorageAdapter/threads/messages/index.ts
|
|
2188
|
+
var messages3 = function(param) {
|
|
1752
2189
|
var prisma = param.prisma;
|
|
1753
2190
|
return {
|
|
1754
|
-
|
|
2191
|
+
post: post4({
|
|
1755
2192
|
prisma: prisma
|
|
1756
2193
|
}),
|
|
1757
|
-
|
|
2194
|
+
get: get({
|
|
1758
2195
|
prisma: prisma
|
|
1759
2196
|
})
|
|
1760
2197
|
};
|
|
1761
2198
|
};
|
|
1762
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2199
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/get.ts
|
|
1763
2200
|
var import_radash8 = require("radash");
|
|
1764
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2201
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/serializeRun.ts
|
|
1765
2202
|
var import_dayjs6 = __toESM(require("dayjs"), 1);
|
|
1766
2203
|
var serializeRun = function(param) {
|
|
1767
|
-
var
|
|
2204
|
+
var run2 = param.run;
|
|
1768
2205
|
return {
|
|
1769
|
-
id:
|
|
2206
|
+
id: run2.id,
|
|
1770
2207
|
object: "thread.run",
|
|
1771
|
-
created_at: (0, import_dayjs6.default)(
|
|
1772
|
-
thread_id:
|
|
1773
|
-
assistant_id:
|
|
1774
|
-
status:
|
|
1775
|
-
required_action:
|
|
1776
|
-
last_error:
|
|
1777
|
-
expires_at: (0, import_dayjs6.default)(
|
|
1778
|
-
started_at:
|
|
1779
|
-
cancelled_at:
|
|
1780
|
-
failed_at:
|
|
1781
|
-
completed_at:
|
|
1782
|
-
model:
|
|
1783
|
-
instructions:
|
|
1784
|
-
tools:
|
|
1785
|
-
metadata:
|
|
1786
|
-
usage:
|
|
2208
|
+
created_at: (0, import_dayjs6.default)(run2.createdAt).unix(),
|
|
2209
|
+
thread_id: run2.threadId,
|
|
2210
|
+
assistant_id: run2.assistantId,
|
|
2211
|
+
status: run2.status.toLowerCase(),
|
|
2212
|
+
required_action: run2.requiredAction,
|
|
2213
|
+
last_error: run2.lastError,
|
|
2214
|
+
expires_at: (0, import_dayjs6.default)(run2.expiresAt).unix(),
|
|
2215
|
+
started_at: run2.startedAt ? (0, import_dayjs6.default)(run2.startedAt).unix() : null,
|
|
2216
|
+
cancelled_at: run2.cancelledAt ? (0, import_dayjs6.default)(run2.cancelledAt).unix() : null,
|
|
2217
|
+
failed_at: run2.failedAt ? (0, import_dayjs6.default)(run2.failedAt).unix() : null,
|
|
2218
|
+
completed_at: run2.completedAt ? (0, import_dayjs6.default)(run2.completedAt).unix() : null,
|
|
2219
|
+
model: run2.model,
|
|
2220
|
+
instructions: run2.instructions,
|
|
2221
|
+
tools: run2.tools,
|
|
2222
|
+
metadata: run2.metadata,
|
|
2223
|
+
usage: run2.usage,
|
|
2224
|
+
truncation_strategy: {
|
|
2225
|
+
type: "auto"
|
|
2226
|
+
},
|
|
2227
|
+
response_format: {
|
|
2228
|
+
type: "text"
|
|
2229
|
+
},
|
|
1787
2230
|
// TODO
|
|
1788
2231
|
incomplete_details: null,
|
|
1789
2232
|
max_completion_tokens: null,
|
|
1790
2233
|
max_prompt_tokens: null,
|
|
1791
|
-
response_format: "auto",
|
|
1792
2234
|
tool_choice: "auto",
|
|
1793
|
-
|
|
1794
|
-
type: "auto",
|
|
1795
|
-
last_messages: null
|
|
1796
|
-
}
|
|
2235
|
+
parallel_tool_calls: true
|
|
1797
2236
|
};
|
|
1798
2237
|
};
|
|
1799
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1800
|
-
var
|
|
1801
|
-
var prisma = param.prisma;
|
|
1802
|
-
return /*#__PURE__*/ _async_to_generator(function() {
|
|
1803
|
-
var _len, args, _key, _this, threadId, _args_, _ref, // @ts-ignore-next-line
|
|
1804
|
-
limit, // @ts-ignore-next-line
|
|
1805
|
-
order, // @ts-ignore-next-line
|
|
1806
|
-
after, runs2, _id;
|
|
1807
|
-
var _arguments = arguments;
|
|
1808
|
-
return _ts_generator(this, function(_state) {
|
|
1809
|
-
switch(_state.label){
|
|
1810
|
-
case 0:
|
|
1811
|
-
for(_len = _arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
1812
|
-
args[_key] = _arguments[_key];
|
|
1813
|
-
}
|
|
1814
|
-
threadId = args[0];
|
|
1815
|
-
_ref = (0, import_radash8.assign)({
|
|
1816
|
-
// @ts-ignore-next-line
|
|
1817
|
-
limit: 20,
|
|
1818
|
-
order: "desc"
|
|
1819
|
-
}, (_args_ = args[1]) !== null && _args_ !== void 0 ? _args_ : {}), limit = _ref.limit, order = _ref.order, after = _ref.after;
|
|
1820
|
-
return [
|
|
1821
|
-
4,
|
|
1822
|
-
prisma.run.findMany(_object_spread({
|
|
1823
|
-
where: {
|
|
1824
|
-
threadId: threadId
|
|
1825
|
-
},
|
|
1826
|
-
take: limit,
|
|
1827
|
-
orderBy: {
|
|
1828
|
-
createdAt: order
|
|
1829
|
-
}
|
|
1830
|
-
}, after ? {
|
|
1831
|
-
skip: 1,
|
|
1832
|
-
cursor: {
|
|
1833
|
-
id: after
|
|
1834
|
-
}
|
|
1835
|
-
} : {}))
|
|
1836
|
-
];
|
|
1837
|
-
case 1:
|
|
1838
|
-
runs2 = _state.sent();
|
|
1839
|
-
return [
|
|
1840
|
-
2,
|
|
1841
|
-
{
|
|
1842
|
-
data: runs2.map(function(run) {
|
|
1843
|
-
return serializeRun({
|
|
1844
|
-
run: run
|
|
1845
|
-
});
|
|
1846
|
-
}),
|
|
1847
|
-
hasNextPage: function() {
|
|
1848
|
-
return runs2.length === limit;
|
|
1849
|
-
},
|
|
1850
|
-
body: {
|
|
1851
|
-
last_id: (_id = (_this = (0, import_radash8.last)(runs2)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
|
|
1852
|
-
}
|
|
1853
|
-
}
|
|
1854
|
-
];
|
|
1855
|
-
}
|
|
1856
|
-
});
|
|
1857
|
-
});
|
|
1858
|
-
};
|
|
1859
|
-
// src/adapters/storage/prismaStorageAdapter/beta/threads/runs/create.ts
|
|
1860
|
-
var import_dayjs7 = __toESM(require("dayjs"), 1);
|
|
1861
|
-
var import_radash9 = require("radash");
|
|
1862
|
-
var create3 = function(param) {
|
|
2238
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/get.ts
|
|
2239
|
+
var get2 = function(param) {
|
|
1863
2240
|
var prisma = param.prisma;
|
|
1864
|
-
return
|
|
1865
|
-
var
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
}
|
|
1882
|
-
})
|
|
1883
|
-
];
|
|
1884
|
-
case 1:
|
|
1885
|
-
assistant = _state.sent();
|
|
1886
|
-
if (!assistant) {
|
|
1887
|
-
throw new Error("Assistant not found");
|
|
1888
|
-
}
|
|
1889
|
-
_ref = (0, import_radash9.assign)({
|
|
1890
|
-
model: assistant.modelSlug,
|
|
1891
|
-
instructions: "",
|
|
1892
|
-
additional_instructions: null
|
|
1893
|
-
}, args[1]), model = _ref.model, instructions = _ref.instructions, tools = _ref.tools, metadata = _ref.metadata;
|
|
1894
|
-
return [
|
|
1895
|
-
4,
|
|
1896
|
-
prisma.run.create({
|
|
1897
|
-
data: {
|
|
1898
|
-
status: "QUEUED",
|
|
1899
|
-
expiresAt: (0, import_dayjs7.default)().add(1, "hour").unix(),
|
|
1900
|
-
// @ts-ignore-next-line
|
|
1901
|
-
model: model,
|
|
1902
|
-
// @ts-ignore-next-line
|
|
1903
|
-
instructions: instructions,
|
|
1904
|
-
// @ts-ignore-next-line
|
|
1905
|
-
tools: tools,
|
|
1906
|
-
// @ts-ignore-next-line
|
|
1907
|
-
metadata: metadata,
|
|
1908
|
-
thread: {
|
|
1909
|
-
connect: {
|
|
1910
|
-
id: threadId
|
|
1911
|
-
}
|
|
2241
|
+
return function() {
|
|
2242
|
+
var _ref = _async_to_generator(function(urlString) {
|
|
2243
|
+
var _this, url, _url_pathname_match, threadId, _ref, limit, order, after, runs2, _id;
|
|
2244
|
+
return _ts_generator(this, function(_state) {
|
|
2245
|
+
switch(_state.label){
|
|
2246
|
+
case 0:
|
|
2247
|
+
url = new URL(urlString);
|
|
2248
|
+
_url_pathname_match = _sliced_to_array(url.pathname.match(new RegExp("^/v1/threads/([^/]+)/runs$")), 2), threadId = _url_pathname_match[1];
|
|
2249
|
+
_ref = (0, import_radash8.assign)({
|
|
2250
|
+
limit: "20",
|
|
2251
|
+
order: "desc"
|
|
2252
|
+
}, Object.fromEntries(url.searchParams)), limit = _ref.limit, order = _ref.order, after = _ref.after;
|
|
2253
|
+
return [
|
|
2254
|
+
4,
|
|
2255
|
+
prisma.run.findMany(_object_spread({
|
|
2256
|
+
where: {
|
|
2257
|
+
threadId: threadId
|
|
1912
2258
|
},
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
}
|
|
2259
|
+
take: parseInt(limit),
|
|
2260
|
+
orderBy: {
|
|
2261
|
+
createdAt: order
|
|
1917
2262
|
}
|
|
1918
|
-
}
|
|
1919
|
-
|
|
1920
|
-
|
|
1921
|
-
|
|
1922
|
-
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1928
|
-
|
|
1929
|
-
|
|
2263
|
+
}, after ? {
|
|
2264
|
+
skip: 1,
|
|
2265
|
+
cursor: {
|
|
2266
|
+
id: after
|
|
2267
|
+
}
|
|
2268
|
+
} : {}))
|
|
2269
|
+
];
|
|
2270
|
+
case 1:
|
|
2271
|
+
runs2 = _state.sent();
|
|
2272
|
+
return [
|
|
2273
|
+
2,
|
|
2274
|
+
new Response(JSON.stringify({
|
|
2275
|
+
data: runs2.map(function(run2) {
|
|
2276
|
+
return serializeRun({
|
|
2277
|
+
run: run2
|
|
2278
|
+
});
|
|
2279
|
+
}),
|
|
2280
|
+
hasNextPage: function() {
|
|
2281
|
+
return runs2.length === parseInt(limit);
|
|
2282
|
+
},
|
|
2283
|
+
body: {
|
|
2284
|
+
// @ts-ignore-next-line
|
|
2285
|
+
last_id: (_id = (_this = (0, import_radash8.last)(runs2)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
|
|
2286
|
+
}
|
|
2287
|
+
}), {
|
|
2288
|
+
status: 200,
|
|
2289
|
+
headers: {
|
|
2290
|
+
"Content-Type": "application/json"
|
|
2291
|
+
}
|
|
2292
|
+
})
|
|
2293
|
+
];
|
|
2294
|
+
}
|
|
2295
|
+
});
|
|
1930
2296
|
});
|
|
1931
|
-
|
|
2297
|
+
return function(urlString) {
|
|
2298
|
+
return _ref.apply(this, arguments);
|
|
2299
|
+
};
|
|
2300
|
+
}();
|
|
1932
2301
|
};
|
|
1933
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1934
|
-
var
|
|
1935
|
-
var
|
|
1936
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2302
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/post.ts
|
|
2303
|
+
var import_dayjs8 = __toESM(require("dayjs"), 1);
|
|
2304
|
+
var import_radash9 = require("radash");
|
|
2305
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadRunInProgress.ts
|
|
1937
2306
|
var threadRunInProgress = function(param) {
|
|
1938
2307
|
var prisma = param.prisma, event = param.event, controller = param.controller;
|
|
1939
2308
|
controller.enqueue(event);
|
|
@@ -1946,7 +2315,7 @@ var threadRunInProgress = function(param) {
|
|
|
1946
2315
|
}
|
|
1947
2316
|
});
|
|
1948
2317
|
};
|
|
1949
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2318
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadRunFailed.ts
|
|
1950
2319
|
var threadRunFailed = function(param) {
|
|
1951
2320
|
var prisma = param.prisma, event = param.event, controller = param.controller;
|
|
1952
2321
|
controller.enqueue(event);
|
|
@@ -1961,7 +2330,7 @@ var threadRunFailed = function(param) {
|
|
|
1961
2330
|
}
|
|
1962
2331
|
});
|
|
1963
2332
|
};
|
|
1964
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2333
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadRunCompleted.ts
|
|
1965
2334
|
var threadRunCompleted = function(param) {
|
|
1966
2335
|
var prisma = param.prisma, event = param.event, controller = param.controller;
|
|
1967
2336
|
controller.enqueue(event);
|
|
@@ -1975,7 +2344,7 @@ var threadRunCompleted = function(param) {
|
|
|
1975
2344
|
}
|
|
1976
2345
|
});
|
|
1977
2346
|
};
|
|
1978
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2347
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadRunRequiresAction.ts
|
|
1979
2348
|
var threadRunRequiresAction = function(param) {
|
|
1980
2349
|
var prisma = param.prisma, event = param.event, controller = param.controller;
|
|
1981
2350
|
controller.enqueue(event);
|
|
@@ -1989,14 +2358,14 @@ var threadRunRequiresAction = function(param) {
|
|
|
1989
2358
|
}
|
|
1990
2359
|
});
|
|
1991
2360
|
};
|
|
1992
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
1993
|
-
var
|
|
2361
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/steps/serializeRunStep.ts
|
|
2362
|
+
var import_dayjs7 = __toESM(require("dayjs"), 1);
|
|
1994
2363
|
var serializeRunStep = function(param) {
|
|
1995
2364
|
var runStep = param.runStep;
|
|
1996
2365
|
return {
|
|
1997
2366
|
id: runStep.id,
|
|
1998
2367
|
object: "thread.run.step",
|
|
1999
|
-
created_at: (0,
|
|
2368
|
+
created_at: (0, import_dayjs7.default)(runStep.createdAt).unix(),
|
|
2000
2369
|
assistant_id: runStep.assistantId,
|
|
2001
2370
|
thread_id: runStep.threadId,
|
|
2002
2371
|
run_id: runStep.runId,
|
|
@@ -2005,15 +2374,15 @@ var serializeRunStep = function(param) {
|
|
|
2005
2374
|
// @ts-ignore-next-line
|
|
2006
2375
|
step_details: runStep.stepDetails,
|
|
2007
2376
|
last_error: runStep.lastError,
|
|
2008
|
-
expired_at: runStep.expiredAt ? (0,
|
|
2009
|
-
cancelled_at: runStep.cancelledAt ? (0,
|
|
2010
|
-
failed_at: runStep.failedAt ? (0,
|
|
2011
|
-
completed_at: runStep.completedAt ? (0,
|
|
2377
|
+
expired_at: runStep.expiredAt ? (0, import_dayjs7.default)(runStep.expiredAt).unix() : null,
|
|
2378
|
+
cancelled_at: runStep.cancelledAt ? (0, import_dayjs7.default)(runStep.cancelledAt).unix() : null,
|
|
2379
|
+
failed_at: runStep.failedAt ? (0, import_dayjs7.default)(runStep.failedAt).unix() : null,
|
|
2380
|
+
completed_at: runStep.completedAt ? (0, import_dayjs7.default)(runStep.completedAt).unix() : null,
|
|
2012
2381
|
metadata: runStep.metadata,
|
|
2013
2382
|
usage: runStep.usage
|
|
2014
2383
|
};
|
|
2015
2384
|
};
|
|
2016
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2385
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadRunStepCreated.ts
|
|
2017
2386
|
var type = function(event) {
|
|
2018
2387
|
if (event.data.type === "message_creation") return "MESSAGE_CREATION" /* MESSAGE_CREATION */ ;
|
|
2019
2388
|
if (event.data.type === "tool_calls") return "TOOL_CALLS" /* TOOL_CALLS */ ;
|
|
@@ -2067,12 +2436,12 @@ var threadRunStepCreated = function() {
|
|
|
2067
2436
|
return _ref.apply(this, arguments);
|
|
2068
2437
|
};
|
|
2069
2438
|
}();
|
|
2070
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2439
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadRunStepDelta.ts
|
|
2071
2440
|
var threadRunStepDelta = function(param) {
|
|
2072
2441
|
var event = param.event, controller = param.controller;
|
|
2073
2442
|
return controller.enqueue(event);
|
|
2074
2443
|
};
|
|
2075
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2444
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadMessageCreated.ts
|
|
2076
2445
|
var status2 = function(event) {
|
|
2077
2446
|
if (event.data.status === "completed") return "COMPLETED" /* COMPLETED */ ;
|
|
2078
2447
|
if (event.data.status === "in_progress") return "IN_PROGRESS" /* IN_PROGRESS */ ;
|
|
@@ -2118,12 +2487,12 @@ var threadMessageCreated = function() {
|
|
|
2118
2487
|
return _ref.apply(this, arguments);
|
|
2119
2488
|
};
|
|
2120
2489
|
}();
|
|
2121
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2490
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadMessageDelta.ts
|
|
2122
2491
|
var threadMessageDelta = function(param) {
|
|
2123
2492
|
var event = param.event, controller = param.controller;
|
|
2124
2493
|
return controller.enqueue(event);
|
|
2125
2494
|
};
|
|
2126
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2495
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/threadMessageCompleted.ts
|
|
2127
2496
|
var threadMessageCompleted = function() {
|
|
2128
2497
|
var _ref = _async_to_generator(function(param) {
|
|
2129
2498
|
var prisma, event, controller, latestRunStep;
|
|
@@ -2193,7 +2562,7 @@ var threadMessageCompleted = function() {
|
|
|
2193
2562
|
return _ref.apply(this, arguments);
|
|
2194
2563
|
};
|
|
2195
2564
|
}();
|
|
2196
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2565
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/handlers/index.ts
|
|
2197
2566
|
var handlers = {
|
|
2198
2567
|
"thread.run.in_progress": threadRunInProgress,
|
|
2199
2568
|
"thread.run.failed": threadRunFailed,
|
|
@@ -2205,7 +2574,7 @@ var handlers = {
|
|
|
2205
2574
|
"thread.message.delta": threadMessageDelta,
|
|
2206
2575
|
"thread.message.completed": threadMessageCompleted
|
|
2207
2576
|
};
|
|
2208
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2577
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/onEvent/index.ts
|
|
2209
2578
|
var onEvent = function(param) {
|
|
2210
2579
|
var prisma = param.prisma, controller = param.controller;
|
|
2211
2580
|
return function(event) {
|
|
@@ -2221,708 +2590,694 @@ var onEvent = function(param) {
|
|
|
2221
2590
|
});
|
|
2222
2591
|
};
|
|
2223
2592
|
};
|
|
2224
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2593
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/getMessages.ts
|
|
2594
|
+
var getTake = function(param) {
|
|
2595
|
+
var run2 = param.run;
|
|
2596
|
+
if (run2.truncationStrategy.type === "auto") {
|
|
2597
|
+
return null;
|
|
2598
|
+
}
|
|
2599
|
+
if (run2.truncationStrategy.type === "last_messages") {
|
|
2600
|
+
if (!run2.truncationStrategy.last_messages) {
|
|
2601
|
+
throw new Error("Truncation strategy last_messages is required");
|
|
2602
|
+
}
|
|
2603
|
+
return -run2.truncationStrategy.last_messages;
|
|
2604
|
+
}
|
|
2605
|
+
throw new Error("Unsupported truncation strategy type: ".concat(run2.truncationStrategy.type));
|
|
2606
|
+
};
|
|
2225
2607
|
var getMessages = function(param) {
|
|
2226
|
-
var prisma = param.prisma,
|
|
2608
|
+
var prisma = param.prisma, run2 = param.run;
|
|
2609
|
+
return /*#__PURE__*/ _async_to_generator(function() {
|
|
2610
|
+
var take, messages4;
|
|
2611
|
+
return _ts_generator(this, function(_state) {
|
|
2612
|
+
switch(_state.label){
|
|
2613
|
+
case 0:
|
|
2614
|
+
take = getTake({
|
|
2615
|
+
run: run2
|
|
2616
|
+
});
|
|
2617
|
+
return [
|
|
2618
|
+
4,
|
|
2619
|
+
prisma.message.findMany(_object_spread({
|
|
2620
|
+
where: {
|
|
2621
|
+
threadId: run2.threadId
|
|
2622
|
+
},
|
|
2623
|
+
include: {
|
|
2624
|
+
run: {
|
|
2625
|
+
include: {
|
|
2626
|
+
runSteps: true
|
|
2627
|
+
}
|
|
2628
|
+
}
|
|
2629
|
+
},
|
|
2630
|
+
orderBy: {
|
|
2631
|
+
createdAt: "asc"
|
|
2632
|
+
}
|
|
2633
|
+
}, take ? {
|
|
2634
|
+
take: take
|
|
2635
|
+
} : {}))
|
|
2636
|
+
];
|
|
2637
|
+
case 1:
|
|
2638
|
+
messages4 = _state.sent();
|
|
2639
|
+
return [
|
|
2640
|
+
2,
|
|
2641
|
+
messages4.map(function(message) {
|
|
2642
|
+
return _object_spread_props(_object_spread({}, serializeMessage3({
|
|
2643
|
+
message: message
|
|
2644
|
+
})), {
|
|
2645
|
+
run: message.run ? _object_spread_props(_object_spread({}, serializeRun({
|
|
2646
|
+
run: message.run
|
|
2647
|
+
})), {
|
|
2648
|
+
runSteps: message.run.runSteps.map(function(runStep) {
|
|
2649
|
+
return serializeRunStep({
|
|
2650
|
+
runStep: runStep
|
|
2651
|
+
});
|
|
2652
|
+
})
|
|
2653
|
+
}) : null
|
|
2654
|
+
});
|
|
2655
|
+
})
|
|
2656
|
+
];
|
|
2657
|
+
}
|
|
2658
|
+
});
|
|
2659
|
+
});
|
|
2660
|
+
};
|
|
2661
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/post.ts
|
|
2662
|
+
var post5 = function(param) {
|
|
2663
|
+
var prisma = param.prisma, runAdapter = param.runAdapter;
|
|
2227
2664
|
return function() {
|
|
2228
|
-
var _ref = _async_to_generator(function(
|
|
2229
|
-
var
|
|
2665
|
+
var _ref = _async_to_generator(function(urlString, options) {
|
|
2666
|
+
var url, _url_pathname_match, threadId, body, assistant_id, stream, assistant, _ref, model, instructions, // additional_instructions,
|
|
2667
|
+
tools, metadata, response_format, truncation_strategy, run2, data, readableStream;
|
|
2230
2668
|
return _ts_generator(this, function(_state) {
|
|
2231
2669
|
switch(_state.label){
|
|
2232
2670
|
case 0:
|
|
2233
|
-
|
|
2671
|
+
url = new URL(urlString);
|
|
2672
|
+
_url_pathname_match = _sliced_to_array(url.pathname.match(new RegExp("^/v1/threads/([^/]+)/runs$")), 2), threadId = _url_pathname_match[1];
|
|
2673
|
+
body = JSON.parse(options.body);
|
|
2674
|
+
assistant_id = body.assistant_id, stream = body.stream;
|
|
2234
2675
|
return [
|
|
2235
2676
|
4,
|
|
2236
|
-
prisma.
|
|
2677
|
+
prisma.assistant.findUnique({
|
|
2237
2678
|
where: {
|
|
2238
|
-
|
|
2239
|
-
},
|
|
2240
|
-
include: {
|
|
2241
|
-
run: {
|
|
2242
|
-
include: {
|
|
2243
|
-
runSteps: true
|
|
2244
|
-
}
|
|
2245
|
-
}
|
|
2246
|
-
},
|
|
2247
|
-
take: -messagesHistoryLength,
|
|
2248
|
-
orderBy: {
|
|
2249
|
-
createdAt: "asc"
|
|
2679
|
+
id: assistant_id
|
|
2250
2680
|
}
|
|
2251
2681
|
})
|
|
2252
2682
|
];
|
|
2253
2683
|
case 1:
|
|
2254
|
-
|
|
2684
|
+
assistant = _state.sent();
|
|
2685
|
+
if (!assistant) {
|
|
2686
|
+
throw new Error("Assistant not found");
|
|
2687
|
+
}
|
|
2688
|
+
_ref = (0, import_radash9.assign)({
|
|
2689
|
+
model: assistant.modelSlug,
|
|
2690
|
+
instructions: "",
|
|
2691
|
+
additional_instructions: null,
|
|
2692
|
+
truncation_strategy: {
|
|
2693
|
+
type: "auto"
|
|
2694
|
+
},
|
|
2695
|
+
response_format: {
|
|
2696
|
+
type: "text"
|
|
2697
|
+
}
|
|
2698
|
+
}, body), model = _ref.model, instructions = _ref.instructions, tools = _ref.tools, metadata = _ref.metadata, response_format = _ref.response_format, truncation_strategy = _ref.truncation_strategy;
|
|
2255
2699
|
return [
|
|
2256
|
-
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
|
|
2267
|
-
|
|
2268
|
-
}
|
|
2269
|
-
}
|
|
2270
|
-
|
|
2700
|
+
4,
|
|
2701
|
+
prisma.run.create({
|
|
2702
|
+
data: {
|
|
2703
|
+
status: "QUEUED",
|
|
2704
|
+
expiresAt: (0, import_dayjs8.default)().add(1, "hour").unix(),
|
|
2705
|
+
model: model,
|
|
2706
|
+
instructions: instructions,
|
|
2707
|
+
tools: tools,
|
|
2708
|
+
metadata: metadata,
|
|
2709
|
+
thread: {
|
|
2710
|
+
connect: {
|
|
2711
|
+
id: threadId
|
|
2712
|
+
}
|
|
2713
|
+
},
|
|
2714
|
+
assistant: {
|
|
2715
|
+
connect: {
|
|
2716
|
+
id: assistant_id
|
|
2717
|
+
}
|
|
2718
|
+
},
|
|
2719
|
+
truncationStrategy: truncation_strategy,
|
|
2720
|
+
responseFormat: response_format
|
|
2721
|
+
}
|
|
2271
2722
|
})
|
|
2272
2723
|
];
|
|
2724
|
+
case 2:
|
|
2725
|
+
run2 = _state.sent();
|
|
2726
|
+
data = serializeRun({
|
|
2727
|
+
run: run2
|
|
2728
|
+
});
|
|
2729
|
+
readableStream = new ReadableStream({
|
|
2730
|
+
start: function start(controller) {
|
|
2731
|
+
return _async_to_generator(function() {
|
|
2732
|
+
return _ts_generator(this, function(_state) {
|
|
2733
|
+
switch(_state.label){
|
|
2734
|
+
case 0:
|
|
2735
|
+
return [
|
|
2736
|
+
4,
|
|
2737
|
+
runAdapter({
|
|
2738
|
+
run: data,
|
|
2739
|
+
onEvent: onEvent({
|
|
2740
|
+
controller: _object_spread_props(_object_spread({}, controller), {
|
|
2741
|
+
enqueue: function(data2) {
|
|
2742
|
+
controller.enqueue("data: ".concat(JSON.stringify(data2), "\n\n"));
|
|
2743
|
+
}
|
|
2744
|
+
}),
|
|
2745
|
+
prisma: prisma
|
|
2746
|
+
}),
|
|
2747
|
+
getMessages: getMessages({
|
|
2748
|
+
prisma: prisma,
|
|
2749
|
+
run: run2
|
|
2750
|
+
})
|
|
2751
|
+
})
|
|
2752
|
+
];
|
|
2753
|
+
case 1:
|
|
2754
|
+
_state.sent();
|
|
2755
|
+
controller.close();
|
|
2756
|
+
return [
|
|
2757
|
+
2
|
|
2758
|
+
];
|
|
2759
|
+
}
|
|
2760
|
+
});
|
|
2761
|
+
})();
|
|
2762
|
+
}
|
|
2763
|
+
});
|
|
2764
|
+
if (stream) {
|
|
2765
|
+
return [
|
|
2766
|
+
2,
|
|
2767
|
+
new Response(readableStream, {
|
|
2768
|
+
headers: {
|
|
2769
|
+
"Content-Type": "text/event-stream"
|
|
2770
|
+
}
|
|
2771
|
+
})
|
|
2772
|
+
];
|
|
2773
|
+
} else {
|
|
2774
|
+
return [
|
|
2775
|
+
2,
|
|
2776
|
+
new Response(JSON.stringify(data), {
|
|
2777
|
+
status: 200,
|
|
2778
|
+
headers: {
|
|
2779
|
+
"Content-Type": "application/json"
|
|
2780
|
+
}
|
|
2781
|
+
})
|
|
2782
|
+
];
|
|
2783
|
+
}
|
|
2784
|
+
return [
|
|
2785
|
+
2
|
|
2786
|
+
];
|
|
2273
2787
|
}
|
|
2274
2788
|
});
|
|
2275
2789
|
});
|
|
2276
|
-
return function(
|
|
2790
|
+
return function(urlString, options) {
|
|
2277
2791
|
return _ref.apply(this, arguments);
|
|
2278
2792
|
};
|
|
2279
2793
|
}();
|
|
2280
2794
|
};
|
|
2281
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2282
|
-
var
|
|
2795
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/index.ts
|
|
2796
|
+
var runs = function(param) {
|
|
2283
2797
|
var prisma = param.prisma, runAdapter = param.runAdapter;
|
|
2798
|
+
return {
|
|
2799
|
+
get: get2({
|
|
2800
|
+
prisma: prisma
|
|
2801
|
+
}),
|
|
2802
|
+
post: post5({
|
|
2803
|
+
prisma: prisma,
|
|
2804
|
+
runAdapter: runAdapter
|
|
2805
|
+
})
|
|
2806
|
+
};
|
|
2807
|
+
};
|
|
2808
|
+
// src/adapters/storage/prismaStorageAdapter/threads/run/get.ts
|
|
2809
|
+
var get3 = function(param) {
|
|
2810
|
+
var prisma = param.prisma;
|
|
2284
2811
|
return function() {
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
|
|
2289
|
-
|
|
2290
|
-
|
|
2291
|
-
|
|
2292
|
-
|
|
2293
|
-
|
|
2294
|
-
|
|
2295
|
-
|
|
2296
|
-
|
|
2297
|
-
|
|
2298
|
-
|
|
2299
|
-
|
|
2300
|
-
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2304
|
-
|
|
2305
|
-
|
|
2306
|
-
|
|
2307
|
-
|
|
2308
|
-
|
|
2309
|
-
|
|
2310
|
-
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
4,
|
|
2318
|
-
prisma.run.create({
|
|
2319
|
-
data: {
|
|
2320
|
-
status: "QUEUED",
|
|
2321
|
-
expiresAt: (0, import_dayjs9.default)().add(1, "hour").unix(),
|
|
2322
|
-
// @ts-ignore-next-line
|
|
2323
|
-
model: model,
|
|
2324
|
-
// @ts-ignore-next-line
|
|
2325
|
-
instructions: instructions,
|
|
2326
|
-
// @ts-ignore-next-line
|
|
2327
|
-
tools: tools,
|
|
2328
|
-
// @ts-ignore-next-line
|
|
2329
|
-
metadata: metadata,
|
|
2330
|
-
thread: {
|
|
2331
|
-
connect: {
|
|
2332
|
-
id: threadId
|
|
2333
|
-
}
|
|
2334
|
-
},
|
|
2335
|
-
assistant: {
|
|
2336
|
-
connect: {
|
|
2337
|
-
id: assistant_id
|
|
2338
|
-
}
|
|
2339
|
-
}
|
|
2340
|
-
}
|
|
2341
|
-
})
|
|
2342
|
-
];
|
|
2343
|
-
case 2:
|
|
2344
|
-
run = _state.sent();
|
|
2345
|
-
data = serializeRun({
|
|
2346
|
-
run: run
|
|
2347
|
-
});
|
|
2348
|
-
controller.enqueue({
|
|
2349
|
-
event: "thread.run.created",
|
|
2350
|
-
data: data
|
|
2351
|
-
});
|
|
2352
|
-
return [
|
|
2353
|
-
4,
|
|
2354
|
-
runAdapter({
|
|
2355
|
-
run: data,
|
|
2356
|
-
onEvent: onEvent({
|
|
2357
|
-
controller: controller,
|
|
2358
|
-
prisma: prisma
|
|
2359
|
-
}),
|
|
2360
|
-
getMessages: getMessages({
|
|
2361
|
-
prisma: prisma,
|
|
2362
|
-
run: run
|
|
2363
|
-
}),
|
|
2364
|
-
responseFormat: response_format
|
|
2365
|
-
})
|
|
2366
|
-
];
|
|
2367
|
-
case 3:
|
|
2368
|
-
_state.sent();
|
|
2369
|
-
console.log("Stream ended inside cloud storage");
|
|
2370
|
-
controller.close();
|
|
2371
|
-
return [
|
|
2372
|
-
2
|
|
2373
|
-
];
|
|
2374
|
-
}
|
|
2375
|
-
});
|
|
2376
|
-
})();
|
|
2377
|
-
}
|
|
2812
|
+
var _ref = _async_to_generator(function(urlString) {
|
|
2813
|
+
var url, _url_pathname_match, threadId, runId, run2;
|
|
2814
|
+
return _ts_generator(this, function(_state) {
|
|
2815
|
+
switch(_state.label){
|
|
2816
|
+
case 0:
|
|
2817
|
+
url = new URL(urlString);
|
|
2818
|
+
_url_pathname_match = _sliced_to_array(url.pathname.match(new RegExp("^/v1/threads/([^/]+)/runs/([^/]+)$")), 3), threadId = _url_pathname_match[1], runId = _url_pathname_match[2];
|
|
2819
|
+
return [
|
|
2820
|
+
4,
|
|
2821
|
+
prisma.run.findUnique({
|
|
2822
|
+
where: {
|
|
2823
|
+
id: runId,
|
|
2824
|
+
threadId: threadId
|
|
2825
|
+
}
|
|
2826
|
+
})
|
|
2827
|
+
];
|
|
2828
|
+
case 1:
|
|
2829
|
+
run2 = _state.sent();
|
|
2830
|
+
return [
|
|
2831
|
+
2,
|
|
2832
|
+
new Response(JSON.stringify(serializeRun({
|
|
2833
|
+
run: run2
|
|
2834
|
+
})), {
|
|
2835
|
+
status: 200,
|
|
2836
|
+
headers: {
|
|
2837
|
+
"Content-Type": "application/json",
|
|
2838
|
+
"openai-poll-after-ms": "5000"
|
|
2839
|
+
}
|
|
2840
|
+
})
|
|
2841
|
+
];
|
|
2842
|
+
}
|
|
2843
|
+
});
|
|
2378
2844
|
});
|
|
2379
|
-
|
|
2845
|
+
return function(urlString) {
|
|
2846
|
+
return _ref.apply(this, arguments);
|
|
2847
|
+
};
|
|
2848
|
+
}();
|
|
2380
2849
|
};
|
|
2381
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2382
|
-
var
|
|
2383
|
-
var submitToolOutputs = function(param) {
|
|
2850
|
+
// src/adapters/storage/prismaStorageAdapter/threads/run/index.ts
|
|
2851
|
+
var run = function(param) {
|
|
2384
2852
|
var prisma = param.prisma, runAdapter = param.runAdapter;
|
|
2385
|
-
return
|
|
2386
|
-
|
|
2387
|
-
|
|
2853
|
+
return {
|
|
2854
|
+
get: get3({
|
|
2855
|
+
prisma: prisma
|
|
2856
|
+
})
|
|
2857
|
+
};
|
|
2858
|
+
};
|
|
2859
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/steps/get.ts
|
|
2860
|
+
var import_radash10 = require("radash");
|
|
2861
|
+
var get4 = function(param) {
|
|
2862
|
+
var prisma = param.prisma;
|
|
2863
|
+
return function() {
|
|
2864
|
+
var _ref = _async_to_generator(function(urlString) {
|
|
2865
|
+
var _this, url, _url_pathname_match, threadId, runId, _ref, limit, order, after, runSteps, _id;
|
|
2866
|
+
return _ts_generator(this, function(_state) {
|
|
2867
|
+
switch(_state.label){
|
|
2868
|
+
case 0:
|
|
2869
|
+
url = new URL(urlString);
|
|
2870
|
+
_url_pathname_match = _sliced_to_array(url.pathname.match(new RegExp("^/v1/threads/([^/]+)/runs/([^/]+)/steps$")), 4), threadId = _url_pathname_match[1], runId = _url_pathname_match[3];
|
|
2871
|
+
_ref = (0, import_radash10.assign)({
|
|
2872
|
+
limit: "20",
|
|
2873
|
+
order: "desc"
|
|
2874
|
+
}, Object.fromEntries(url.searchParams)), limit = _ref.limit, order = _ref.order, after = _ref.after;
|
|
2875
|
+
return [
|
|
2876
|
+
4,
|
|
2877
|
+
prisma.runStep.findMany(_object_spread({
|
|
2878
|
+
where: {
|
|
2879
|
+
threadId: threadId,
|
|
2880
|
+
runId: runId
|
|
2881
|
+
},
|
|
2882
|
+
take: parseInt(limit),
|
|
2883
|
+
orderBy: {
|
|
2884
|
+
createdAt: order
|
|
2885
|
+
}
|
|
2886
|
+
}, after ? {
|
|
2887
|
+
skip: 1,
|
|
2888
|
+
cursor: {
|
|
2889
|
+
id: after
|
|
2890
|
+
}
|
|
2891
|
+
} : {}))
|
|
2892
|
+
];
|
|
2893
|
+
case 1:
|
|
2894
|
+
runSteps = _state.sent();
|
|
2895
|
+
return [
|
|
2896
|
+
2,
|
|
2897
|
+
new Response(JSON.stringify({
|
|
2898
|
+
data: runSteps.map(function(runStep) {
|
|
2899
|
+
return serializeRunStep({
|
|
2900
|
+
runStep: runStep
|
|
2901
|
+
});
|
|
2902
|
+
}),
|
|
2903
|
+
hasNextPage: function() {
|
|
2904
|
+
return runSteps.length === parseInt(limit);
|
|
2905
|
+
},
|
|
2906
|
+
body: {
|
|
2907
|
+
// @ts-ignore-next-line
|
|
2908
|
+
last_id: (_id = (_this = (0, import_radash10.last)(runSteps)) === null || _this === void 0 ? void 0 : _this.id) !== null && _id !== void 0 ? _id : null
|
|
2909
|
+
}
|
|
2910
|
+
}), {
|
|
2911
|
+
status: 200,
|
|
2912
|
+
headers: {
|
|
2913
|
+
"Content-Type": "application/json"
|
|
2914
|
+
}
|
|
2915
|
+
})
|
|
2916
|
+
];
|
|
2917
|
+
}
|
|
2918
|
+
});
|
|
2919
|
+
});
|
|
2920
|
+
return function(urlString) {
|
|
2921
|
+
return _ref.apply(this, arguments);
|
|
2922
|
+
};
|
|
2923
|
+
}();
|
|
2924
|
+
};
|
|
2925
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/steps/index.ts
|
|
2926
|
+
var steps = function(param) {
|
|
2927
|
+
var prisma = param.prisma;
|
|
2928
|
+
return {
|
|
2929
|
+
get: get4({
|
|
2930
|
+
prisma: prisma
|
|
2931
|
+
})
|
|
2932
|
+
};
|
|
2933
|
+
};
|
|
2934
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/submitToolOutputs/post/updateRun.ts
|
|
2935
|
+
var import_dayjs9 = __toESM(require("dayjs"), 1);
|
|
2936
|
+
var updateRun = function() {
|
|
2937
|
+
var _ref = _async_to_generator(function(param) {
|
|
2938
|
+
var prisma, runId, threadId, _param_onThreadRunStepCompleted, onThreadRunStepCompleted, tool_outputs;
|
|
2388
2939
|
return _ts_generator(this, function(_state) {
|
|
2389
|
-
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
2393
|
-
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2397
|
-
|
|
2398
|
-
|
|
2399
|
-
|
|
2400
|
-
|
|
2401
|
-
|
|
2402
|
-
|
|
2403
|
-
|
|
2404
|
-
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2408
|
-
|
|
2409
|
-
runId: runId,
|
|
2410
|
-
type: "TOOL_CALLS",
|
|
2411
|
-
status: "IN_PROGRESS"
|
|
2412
|
-
}
|
|
2413
|
-
})
|
|
2414
|
-
];
|
|
2415
|
-
case 1:
|
|
2416
|
-
runSteps = _state.sent();
|
|
2417
|
-
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
2418
|
-
_state.label = 2;
|
|
2419
|
-
case 2:
|
|
2420
|
-
_state.trys.push([
|
|
2421
|
-
2,
|
|
2422
|
-
7,
|
|
2423
|
-
8,
|
|
2424
|
-
9
|
|
2425
|
-
]);
|
|
2426
|
-
_loop = function() {
|
|
2427
|
-
var runStep;
|
|
2428
|
-
return _ts_generator(this, function(_state) {
|
|
2429
|
-
switch(_state.label){
|
|
2430
|
-
case 0:
|
|
2431
|
-
runStep = _step.value;
|
|
2432
|
-
return [
|
|
2433
|
-
4,
|
|
2434
|
-
prisma2.runStep.update({
|
|
2435
|
-
where: {
|
|
2436
|
-
id: runStep.id
|
|
2437
|
-
},
|
|
2438
|
-
data: {
|
|
2439
|
-
status: "COMPLETED",
|
|
2440
|
-
completedAt: (0, import_dayjs10.default)().unix(),
|
|
2441
|
-
stepDetails: {
|
|
2442
|
-
type: "tool_calls",
|
|
2443
|
-
tool_calls: runStep.stepDetails.tool_calls.map(function(toolCall) {
|
|
2444
|
-
var toolOutput = tool_outputs.find(function(output) {
|
|
2445
|
-
return output.tool_call_id === toolCall.id;
|
|
2446
|
-
}) || tool_outputs[0];
|
|
2447
|
-
if (!toolOutput) {
|
|
2448
|
-
console.dir({
|
|
2449
|
-
toolOutput: toolOutput,
|
|
2450
|
-
runStep: runStep,
|
|
2451
|
-
tool_outputs: tool_outputs,
|
|
2452
|
-
runSteps: runSteps
|
|
2453
|
-
}, {
|
|
2454
|
-
depth: null
|
|
2455
|
-
});
|
|
2456
|
-
throw new Error("Tool output not found");
|
|
2457
|
-
}
|
|
2458
|
-
return {
|
|
2459
|
-
id: toolCall.id,
|
|
2460
|
-
type: toolCall.type,
|
|
2461
|
-
function: _object_spread_props(_object_spread({}, toolCall.function), {
|
|
2462
|
-
output: toolOutput.output
|
|
2463
|
-
})
|
|
2464
|
-
};
|
|
2465
|
-
})
|
|
2466
|
-
}
|
|
2467
|
-
}
|
|
2468
|
-
})
|
|
2469
|
-
];
|
|
2470
|
-
case 1:
|
|
2471
|
-
_state.sent();
|
|
2472
|
-
return [
|
|
2473
|
-
2
|
|
2474
|
-
];
|
|
2475
|
-
}
|
|
2476
|
-
});
|
|
2477
|
-
};
|
|
2478
|
-
_iterator = runSteps[Symbol.iterator]();
|
|
2479
|
-
_state.label = 3;
|
|
2480
|
-
case 3:
|
|
2481
|
-
if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
|
|
2482
|
-
3,
|
|
2483
|
-
6
|
|
2484
|
-
];
|
|
2485
|
-
return [
|
|
2486
|
-
5,
|
|
2487
|
-
_ts_values(_loop())
|
|
2488
|
-
];
|
|
2489
|
-
case 4:
|
|
2490
|
-
_state.sent();
|
|
2491
|
-
_state.label = 5;
|
|
2492
|
-
case 5:
|
|
2493
|
-
_iteratorNormalCompletion = true;
|
|
2494
|
-
return [
|
|
2495
|
-
3,
|
|
2496
|
-
3
|
|
2497
|
-
];
|
|
2498
|
-
case 6:
|
|
2499
|
-
return [
|
|
2500
|
-
3,
|
|
2501
|
-
9
|
|
2502
|
-
];
|
|
2503
|
-
case 7:
|
|
2504
|
-
err = _state.sent();
|
|
2505
|
-
_didIteratorError = true;
|
|
2506
|
-
_iteratorError = err;
|
|
2507
|
-
return [
|
|
2508
|
-
3,
|
|
2509
|
-
9
|
|
2510
|
-
];
|
|
2511
|
-
case 8:
|
|
2512
|
-
try {
|
|
2513
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
2514
|
-
_iterator.return();
|
|
2515
|
-
}
|
|
2516
|
-
} finally{
|
|
2517
|
-
if (_didIteratorError) {
|
|
2518
|
-
throw _iteratorError;
|
|
2519
|
-
}
|
|
2940
|
+
prisma = param.prisma, runId = param.runId, threadId = param.threadId, _param_onThreadRunStepCompleted = param.onThreadRunStepCompleted, onThreadRunStepCompleted = _param_onThreadRunStepCompleted === void 0 ? function() {} : _param_onThreadRunStepCompleted, tool_outputs = param.tool_outputs;
|
|
2941
|
+
return [
|
|
2942
|
+
2,
|
|
2943
|
+
prisma.$transaction(function() {
|
|
2944
|
+
var _ref = _async_to_generator(function(prisma2) {
|
|
2945
|
+
var runSteps, _iteratorNormalCompletion, _didIteratorError, _iteratorError, _loop, _iterator, _step, err;
|
|
2946
|
+
return _ts_generator(this, function(_state) {
|
|
2947
|
+
switch(_state.label){
|
|
2948
|
+
case 0:
|
|
2949
|
+
return [
|
|
2950
|
+
4,
|
|
2951
|
+
prisma2.runStep.findMany({
|
|
2952
|
+
where: {
|
|
2953
|
+
threadId: threadId,
|
|
2954
|
+
runId: runId,
|
|
2955
|
+
type: "TOOL_CALLS",
|
|
2956
|
+
status: "IN_PROGRESS"
|
|
2957
|
+
},
|
|
2958
|
+
orderBy: {
|
|
2959
|
+
createdAt: "asc"
|
|
2520
2960
|
}
|
|
2521
|
-
|
|
2522
|
-
|
|
2523
|
-
|
|
2524
|
-
|
|
2525
|
-
|
|
2526
|
-
|
|
2527
|
-
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2536
|
-
}
|
|
2537
|
-
});
|
|
2538
|
-
});
|
|
2539
|
-
return function(prisma2) {
|
|
2540
|
-
return _ref.apply(this, arguments);
|
|
2541
|
-
};
|
|
2542
|
-
}())
|
|
2543
|
-
];
|
|
2544
|
-
case 1:
|
|
2545
|
-
run = _state.sent();
|
|
2546
|
-
data = serializeRun({
|
|
2547
|
-
run: run
|
|
2548
|
-
});
|
|
2549
|
-
return [
|
|
2550
|
-
4,
|
|
2551
|
-
new Promise(function(resolve) {
|
|
2552
|
-
return new ReadableStream({
|
|
2553
|
-
start: function start(controller) {
|
|
2554
|
-
return _async_to_generator(function() {
|
|
2961
|
+
})
|
|
2962
|
+
];
|
|
2963
|
+
case 1:
|
|
2964
|
+
runSteps = _state.sent();
|
|
2965
|
+
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
2966
|
+
_state.label = 2;
|
|
2967
|
+
case 2:
|
|
2968
|
+
_state.trys.push([
|
|
2969
|
+
2,
|
|
2970
|
+
7,
|
|
2971
|
+
8,
|
|
2972
|
+
9
|
|
2973
|
+
]);
|
|
2974
|
+
_loop = function() {
|
|
2975
|
+
var runStep, completedRunStep;
|
|
2555
2976
|
return _ts_generator(this, function(_state) {
|
|
2556
2977
|
switch(_state.label){
|
|
2557
2978
|
case 0:
|
|
2979
|
+
runStep = _step.value;
|
|
2558
2980
|
return [
|
|
2559
2981
|
4,
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
|
|
2565
|
-
|
|
2566
|
-
|
|
2567
|
-
|
|
2568
|
-
|
|
2569
|
-
|
|
2570
|
-
|
|
2982
|
+
prisma2.runStep.update({
|
|
2983
|
+
where: {
|
|
2984
|
+
id: runStep.id
|
|
2985
|
+
},
|
|
2986
|
+
data: {
|
|
2987
|
+
status: "COMPLETED",
|
|
2988
|
+
completedAt: (0, import_dayjs9.default)().unix(),
|
|
2989
|
+
stepDetails: {
|
|
2990
|
+
type: "tool_calls",
|
|
2991
|
+
// @ts-ignore-next-line
|
|
2992
|
+
tool_calls: runStep.stepDetails.tool_calls.map(function(toolCall) {
|
|
2993
|
+
var toolOutput = tool_outputs.find(function(output) {
|
|
2994
|
+
return output.tool_call_id === toolCall.id;
|
|
2995
|
+
}) || tool_outputs[0];
|
|
2996
|
+
if (!toolOutput) {
|
|
2997
|
+
console.dir({
|
|
2998
|
+
toolOutput: toolOutput,
|
|
2999
|
+
runStep: runStep,
|
|
3000
|
+
tool_outputs: tool_outputs,
|
|
3001
|
+
runSteps: runSteps
|
|
3002
|
+
}, {
|
|
3003
|
+
depth: null
|
|
3004
|
+
});
|
|
3005
|
+
throw new Error("Tool output not found");
|
|
3006
|
+
}
|
|
3007
|
+
return {
|
|
3008
|
+
id: toolCall.id,
|
|
3009
|
+
type: toolCall.type,
|
|
3010
|
+
function: _object_spread_props(_object_spread({}, toolCall.function), {
|
|
3011
|
+
output: toolOutput.output
|
|
3012
|
+
})
|
|
3013
|
+
};
|
|
3014
|
+
})
|
|
3015
|
+
}
|
|
3016
|
+
}
|
|
2571
3017
|
})
|
|
2572
3018
|
];
|
|
2573
3019
|
case 1:
|
|
2574
|
-
_state.sent();
|
|
2575
|
-
|
|
2576
|
-
|
|
3020
|
+
completedRunStep = _state.sent();
|
|
3021
|
+
onThreadRunStepCompleted({
|
|
3022
|
+
runStep: completedRunStep
|
|
3023
|
+
});
|
|
2577
3024
|
return [
|
|
2578
3025
|
2
|
|
2579
3026
|
];
|
|
2580
3027
|
}
|
|
2581
3028
|
});
|
|
2582
|
-
}
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
|
|
2589
|
-
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
|
|
2593
|
-
|
|
3029
|
+
};
|
|
3030
|
+
_iterator = runSteps[Symbol.iterator]();
|
|
3031
|
+
_state.label = 3;
|
|
3032
|
+
case 3:
|
|
3033
|
+
if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
|
|
3034
|
+
3,
|
|
3035
|
+
6
|
|
3036
|
+
];
|
|
3037
|
+
return [
|
|
3038
|
+
5,
|
|
3039
|
+
_ts_values(_loop())
|
|
3040
|
+
];
|
|
3041
|
+
case 4:
|
|
3042
|
+
_state.sent();
|
|
3043
|
+
_state.label = 5;
|
|
3044
|
+
case 5:
|
|
3045
|
+
_iteratorNormalCompletion = true;
|
|
3046
|
+
return [
|
|
3047
|
+
3,
|
|
3048
|
+
3
|
|
3049
|
+
];
|
|
3050
|
+
case 6:
|
|
3051
|
+
return [
|
|
3052
|
+
3,
|
|
3053
|
+
9
|
|
3054
|
+
];
|
|
3055
|
+
case 7:
|
|
3056
|
+
err = _state.sent();
|
|
3057
|
+
_didIteratorError = true;
|
|
3058
|
+
_iteratorError = err;
|
|
3059
|
+
return [
|
|
3060
|
+
3,
|
|
3061
|
+
9
|
|
3062
|
+
];
|
|
3063
|
+
case 8:
|
|
3064
|
+
try {
|
|
3065
|
+
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
3066
|
+
_iterator.return();
|
|
3067
|
+
}
|
|
3068
|
+
} finally{
|
|
3069
|
+
if (_didIteratorError) {
|
|
3070
|
+
throw _iteratorError;
|
|
3071
|
+
}
|
|
3072
|
+
}
|
|
3073
|
+
return [
|
|
3074
|
+
7
|
|
3075
|
+
];
|
|
3076
|
+
case 9:
|
|
3077
|
+
return [
|
|
3078
|
+
2,
|
|
3079
|
+
prisma2.run.update({
|
|
3080
|
+
where: {
|
|
3081
|
+
id: runId
|
|
3082
|
+
},
|
|
3083
|
+
data: {
|
|
3084
|
+
status: "QUEUED"
|
|
3085
|
+
}
|
|
3086
|
+
})
|
|
3087
|
+
];
|
|
3088
|
+
}
|
|
3089
|
+
});
|
|
3090
|
+
});
|
|
3091
|
+
return function(prisma2) {
|
|
3092
|
+
return _ref.apply(this, arguments);
|
|
3093
|
+
};
|
|
3094
|
+
}())
|
|
3095
|
+
];
|
|
2594
3096
|
});
|
|
2595
3097
|
});
|
|
2596
|
-
|
|
2597
|
-
|
|
2598
|
-
|
|
2599
|
-
|
|
3098
|
+
return function updateRun(_) {
|
|
3099
|
+
return _ref.apply(this, arguments);
|
|
3100
|
+
};
|
|
3101
|
+
}();
|
|
3102
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/submitToolOutputs/post/index.ts
|
|
3103
|
+
var post6 = function(param) {
|
|
2600
3104
|
var prisma = param.prisma, runAdapter = param.runAdapter;
|
|
2601
3105
|
return function() {
|
|
2602
|
-
|
|
2603
|
-
|
|
2604
|
-
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
|
|
2609
|
-
|
|
2610
|
-
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
|
|
2614
|
-
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
|
|
3106
|
+
var _ref = _async_to_generator(function(urlString, options) {
|
|
3107
|
+
var url, _url_pathname_match, threadId, runId, body, tool_outputs, stream, readableStream, run2;
|
|
3108
|
+
return _ts_generator(this, function(_state) {
|
|
3109
|
+
switch(_state.label){
|
|
3110
|
+
case 0:
|
|
3111
|
+
url = new URL(urlString);
|
|
3112
|
+
_url_pathname_match = _sliced_to_array(url.pathname.match(new RegExp("^/v1/threads/([^/]+)/runs/([^/]+)/submit_tool_outputs$")), 3), threadId = _url_pathname_match[1], runId = _url_pathname_match[2];
|
|
3113
|
+
body = JSON.parse(options.body);
|
|
3114
|
+
tool_outputs = body.tool_outputs, stream = body.stream;
|
|
3115
|
+
if (!stream) return [
|
|
3116
|
+
3,
|
|
3117
|
+
1
|
|
3118
|
+
];
|
|
3119
|
+
readableStream = new ReadableStream({
|
|
3120
|
+
start: function start(controller) {
|
|
3121
|
+
return _async_to_generator(function() {
|
|
3122
|
+
var run2;
|
|
3123
|
+
return _ts_generator(this, function(_state) {
|
|
3124
|
+
switch(_state.label){
|
|
3125
|
+
case 0:
|
|
3126
|
+
return [
|
|
3127
|
+
4,
|
|
3128
|
+
updateRun({
|
|
3129
|
+
prisma: prisma,
|
|
3130
|
+
runId: runId,
|
|
3131
|
+
threadId: threadId,
|
|
3132
|
+
tool_outputs: tool_outputs,
|
|
3133
|
+
onThreadRunStepCompleted: function() {
|
|
3134
|
+
var _ref = _async_to_generator(function(param) {
|
|
3135
|
+
var runStep;
|
|
3136
|
+
return _ts_generator(this, function(_state) {
|
|
3137
|
+
runStep = param.runStep;
|
|
3138
|
+
controller.enqueue("data: ".concat(JSON.stringify({
|
|
3139
|
+
event: "thread.run.step.completed",
|
|
3140
|
+
data: serializeRunStep({
|
|
3141
|
+
runStep: runStep
|
|
3142
|
+
})
|
|
3143
|
+
}), "\n\n"));
|
|
3144
|
+
return [
|
|
3145
|
+
2
|
|
3146
|
+
];
|
|
3147
|
+
});
|
|
3148
|
+
});
|
|
3149
|
+
return function(_) {
|
|
3150
|
+
return _ref.apply(this, arguments);
|
|
3151
|
+
};
|
|
3152
|
+
}()
|
|
3153
|
+
})
|
|
3154
|
+
];
|
|
3155
|
+
case 1:
|
|
3156
|
+
run2 = _state.sent();
|
|
3157
|
+
return [
|
|
3158
|
+
4,
|
|
3159
|
+
runAdapter({
|
|
3160
|
+
run: serializeRun({
|
|
3161
|
+
run: run2
|
|
3162
|
+
}),
|
|
3163
|
+
onEvent: onEvent({
|
|
3164
|
+
controller: _object_spread_props(_object_spread({}, controller), {
|
|
3165
|
+
enqueue: function(data) {
|
|
3166
|
+
controller.enqueue("data: ".concat(JSON.stringify(data), "\n\n"));
|
|
3167
|
+
}
|
|
3168
|
+
}),
|
|
3169
|
+
prisma: prisma
|
|
3170
|
+
}),
|
|
3171
|
+
getMessages: getMessages({
|
|
3172
|
+
prisma: prisma,
|
|
3173
|
+
run: run2
|
|
3174
|
+
})
|
|
3175
|
+
})
|
|
3176
|
+
];
|
|
3177
|
+
case 2:
|
|
3178
|
+
_state.sent();
|
|
3179
|
+
controller.close();
|
|
3180
|
+
return [
|
|
3181
|
+
2
|
|
3182
|
+
];
|
|
3183
|
+
}
|
|
3184
|
+
});
|
|
3185
|
+
})();
|
|
3186
|
+
}
|
|
3187
|
+
});
|
|
3188
|
+
return [
|
|
3189
|
+
2,
|
|
3190
|
+
new Response(readableStream, {
|
|
3191
|
+
headers: {
|
|
3192
|
+
"Content-Type": "text/event-stream"
|
|
3193
|
+
}
|
|
3194
|
+
})
|
|
3195
|
+
];
|
|
3196
|
+
case 1:
|
|
3197
|
+
return [
|
|
3198
|
+
4,
|
|
3199
|
+
updateRun({
|
|
3200
|
+
prisma: prisma,
|
|
3201
|
+
runId: runId,
|
|
3202
|
+
threadId: threadId,
|
|
3203
|
+
tool_outputs: tool_outputs
|
|
3204
|
+
})
|
|
3205
|
+
];
|
|
3206
|
+
case 2:
|
|
3207
|
+
run2 = _state.sent();
|
|
3208
|
+
return [
|
|
3209
|
+
4,
|
|
3210
|
+
new Promise(function(resolve) {
|
|
3211
|
+
return new ReadableStream({
|
|
3212
|
+
start: function start(controller) {
|
|
3213
|
+
return _async_to_generator(function() {
|
|
2619
3214
|
return _ts_generator(this, function(_state) {
|
|
2620
3215
|
switch(_state.label){
|
|
2621
3216
|
case 0:
|
|
2622
3217
|
return [
|
|
2623
3218
|
4,
|
|
2624
|
-
|
|
2625
|
-
|
|
2626
|
-
|
|
2627
|
-
|
|
2628
|
-
|
|
2629
|
-
|
|
2630
|
-
|
|
2631
|
-
|
|
2632
|
-
|
|
2633
|
-
|
|
3219
|
+
runAdapter({
|
|
3220
|
+
run: serializeRun({
|
|
3221
|
+
run: run2
|
|
3222
|
+
}),
|
|
3223
|
+
onEvent: onEvent({
|
|
3224
|
+
controller: _object_spread_props(_object_spread({}, controller), {
|
|
3225
|
+
enqueue: function(data) {
|
|
3226
|
+
controller.enqueue("data: ".concat(JSON.stringify(data), "\n\n"));
|
|
3227
|
+
}
|
|
3228
|
+
}),
|
|
3229
|
+
prisma: prisma
|
|
3230
|
+
}),
|
|
3231
|
+
getMessages: getMessages({
|
|
3232
|
+
prisma: prisma,
|
|
3233
|
+
run: run2
|
|
3234
|
+
})
|
|
2634
3235
|
})
|
|
2635
3236
|
];
|
|
2636
3237
|
case 1:
|
|
2637
|
-
runSteps = _state.sent();
|
|
2638
|
-
_iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
2639
|
-
_state.label = 2;
|
|
2640
|
-
case 2:
|
|
2641
|
-
_state.trys.push([
|
|
2642
|
-
2,
|
|
2643
|
-
7,
|
|
2644
|
-
8,
|
|
2645
|
-
9
|
|
2646
|
-
]);
|
|
2647
|
-
_loop = function() {
|
|
2648
|
-
var runStep, completedRunStep;
|
|
2649
|
-
return _ts_generator(this, function(_state) {
|
|
2650
|
-
switch(_state.label){
|
|
2651
|
-
case 0:
|
|
2652
|
-
runStep = _step.value;
|
|
2653
|
-
return [
|
|
2654
|
-
4,
|
|
2655
|
-
prisma2.runStep.update({
|
|
2656
|
-
where: {
|
|
2657
|
-
id: runStep.id
|
|
2658
|
-
},
|
|
2659
|
-
data: {
|
|
2660
|
-
status: "COMPLETED",
|
|
2661
|
-
completedAt: (0, import_dayjs11.default)().unix(),
|
|
2662
|
-
stepDetails: {
|
|
2663
|
-
type: "tool_calls",
|
|
2664
|
-
tool_calls: runStep.stepDetails.tool_calls.map(function(toolCall) {
|
|
2665
|
-
var toolOutput = tool_outputs.find(function(output) {
|
|
2666
|
-
return output.tool_call_id === toolCall.id;
|
|
2667
|
-
}) || tool_outputs[0];
|
|
2668
|
-
if (!toolOutput) {
|
|
2669
|
-
console.dir({
|
|
2670
|
-
toolOutput: toolOutput,
|
|
2671
|
-
runStep: runStep,
|
|
2672
|
-
tool_outputs: tool_outputs,
|
|
2673
|
-
runSteps: runSteps
|
|
2674
|
-
}, {
|
|
2675
|
-
depth: null
|
|
2676
|
-
});
|
|
2677
|
-
throw new Error("Tool output not found");
|
|
2678
|
-
}
|
|
2679
|
-
return {
|
|
2680
|
-
id: toolCall.id,
|
|
2681
|
-
type: toolCall.type,
|
|
2682
|
-
function: _object_spread_props(_object_spread({}, toolCall.function), {
|
|
2683
|
-
output: toolOutput.output
|
|
2684
|
-
})
|
|
2685
|
-
};
|
|
2686
|
-
})
|
|
2687
|
-
}
|
|
2688
|
-
}
|
|
2689
|
-
})
|
|
2690
|
-
];
|
|
2691
|
-
case 1:
|
|
2692
|
-
completedRunStep = _state.sent();
|
|
2693
|
-
controller.enqueue({
|
|
2694
|
-
event: "thread.run.step.completed",
|
|
2695
|
-
data: serializeRunStep({
|
|
2696
|
-
runStep: completedRunStep
|
|
2697
|
-
})
|
|
2698
|
-
});
|
|
2699
|
-
return [
|
|
2700
|
-
2
|
|
2701
|
-
];
|
|
2702
|
-
}
|
|
2703
|
-
});
|
|
2704
|
-
};
|
|
2705
|
-
_iterator = runSteps[Symbol.iterator]();
|
|
2706
|
-
_state.label = 3;
|
|
2707
|
-
case 3:
|
|
2708
|
-
if (!!(_iteratorNormalCompletion = (_step = _iterator.next()).done)) return [
|
|
2709
|
-
3,
|
|
2710
|
-
6
|
|
2711
|
-
];
|
|
2712
|
-
return [
|
|
2713
|
-
5,
|
|
2714
|
-
_ts_values(_loop())
|
|
2715
|
-
];
|
|
2716
|
-
case 4:
|
|
2717
3238
|
_state.sent();
|
|
2718
|
-
|
|
2719
|
-
|
|
2720
|
-
_iteratorNormalCompletion = true;
|
|
2721
|
-
return [
|
|
2722
|
-
3,
|
|
2723
|
-
3
|
|
2724
|
-
];
|
|
2725
|
-
case 6:
|
|
2726
|
-
return [
|
|
2727
|
-
3,
|
|
2728
|
-
9
|
|
2729
|
-
];
|
|
2730
|
-
case 7:
|
|
2731
|
-
err = _state.sent();
|
|
2732
|
-
_didIteratorError = true;
|
|
2733
|
-
_iteratorError = err;
|
|
2734
|
-
return [
|
|
2735
|
-
3,
|
|
2736
|
-
9
|
|
2737
|
-
];
|
|
2738
|
-
case 8:
|
|
2739
|
-
try {
|
|
2740
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
2741
|
-
_iterator.return();
|
|
2742
|
-
}
|
|
2743
|
-
} finally{
|
|
2744
|
-
if (_didIteratorError) {
|
|
2745
|
-
throw _iteratorError;
|
|
2746
|
-
}
|
|
2747
|
-
}
|
|
3239
|
+
controller.close();
|
|
3240
|
+
resolve(void 0);
|
|
2748
3241
|
return [
|
|
2749
|
-
|
|
2750
|
-
];
|
|
2751
|
-
case 9:
|
|
2752
|
-
return [
|
|
2753
|
-
2,
|
|
2754
|
-
prisma2.run.update({
|
|
2755
|
-
where: {
|
|
2756
|
-
id: runId
|
|
2757
|
-
},
|
|
2758
|
-
data: {
|
|
2759
|
-
status: "QUEUED"
|
|
2760
|
-
}
|
|
2761
|
-
})
|
|
3242
|
+
2
|
|
2762
3243
|
];
|
|
2763
3244
|
}
|
|
2764
3245
|
});
|
|
2765
|
-
});
|
|
2766
|
-
|
|
2767
|
-
return _ref.apply(this, arguments);
|
|
2768
|
-
};
|
|
2769
|
-
}())
|
|
2770
|
-
];
|
|
2771
|
-
case 1:
|
|
2772
|
-
run = _state.sent();
|
|
2773
|
-
return [
|
|
2774
|
-
4,
|
|
2775
|
-
runAdapter({
|
|
2776
|
-
run: serializeRun({
|
|
2777
|
-
run: run
|
|
2778
|
-
}),
|
|
2779
|
-
onEvent: onEvent({
|
|
2780
|
-
controller: controller,
|
|
2781
|
-
prisma: prisma
|
|
2782
|
-
}),
|
|
2783
|
-
// @ts-ignore-next-line
|
|
2784
|
-
getMessages: getMessages({
|
|
2785
|
-
prisma: prisma,
|
|
2786
|
-
run: run
|
|
2787
|
-
})
|
|
2788
|
-
})
|
|
2789
|
-
];
|
|
2790
|
-
case 2:
|
|
2791
|
-
_state.sent();
|
|
2792
|
-
console.log("Stream ended inside cloud storage");
|
|
2793
|
-
controller.close();
|
|
2794
|
-
return [
|
|
2795
|
-
2
|
|
2796
|
-
];
|
|
2797
|
-
}
|
|
2798
|
-
});
|
|
2799
|
-
})();
|
|
2800
|
-
}
|
|
2801
|
-
});
|
|
2802
|
-
};
|
|
2803
|
-
};
|
|
2804
|
-
// src/adapters/storage/prismaStorageAdapter/beta/threads/runs/steps/list.ts
|
|
2805
|
-
var import_radash11 = require("radash");
|
|
2806
|
-
var list3 = function(param) {
|
|
2807
|
-
var prisma = param.prisma;
|
|
2808
|
-
return /*#__PURE__*/ _async_to_generator(function() {
|
|
2809
|
-
var _len, args, _key, _this, threadId, runId, _args_, _ref, // @ts-ignore-next-line
|
|
2810
|
-
limit, // @ts-ignore-next-line
|
|
2811
|
-
order, // @ts-ignore-next-line
|
|
2812
|
-
after, runSteps, _id;
|
|
2813
|
-
var _arguments = arguments;
|
|
2814
|
-
return _ts_generator(this, function(_state) {
|
|
2815
|
-
switch(_state.label){
|
|
2816
|
-
case 0:
|
|
2817
|
-
for(_len = _arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
2818
|
-
args[_key] = _arguments[_key];
|
|
2819
|
-
}
|
|
2820
|
-
threadId = args[0];
|
|
2821
|
-
runId = args[1];
|
|
2822
|
-
_ref = (0, import_radash11.assign)({
|
|
2823
|
-
// @ts-ignore-next-line
|
|
2824
|
-
limit: 20,
|
|
2825
|
-
order: "desc",
|
|
2826
|
-
after: null
|
|
2827
|
-
}, (_args_ = args[2]) !== null && _args_ !== void 0 ? _args_ : {}), limit = _ref.limit, order = _ref.order, after = _ref.after;
|
|
2828
|
-
return [
|
|
2829
|
-
4,
|
|
2830
|
-
prisma.runStep.findMany(_object_spread({
|
|
2831
|
-
where: {
|
|
2832
|
-
threadId: threadId,
|
|
2833
|
-
runId: runId
|
|
2834
|
-
},
|
|
2835
|
-
take: limit,
|
|
2836
|
-
orderBy: {
|
|
2837
|
-
createdAt: order
|
|
2838
|
-
}
|
|
2839
|
-
}, after ? {
|
|
2840
|
-
skip: 1,
|
|
2841
|
-
cursor: {
|
|
2842
|
-
id: after
|
|
2843
|
-
}
|
|
2844
|
-
} : {}))
|
|
2845
|
-
];
|
|
2846
|
-
case 1:
|
|
2847
|
-
runSteps = _state.sent();
|
|
2848
|
-
return [
|
|
2849
|
-
2,
|
|
2850
|
-
{
|
|
2851
|
-
data: runSteps.map(function(runStep) {
|
|
2852
|
-
return serializeRunStep({
|
|
2853
|
-
runStep: runStep
|
|
3246
|
+
})();
|
|
3247
|
+
}
|
|
2854
3248
|
});
|
|
2855
|
-
})
|
|
2856
|
-
|
|
2857
|
-
|
|
2858
|
-
|
|
2859
|
-
|
|
2860
|
-
|
|
2861
|
-
|
|
2862
|
-
|
|
2863
|
-
|
|
2864
|
-
|
|
3249
|
+
})
|
|
3250
|
+
];
|
|
3251
|
+
case 3:
|
|
3252
|
+
_state.sent();
|
|
3253
|
+
return [
|
|
3254
|
+
2,
|
|
3255
|
+
new Response(JSON.stringify(run2), {
|
|
3256
|
+
status: 200,
|
|
3257
|
+
headers: {
|
|
3258
|
+
"Content-Type": "application/json"
|
|
3259
|
+
}
|
|
3260
|
+
})
|
|
3261
|
+
];
|
|
3262
|
+
case 4:
|
|
3263
|
+
return [
|
|
3264
|
+
2
|
|
3265
|
+
];
|
|
3266
|
+
}
|
|
3267
|
+
});
|
|
2865
3268
|
});
|
|
2866
|
-
|
|
2867
|
-
|
|
2868
|
-
|
|
2869
|
-
|
|
2870
|
-
var prisma = param.prisma;
|
|
2871
|
-
return {
|
|
2872
|
-
list: list3({
|
|
2873
|
-
prisma: prisma
|
|
2874
|
-
})
|
|
2875
|
-
};
|
|
2876
|
-
};
|
|
2877
|
-
// src/adapters/storage/prismaStorageAdapter/beta/threads/runs/index.ts
|
|
2878
|
-
var runs = function(param) {
|
|
2879
|
-
var prisma = param.prisma, runAdapter = param.runAdapter;
|
|
2880
|
-
return {
|
|
2881
|
-
list: list2({
|
|
2882
|
-
prisma: prisma
|
|
2883
|
-
}),
|
|
2884
|
-
create: create3({
|
|
2885
|
-
prisma: prisma
|
|
2886
|
-
}),
|
|
2887
|
-
createAndStream: createAndStream({
|
|
2888
|
-
prisma: prisma,
|
|
2889
|
-
runAdapter: runAdapter
|
|
2890
|
-
}),
|
|
2891
|
-
submitToolOutputs: submitToolOutputs({
|
|
2892
|
-
prisma: prisma,
|
|
2893
|
-
runAdapter: runAdapter
|
|
2894
|
-
}),
|
|
2895
|
-
submitToolOutputsStream: submitToolOutputsStream({
|
|
2896
|
-
prisma: prisma,
|
|
2897
|
-
runAdapter: runAdapter
|
|
2898
|
-
}),
|
|
2899
|
-
steps: steps({
|
|
2900
|
-
prisma: prisma
|
|
2901
|
-
})
|
|
2902
|
-
};
|
|
2903
|
-
};
|
|
2904
|
-
// src/adapters/storage/prismaStorageAdapter/beta/threads/index.ts
|
|
2905
|
-
var threads = function(param) {
|
|
2906
|
-
var prisma = param.prisma, runAdapter = param.runAdapter;
|
|
2907
|
-
return {
|
|
2908
|
-
create: create({
|
|
2909
|
-
prisma: prisma
|
|
2910
|
-
}),
|
|
2911
|
-
messages: messages3({
|
|
2912
|
-
prisma: prisma
|
|
2913
|
-
}),
|
|
2914
|
-
runs: runs({
|
|
2915
|
-
prisma: prisma,
|
|
2916
|
-
runAdapter: runAdapter
|
|
2917
|
-
})
|
|
2918
|
-
};
|
|
3269
|
+
return function(urlString, options) {
|
|
3270
|
+
return _ref.apply(this, arguments);
|
|
3271
|
+
};
|
|
3272
|
+
}();
|
|
2919
3273
|
};
|
|
2920
|
-
// src/adapters/storage/prismaStorageAdapter/
|
|
2921
|
-
var
|
|
3274
|
+
// src/adapters/storage/prismaStorageAdapter/threads/runs/submitToolOutputs/index.ts
|
|
3275
|
+
var submitToolOutputs = function(param) {
|
|
2922
3276
|
var prisma = param.prisma, runAdapter = param.runAdapter;
|
|
2923
3277
|
return {
|
|
2924
|
-
|
|
3278
|
+
post: post6({
|
|
2925
3279
|
prisma: prisma,
|
|
3280
|
+
// @ts-ignore-next-line
|
|
2926
3281
|
runAdapter: runAdapter
|
|
2927
3282
|
})
|
|
2928
3283
|
};
|
|
@@ -2933,7 +3288,24 @@ var prismaStorageAdapter = function(param) {
|
|
|
2933
3288
|
return function(param) {
|
|
2934
3289
|
var runAdapter = param.runAdapter;
|
|
2935
3290
|
return {
|
|
2936
|
-
|
|
3291
|
+
"^/v1/threads$": threads({
|
|
3292
|
+
prisma: prisma
|
|
3293
|
+
}),
|
|
3294
|
+
"^/v1/threads/([^/]+)/messages$": messages3({
|
|
3295
|
+
prisma: prisma
|
|
3296
|
+
}),
|
|
3297
|
+
"^/v1/threads/([^/]+)/runs$": runs({
|
|
3298
|
+
prisma: prisma,
|
|
3299
|
+
runAdapter: runAdapter
|
|
3300
|
+
}),
|
|
3301
|
+
"^/v1/threads/([^/]+)/runs/([^/]+)$": run({
|
|
3302
|
+
prisma: prisma,
|
|
3303
|
+
runAdapter: runAdapter
|
|
3304
|
+
}),
|
|
3305
|
+
"^/v1/threads/([^/]+)/runs/([^/]+)/steps$": steps({
|
|
3306
|
+
prisma: prisma
|
|
3307
|
+
}),
|
|
3308
|
+
"^/v1/threads/([^/]+)/runs/([^/]+)/submit_tool_outputs$": submitToolOutputs({
|
|
2937
3309
|
prisma: prisma,
|
|
2938
3310
|
runAdapter: runAdapter
|
|
2939
3311
|
})
|
|
@@ -2945,7 +3317,9 @@ var prismaStorageAdapter = function(param) {
|
|
|
2945
3317
|
anthropicClientAdapter: anthropicClientAdapter,
|
|
2946
3318
|
anthropicRunAdapter: anthropicRunAdapter,
|
|
2947
3319
|
completionsRunAdapter: completionsRunAdapter,
|
|
3320
|
+
groqClientAdapter: groqClientAdapter,
|
|
2948
3321
|
mistralClientAdapter: mistralClientAdapter,
|
|
3322
|
+
openaiClientAdapter: openaiClientAdapter,
|
|
2949
3323
|
perplexityClientAdapter: perplexityClientAdapter,
|
|
2950
3324
|
prismaStorageAdapter: prismaStorageAdapter,
|
|
2951
3325
|
supercompat: supercompat
|