@copilotkit/runtime 1.9.2-next.7 → 1.9.2-next.9

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.
Files changed (78) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/{chunk-IIXJVVTV.mjs → chunk-4JBKY7XT.mjs} +109 -75
  3. package/dist/chunk-4JBKY7XT.mjs.map +1 -0
  4. package/dist/{chunk-LSB3QZHS.mjs → chunk-5YGKE5SN.mjs} +2 -2
  5. package/dist/{chunk-2PQGAIVB.mjs → chunk-ALZ5H3VD.mjs} +2 -2
  6. package/dist/chunk-AMUJQ6IR.mjs +50 -0
  7. package/dist/chunk-AMUJQ6IR.mjs.map +1 -0
  8. package/dist/{chunk-2UAJCT5X.mjs → chunk-SMDVD4VG.mjs} +2 -2
  9. package/dist/{chunk-GW6ERFKI.mjs → chunk-UUXRYAB4.mjs} +2 -2
  10. package/dist/{chunk-5BIEM2UU.mjs → chunk-XWBDEXDA.mjs} +4 -3
  11. package/dist/{chunk-5BIEM2UU.mjs.map → chunk-XWBDEXDA.mjs.map} +1 -1
  12. package/dist/{chunk-HB4D2KJC.mjs → chunk-Z5GYTKMD.mjs} +2345 -2066
  13. package/dist/chunk-Z5GYTKMD.mjs.map +1 -0
  14. package/dist/{groq-adapter-25a2bd35.d.ts → groq-adapter-172a2ca4.d.ts} +1 -1
  15. package/dist/index.d.ts +4 -3
  16. package/dist/index.js +3713 -3356
  17. package/dist/index.js.map +1 -1
  18. package/dist/index.mjs +12 -8
  19. package/dist/index.mjs.map +1 -1
  20. package/dist/lib/index.d.ts +3 -3
  21. package/dist/lib/index.js +2981 -2624
  22. package/dist/lib/index.js.map +1 -1
  23. package/dist/lib/index.mjs +9 -8
  24. package/dist/lib/integrations/index.d.ts +3 -3
  25. package/dist/lib/integrations/index.js +141 -86
  26. package/dist/lib/integrations/index.js.map +1 -1
  27. package/dist/lib/integrations/index.mjs +7 -6
  28. package/dist/lib/integrations/nest/index.d.ts +2 -2
  29. package/dist/lib/integrations/nest/index.js +141 -86
  30. package/dist/lib/integrations/nest/index.js.map +1 -1
  31. package/dist/lib/integrations/nest/index.mjs +5 -4
  32. package/dist/lib/integrations/node-express/index.d.ts +2 -2
  33. package/dist/lib/integrations/node-express/index.js +141 -86
  34. package/dist/lib/integrations/node-express/index.js.map +1 -1
  35. package/dist/lib/integrations/node-express/index.mjs +5 -4
  36. package/dist/lib/integrations/node-http/index.d.ts +2 -2
  37. package/dist/lib/integrations/node-http/index.js +141 -86
  38. package/dist/lib/integrations/node-http/index.js.map +1 -1
  39. package/dist/lib/integrations/node-http/index.mjs +4 -3
  40. package/dist/service-adapters/index.d.ts +5 -4
  41. package/dist/service-adapters/index.js +179 -104
  42. package/dist/service-adapters/index.js.map +1 -1
  43. package/dist/service-adapters/index.mjs +6 -2
  44. package/dist/service-adapters/shared/index.d.ts +9 -0
  45. package/dist/service-adapters/shared/index.js +72 -0
  46. package/dist/service-adapters/shared/index.js.map +1 -0
  47. package/dist/service-adapters/shared/index.mjs +8 -0
  48. package/dist/service-adapters/shared/index.mjs.map +1 -0
  49. package/dist/{shared-941d59dc.d.ts → shared-bd953ebf.d.ts} +8 -4
  50. package/dist/utils/index.d.ts +17 -1
  51. package/dist/utils/index.js +3 -2
  52. package/dist/utils/index.js.map +1 -1
  53. package/dist/utils/index.mjs +1 -1
  54. package/package.json +2 -2
  55. package/src/agents/langgraph/event-source.ts +36 -38
  56. package/src/agents/langgraph/events.ts +19 -1
  57. package/src/graphql/resolvers/copilot.resolver.ts +84 -40
  58. package/src/lib/error-messages.ts +200 -0
  59. package/src/lib/integrations/shared.ts +43 -0
  60. package/src/lib/runtime/copilot-runtime.ts +56 -48
  61. package/src/lib/runtime/remote-action-constructors.ts +28 -3
  62. package/src/lib/runtime/remote-lg-action.ts +130 -40
  63. package/src/lib/streaming.ts +125 -36
  64. package/src/service-adapters/anthropic/anthropic-adapter.ts +3 -4
  65. package/src/service-adapters/events.ts +37 -81
  66. package/src/service-adapters/groq/groq-adapter.ts +66 -56
  67. package/src/service-adapters/index.ts +1 -0
  68. package/src/service-adapters/openai/openai-adapter.ts +18 -3
  69. package/src/service-adapters/shared/error-utils.ts +61 -0
  70. package/src/service-adapters/shared/index.ts +1 -0
  71. package/src/utils/failed-response-status-reasons.ts +23 -1
  72. package/dist/chunk-HB4D2KJC.mjs.map +0 -1
  73. package/dist/chunk-IIXJVVTV.mjs.map +0 -1
  74. package/dist/{chunk-LSB3QZHS.mjs.map → chunk-5YGKE5SN.mjs.map} +0 -0
  75. package/dist/{chunk-2PQGAIVB.mjs.map → chunk-ALZ5H3VD.mjs.map} +0 -0
  76. package/dist/{chunk-2UAJCT5X.mjs.map → chunk-SMDVD4VG.mjs.map} +0 -0
  77. package/dist/{chunk-GW6ERFKI.mjs.map → chunk-UUXRYAB4.mjs.map} +0 -0
  78. package/dist/{langserve-4a5c9217.d.ts → langserve-fc5cac89.d.ts} +7 -7
