llm-proxy 1.8.0 → 1.8.2

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.
@@ -13,20 +13,23 @@ class InputFormatAdapter {
13
13
  case types_1.Providers.OPENAI_COMPATIBLE_PROVIDER:
14
14
  return {
15
15
  // @ts-ignore: Ignore the any type in the msg
16
- adaptedMessages: messages.map(msg => {
16
+ adaptedMessages: messages.map((msg) => {
17
17
  var _a, _b;
18
18
  if (msg.role === "function") {
19
19
  return {
20
20
  role: msg.role,
21
21
  content: (_a = msg.content) !== null && _a !== void 0 ? _a : "",
22
- name: msg.name
22
+ ...(msg.thought_signature && {
23
+ thought_signature: msg.thought_signature,
24
+ }),
25
+ name: msg.name,
23
26
  };
24
27
  }
25
28
  return {
26
29
  role: msg.role,
27
- content: (_b = msg.content) !== null && _b !== void 0 ? _b : "function call"
30
+ content: (_b = msg.content) !== null && _b !== void 0 ? _b : msg.function_call,
28
31
  };
29
- })
32
+ }),
30
33
  };
31
34
  case types_1.Providers.ANTHROPIC_BEDROCK: {
32
35
  if (!messages.length) {
@@ -40,7 +43,7 @@ class InputFormatAdapter {
40
43
  const systemPrompt = (_a = firstMessage.content) !== null && _a !== void 0 ? _a : "";
41
44
  const adaptedMessages = [];
42
45
  // @ts-ignore: Ignore the any type in the msg
43
- restMessages.forEach(msg => {
46
+ restMessages.forEach((msg) => {
44
47
  var _a, _b;
45
48
  if (msg.role !== "user" && msg.role !== "assistant") {
46
49
  // Add the "empty" message before the current one
@@ -49,9 +52,9 @@ class InputFormatAdapter {
49
52
  content: [
50
53
  {
51
54
  type: types_1.BedrockAnthropicContentType.TEXT,
52
- text: ":"
53
- }
54
- ]
55
+ text: ":",
56
+ },
57
+ ],
55
58
  });
56
59
  // Change the role to "assistant" for the current message
57
60
  adaptedMessages.push({
@@ -59,9 +62,9 @@ class InputFormatAdapter {
59
62
  content: [
60
63
  {
61
64
  type: types_1.BedrockAnthropicContentType.TEXT,
62
- text: (_a = msg.content) !== null && _a !== void 0 ? _a : ""
63
- }
64
- ]
65
+ text: (_a = msg.content) !== null && _a !== void 0 ? _a : "",
66
+ },
67
+ ],
65
68
  });
66
69
  }
67
70
  else {
@@ -71,9 +74,9 @@ class InputFormatAdapter {
71
74
  content: [
72
75
  {
73
76
  type: types_1.BedrockAnthropicContentType.TEXT,
74
- text: (_b = msg.content) !== null && _b !== void 0 ? _b : msg.function_call.arguments
75
- }
76
- ]
77
+ text: (_b = msg.content) !== null && _b !== void 0 ? _b : msg.function_call.arguments,
78
+ },
79
+ ],
77
80
  });
78
81
  }
79
82
  });
@@ -86,9 +89,9 @@ class InputFormatAdapter {
86
89
  content: [
87
90
  {
88
91
  type: types_1.BedrockAnthropicContentType.TEXT,
89
- text: ":"
90
- }
91
- ]
92
+ text: ":",
93
+ },
94
+ ],
92
95
  });
93
96
  i += 1; // Skip the inserted message
94
97
  }
