wingbot 3.73.8 → 3.73.10

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wingbot",
3
- "version": "3.73.8",
3
+ "version": "3.73.10",
4
4
  "description": "Enterprise Messaging Bot Conversation Engine",
5
5
  "main": "index.js",
6
6
  "type": "commonjs",
@@ -142,7 +142,7 @@ const DUMMY_ROUTE = { id: 0, path: null, resolvers: [] };
142
142
  * @prop {boolean} [allowForbiddenSnippetWords] - disable security rule
143
143
  * @prop {Middleware} [defaultPlugin] - to be able to test configurations without plugins
144
144
  * @prop {RouteConfig[]} [routeConfigs] - list of disabled routes
145
- * @prop {boolean|keyof ILogger} [canaryLogs]
145
+ * @prop {boolean|string} [canaryLogs]
146
146
  * @prop {ILogger} [log]
147
147
  * @prop {C} [configuration] - context data
148
148
  */
@@ -449,47 +449,55 @@ function message (params, context = {}) {
449
449
  if (params.type === 'prompt' && !res.llm.configuration.disableLLM) {
450
450
  res.typingOn()
451
451
  .wait(1000);
452
- const session = await res.llmSessionWithHistory(params.llmContextType);
453
452
 
454
- await session.systemPrompt(text)
455
- .generate();
453
+ let session;
454
+ let evaluation;
455
+ let discard;
456
456
 
457
- const evaluation = await res.llmEvaluate(session, params.llmContextType);
457
+ try {
458
+ session = await res.llmSessionWithHistory(params.llmContextType);
458
459
 
459
- if (evaluation.discard) {
460
+ await session.systemPrompt(text)
461
+ .generate();
462
+
463
+ evaluation = await res.llmEvaluate(session, params.llmContextType);
464
+ ({ discard } = evaluation);
465
+ } catch (e) {
466
+ (context.log || console).error(`LLM ERR: ${e.message} [${req.senderId}]`, e);
467
+ discard = true;
468
+ }
469
+
470
+ if (discard) {
460
471
  canaryLog(context.log, context.canaryLogs, 'LLM discarded', {
461
472
  evaluation,
462
473
  session
463
474
  });
464
- if (isLastMessage && !req.actionData()._resolverTag) {
465
- res.finalMessageSent = true;
466
- }
467
- return ret;
468
- }
475
+ } else {
469
476
 
470
- if (evaluation.action) {
471
- postBack(evaluation.action);
472
- return Router.END;
473
- }
477
+ if (evaluation.action) {
478
+ postBack(evaluation.action);
479
+ return Router.END;
480
+ }
474
481
 
475
- // if (!response.content) {
476
- // // no response?
477
- // }
482
+ // if (!response.content) {
483
+ // // no response?
484
+ // }
478
485
 
479
- const messages = session.messagesToSend();
486
+ const messages = session.messagesToSend();
480
487
 
481
- res.setFlag(LLM.GPT_FLAG);
488
+ res.setFlag(LLM.GPT_FLAG);
482
489
 
483
- const lastMessageI = messages.length - 1;
484
- messages.forEach((m, i) => {
485
- if (lastMessageI === i) {
486
- text = m.content;
487
- } else {
488
- res.text(m.content, null, null, {
489
- disableAutoTyping: true
490
- });
491
- }
492
- });
490
+ const lastMessageI = messages.length - 1;
491
+ messages.forEach((m, i) => {
492
+ if (lastMessageI === i) {
493
+ text = m.content;
494
+ } else {
495
+ res.text(m.content, null, null, {
496
+ disableAutoTyping: true
497
+ });
498
+ }
499
+ });
500
+ }
493
501
  }
494
502
 
495
503
  res.text(text, sendReplies, voiceControl, {
@@ -13,7 +13,7 @@
13
13
  /**
14
14
  *
15
15
  * @param {ILogger} logger
16
- * @param {boolean|keyof ILogger} setting
16
+ * @param {boolean|string} setting
17
17
  * @param {string} message
18
18
  * @param {...*} args
19
19
  * @returns {void}