@just-every/ensemble 0.2.212 → 0.2.213

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 (86) hide show
  1. package/README.md +152 -91
  2. package/dist/cjs/core/ensemble_request.cjs +734 -333
  3. package/dist/cjs/core/ensemble_request.d.ts.map +1 -1
  4. package/dist/cjs/core/ensemble_request.js.map +1 -1
  5. package/dist/cjs/model_providers/base_provider.d.ts.map +1 -1
  6. package/dist/cjs/model_providers/base_provider.js.map +1 -1
  7. package/dist/cjs/model_providers/claude.cjs +72 -72
  8. package/dist/cjs/model_providers/claude.d.ts.map +1 -1
  9. package/dist/cjs/model_providers/claude.js.map +1 -1
  10. package/dist/cjs/model_providers/gemini.cjs +3 -0
  11. package/dist/cjs/model_providers/gemini.d.ts.map +1 -1
  12. package/dist/cjs/model_providers/gemini.js.map +1 -1
  13. package/dist/cjs/model_providers/openai.cjs +41 -112
  14. package/dist/cjs/model_providers/openai.d.ts.map +1 -1
  15. package/dist/cjs/model_providers/openai.js.map +1 -1
  16. package/dist/cjs/model_providers/openai_chat.cjs +55 -24
  17. package/dist/cjs/model_providers/openai_chat.d.ts.map +1 -1
  18. package/dist/cjs/model_providers/openai_chat.js.map +1 -1
  19. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  20. package/dist/cjs/types/types.d.ts +20 -2
  21. package/dist/cjs/types/types.d.ts.map +1 -1
  22. package/dist/cjs/utils/agent.cjs +4 -6
  23. package/dist/cjs/utils/agent.d.ts.map +1 -1
  24. package/dist/cjs/utils/agent.js.map +1 -1
  25. package/dist/cjs/utils/ensemble_result.cjs +43 -4
  26. package/dist/cjs/utils/ensemble_result.d.ts +10 -1
  27. package/dist/cjs/utils/ensemble_result.d.ts.map +1 -1
  28. package/dist/cjs/utils/ensemble_result.js.map +1 -1
  29. package/dist/cjs/utils/failure_detection.cjs +292 -0
  30. package/dist/cjs/utils/failure_detection.d.ts +51 -0
  31. package/dist/cjs/utils/failure_detection.d.ts.map +1 -0
  32. package/dist/cjs/utils/failure_detection.js.map +1 -0
  33. package/dist/cjs/utils/json_schema.cjs +490 -0
  34. package/dist/cjs/utils/json_schema.d.ts +10 -0
  35. package/dist/cjs/utils/json_schema.d.ts.map +1 -0
  36. package/dist/cjs/utils/json_schema.js.map +1 -0
  37. package/dist/cjs/utils/tool_execution_manager.cjs +28 -4
  38. package/dist/cjs/utils/tool_execution_manager.d.ts +1 -1
  39. package/dist/cjs/utils/tool_execution_manager.d.ts.map +1 -1
  40. package/dist/cjs/utils/tool_execution_manager.js.map +1 -1
  41. package/dist/cjs/utils/verification.cjs +26 -13
  42. package/dist/cjs/utils/verification.d.ts.map +1 -1
  43. package/dist/cjs/utils/verification.js.map +1 -1
  44. package/dist/core/ensemble_request.d.ts.map +1 -1
  45. package/dist/core/ensemble_request.js +734 -333
  46. package/dist/core/ensemble_request.js.map +1 -1
  47. package/dist/model_providers/base_provider.d.ts.map +1 -1
  48. package/dist/model_providers/base_provider.js.map +1 -1
  49. package/dist/model_providers/claude.d.ts.map +1 -1
  50. package/dist/model_providers/claude.js +72 -72
  51. package/dist/model_providers/claude.js.map +1 -1
  52. package/dist/model_providers/gemini.d.ts.map +1 -1
  53. package/dist/model_providers/gemini.js +3 -0
  54. package/dist/model_providers/gemini.js.map +1 -1
  55. package/dist/model_providers/openai.d.ts.map +1 -1
  56. package/dist/model_providers/openai.js +41 -112
  57. package/dist/model_providers/openai.js.map +1 -1
  58. package/dist/model_providers/openai_chat.d.ts.map +1 -1
  59. package/dist/model_providers/openai_chat.js +55 -24
  60. package/dist/model_providers/openai_chat.js.map +1 -1
  61. package/dist/tsconfig.tsbuildinfo +1 -1
  62. package/dist/types/types.d.ts +20 -2
  63. package/dist/types/types.d.ts.map +1 -1
  64. package/dist/utils/agent.d.ts.map +1 -1
  65. package/dist/utils/agent.js +4 -6
  66. package/dist/utils/agent.js.map +1 -1
  67. package/dist/utils/ensemble_result.d.ts +10 -1
  68. package/dist/utils/ensemble_result.d.ts.map +1 -1
  69. package/dist/utils/ensemble_result.js +43 -4
  70. package/dist/utils/ensemble_result.js.map +1 -1
  71. package/dist/utils/failure_detection.d.ts +51 -0
  72. package/dist/utils/failure_detection.d.ts.map +1 -0
  73. package/dist/utils/failure_detection.js +280 -0
  74. package/dist/utils/failure_detection.js.map +1 -0
  75. package/dist/utils/json_schema.d.ts +10 -0
  76. package/dist/utils/json_schema.d.ts.map +1 -0
  77. package/dist/utils/json_schema.js +486 -0
  78. package/dist/utils/json_schema.js.map +1 -0
  79. package/dist/utils/tool_execution_manager.d.ts +1 -1
  80. package/dist/utils/tool_execution_manager.d.ts.map +1 -1
  81. package/dist/utils/tool_execution_manager.js +28 -4
  82. package/dist/utils/tool_execution_manager.js.map +1 -1
  83. package/dist/utils/verification.d.ts.map +1 -1
  84. package/dist/utils/verification.js +26 -13
  85. package/dist/utils/verification.js.map +1 -1
  86. package/package.json +1 -1