@@ -98,7 +101,7 @@ class InputFormatAdapter {
98
101
  case types_1.Providers.LLAMA_3_1_BEDROCK: {
99
102
  const adaptedMessages = (0, openAIToLlamaMessage_1.default)(messages);
100
103
  return {
101
- adaptedMessages
104
+ adaptedMessages,
102
105
  };
103
106
  }
104
107
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"InputFormatAdapter.js","sourceRoot":"","sources":["../../src/middleware/InputFormatAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InputFormatAdapter.js","sourceRoot":"","sources":["../../src/middleware/InputFormatAdapter.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const openai_1 = __importDefault(require("openai"));
7
+ const uuid_1 = require("uuid");
7
8
  function normalizeTools(tools) {
8
9
  if (!Array.isArray(tools))
9
10
  return undefined;
@@ -27,6 +28,124 @@ function normalizeTools(tools) {
27
28
  throw new Error(`Invalid tool definition encountered: ${JSON.stringify(tool, null, 2)}`);
28
29
  });
29
30
  }
31
+ function reformatMessagesWithThoughtSignature(messages) {
32
+ var _a, _b, _c;
33
+ const reformatted = [];
34
+ let i = 0;
35
+ while (i < messages.length) {
36
+ const message = messages[i];
37
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
38
+ const msg = message;
39
+ // Check if this is an assistant message with content as an object containing name and arguments
40
+ const isAssistantWithToolContent = msg.role === "assistant" &&
41
+ typeof msg.content === "object" &&
42
+ msg.content !== null &&
43
+ !Array.isArray(msg.content) &&
44
+ msg.content.name &&
45
+ msg.content.arguments;
46
+ if (isAssistantWithToolContent) {
47
+ // Look ahead to find the corresponding function message
48
+ const nextMessage = i + 1 < messages.length ? messages[i + 1] : null;
49
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
50
+ const nextMsg = nextMessage;
51
+ // Generate a unique ID for the tool call
52
+ const toolCallId = `function-call-${(0, uuid_1.v4)()}`;
53
+ // Extract thought_signature from the next function message if it exists
54
+ const thoughtSignature = (nextMsg === null || nextMsg === void 0 ? void 0 : nextMsg.role) === "function" && (nextMsg === null || nextMsg === void 0 ? void 0 : nextMsg.thought_signature)
55
+ ? nextMsg.thought_signature
56
+ : undefined;
57
+ // Convert assistant message to have tool_calls
58
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
59
+ const assistantMessage = {
60
+ role: "assistant",
61
+ tool_calls: [
62
+ {
63
+ id: toolCallId,
64
+ type: "function",
65
+ function: {
66
+ name: msg.content.name,
67
+ arguments: msg.content.arguments,
68
+ },
69
+ ...(thoughtSignature && {
70
+ extra_content: {
71
+ google: {
72
+ thought_signature: thoughtSignature,
73
+ },
74
+ },
75
+ }),
76
+ },
77
+ ],
78
+ };
79
+ reformatted.push(assistantMessage);
80
+ // If there's a corresponding function message, convert it to a tool message
81
+ if ((nextMsg === null || nextMsg === void 0 ? void 0 : nextMsg.role) === "function" && (nextMsg === null || nextMsg === void 0 ? void 0 : nextMsg.name) === msg.content.name) {
82
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
83
+ const toolMessage = {
84
+ role: "tool",
85
+ name: nextMsg.name,
86
+ tool_call_id: toolCallId,
87
+ content: nextMsg.content,
88
+ };
89
+ reformatted.push(toolMessage);
90
+ i += 2; // Skip both the assistant and function messages
91
+ }
92
+ else {
93
+ i += 1;
94
+ }
95
+ }
96
+ else {
97
+ // Check if this is a function message that wasn't already processed
98
+ const prevMsg = reformatted[reformatted.length - 1];
99
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
100
+ const prevToolCalls = (_c = (_b = (_a = prevMsg === null || prevMsg === void 0 ? void 0 : prevMsg.tool_calls) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.function) === null || _c === void 0 ? void 0 : _c.name;
101
+ const isUnprocessedFunction = msg.role === "function" &&
102
+ !((prevMsg === null || prevMsg === void 0 ? void 0 : prevMsg.role) === "assistant" && prevToolCalls === msg.name);
103
+ if (isUnprocessedFunction) {
104
+ // Check if message has thought_signature and function_call (old format - legacy support)
105
+ if (msg.thought_signature && msg.function_call) {
106
+ const { thought_signature, function_call, ...rest } = msg;
107
+ // Convert to new tool_calls format
108
+ reformatted.push({
109
+ ...rest,
110
+ role: "assistant",
111
+ tool_calls: [
112
+ {
113
+ id: `function-call-${(0, uuid_1.v4)()}`,
114
+ type: "function",
115
+ function: {
116
+ name: function_call.name,
117
+ arguments: function_call.arguments,
118
+ },
119
+ extra_content: {
120
+ google: {
121
+ thought_signature,
122
+ },
123
+ },
124
+ },
125
+ ],
126
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
127
+ });
128
+ i += 1;
129
+ }
130
+ else {
131
+ // Return message as-is if it doesn't need reformatting
132
+ if (message) {
133
+ reformatted.push(message);
134
+ }
135
+ i += 1;
136
+ }
137
+ }
138
+ else {
139
+ // Return message as-is if it doesn't need reformatting
140
+ if (message) {
141
+ reformatted.push(message);
142
+ }
143
+ i += 1;
144
+ }
145
+ }
146
+ }
147
+ return reformatted;
148
+ }
30
149
  class OpenAICompatibleService {
31
150
  constructor(apiKey, baseUrl) {
32
151
  this.openai = new openai_1.default({
@@ -39,9 +158,10 @@ class OpenAICompatibleService {
39
158
  return Promise.reject(new Error("Model ID is required for OpenAIService."));
40
159
  }
41
160
  try {
161
+ const reformattedMessages = reformatMessagesWithThoughtSignature(messages);
42
162
  const response = await this.openai.chat.completions.create({
43
163
  model,
44
- messages,
164
+ messages: reformattedMessages,
45
165
  max_tokens,
46
166
  temperature,
47
167
  functions: tools,
@@ -56,25 +176,21 @@ class OpenAICompatibleService {
56
176
  if (!model) {
57
177
  throw new Error("Model ID is required for OpenAIService.");
58
178
  }
179
+ const reformattedMessages = reformatMessagesWithThoughtSignature(messages);
59
180
  const normalizedTools = normalizeTools(tools);
60
- try {
61
- const stream = await this.openai.chat.completions.create({
62
- model,
63
- messages,
64
- max_tokens,
65
- temperature,
66
- ...(normalizedTools && { tools: normalizedTools }),
67
- stream: true,
68
- stream_options: {
69
- include_usage: true,
70
- },
71
- });
72
- for await (const chunk of stream) {
73
- yield chunk;
74
- }
75
- }
76
- catch (error) {
77
- throw error;
181
+ const stream = await this.openai.chat.completions.create({
182
+ model,
183
+ messages: reformattedMessages,
184
+ max_tokens,
185
+ temperature,
186
+ ...(normalizedTools && { tools: normalizedTools }),
187
+ stream: true,
188
+ stream_options: {
189
+ include_usage: true,
190
+ },
191
+ });
192
+ for await (const chunk of stream) {
193
+ yield chunk;
78
194
  }
79
195
  }
80
196
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OpenAICompatibleService.js","sourceRoot":"","sources":["../../src/services/OpenAICompatibleService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenAICompatibleService.js","sourceRoot":"","sources":["../../src/services/OpenAICompatibleService.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "llm-proxy",
3
- "version": "1.8.0",
3
+ "version": "1.8.2",
4
4
  "description": "An LLM Proxy that allows the user to interact with different language models from different providers using unified request and response formats.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -23,6 +23,7 @@
23
23
  "@types/dotenv": "^8.2.3",
24
24
  "@types/jest": "^29.5.14",
25
25
  "@types/node": "^22.8.6",
26
+ "@types/uuid": "^9.0.7",
26
27
  "jest": "^29.7.0",
27
28
  "semantic-release": "^24.2.0",
28
29
  "ts-jest": "^29.2.5",
@@ -35,6 +36,7 @@
35
36
  "axios": "^1.7.7",
36
37
  "dotenv": "^16.4.5",
37
38
  "llm-proxy": "^1.4.15",
38
- "openai": "^4.69.0"
39
+ "openai": "^4.69.0",
40
+ "uuid": "^8.3.2"
39
41
  }
40
42
  }