deepcode-ai 1.1.38 → 1.1.39
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 +30 -34
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -6096,7 +6096,8 @@ var OpenAICompatibleProvider = class {
|
|
|
6096
6096
|
await this.assertOk(response);
|
|
6097
6097
|
const pendingTools = /* @__PURE__ */ new Map();
|
|
6098
6098
|
let lastUsage = null;
|
|
6099
|
-
|
|
6099
|
+
const bufferAllContent = Boolean(this.contentToolCallParser);
|
|
6100
|
+
let bufferedContent = "";
|
|
6100
6101
|
for await (const event of parseSse(response)) {
|
|
6101
6102
|
const streamError = getOpenAICompatibleStreamError(event);
|
|
6102
6103
|
if (streamError) {
|
|
@@ -6108,16 +6109,8 @@ var OpenAICompatibleProvider = class {
|
|
|
6108
6109
|
const choice = event.choices?.[0];
|
|
6109
6110
|
const delta = choice?.delta;
|
|
6110
6111
|
if (delta?.content) {
|
|
6111
|
-
if (
|
|
6112
|
-
|
|
6113
|
-
contentToolBuffer += delta.content;
|
|
6114
|
-
} else if (delta.content.includes(this.contentToolCallMarker)) {
|
|
6115
|
-
const markerPos = delta.content.indexOf(this.contentToolCallMarker);
|
|
6116
|
-
if (markerPos > 0) yield { type: "delta", content: delta.content.slice(0, markerPos) };
|
|
6117
|
-
contentToolBuffer = delta.content.slice(markerPos);
|
|
6118
|
-
} else {
|
|
6119
|
-
yield { type: "delta", content: delta.content };
|
|
6120
|
-
}
|
|
6112
|
+
if (bufferAllContent) {
|
|
6113
|
+
bufferedContent += delta.content;
|
|
6121
6114
|
} else {
|
|
6122
6115
|
yield { type: "delta", content: delta.content };
|
|
6123
6116
|
}
|
|
@@ -6159,8 +6152,10 @@ var OpenAICompatibleProvider = class {
|
|
|
6159
6152
|
};
|
|
6160
6153
|
}
|
|
6161
6154
|
}
|
|
6162
|
-
if (
|
|
6163
|
-
const
|
|
6155
|
+
if (bufferAllContent && this.contentToolCallParser) {
|
|
6156
|
+
const marker = this.contentToolCallMarker;
|
|
6157
|
+
const likelyHasDsml = !marker || bufferedContent.includes(marker);
|
|
6158
|
+
const parsed = likelyHasDsml ? this.contentToolCallParser(bufferedContent) : null;
|
|
6164
6159
|
if (parsed) {
|
|
6165
6160
|
if (parsed.remainder) yield { type: "delta", content: parsed.remainder };
|
|
6166
6161
|
for (let i = 0; i < parsed.toolCalls.length; i++) {
|
|
@@ -6170,8 +6165,8 @@ var OpenAICompatibleProvider = class {
|
|
|
6170
6165
|
call: { id: `dsml_${i}`, name: call.name, arguments: call.arguments }
|
|
6171
6166
|
};
|
|
6172
6167
|
}
|
|
6173
|
-
} else {
|
|
6174
|
-
yield { type: "delta", content:
|
|
6168
|
+
} else if (bufferedContent) {
|
|
6169
|
+
yield { type: "delta", content: bufferedContent };
|
|
6175
6170
|
}
|
|
6176
6171
|
}
|
|
6177
6172
|
for (const [index, call] of pendingTools) {
|
|
@@ -6340,30 +6335,31 @@ function toOpenAICompatibleToolChoice(toolChoice) {
|
|
|
6340
6335
|
}
|
|
6341
6336
|
return toolChoice;
|
|
6342
6337
|
}
|
|
6343
|
-
var
|
|
6344
|
-
var
|
|
6345
|
-
var
|
|
6338
|
+
var PIPE_PAT = "[\uFF5C|]{1,2}";
|
|
6339
|
+
var DSML_HINT = "DSML";
|
|
6340
|
+
var TOOL_CALLS_OPEN_RE = new RegExp(`<${PIPE_PAT}DSML${PIPE_PAT}tool_calls>`, "i");
|
|
6341
|
+
var TOOL_CALLS_CLOSE_RE = new RegExp(`<\\/${PIPE_PAT}DSML${PIPE_PAT}tool_calls>`, "i");
|
|
6342
|
+
var INVOKE_RE_SRC = `<${PIPE_PAT}DSML${PIPE_PAT}invoke name="([^"]+)">(.*?)<\\/${PIPE_PAT}DSML${PIPE_PAT}invoke>`;
|
|
6343
|
+
var PARAM_RE_SRC = `<${PIPE_PAT}DSML${PIPE_PAT}parameter name="([^"]+)"([^>]*)>(.*?)<\\/${PIPE_PAT}DSML${PIPE_PAT}parameter>`;
|
|
6346
6344
|
function parseDSMLToolCalls(content) {
|
|
6347
|
-
const
|
|
6348
|
-
if (
|
|
6349
|
-
const
|
|
6350
|
-
|
|
6351
|
-
const
|
|
6352
|
-
|
|
6345
|
+
const openMatch = TOOL_CALLS_OPEN_RE.exec(content);
|
|
6346
|
+
if (!openMatch) return null;
|
|
6347
|
+
const startIdx = openMatch.index;
|
|
6348
|
+
const blockStart = startIdx + openMatch[0].length;
|
|
6349
|
+
const closeMatch = TOOL_CALLS_CLOSE_RE.exec(content.slice(blockStart));
|
|
6350
|
+
if (!closeMatch) return null;
|
|
6351
|
+
const blockEnd = blockStart + closeMatch.index;
|
|
6352
|
+
const closeEnd = blockEnd + closeMatch[0].length;
|
|
6353
|
+
const remainder = (content.slice(0, startIdx) + content.slice(closeEnd)).trim();
|
|
6354
|
+
const block = content.slice(blockStart, blockEnd);
|
|
6353
6355
|
const toolCalls = [];
|
|
6354
|
-
const invokeRe = new RegExp(
|
|
6355
|
-
`<${FF}DSML${FF}invoke name="([^"]+)">(.*?)<\\/${FF}DSML${FF}invoke>`,
|
|
6356
|
-
"gis"
|
|
6357
|
-
);
|
|
6356
|
+
const invokeRe = new RegExp(INVOKE_RE_SRC, "gis");
|
|
6358
6357
|
let invokeMatch;
|
|
6359
6358
|
while ((invokeMatch = invokeRe.exec(block)) !== null) {
|
|
6360
6359
|
const toolName = invokeMatch[1];
|
|
6361
6360
|
const paramBlock = invokeMatch[2];
|
|
6362
6361
|
const args = {};
|
|
6363
|
-
const paramRe = new RegExp(
|
|
6364
|
-
`<${FF}DSML${FF}parameter name="([^"]+)"([^>]*)>(.*?)<\\/${FF}DSML${FF}parameter>`,
|
|
6365
|
-
"gis"
|
|
6366
|
-
);
|
|
6362
|
+
const paramRe = new RegExp(PARAM_RE_SRC, "gis");
|
|
6367
6363
|
let paramMatch;
|
|
6368
6364
|
while ((paramMatch = paramRe.exec(paramBlock)) !== null) {
|
|
6369
6365
|
const paramName = paramMatch[1];
|
|
@@ -6452,7 +6448,7 @@ var ProviderManager = class {
|
|
|
6452
6448
|
thinking: buildDeepSeekThinkingOverride(context.model)
|
|
6453
6449
|
}),
|
|
6454
6450
|
contentToolCallParser: parseDSMLToolCalls,
|
|
6455
|
-
contentToolCallMarker:
|
|
6451
|
+
contentToolCallMarker: DSML_HINT
|
|
6456
6452
|
})
|
|
6457
6453
|
);
|
|
6458
6454
|
this.register(
|
|
@@ -28428,7 +28424,7 @@ function parseVersion2(version) {
|
|
|
28428
28424
|
if (!match) return null;
|
|
28429
28425
|
return [Number(match[1]), Number(match[2]), Number(match[3])];
|
|
28430
28426
|
}
|
|
28431
|
-
var VERSION = "1.1.
|
|
28427
|
+
var VERSION = "1.1.39".length > 0 ? "1.1.39" : "0.0.0-dev";
|
|
28432
28428
|
var updateCommand = {
|
|
28433
28429
|
name: "update",
|
|
28434
28430
|
description: "Check published DeepCode versions",
|