@jeffreycao/copilot-api 1.13.4 → 1.13.5
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/main.js +1 -1
- package/dist/{server-BzgBFAIx.js → server-Bsnz0tyL.js} +31 -9
- package/dist/server-Bsnz0tyL.js.map +1 -0
- package/dist/{start-DDL0wwno.js → start-B3gNGDR_.js} +2 -2
- package/dist/{start-DDL0wwno.js.map → start-B3gNGDR_.js.map} +1 -1
- package/package.json +1 -1
- package/pages/index.html +547 -355
- package/dist/server-BzgBFAIx.js.map +0 -1
package/dist/main.js
CHANGED
|
@@ -25,7 +25,7 @@ bindElectronFetch();
|
|
|
25
25
|
const { auth } = await import("./auth-CtydxYcd.js");
|
|
26
26
|
const { debug } = await import("./debug-CjJqlHl_.js");
|
|
27
27
|
const { mcp } = await import("./mcp-BseuqgHR.js");
|
|
28
|
-
const { start } = await import("./start-
|
|
28
|
+
const { start } = await import("./start-B3gNGDR_.js");
|
|
29
29
|
await runMain(defineCommand({
|
|
30
30
|
meta: {
|
|
31
31
|
name: "copilot-api",
|
|
@@ -1292,6 +1292,7 @@ function mergeAnthropicUsage(current, next) {
|
|
|
1292
1292
|
cache_read_input_tokens: next.cache_read_input_tokens ?? current.cache_read_input_tokens,
|
|
1293
1293
|
input_tokens: next.input_tokens ?? current.input_tokens,
|
|
1294
1294
|
output_tokens: next.output_tokens ?? current.output_tokens,
|
|
1295
|
+
total_nano_aiu: next.total_nano_aiu ?? current.total_nano_aiu,
|
|
1295
1296
|
total_tokens: next.total_tokens ?? current.total_tokens
|
|
1296
1297
|
};
|
|
1297
1298
|
}
|
|
@@ -2746,11 +2747,22 @@ const prepareMessagesApiPayload = (payload, selectedModel) => {
|
|
|
2746
2747
|
if (reasoningEffort && !reasoningEffort.includes(effort)) effort = reasoningEffort.at(-1);
|
|
2747
2748
|
payload.output_config = { effort };
|
|
2748
2749
|
}
|
|
2749
|
-
|
|
2750
|
-
|
|
2751
|
-
|
|
2752
|
-
|
|
2753
|
-
if (
|
|
2750
|
+
const modelSupports = selectedModel?.capabilities.supports;
|
|
2751
|
+
if (!modelSupports?.adaptive_thinking) {
|
|
2752
|
+
const reasoningEfforts = modelSupports?.reasoning_effort;
|
|
2753
|
+
if (!reasoningEfforts || reasoningEfforts.length === 0) {
|
|
2754
|
+
if (payload.output_config?.effort) {
|
|
2755
|
+
delete payload.output_config.effort;
|
|
2756
|
+
if (Object.keys(payload.output_config).length === 0) delete payload.output_config;
|
|
2757
|
+
}
|
|
2758
|
+
}
|
|
2759
|
+
if (disableThink) delete payload.thinking;
|
|
2760
|
+
else {
|
|
2761
|
+
const budgetTokens = modelSupports?.max_thinking_budget ?? 4096;
|
|
2762
|
+
if (payload.thinking?.type === "adaptive") payload.thinking = {
|
|
2763
|
+
type: "enabled",
|
|
2764
|
+
budget_tokens: budgetTokens - 1
|
|
2765
|
+
};
|
|
2754
2766
|
}
|
|
2755
2767
|
}
|
|
2756
2768
|
};
|
|
@@ -5813,8 +5825,14 @@ const handleWithMessagesApi = async (c, anthropicPayload, options) => {
|
|
|
5813
5825
|
if (!data) continue;
|
|
5814
5826
|
debugLazy(logger, () => ["Messages raw stream event:", data]);
|
|
5815
5827
|
const parsedEvent = parseAnthropicStreamEvent(data);
|
|
5816
|
-
if (parsedEvent?.type === "message_start") usage = mergeAnthropicUsage(usage,
|
|
5817
|
-
|
|
5828
|
+
if (parsedEvent?.type === "message_start") usage = mergeAnthropicUsage(usage, {
|
|
5829
|
+
...normalizeAnthropicUsage(parsedEvent.message.usage),
|
|
5830
|
+
...normalizeCopilotUsage(parsedEvent.message.copilot_usage)
|
|
5831
|
+
});
|
|
5832
|
+
else if (parsedEvent?.type === "message_delta") usage = mergeAnthropicUsage(usage, {
|
|
5833
|
+
...normalizeAnthropicUsage(parsedEvent.usage),
|
|
5834
|
+
...normalizeCopilotUsage(parsedEvent.copilot_usage)
|
|
5835
|
+
});
|
|
5818
5836
|
await stream.writeSSE({
|
|
5819
5837
|
event: eventName,
|
|
5820
5838
|
data
|
|
@@ -5827,7 +5845,10 @@ const handleWithMessagesApi = async (c, anthropicPayload, options) => {
|
|
|
5827
5845
|
value: response,
|
|
5828
5846
|
tailLength: 400
|
|
5829
5847
|
});
|
|
5830
|
-
recordUsage(
|
|
5848
|
+
recordUsage({
|
|
5849
|
+
...normalizeAnthropicUsage(response.usage),
|
|
5850
|
+
...normalizeCopilotUsage(response.copilot_usage)
|
|
5851
|
+
});
|
|
5831
5852
|
return c.json(response);
|
|
5832
5853
|
};
|
|
5833
5854
|
const prepareCopilotChatCompletionsPayload = (payload) => {
|
|
@@ -5859,6 +5880,7 @@ const createCopilotUsageRecorder = (options) => createCopilotTokenUsageRecorder(
|
|
|
5859
5880
|
sessionId: getMetadataSessionId(options.payload)
|
|
5860
5881
|
});
|
|
5861
5882
|
const getMetadataSessionId = (payload) => parseUserIdMetadata(payload.metadata?.user_id).sessionId;
|
|
5883
|
+
const normalizeCopilotUsage = (copilotUsage) => ({ total_nano_aiu: normalizeOptionalToken(copilotUsage?.total_nano_aiu) });
|
|
5862
5884
|
const parseAnthropicStreamEvent = (data) => {
|
|
5863
5885
|
try {
|
|
5864
5886
|
return JSON.parse(data);
|
|
@@ -6593,4 +6615,4 @@ server.route("/:provider/v1/models", providerModelRoutes);
|
|
|
6593
6615
|
//#endregion
|
|
6594
6616
|
export { server };
|
|
6595
6617
|
|
|
6596
|
-
//# sourceMappingURL=server-
|
|
6618
|
+
//# sourceMappingURL=server-Bsnz0tyL.js.map
|