@@ -2,11 +2,21 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.setEnsembleRequestFunction = setEnsembleRequestFunction;
4
4
  exports.verifyOutput = verifyOutput;
5
+ const json_schema_js_1 = require("./json_schema.cjs");
5
6
  let ensembleRequestFunction = null;
6
7
  function setEnsembleRequestFunction(fn) {
7
8
  ensembleRequestFunction = fn;
8
9
  }
9
10
  async function verifyOutput(verifier, output, originalMessages) {
11
+ const verificationSchema = {
12
+ type: 'object',
13
+ properties: {
14
+ status: { type: 'string', enum: ['pass', 'fail'] },
15
+ reason: { type: 'string' },
16
+ },
17
+ required: ['status'],
18
+ additionalProperties: false,
19
+ };
10
20
  const verificationPrompt = `Please verify if the following output is correct and complete:
11
21
 
12
22
  ${output}
@@ -28,16 +38,13 @@ Respond with JSON: {"status": "pass"} or {"status": "fail", "reason": "explanati
28
38
  ];
29
39
  const verifierWithSchema = {
30
40
  ...verifier,
31
- jsonSchema: {
32
- type: 'json_schema',
33
- name: 'verification_result',
34
- schema: {
35
- type: 'object',
36
- properties: {
37
- status: { type: 'string', enum: ['pass', 'fail'] },
38
- reason: { type: 'string' },
39
- },
40
- required: ['status'],
41
+ modelSettings: {
42
+ ...verifier.modelSettings,
43
+ json_schema: {
44
+ type: 'json_schema',
45
+ name: 'verification_result',
46
+ strict: true,
47
+ schema: verificationSchema,
41
48
  },
42
49
  },
43
50
  };
@@ -52,14 +59,20 @@ Respond with JSON: {"status": "pass"} or {"status": "fail", "reason": "explanati
52
59
  fullResponse = event.content;
53
60
  }
54
61
  }
55
- const jsonResponse = JSON.parse(fullResponse);
56
- return jsonResponse;
62
+ const validation = (0, json_schema_js_1.validateJsonResponseContent)(fullResponse, verificationSchema);
63
+ if ('error' in validation) {
64
+ return {
65
+ status: 'fail',
66
+ reason: validation.error,
67
+ };
68
+ }
69
+ return validation.value;
57
70
  }
58
71
  catch (error) {
59
72
  console.error('Verification failed:', error);
60
73
  return {
61
74
  status: 'fail',
62
- reason: 'Invalid verification response',
75
+ reason: error instanceof Error ? error.message : 'Invalid verification response',
63
76
  };
64
77
  }
65
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../utils/verification.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,aAAa,EACb,eAAe,EAIf,mBAAmB,EACtB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAGD,KAAK,uBAAuB,GAAG,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,KAAK,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAQxH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,uBAAuB,GAAG,IAAI,CAE5E;AAKD,wBAAsB,YAAY,CAC9B,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,aAAa,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA+D7B"}
1
+ {"version":3,"file":"verification.d.ts","sourceRoot":"","sources":["../../../utils/verification.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,aAAa,EACb,eAAe,EAGf,mBAAmB,EACtB,MAAM,mBAAmB,CAAC;AAG3B,MAAM,WAAW,kBAAkB;IAC/B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAGD,KAAK,uBAAuB,GAAG,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAK,EAAE,eAAe,KAAK,cAAc,CAAC,mBAAmB,CAAC,CAAC;AAQxH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,uBAAuB,GAAG,IAAI,CAE5E;AAKD,wBAAsB,YAAY,CAC9B,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,aAAa,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA4E7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../utils/verification.ts"],"names":[],"mappings":";;AA2BA,gEAEC;AAKD,oCAmEC;AA/ED,IAAI,uBAAuB,GAAmC,IAAI,CAAC;AAKnE,SAAgB,0BAA0B,CAAC,EAA2B;IAClE,uBAAuB,GAAG,EAAE,CAAC;AACjC,CAAC;AAKM,KAAK,UAAU,YAAY,CAC9B,QAAyB,EACzB,MAAc,EACd,gBAA+B;IAE/B,MAAM,kBAAkB,GAAG;;EAE7B,MAAM;;sGAE8F,CAAC;IAEnG,MAAM,oBAAoB,GAAkB;QACxC,GAAG,gBAAgB;QACnB;YACI,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,MAAM;YACf,MAAM,EAAE,WAAW;SACG;QAC1B;YACI,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,kBAAkB;SACN;KAC5B,CAAC;IAGF,MAAM,kBAAkB,GAAoB;QACxC,GAAG,QAAQ;QACX,UAAU,EAAE;YACR,IAAI,EAAE,aAAa;YACnB,IAAI,EAAE,qBAAqB;YAC3B,MAAM,EAAE;gBACJ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;oBAClD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC7B;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACvB;SACkB;KAC1B,CAAC;IAEF,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC/F,CAAC;IAED,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;QACjF,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC1D,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;YACjC,CAAC;QACL,CAAC;QAGD,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC9C,OAAO,YAAY,CAAC;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;QAC7C,OAAO;YACH,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,+BAA+B;SAC1C,CAAC;IACN,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"verification.js","sourceRoot":"","sources":["../../../utils/verification.ts"],"names":[],"mappings":";;AA2BA,gEAEC;AAKD,oCAgFC;AAvGD,qDAA+D;AAW/D,IAAI,uBAAuB,GAAmC,IAAI,CAAC;AAKnE,SAAgB,0BAA0B,CAAC,EAA2B;IAClE,uBAAuB,GAAG,EAAE,CAAC;AACjC,CAAC;AAKM,KAAK,UAAU,YAAY,CAC9B,QAAyB,EACzB,MAAc,EACd,gBAA+B;IAE/B,MAAM,kBAAkB,GAAG;QACvB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE;YAClD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC7B;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;QACpB,oBAAoB,EAAE,KAAK;KACrB,CAAC;IAEX,MAAM,kBAAkB,GAAG;;EAE7B,MAAM;;sGAE8F,CAAC;IAEnG,MAAM,oBAAoB,GAAkB;QACxC,GAAG,gBAAgB;QACnB;YACI,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,MAAM;YACf,MAAM,EAAE,WAAW;SACG;QAC1B;YACI,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,kBAAkB;SACN;KAC5B,CAAC;IAGF,MAAM,kBAAkB,GAAoB;QACxC,GAAG,QAAQ;QACX,aAAa,EAAE;YACX,GAAG,QAAQ,CAAC,aAAa;YACzB,WAAW,EAAE;gBACT,IAAI,EAAE,aAAa;gBACnB,IAAI,EAAE,qBAAqB;gBAC3B,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,kBAAkB;aAC7B;SACJ;KACJ,CAAC;IAEF,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC/F,CAAC;IAED,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;QACjF,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC1D,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;YACjC,CAAC;QACL,CAAC;QAED,MAAM,UAAU,GAAG,IAAA,4CAA2B,EAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;QACjF,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;YACxB,OAAO;gBACH,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,UAAU,CAAC,KAAK;aAC3B,CAAC;QACN,CAAC;QAED,OAAO,UAAU,CAAC,KAA2B,CAAC;IAClD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;QAC7C,OAAO;YACH,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,+BAA+B;SACnF,CAAC;IACN,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ensemble_request.d.ts","sourceRoot":"","sources":["../../core/ensemble_request.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,mBAAmB,EACnB,aAAa,EAGb,eAAe,EAKlB,MAAM,mBAAmB,CAAC;AAsC3B,wBAAuB,eAAe,CAClC,QAAQ,EAAE,aAAa,EACvB,KAAK,GAAE,eAAoB,GAC5B,cAAc,CAAC,mBAAmB,CAAC,CAkRrC;AA0dD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAG9G"}
1
+ {"version":3,"file":"ensemble_request.d.ts","sourceRoot":"","sources":["../../core/ensemble_request.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,mBAAmB,EACnB,aAAa,EAGb,eAAe,EAKlB,MAAM,mBAAmB,CAAC;AA0J3B,wBAAuB,eAAe,CAClC,QAAQ,EAAE,aAAa,EACvB,KAAK,GAAE,eAAoB,GAC5B,cAAc,CAAC,mBAAmB,CAAC,CAwUrC;AAiuBD,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAG9G"}