@copilotkit/runtime 1.8.11 → 1.8.12-next.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/CHANGELOG.md +16 -0
- package/dist/{chunk-LNG6GETF.mjs → chunk-4NX7XJUN.mjs} +2 -2
- package/dist/{chunk-VTW33IV3.mjs → chunk-4VQCEN2S.mjs} +2 -2
- package/dist/{chunk-C4YF3HSK.mjs → chunk-BFSBAHMC.mjs} +7 -7
- package/dist/chunk-BFSBAHMC.mjs.map +1 -0
- package/dist/{chunk-RTHOFK2V.mjs → chunk-DEXQNM4P.mjs} +2 -2
- package/dist/{chunk-EY6RUVB7.mjs → chunk-Y4H3U52G.mjs} +12 -4
- package/dist/chunk-Y4H3U52G.mjs.map +1 -0
- package/dist/{groq-adapter-4848f8e8.d.ts → groq-adapter-25a2bd35.d.ts} +16 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +12 -4
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +10 -10
- package/dist/lib/index.d.ts +1 -1
- package/dist/lib/index.js +11 -3
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +6 -6
- package/dist/lib/integrations/index.js +1 -1
- package/dist/lib/integrations/index.js.map +1 -1
- package/dist/lib/integrations/index.mjs +5 -5
- package/dist/lib/integrations/nest/index.js +1 -1
- package/dist/lib/integrations/nest/index.js.map +1 -1
- package/dist/lib/integrations/nest/index.mjs +3 -3
- package/dist/lib/integrations/node-express/index.js +1 -1
- package/dist/lib/integrations/node-express/index.js.map +1 -1
- package/dist/lib/integrations/node-express/index.mjs +3 -3
- package/dist/lib/integrations/node-http/index.js +1 -1
- package/dist/lib/integrations/node-http/index.js.map +1 -1
- package/dist/lib/integrations/node-http/index.mjs +2 -2
- package/dist/service-adapters/index.d.ts +1 -1
- package/dist/service-adapters/index.js +11 -3
- package/dist/service-adapters/index.js.map +1 -1
- package/dist/service-adapters/index.mjs +1 -1
- package/package.json +2 -2
- package/src/service-adapters/anthropic/anthropic-adapter.ts +1 -1
- package/src/service-adapters/openai/openai-adapter.ts +14 -1
- package/src/service-adapters/openai/openai-assistant-adapter.ts +11 -1
- package/dist/chunk-C4YF3HSK.mjs.map +0 -1
- package/dist/chunk-EY6RUVB7.mjs.map +0 -1
- /package/dist/{chunk-LNG6GETF.mjs.map → chunk-4NX7XJUN.mjs.map} +0 -0
- /package/dist/{chunk-VTW33IV3.mjs.map → chunk-4VQCEN2S.mjs.map} +0 -0
- /package/dist/{chunk-RTHOFK2V.mjs.map → chunk-DEXQNM4P.mjs.map} +0 -0
|
@@ -84,6 +84,14 @@ export interface OpenAIAdapterParams {
|
|
|
84
84
|
* @default false
|
|
85
85
|
*/
|
|
86
86
|
disableParallelToolCalls?: boolean;
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Whether to keep the role in system messages as "System".
|
|
90
|
+
* By default, it is converted to "developer", which is used by newer OpenAI models
|
|
91
|
+
*
|
|
92
|
+
* @default false
|
|
93
|
+
*/
|
|
94
|
+
keepSystemRole?: boolean;
|
|
87
95
|
}
|
|
88
96
|
|
|
89
97
|
export class OpenAIAdapter implements CopilotServiceAdapter {
|
|
@@ -91,6 +99,8 @@ export class OpenAIAdapter implements CopilotServiceAdapter {
|
|
|
91
99
|
|
|
92
100
|
private disableParallelToolCalls: boolean = false;
|
|
93
101
|
private _openai: OpenAI;
|
|
102
|
+
private keepSystemRole: boolean = false;
|
|
103
|
+
|
|
94
104
|
public get openai(): OpenAI {
|
|
95
105
|
return this._openai;
|
|
96
106
|
}
|
|
@@ -101,6 +111,7 @@ export class OpenAIAdapter implements CopilotServiceAdapter {
|
|
|
101
111
|
this.model = params.model;
|
|
102
112
|
}
|
|
103
113
|
this.disableParallelToolCalls = params?.disableParallelToolCalls || false;
|
|
114
|
+
this.keepSystemRole = params?.keepSystemRole ?? false;
|
|
104
115
|
}
|
|
105
116
|
|
|
106
117
|
async process(
|
|
@@ -117,7 +128,9 @@ export class OpenAIAdapter implements CopilotServiceAdapter {
|
|
|
117
128
|
const tools = actions.map(convertActionInputToOpenAITool);
|
|
118
129
|
const threadId = threadIdFromRequest ?? randomUUID();
|
|
119
130
|
|
|
120
|
-
let openaiMessages = messages.map((m) =>
|
|
131
|
+
let openaiMessages = messages.map((m) =>
|
|
132
|
+
convertMessageToOpenAIMessage(m, { keepSystemRole: this.keepSystemRole }),
|
|
133
|
+
);
|
|
121
134
|
openaiMessages = limitMessagesToTokenCount(openaiMessages, tools, model);
|
|
122
135
|
|
|
123
136
|
let toolChoice: any = forwardedParameters?.toolChoice;
|
|
@@ -73,6 +73,14 @@ export interface OpenAIAssistantAdapterParams {
|
|
|
73
73
|
* @default false
|
|
74
74
|
*/
|
|
75
75
|
disableParallelToolCalls?: boolean;
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Whether to keep the role in system messages as "System".
|
|
79
|
+
* By default, it is converted to "developer", which is used by newer OpenAI models
|
|
80
|
+
*
|
|
81
|
+
* @default false
|
|
82
|
+
*/
|
|
83
|
+
keepSystemRole?: boolean;
|
|
76
84
|
}
|
|
77
85
|
|
|
78
86
|
export class OpenAIAssistantAdapter implements CopilotServiceAdapter {
|
|
@@ -81,6 +89,7 @@ export class OpenAIAssistantAdapter implements CopilotServiceAdapter {
|
|
|
81
89
|
private assistantId: string;
|
|
82
90
|
private fileSearchEnabled: boolean;
|
|
83
91
|
private disableParallelToolCalls: boolean;
|
|
92
|
+
private keepSystemRole: boolean = false;
|
|
84
93
|
|
|
85
94
|
constructor(params: OpenAIAssistantAdapterParams) {
|
|
86
95
|
this.openai = params.openai || new OpenAI({});
|
|
@@ -88,6 +97,7 @@ export class OpenAIAssistantAdapter implements CopilotServiceAdapter {
|
|
|
88
97
|
this.fileSearchEnabled = params.fileSearchEnabled === false || true;
|
|
89
98
|
this.assistantId = params.assistantId;
|
|
90
99
|
this.disableParallelToolCalls = params?.disableParallelToolCalls || false;
|
|
100
|
+
this.keepSystemRole = params?.keepSystemRole ?? false;
|
|
91
101
|
}
|
|
92
102
|
|
|
93
103
|
async process(
|
|
@@ -198,7 +208,7 @@ export class OpenAIAssistantAdapter implements CopilotServiceAdapter {
|
|
|
198
208
|
|
|
199
209
|
// get the latest user message
|
|
200
210
|
const userMessage = messages
|
|
201
|
-
.map((m) => convertMessageToOpenAIMessage(m))
|
|
211
|
+
.map((m) => convertMessageToOpenAIMessage(m, { keepSystemRole: this.keepSystemRole }))
|
|
202
212
|
.map(convertSystemMessageToAssistantAPI)
|
|
203
213
|
.at(-1);
|
|
204
214
|
|