@@ -1,9 +1,10 @@
1
1
  import {
2
2
  copilotRuntimeNodeHttpEndpoint
3
- } from "../../../chunk-HB4D2KJC.mjs";
4
- import "../../../chunk-IIXJVVTV.mjs";
5
- import "../../../chunk-5BIEM2UU.mjs";
3
+ } from "../../../chunk-Z5GYTKMD.mjs";
6
4
  import "../../../chunk-SHBDMA63.mjs";
5
+ import "../../../chunk-4JBKY7XT.mjs";
6
+ import "../../../chunk-XWBDEXDA.mjs";
7
+ import "../../../chunk-AMUJQ6IR.mjs";
7
8
  import "../../../chunk-2OZAGFV3.mjs";
8
9
  import "../../../chunk-FHD4JECV.mjs";
9
10
  export {
@@ -1,7 +1,8 @@
1
- import { b as CopilotServiceAdapter, C as CopilotRuntimeChatCompletionRequest, a as CopilotRuntimeChatCompletionResponse } from '../langserve-4a5c9217.js';
2
- export { c as RemoteChain, R as RemoteChainParameters } from '../langserve-4a5c9217.js';
3
- import { L as LangChainAdapter } from '../groq-adapter-25a2bd35.js';
4
- export { G as GoogleGenerativeAIAdapter, f as GroqAdapter, e as GroqAdapterParams, a as OpenAIAdapter, O as OpenAIAdapterParams, c as OpenAIAssistantAdapter, b as OpenAIAssistantAdapterParams, d as UnifyAdapter, U as UnifyAdapterParams } from '../groq-adapter-25a2bd35.js';
1
+ import { b as CopilotServiceAdapter, C as CopilotRuntimeChatCompletionRequest, a as CopilotRuntimeChatCompletionResponse } from '../langserve-fc5cac89.js';
2
+ export { c as RemoteChain, R as RemoteChainParameters } from '../langserve-fc5cac89.js';
3
+ export { convertServiceAdapterError } from './shared/index.js';
4
+ import { L as LangChainAdapter } from '../groq-adapter-172a2ca4.js';
5
+ export { G as GoogleGenerativeAIAdapter, f as GroqAdapter, e as GroqAdapterParams, a as OpenAIAdapter, O as OpenAIAdapterParams, c as OpenAIAssistantAdapter, b as OpenAIAssistantAdapterParams, d as UnifyAdapter, U as UnifyAdapterParams } from '../groq-adapter-172a2ca4.js';
5
6
  import Anthropic from '@anthropic-ai/sdk';
6
7
  import '../index-d4614f9b.js';
7
8
  import '../graphql/types/base/index.js';
@@ -41,7 +41,8 @@ __export(service_adapters_exports, {
41
41
  OpenAIAdapter: () => OpenAIAdapter,
42
42
  OpenAIAssistantAdapter: () => OpenAIAssistantAdapter,
43
43
  RemoteChain: () => RemoteChain,
44
- UnifyAdapter: () => UnifyAdapter
44
+ UnifyAdapter: () => UnifyAdapter,
45
+ convertServiceAdapterError: () => convertServiceAdapterError
45
46
  });
46
47
  module.exports = __toCommonJS(service_adapters_exports);
47
48
 
@@ -123,11 +124,53 @@ var RemoteChain = class {
123
124
  };
124
125
  __name(RemoteChain, "RemoteChain");
125
126
 
127
+ // src/service-adapters/shared/error-utils.ts
128
+ var import_shared = require("@copilotkit/shared");
129
+ function convertServiceAdapterError(error, adapterName) {
130
+ var _a, _b, _c;
131
+ const errorName = ((_a = error == null ? void 0 : error.constructor) == null ? void 0 : _a.name) || error.name;
132
+ const errorMessage = (error == null ? void 0 : error.message) || String(error);
133
+ const statusCode = error.status || error.statusCode || ((_b = error.response) == null ? void 0 : _b.status);
134
+ const responseData = error.error || ((_c = error.response) == null ? void 0 : _c.data) || error.data;
135
+ const structuredError = new import_shared.CopilotKitLowLevelError({
136
+ error: error instanceof Error ? error : new Error(errorMessage),
137
+ url: `${adapterName} service adapter`,
138
+ message: `${adapterName} API error: ${errorMessage}`
139
+ });
140
+ if (statusCode) {
141
+ structuredError.statusCode = statusCode;
142
+ }
143
+ if (responseData) {
144
+ structuredError.responseData = responseData;
145
+ }
146
+ if (errorName) {
147
+ structuredError.originalErrorType = errorName;
148
+ }
149
+ let newCode;
150
+ if (statusCode === 401) {
151
+ newCode = import_shared.CopilotKitErrorCode.AUTHENTICATION_ERROR;
152
+ } else if (statusCode >= 400 && statusCode < 500) {
153
+ newCode = import_shared.CopilotKitErrorCode.CONFIGURATION_ERROR;
154
+ } else if (statusCode >= 500) {
155
+ newCode = import_shared.CopilotKitErrorCode.NETWORK_ERROR;
156
+ } else if (statusCode) {
157
+ newCode = import_shared.CopilotKitErrorCode.CONFIGURATION_ERROR;
158
+ } else {
159
+ newCode = import_shared.CopilotKitErrorCode.NETWORK_ERROR;
160
+ }
161
+ structuredError.code = newCode;
162
+ if (structuredError.extensions) {
163
+ structuredError.extensions.code = newCode;
164
+ }
165
+ return structuredError;
166
+ }
167
+ __name(convertServiceAdapterError, "convertServiceAdapterError");
168
+
126
169
  // src/service-adapters/openai/openai-adapter.ts
127
170
  var import_openai = __toESM(require("openai"));
128
171
 
129
172
  // src/service-adapters/openai/utils.ts
130
- var import_shared = require("@copilotkit/shared");
173
+ var import_shared2 = require("@copilotkit/shared");
131
174
  function limitMessagesToTokenCount(messages, tools, model, maxTokens) {
132
175
  maxTokens || (maxTokens = maxTokensForOpenAIModel(model));
133
176
  const result = [];
@@ -241,7 +284,7 @@ function convertActionInputToOpenAITool(action) {
241
284
  function: {
242
285
  name: action.name,
243
286
  description: action.description,
244
- parameters: (0, import_shared.parseJson)(action.jsonSchema, {})
287
+ parameters: (0, import_shared2.parseJson)(action.jsonSchema, {})
245
288
  }
246
289
  };
247
290
  }
@@ -309,7 +352,7 @@ function convertSystemMessageToAssistantAPI(message) {
309
352
  __name(convertSystemMessageToAssistantAPI, "convertSystemMessageToAssistantAPI");
310
353
 
311
354
  // src/service-adapters/openai/openai-adapter.ts
312
- var import_shared2 = require("@copilotkit/shared");
355
+ var import_shared3 = require("@copilotkit/shared");
313
356
  var DEFAULT_MODEL = "gpt-4o";
314
357
  var OpenAIAdapter = class {
315
358
  model = DEFAULT_MODEL;
@@ -330,7 +373,8 @@ var OpenAIAdapter = class {
330
373
  async process(request) {
331
374
  const { threadId: threadIdFromRequest, model = this.model, messages, actions, eventSource, forwardedParameters } = request;
332
375
  const tools = actions.map(convertActionInputToOpenAITool);
333
- const threadId = threadIdFromRequest ?? (0, import_shared2.randomUUID)();
376
+ const threadId = threadIdFromRequest ?? (0, import_shared3.randomUUID)();
377
+ console.log("messages", messages);
334
378
  const validToolUseIds = /* @__PURE__ */ new Set();
335
379
  for (const message of messages) {
336
380
  if (message.isActionExecutionMessage()) {
@@ -360,6 +404,29 @@ var OpenAIAdapter = class {
360
404
  }
361
405
  };
362
406
  }
407
+ console.log("INPUT", {
408
+ model,
409
+ stream: true,
410
+ messages: openaiMessages,
411
+ ...tools.length > 0 && {
412
+ tools
413
+ },
414
+ ...(forwardedParameters == null ? void 0 : forwardedParameters.maxTokens) && {
415
+ max_tokens: forwardedParameters.maxTokens
416
+ },
417
+ ...(forwardedParameters == null ? void 0 : forwardedParameters.stop) && {
418
+ stop: forwardedParameters.stop
419
+ },
420
+ ...toolChoice && {
421
+ tool_choice: toolChoice
422
+ },
423
+ ...this.disableParallelToolCalls && {
424
+ parallel_tool_calls: false
425
+ },
426
+ ...(forwardedParameters == null ? void 0 : forwardedParameters.temperature) && {
427
+ temperature: forwardedParameters.temperature
428
+ }
429
+ });
363
430
  try {
364
431
  const stream = this.openai.beta.chat.completions.stream({
365
432
  model,
@@ -446,14 +513,14 @@ var OpenAIAdapter = class {
446
513
  });
447
514
  }
448
515
  } catch (error) {
449
- console.error("[OpenAI] Error processing stream:", error);
450
- throw error;
516
+ console.error("[OpenAI] Error during API call:", error);
517
+ throw convertServiceAdapterError(error, "OpenAI");
451
518
  }
452
519
  eventStream$.complete();
453
520
  });
454
521
  } catch (error) {
455
522
  console.error("[OpenAI] Error during API call:", error);
456
- throw error;
523
+ throw convertServiceAdapterError(error, "OpenAI");
457
524
  }
458
525
  return {
459
526
  threadId
@@ -465,7 +532,7 @@ __name(OpenAIAdapter, "OpenAIAdapter");
465
532
  // src/service-adapters/langchain/utils.ts
466
533
  var import_messages = require("@langchain/core/messages");
467
534
  var import_tools = require("@langchain/core/tools");
468
- var import_shared3 = require("@copilotkit/shared");
535
+ var import_shared5 = require("@copilotkit/shared");
469
536
  function convertMessageToLangChainMessage(message) {
470
537
  if (message.isTextMessage()) {
471
538
  if (message.role == "user") {
@@ -498,7 +565,7 @@ function convertActionInputToLangChainTool(actionInput) {
498
565
  return new import_tools.DynamicStructuredTool({
499
566
  name: actionInput.name,
500
567
  description: actionInput.description,
501
- schema: (0, import_shared3.convertJsonSchemaToZodSchema)(JSON.parse(actionInput.jsonSchema), true),
568
+ schema: (0, import_shared5.convertJsonSchemaToZodSchema)(JSON.parse(actionInput.jsonSchema), true),
502
569
  func: async () => {
503
570
  return "";
504
571
  }
@@ -531,7 +598,7 @@ async function streamLangChainResponse({ result, eventStream$, actionExecution }
531
598
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
532
599
  if (typeof result === "string") {
533
600
  if (!actionExecution) {
534
- eventStream$.sendTextMessage((0, import_shared3.randomId)(), result);
601
+ eventStream$.sendTextMessage((0, import_shared5.randomId)(), result);
535
602
  } else {
536
603
  eventStream$.sendActionExecutionResult({
537
604
  actionExecutionId: actionExecution.id,
@@ -542,11 +609,11 @@ async function streamLangChainResponse({ result, eventStream$, actionExecution }
542
609
  } else if (isAIMessage(result)) {
543
610
  maybeSendActionExecutionResultIsMessage(eventStream$, actionExecution);
544
611
  if (result.content) {
545
- eventStream$.sendTextMessage((0, import_shared3.randomId)(), result.content);
612
+ eventStream$.sendTextMessage((0, import_shared5.randomId)(), result.content);
546
613
  }
547
614
  for (const toolCall of result.tool_calls) {
548
615
  eventStream$.sendActionExecution({
549
- actionExecutionId: toolCall.id || (0, import_shared3.randomId)(),
616
+ actionExecutionId: toolCall.id || (0, import_shared5.randomId)(),
550
617
  actionName: toolCall.name,
551
618
  args: JSON.stringify(toolCall.args)
552
619
  });
@@ -554,12 +621,12 @@ async function streamLangChainResponse({ result, eventStream$, actionExecution }
554
621
  } else if (isBaseMessageChunk(result)) {
555
622
  maybeSendActionExecutionResultIsMessage(eventStream$, actionExecution);
556
623
  if ((_a = result.lc_kwargs) == null ? void 0 : _a.content) {
557
- eventStream$.sendTextMessage((0, import_shared3.randomId)(), result.content);
624
+ eventStream$.sendTextMessage((0, import_shared5.randomId)(), result.content);
558
625
  }
559
626
  if ((_b = result.lc_kwargs) == null ? void 0 : _b.tool_calls) {
560
627
  for (const toolCall of (_c = result.lc_kwargs) == null ? void 0 : _c.tool_calls) {
561
628
  eventStream$.sendActionExecution({
562
- actionExecutionId: toolCall.id || (0, import_shared3.randomId)(),
629
+ actionExecutionId: toolCall.id || (0, import_shared5.randomId)(),
563
630
  actionName: toolCall.name,
564
631
  args: JSON.stringify(toolCall.args)
565
632
  });
@@ -633,7 +700,7 @@ async function streamLangChainResponse({ result, eventStream$, actionExecution }
633
700
  });
634
701
  } else if (content) {
635
702
  mode = "message";
636
- currentMessageId = ((_k = value.lc_kwargs) == null ? void 0 : _k.id) || (0, import_shared3.randomId)();
703
+ currentMessageId = ((_k = value.lc_kwargs) == null ? void 0 : _k.id) || (0, import_shared5.randomId)();
637
704
  eventStream$.sendTextMessageStart({
638
705
  messageId: currentMessageId
639
706
  });
@@ -690,7 +757,7 @@ function encodeResult(result) {
690
757
  __name(encodeResult, "encodeResult");
691
758
 
692
759
  // src/service-adapters/langchain/langchain-adapter.ts
693
- var import_shared4 = require("@copilotkit/shared");
760
+ var import_shared6 = require("@copilotkit/shared");
694
761
  var import_promises = require("@langchain/core/callbacks/promises");
695
762
  var LangChainAdapter = class {
696
763
  options;
@@ -703,7 +770,7 @@ var LangChainAdapter = class {
703
770
  async process(request) {
704
771
  try {
705
772
  const { eventSource, model, actions, messages, runId, threadId: threadIdFromRequest } = request;
706
- const threadId = threadIdFromRequest ?? (0, import_shared4.randomUUID)();
773
+ const threadId = threadIdFromRequest ?? (0, import_shared6.randomUUID)();
707
774
  const result = await this.options.chainFn({
708
775
  messages: messages.map(convertMessageToLangChainMessage),
709
776
  tools: actions.map(convertActionInputToLangChainTool),
@@ -958,7 +1025,7 @@ __name(getRunIdFromStream, "getRunIdFromStream");
958
1025
 
959
1026
  // src/service-adapters/unify/unify-adapter.ts
960
1027
  var import_openai3 = __toESM(require("openai"));
961
- var import_shared5 = require("@copilotkit/shared");
1028
+ var import_shared7 = require("@copilotkit/shared");
962
1029
  var UnifyAdapter = class {
963
1030
  apiKey;
964
1031
  model;
@@ -1000,7 +1067,7 @@ var UnifyAdapter = class {
1000
1067
  for await (const chunk of stream) {
1001
1068
  if (this.start) {
1002
1069
  model = chunk.model;
1003
- currentMessageId = (0, import_shared5.randomId)();
1070
+ currentMessageId = (0, import_shared7.randomId)();
1004
1071
  eventStream$.sendTextMessageStart({
1005
1072
  messageId: currentMessageId
1006
1073
  });
@@ -1067,7 +1134,7 @@ var UnifyAdapter = class {
1067
1134
  eventStream$.complete();
1068
1135
  });
1069
1136
  return {
1070
- threadId: request.threadId || (0, import_shared5.randomUUID)()
1137
+ threadId: request.threadId || (0, import_shared7.randomUUID)()
1071
1138
  };
1072
1139
  }
1073
1140
  };
@@ -1075,7 +1142,7 @@ __name(UnifyAdapter, "UnifyAdapter");
1075
1142
 
1076
1143
  // src/service-adapters/groq/groq-adapter.ts
1077
1144
  var import_groq_sdk = require("groq-sdk");
1078
- var import_shared6 = require("@copilotkit/shared");
1145
+ var import_shared8 = require("@copilotkit/shared");
1079
1146
  var DEFAULT_MODEL2 = "llama-3.3-70b-versatile";
1080
1147
  var GroqAdapter = class {
1081
1148
  model = DEFAULT_MODEL2;
@@ -1107,90 +1174,99 @@ var GroqAdapter = class {
1107
1174
  }
1108
1175
  };
1109
1176
  }
1110
- const stream = await this.groq.chat.completions.create({
1111
- model,
1112
- stream: true,
1113
- messages: openaiMessages,
1114
- ...tools.length > 0 && {
1115
- tools
1116
- },
1117
- ...(forwardedParameters == null ? void 0 : forwardedParameters.maxTokens) && {
1118
- max_tokens: forwardedParameters.maxTokens
1119
- },
1120
- ...(forwardedParameters == null ? void 0 : forwardedParameters.stop) && {
1121
- stop: forwardedParameters.stop
1122
- },
1123
- ...toolChoice && {
1124
- tool_choice: toolChoice
1125
- },
1126
- ...this.disableParallelToolCalls && {
1127
- parallel_tool_calls: false
1128
- },
1129
- ...(forwardedParameters == null ? void 0 : forwardedParameters.temperature) && {
1130
- temperature: forwardedParameters.temperature
1131
- }
1132
- });
1177
+ let stream;
1178
+ try {
1179
+ stream = await this.groq.chat.completions.create({
1180
+ model,
1181
+ stream: true,
1182
+ messages: openaiMessages,
1183
+ ...tools.length > 0 && {
1184
+ tools
1185
+ },
1186
+ ...(forwardedParameters == null ? void 0 : forwardedParameters.maxTokens) && {
1187
+ max_tokens: forwardedParameters.maxTokens
1188
+ },
1189
+ ...(forwardedParameters == null ? void 0 : forwardedParameters.stop) && {
1190
+ stop: forwardedParameters.stop
1191
+ },
1192
+ ...toolChoice && {
1193
+ tool_choice: toolChoice
1194
+ },
1195
+ ...this.disableParallelToolCalls && {
1196
+ parallel_tool_calls: false
1197
+ },
1198
+ ...(forwardedParameters == null ? void 0 : forwardedParameters.temperature) && {
1199
+ temperature: forwardedParameters.temperature
1200
+ }
1201
+ });
1202
+ } catch (error) {
1203
+ throw convertServiceAdapterError(error, "Groq");
1204
+ }
1133
1205
  eventSource.stream(async (eventStream$) => {
1134
1206
  var _a, _b;
1135
1207
  let mode = null;
1136
1208
  let currentMessageId;
1137
1209
  let currentToolCallId;
1138
- for await (const chunk of stream) {
1139
- const toolCall = (_a = chunk.choices[0].delta.tool_calls) == null ? void 0 : _a[0];
1140
- const content = chunk.choices[0].delta.content;
1141
- if (mode === "message" && (toolCall == null ? void 0 : toolCall.id)) {
1142
- mode = null;
1143
- eventStream$.sendTextMessageEnd({
1144
- messageId: currentMessageId
1145
- });
1146
- } else if (mode === "function" && (toolCall === void 0 || (toolCall == null ? void 0 : toolCall.id))) {
1147
- mode = null;
1148
- eventStream$.sendActionExecutionEnd({
1149
- actionExecutionId: currentToolCallId
1150
- });
1151
- }
1152
- if (mode === null) {
1153
- if (toolCall == null ? void 0 : toolCall.id) {
1154
- mode = "function";
1155
- currentToolCallId = toolCall.id;
1156
- eventStream$.sendActionExecutionStart({
1157
- actionExecutionId: currentToolCallId,
1158
- actionName: toolCall.function.name,
1159
- parentMessageId: chunk.id
1160
- });
1161
- } else if (content) {
1162
- mode = "message";
1163
- currentMessageId = chunk.id;
1164
- eventStream$.sendTextMessageStart({
1210
+ try {
1211
+ for await (const chunk of stream) {
1212
+ const toolCall = (_a = chunk.choices[0].delta.tool_calls) == null ? void 0 : _a[0];
1213
+ const content = chunk.choices[0].delta.content;
1214
+ if (mode === "message" && (toolCall == null ? void 0 : toolCall.id)) {
1215
+ mode = null;
1216
+ eventStream$.sendTextMessageEnd({
1165
1217
  messageId: currentMessageId
1166
1218
  });
1219
+ } else if (mode === "function" && (toolCall === void 0 || (toolCall == null ? void 0 : toolCall.id))) {
1220
+ mode = null;
1221
+ eventStream$.sendActionExecutionEnd({
1222
+ actionExecutionId: currentToolCallId
1223
+ });
1224
+ }
1225
+ if (mode === null) {
1226
+ if (toolCall == null ? void 0 : toolCall.id) {
1227
+ mode = "function";
1228
+ currentToolCallId = toolCall.id;
1229
+ eventStream$.sendActionExecutionStart({
1230
+ actionExecutionId: currentToolCallId,
1231
+ actionName: toolCall.function.name,
1232
+ parentMessageId: chunk.id
1233
+ });
1234
+ } else if (content) {
1235
+ mode = "message";
1236
+ currentMessageId = chunk.id;
1237
+ eventStream$.sendTextMessageStart({
1238
+ messageId: currentMessageId
1239
+ });
1240
+ }
1241
+ }
1242
+ if (mode === "message" && content) {
1243
+ eventStream$.sendTextMessageContent({
1244
+ messageId: currentMessageId,
1245
+ content
1246
+ });
1247
+ } else if (mode === "function" && ((_b = toolCall == null ? void 0 : toolCall.function) == null ? void 0 : _b.arguments)) {
1248
+ eventStream$.sendActionExecutionArgs({
1249
+ actionExecutionId: currentToolCallId,
1250
+ args: toolCall.function.arguments
1251
+ });
1167
1252
  }
1168
1253
  }
1169
- if (mode === "message" && content) {
1170
- eventStream$.sendTextMessageContent({
1171
- messageId: currentMessageId,
1172
- content
1254
+ if (mode === "message") {
1255
+ eventStream$.sendTextMessageEnd({
1256
+ messageId: currentMessageId
1173
1257
  });
1174
- } else if (mode === "function" && ((_b = toolCall == null ? void 0 : toolCall.function) == null ? void 0 : _b.arguments)) {
1175
- eventStream$.sendActionExecutionArgs({
1176
- actionExecutionId: currentToolCallId,
1177
- args: toolCall.function.arguments
1258
+ } else if (mode === "function") {
1259
+ eventStream$.sendActionExecutionEnd({
1260
+ actionExecutionId: currentToolCallId
1178
1261
  });
1179
1262
  }
1180
- }
1181
- if (mode === "message") {
1182
- eventStream$.sendTextMessageEnd({
1183
- messageId: currentMessageId
1184
- });
1185
- } else if (mode === "function") {
1186
- eventStream$.sendActionExecutionEnd({
1187
- actionExecutionId: currentToolCallId
1188
- });
1263
+ } catch (error) {
1264
+ throw convertServiceAdapterError(error, "Groq");
1189
1265
  }
1190
1266
  eventStream$.complete();
1191
1267
  });
1192
1268
  return {
1193
- threadId: request.threadId || (0, import_shared6.randomUUID)()
1269
+ threadId: request.threadId || (0, import_shared8.randomUUID)()
1194
1270
  };
1195
1271
  }
1196
1272
  };
@@ -1346,7 +1422,7 @@ function convertMessageToAnthropicMessage(message) {
1346
1422
  __name(convertMessageToAnthropicMessage, "convertMessageToAnthropicMessage");
1347
1423
 
1348
1424
  // src/service-adapters/anthropic/anthropic-adapter.ts
1349
- var import_shared7 = require("@copilotkit/shared");
1425
+ var import_shared10 = require("@copilotkit/shared");
1350
1426
  var DEFAULT_MODEL3 = "claude-3-5-sonnet-latest";
1351
1427
  var AnthropicAdapter = class {
1352
1428
  model = DEFAULT_MODEL3;
@@ -1428,8 +1504,8 @@ var AnthropicAdapter = class {
1428
1504
  eventSource.stream(async (eventStream$) => {
1429
1505
  let mode = null;
1430
1506
  let didOutputText = false;
1431
- let currentMessageId = (0, import_shared7.randomId)();
1432
- let currentToolCallId = (0, import_shared7.randomId)();
1507
+ let currentMessageId = (0, import_shared10.randomId)();
1508
+ let currentToolCallId = (0, import_shared10.randomId)();
1433
1509
  let filterThinkingTextBuffer = new FilterThinkingTextBuffer();
1434
1510
  try {
1435
1511
  for await (const chunk of stream) {
@@ -1485,17 +1561,15 @@ var AnthropicAdapter = class {
1485
1561
  }
1486
1562
  }
1487
1563
  } catch (error) {
1488
- console.error("[Anthropic] Error processing stream:", error);
1489
- throw error;
1564
+ throw convertServiceAdapterError(error, "Anthropic");
1490
1565
  }
1491
1566
  eventStream$.complete();
1492
1567
  });
1493
1568
  } catch (error) {
1494
- console.error("[Anthropic] Error during API call:", error);
1495
- throw error;
1569
+ throw convertServiceAdapterError(error, "Anthropic");
1496
1570
  }
1497
1571
  return {
1498
- threadId: threadId || (0, import_shared7.randomUUID)()
1572
+ threadId: threadId || (0, import_shared10.randomUUID)()
1499
1573
  };
1500
1574
  }
1501
1575
  };
@@ -1535,7 +1609,7 @@ var FilterThinkingTextBuffer = /* @__PURE__ */ __name(class FilterThinkingTextBu
1535
1609
 
1536
1610
  // src/service-adapters/experimental/ollama/ollama-adapter.ts
1537
1611
  var import_ollama = require("@langchain/community/llms/ollama");
1538
- var import_shared8 = require("@copilotkit/shared");
1612
+ var import_shared12 = require("@copilotkit/shared");
1539
1613
  var DEFAULT_MODEL4 = "llama3:latest";
1540
1614
  var ExperimentalOllamaAdapter = class {
1541
1615
  model;
@@ -1554,7 +1628,7 @@ var ExperimentalOllamaAdapter = class {
1554
1628
  const contents = messages.filter((m) => m.isTextMessage()).map((m) => m.content);
1555
1629
  const _stream = await ollama.stream(contents);
1556
1630
  eventSource.stream(async (eventStream$) => {
1557
- const currentMessageId = (0, import_shared8.randomId)();
1631
+ const currentMessageId = (0, import_shared12.randomId)();
1558
1632
  eventStream$.sendTextMessageStart({
1559
1633
  messageId: currentMessageId
1560
1634
  });
@@ -1570,7 +1644,7 @@ var ExperimentalOllamaAdapter = class {
1570
1644
  eventStream$.complete();
1571
1645
  });
1572
1646
  return {
1573
- threadId: request.threadId || (0, import_shared8.randomUUID)()
1647
+ threadId: request.threadId || (0, import_shared12.randomUUID)()
1574
1648
  };
1575
1649
  }
1576
1650
  };
@@ -1598,11 +1672,11 @@ var BedrockAdapter = class extends LangChainAdapter {
1598
1672
  __name(BedrockAdapter, "BedrockAdapter");
1599
1673
 
1600
1674
  // src/service-adapters/empty/empty-adapter.ts
1601
- var import_shared9 = require("@copilotkit/shared");
1675
+ var import_shared13 = require("@copilotkit/shared");
1602
1676
  var EmptyAdapter = class {
1603
1677
  async process(request) {
1604
1678
  return {
1605
- threadId: request.threadId || (0, import_shared9.randomUUID)()
1679
+ threadId: request.threadId || (0, import_shared13.randomUUID)()
1606
1680
  };
1607
1681
  }
1608
1682
  };
@@ -1621,6 +1695,7 @@ var ExperimentalEmptyAdapter = EmptyAdapter;
1621
1695
  OpenAIAdapter,
1622
1696
  OpenAIAssistantAdapter,
1623
1697
  RemoteChain,
1624
- UnifyAdapter
1698
+ UnifyAdapter,
1699
+ convertServiceAdapterError
1625
1700
  });
1626
1701
  //# sourceMappingURL=index.js.map