supercompat 2.16.0 → 2.17.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.js CHANGED
@@ -766,22 +766,68 @@ var models2 = function(param) {
766
766
  };
767
767
  };
768
768
  // src/adapters/client/openaiClientAdapter/completions/post.ts
769
+ import { omit } from "radash";
770
+ // src/lib/models/isOModel.ts
771
+ var isOModel = function(param) {
772
+ var model = param.model;
773
+ return model.startsWith("o1") || model.startsWith("o3");
774
+ };
775
+ // src/lib/messages/systemDeveloperMessages.ts
776
+ var systemDeveloperMessages = function(param) {
777
+ var messages3 = param.messages, model = param.model;
778
+ if (isOModel({
779
+ model: model
780
+ })) {
781
+ return messages3.map(function(message) {
782
+ if (message.role === "system") {
783
+ return _object_spread_props(_object_spread({}, message), {
784
+ // TODO: This should be 'developer' but we're using 'user' for now
785
+ // role: 'developer',
786
+ role: "user"
787
+ });
788
+ }
789
+ return message;
790
+ });
791
+ }
792
+ return messages3;
793
+ };
794
+ // src/adapters/client/openaiClientAdapter/completions/post.ts
795
+ var omitKeys = function(param) {
796
+ var model = param.model;
797
+ if (isOModel({
798
+ model: model
799
+ })) {
800
+ return [
801
+ "tools"
802
+ ];
803
+ }
804
+ return [];
805
+ };
769
806
  var post2 = function(param) {
770
807
  var openai = param.openai;
771
808
  return /*#__PURE__*/ function() {
772
809
  var _ref = _async_to_generator(function(_url, options) {
773
- var body, response, stream, data, error;
810
+ var body, messages3, resultOptions, response, stream, data, error;
774
811
  return _ts_generator(this, function(_state) {
775
812
  switch(_state.label){
776
813
  case 0:
777
814
  body = JSON.parse(options.body);
815
+ messages3 = body.messages;
816
+ resultOptions = _object_spread_props(_object_spread({}, omit(body, omitKeys({
817
+ model: body.model
818
+ }))), {
819
+ messages: systemDeveloperMessages({
820
+ messages: messages3,
821
+ model: body.model
822
+ })
823
+ });
778
824
  if (!body.stream) return [
779
825
  3,
780
826
  2
781
827
  ];
782
828
  return [
783
829
  4,
784
- openai.chat.completions.create(body)
830
+ openai.chat.completions.create(resultOptions)
785
831
  ];
786
832
  case 1:
787
833
  response = _state.sent();
@@ -897,7 +943,7 @@ var post2 = function(param) {
897
943
  ]);
898
944
  return [
899
945
  4,
900
- openai.chat.completions.create(body)
946
+ openai.chat.completions.create(resultOptions)
901
947
  ];
902
948
  case 3:
903
949
  data = _state.sent();
@@ -1648,7 +1694,7 @@ var models7 = function(param) {
1648
1694
  };
1649
1695
  };
1650
1696
  // src/adapters/client/anthropicClientAdapter/completions/post.ts
1651
- import { uid, fork, omit, isEmpty as isEmpty2 } from "radash";
1697
+ import { uid, fork, omit as omit2, isEmpty as isEmpty2 } from "radash";
1652
1698
  // src/lib/messages/nonEmptyMessages.ts
1653
1699
  import { isEmpty } from "radash";
1654
1700
  var nonEmptyMessages = function(param) {
@@ -1765,7 +1811,7 @@ var post5 = function(param) {
1765
1811
  })
1766
1812
  })
1767
1813
  });
1768
- resultOptions = _object_spread_props(_object_spread({}, omit(body, [
1814
+ resultOptions = _object_spread_props(_object_spread({}, omit2(body, [
1769
1815
  "response_format"
1770
1816
  ])), {
1771
1817
  stream: body.stream ? isEmpty2(body.tools) : false,
@@ -3010,7 +3056,7 @@ var ollamaClientAdapter = function(param) {
3010
3056
  };
3011
3057
  // src/adapters/run/completionsRunAdapter/index.ts
3012
3058
  import _ from "lodash";
3013
- import { uid as uid2, omit as omit2, isEmpty as isEmpty3 } from "radash";
3059
+ import { uid as uid2, omit as omit3, isEmpty as isEmpty3 } from "radash";
3014
3060
  import dayjs from "dayjs";
3015
3061
  // src/adapters/run/completionsRunAdapter/messages/index.ts
3016
3062
  import { flat } from "radash";
@@ -3116,7 +3162,7 @@ var messages = /*#__PURE__*/ function() {
3116
3162
  // src/adapters/run/completionsRunAdapter/index.ts
3117
3163
  var updatedToolCall = function(param) {
3118
3164
  var toolCall = param.toolCall, delta = param.delta;
3119
- if (!toolCall) return omit2(delta, [
3165
+ if (!toolCall) return omit3(delta, [
3120
3166
  "index"
3121
3167
  ]);
3122
3168
  var result = _.cloneDeep(toolCall);
@@ -3150,7 +3196,7 @@ var toolCallsData = function(param) {
3150
3196
  return _object_spread({
3151
3197
  id: uid2(24),
3152
3198
  type: "function"
3153
- }, omit2(tc, [
3199
+ }, omit3(tc, [
3154
3200
  "index"
3155
3201
  ]));
3156
3202
  });