llm-proxy 1.7.2 → 1.8.1
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 +26 -23
- package/dist/index.js.map +1 -1
- package/dist/middleware/InputFormatAdapter.js +21 -18
- package/dist/middleware/InputFormatAdapter.js.map +1 -1
- package/dist/services/OpenAICompatibleService.js +160 -20
- package/dist/services/OpenAICompatibleService.js.map +1 -1
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -140,6 +140,15 @@ async function generateLLMStreamResponse(params) {
|
|
|
140
140
|
});
|
|
141
141
|
// Step 4: Create and return the async generator
|
|
142
142
|
async function* streamGenerator() {
|
|
143
|
+
const isOpenAIFormat = provider === types_1.Providers.OPENAI ||
|
|
144
|
+
provider === types_1.Providers.OPENAI_COMPATIBLE_PROVIDER;
|
|
145
|
+
if (isOpenAIFormat) {
|
|
146
|
+
for await (const chunk of stream) {
|
|
147
|
+
yield chunk;
|
|
148
|
+
}
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
// Buffering logic for Bedrock providers
|
|
143
152
|
const buffer = []; // Buffer to hold the first three chunks
|
|
144
153
|
let isFunctionCall = false;
|
|
145
154
|
const accumulatedChunks = []; // Accumulate chunks for function calls
|
|
@@ -161,14 +170,12 @@ async function generateLLMStreamResponse(params) {
|
|
|
161
170
|
}
|
|
162
171
|
else {
|
|
163
172
|
// Yield the first chunk
|
|
164
|
-
yield
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
isFunctionCall: false,
|
|
171
|
-
}));
|
|
173
|
+
yield (await OutputFormatAdapter_1.default.adaptResponse({
|
|
174
|
+
response: first,
|
|
175
|
+
provider,
|
|
176
|
+
isStream: true,
|
|
177
|
+
isFunctionCall: false,
|
|
178
|
+
}));
|
|
172
179
|
buffer.shift(); // Remove the first chunk from the buffer
|
|
173
180
|
}
|
|
174
181
|
}
|
|
@@ -184,27 +191,23 @@ async function generateLLMStreamResponse(params) {
|
|
|
184
191
|
acc.generation += cur.generation;
|
|
185
192
|
return acc;
|
|
186
193
|
});
|
|
187
|
-
const response =
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
isFunctionCall: true,
|
|
194
|
-
}));
|
|
194
|
+
const response = (await OutputFormatAdapter_1.default.adaptResponse({
|
|
195
|
+
response: fullResponse,
|
|
196
|
+
provider,
|
|
197
|
+
isStream: false,
|
|
198
|
+
isFunctionCall: true,
|
|
199
|
+
}));
|
|
195
200
|
yield response;
|
|
196
201
|
}
|
|
197
202
|
else {
|
|
198
203
|
// Handle any remaining chunks in the buffer for non-function calls
|
|
199
204
|
while (buffer.length > 0) {
|
|
200
205
|
const chunk = buffer.shift();
|
|
201
|
-
const response =
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
isStream: true,
|
|
207
|
-
}));
|
|
206
|
+
const response = (await OutputFormatAdapter_1.default.adaptResponse({
|
|
207
|
+
response: chunk,
|
|
208
|
+
provider,
|
|
209
|
+
isStream: true,
|
|
210
|
+
}));
|
|
208
211
|
yield response;
|
|
209
212
|
}
|
|
210
213
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AA8BA,kDA0FC;AAKD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
-
|
|
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 :
|
|
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":";;;;;AAAA,oCAMkB;AAClB,iHAAyF;AAEzF,MAAqB,kBAAkB;IACrC,MAAM,CAAC,aAAa,CAClB,QAAa,EACb,QAAmB;;QAKnB,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,iBAAS,CAAC,MAAM,CAAC;YACtB,KAAK,iBAAS,CAAC,0BAA0B;gBACvC,OAAO;oBACL,6CAA6C;oBAC7C,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"InputFormatAdapter.js","sourceRoot":"","sources":["../../src/middleware/InputFormatAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,148 @@ 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");
|
|
8
|
+
function normalizeTools(tools) {
|
|
9
|
+
if (!Array.isArray(tools))
|
|
10
|
+
return undefined;
|
|
11
|
+
return tools.map((tool) => {
|
|
12
|
+
// Already correct
|
|
13
|
+
if ((tool === null || tool === void 0 ? void 0 : tool.type) === "function" && tool.function) {
|
|
14
|
+
return tool;
|
|
15
|
+
}
|
|
16
|
+
// Needs reformatting
|
|
17
|
+
if ((tool === null || tool === void 0 ? void 0 : tool.type) === "function" && tool.name && tool.parameters) {
|
|
18
|
+
return {
|
|
19
|
+
type: "function",
|
|
20
|
+
function: {
|
|
21
|
+
name: tool.name,
|
|
22
|
+
description: tool.description,
|
|
23
|
+
parameters: tool.parameters,
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
// Unknown / unsupported tool shape
|
|
28
|
+
throw new Error(`Invalid tool definition encountered: ${JSON.stringify(tool, null, 2)}`);
|
|
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
|
+
}
|
|
7
149
|
class OpenAICompatibleService {
|
|
8
150
|
constructor(apiKey, baseUrl) {
|
|
9
151
|
this.openai = new openai_1.default({
|
|
@@ -16,9 +158,10 @@ class OpenAICompatibleService {
|
|
|
16
158
|
return Promise.reject(new Error("Model ID is required for OpenAIService."));
|
|
17
159
|
}
|
|
18
160
|
try {
|
|
161
|
+
const reformattedMessages = reformatMessagesWithThoughtSignature(messages);
|
|
19
162
|
const response = await this.openai.chat.completions.create({
|
|
20
163
|
model,
|
|
21
|
-
messages,
|
|
164
|
+
messages: reformattedMessages,
|
|
22
165
|
max_tokens,
|
|
23
166
|
temperature,
|
|
24
167
|
functions: tools,
|
|
@@ -31,26 +174,23 @@ class OpenAICompatibleService {
|
|
|
31
174
|
}
|
|
32
175
|
async *generateStreamCompletion({ messages, model, max_tokens, temperature, tools, }) {
|
|
33
176
|
if (!model) {
|
|
34
|
-
|
|
177
|
+
throw new Error("Model ID is required for OpenAIService.");
|
|
35
178
|
}
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
catch (error) {
|
|
53
|
-
return Promise.reject(error);
|
|
179
|
+
const reformattedMessages = reformatMessagesWithThoughtSignature(messages);
|
|
180
|
+
const normalizedTools = normalizeTools(tools);
|
|
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;
|
|
54
194
|
}
|
|
55
195
|
}
|
|
56
196
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAICompatibleService.js","sourceRoot":"","sources":["../../src/services/OpenAICompatibleService.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;
|
|
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.
|
|
3
|
+
"version": "1.8.1",
|
|
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",
|
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
"axios": "^1.7.7",
|
|
36
36
|
"dotenv": "^16.4.5",
|
|
37
37
|
"llm-proxy": "^1.4.15",
|
|
38
|
-
"openai": "^4.69.0"
|
|
38
|
+
"openai": "^4.69.0",
|
|
39
|
+
"uuid": "^13.0.0"
|
|
39
40
|
}
|
|
40
41
|
}
|