cactus-react-native 0.2.5 → 0.2.6

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 (42) hide show
  1. package/README.md +48 -0
  2. package/ios/cactus.xcframework/ios-arm64_x86_64-simulator/cactus.framework/cactus +0 -0
  3. package/ios/cactus.xcframework/tvos-arm64_x86_64-simulator/cactus.framework/cactus +0 -0
  4. package/lib/commonjs/agent.js +74 -0
  5. package/lib/commonjs/agent.js.map +1 -0
  6. package/lib/commonjs/chat.js.map +1 -1
  7. package/lib/commonjs/index.js +17 -16
  8. package/lib/commonjs/index.js.map +1 -1
  9. package/lib/commonjs/lm.js +1 -4
  10. package/lib/commonjs/lm.js.map +1 -1
  11. package/lib/commonjs/telemetry.js +0 -1
  12. package/lib/commonjs/telemetry.js.map +1 -1
  13. package/lib/commonjs/vlm.js +0 -1
  14. package/lib/commonjs/vlm.js.map +1 -1
  15. package/lib/module/agent.js +69 -0
  16. package/lib/module/agent.js.map +1 -0
  17. package/lib/module/chat.js.map +1 -1
  18. package/lib/module/index.js +4 -17
  19. package/lib/module/index.js.map +1 -1
  20. package/lib/module/lm.js +1 -4
  21. package/lib/module/lm.js.map +1 -1
  22. package/lib/module/telemetry.js +0 -1
  23. package/lib/module/telemetry.js.map +1 -1
  24. package/lib/module/vlm.js +0 -1
  25. package/lib/module/vlm.js.map +1 -1
  26. package/lib/typescript/agent.d.ts +31 -0
  27. package/lib/typescript/agent.d.ts.map +1 -0
  28. package/lib/typescript/chat.d.ts +2 -0
  29. package/lib/typescript/chat.d.ts.map +1 -1
  30. package/lib/typescript/index.d.ts +2 -7
  31. package/lib/typescript/index.d.ts.map +1 -1
  32. package/lib/typescript/lm.d.ts.map +1 -1
  33. package/lib/typescript/telemetry.d.ts.map +1 -1
  34. package/lib/typescript/vlm.d.ts.map +1 -1
  35. package/package.json +1 -1
  36. package/src/agent.ts +114 -0
  37. package/src/chat.ts +3 -1
  38. package/src/index.ts +10 -16
  39. package/src/lm.ts +1 -4
  40. package/src/telemetry.ts +0 -1
  41. package/src/tools.ts +1 -1
  42. package/src/vlm.ts +0 -1
package/README.md CHANGED
@@ -729,6 +729,54 @@ const { lm } = await CactusLM.init({
729
729
  });
730
730
  ```
731
731
 
732
+ ## Tool Calling with CactusAgent
733
+
734
+ The `CactusAgent` class extends `CactusLM` with built-in tool calling capabilities:
735
+
736
+ ```typescript
737
+ import { CactusAgent } from 'cactus-react-native';
738
+
739
+ const { agent, error } = await CactusAgent.init({
740
+ model: '/path/to/model.gguf', // we recommend Qwen 3 family, 0.6B is great
741
+ n_ctx: 2048,
742
+ });
743
+
744
+ const weatherTool = agent.addTool(
745
+ (location: string) => `Weather in ${location}: 72°F, sunny`,
746
+ 'Get current weather for a location',
747
+ {
748
+ location: { type: 'string', description: 'City name', required: true }
749
+ }
750
+ );
751
+
752
+ const messages = [{ role: 'user', content: 'What\'s the weather in NYC?' }];
753
+ const result = await agent.completionWithTools(messages, {
754
+ n_predict: 200,
755
+ temperature: 0.7,
756
+ });
757
+
758
+ await agent.release();
759
+ ```
760
+
761
+ ### Custom Tools
762
+
763
+ ```typescript
764
+ // Math calculator tool
765
+ const calculator = agent.addTool(
766
+ (expression: string) => {
767
+ try {
768
+ return `Result: ${eval(expression)}`;
769
+ } catch (e) {
770
+ return 'Invalid expression';
771
+ }
772
+ },
773
+ 'Evaluate mathematical expressions',
774
+ {
775
+ expression: { type: 'string', description: 'Math expression to evaluate', required: true }
776
+ }
777
+ );
778
+ ```
779
+
732
780
  ## API Reference
733
781
 
734
782
  ### CactusLM
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CactusAgent = void 0;
7
+ var _lm = require("./lm");
8
+ var _tools = require("./tools");
9
+ class CactusAgent extends _lm.CactusLM {
10
+ constructor(context) {
11
+ super(context);
12
+ this.tools = new _tools.Tools();
13
+ }
14
+ static async init(params, onProgress, cactusToken, retryOptions) {
15
+ const result = await _lm.CactusLM.init(params, onProgress, cactusToken, retryOptions);
16
+ if (result.error || !result.lm) {
17
+ return {
18
+ agent: null,
19
+ error: result.error,
20
+ lm: null
21
+ };
22
+ }
23
+ const agent = Object.setPrototypeOf(result.lm, CactusAgent.prototype);
24
+ agent.tools = new _tools.Tools();
25
+ return {
26
+ agent,
27
+ error: null,
28
+ lm: agent
29
+ };
30
+ }
31
+ addTool(func, description, parameters) {
32
+ return this.tools.add(func, description, parameters);
33
+ }
34
+ getTools() {
35
+ return this.tools;
36
+ }
37
+ async completionWithTools(messages, params = {}, callback, recursionCount = 0, recursionLimit = 3) {
38
+ const tools = params.tools || this.tools;
39
+ if (!messages?.length) {
40
+ return this.completion([], params, callback);
41
+ }
42
+ if (!tools || tools.getSchemas().length === 0) {
43
+ return this.completion(messages, params, callback);
44
+ }
45
+ if (recursionCount >= recursionLimit) {
46
+ return this.completion(messages, {
47
+ ...params,
48
+ jinja: true,
49
+ tools: tools.getSchemas()
50
+ }, callback);
51
+ }
52
+ const {
53
+ newMessages,
54
+ requiresReset
55
+ } = this.conversationHistoryManager.processNewMessages(messages);
56
+ if (requiresReset) {
57
+ this.context?.rewind();
58
+ this.conversationHistoryManager.reset();
59
+ }
60
+ const result = await this.context.completionWithTools({
61
+ ...params,
62
+ messages: newMessages.length > 0 ? newMessages : messages,
63
+ tools: tools
64
+ }, callback, recursionCount, recursionLimit);
65
+ this.conversationHistoryManager.update(newMessages.length > 0 ? newMessages : messages, {
66
+ role: 'assistant',
67
+ content: result.content,
68
+ tool_calls: result.tool_calls
69
+ });
70
+ return result;
71
+ }
72
+ }
73
+ exports.CactusAgent = CactusAgent;
74
+ //# sourceMappingURL=agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_lm","require","_tools","CactusAgent","CactusLM","constructor","context","tools","Tools","init","params","onProgress","cactusToken","retryOptions","result","error","lm","agent","Object","setPrototypeOf","prototype","addTool","func","description","parameters","add","getTools","completionWithTools","messages","callback","recursionCount","recursionLimit","length","completion","getSchemas","jinja","newMessages","requiresReset","conversationHistoryManager","processNewMessages","rewind","reset","update","role","content","tool_calls","exports"],"sourceRoot":"../../src","sources":["agent.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["formatChat","messages","chat","forEach","currMsg","role","content","Array","isArray","part","text","TypeError","Error","push","ConversationHistoryManager","history","processNewMessages","fullMessageHistory","divergent","length","i","JSON","stringify","newMessages","requiresReset","slice","update","assistantResponse","reset","getMessages","exports"],"sourceRoot":"../../src","sources":["chat.ts"],"mappings":";;;;;;;AAWO,SAASA,UAAUA,CACxBC,QAAsC,EACZ;EAC1B,MAAMC,IAA8B,GAAG,EAAE;EAEzCD,QAAQ,CAACE,OAAO,CAAEC,OAAO,IAAK;IAC5B,MAAMC,IAAY,GAAGD,OAAO,CAACC,IAAI,IAAI,EAAE;IAEvC,IAAIC,OAAe,GAAG,EAAE;IACxB,IAAI,SAAS,IAAIF,OAAO,EAAE;MACxB,IAAI,OAAOA,OAAO,CAACE,OAAO,KAAK,QAAQ,EAAE;QACvC;QAAC,CAAC;UAAEA;QAAQ,CAAC,GAAGF,OAAO;MACzB,CAAC,MAAM,IAAIG,KAAK,CAACC,OAAO,CAACJ,OAAO,CAACE,OAAO,CAAC,EAAE;QACzCF,OAAO,CAACE,OAAO,CAACH,OAAO,CAAEM,IAAI,IAAK;UAChC,IAAI,MAAM,IAAIA,IAAI,EAAE;YAClBH,OAAO,IAAI,GAAGA,OAAO,GAAG,IAAI,GAAG,EAAE,GAAGG,IAAI,CAACC,IAAI,EAAE;UACjD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACL,MAAM,IAAIC,SAAS,CACjB,kFACF,CAAC;MACH;IACF,CAAC,MAAM;MACL,MAAM,IAAIC,KAAK,CACb,6EACF,CAAC;IACH;IAEAV,IAAI,CAACW,IAAI,CAAC;MAAER,IAAI;MAAEC;IAAQ,CAAC,CAAC;EAC9B,CAAC,CAAC;EACF,OAAOJ,IAAI;AACb;AAOO,MAAMY,0BAA0B,CAAC;EAC9BC,OAAO,GAAiC,EAAE;EAE3CC,kBAAkBA,CACvBC,kBAAgD,EAC7B;IACnB,IAAIC,SAAS,GAAGD,kBAAkB,CAACE,MAAM,GAAG,IAAI,CAACJ,OAAO,CAACI,MAAM;IAC/D,IAAI,CAACD,SAAS,EAAE;MACd,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACL,OAAO,CAACI,MAAM,EAAEC,CAAC,EAAE,EAAE;QAC5C,IAAIC,IAAI,CAACC,SAAS,CAAC,IAAI,CAACP,OAAO,CAACK,CAAC,CAAC,CAAC,KAAKC,IAAI,CAACC,SAAS,CAACL,kBAAkB,CAACG,CAAC,CAAC,CAAC,EAAE;UAC7EF,SAAS,GAAG,IAAI;UAChB;QACF;MACF;IACF;IAEA,IAAIA,SAAS,EAAE;MACb,OAAO;QAAEK,WAAW,EAAEN,kBAAkB;QAAEO,aAAa,EAAE;MAAK,CAAC;IACjE;IAEA,MAAMD,WAAW,GAAGN,kBAAkB,CAACQ,KAAK,CAAC,IAAI,CAACV,OAAO,CAACI,MAAM,CAAC;IACjE,OAAO;MAAEI,WAAW;MAAEC,aAAa,EAAE;IAAM,CAAC;EAC9C;EAEOE,MAAMA,CACXH,WAAyC,EACzCI,iBAA6C,EAC7C;IACA,IAAI,CAACZ,OAAO,CAACF,IAAI,CAAC,GAAGU,WAAW,EAAEI,iBAAiB,CAAC;EACtD;EAEOC,KAAKA,CAAA,EAAG;IACb,IAAI,CAACb,OAAO,GAAG,EAAE;EACnB;EAEOc,WAAWA,CAAA,EAAiC;IACjD,OAAO,IAAI,CAACd,OAAO;EACrB;AACF;AAACe,OAAA,CAAAhB,0BAAA,GAAAA,0BAAA","ignoreList":[]}
1
+ {"version":3,"names":["formatChat","messages","chat","forEach","currMsg","role","content","Array","isArray","part","text","TypeError","Error","push","ConversationHistoryManager","history","processNewMessages","fullMessageHistory","divergent","length","i","JSON","stringify","newMessages","requiresReset","slice","update","assistantResponse","reset","getMessages","exports"],"sourceRoot":"../../src","sources":["chat.ts"],"mappings":";;;;;;;AAaO,SAASA,UAAUA,CACxBC,QAAsC,EACZ;EAC1B,MAAMC,IAA8B,GAAG,EAAE;EAEzCD,QAAQ,CAACE,OAAO,CAAEC,OAAO,IAAK;IAC5B,MAAMC,IAAY,GAAGD,OAAO,CAACC,IAAI,IAAI,EAAE;IAEvC,IAAIC,OAAe,GAAG,EAAE;IACxB,IAAI,SAAS,IAAIF,OAAO,EAAE;MACxB,IAAI,OAAOA,OAAO,CAACE,OAAO,KAAK,QAAQ,EAAE;QACvC;QAAC,CAAC;UAAEA;QAAQ,CAAC,GAAGF,OAAO;MACzB,CAAC,MAAM,IAAIG,KAAK,CAACC,OAAO,CAACJ,OAAO,CAACE,OAAO,CAAC,EAAE;QACzCF,OAAO,CAACE,OAAO,CAACH,OAAO,CAAEM,IAAI,IAAK;UAChC,IAAI,MAAM,IAAIA,IAAI,EAAE;YAClBH,OAAO,IAAI,GAAGA,OAAO,GAAG,IAAI,GAAG,EAAE,GAAGG,IAAI,CAACC,IAAI,EAAE;UACjD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACL,MAAM,IAAIC,SAAS,CACjB,kFACF,CAAC;MACH;IACF,CAAC,MAAM;MACL,MAAM,IAAIC,KAAK,CACb,6EACF,CAAC;IACH;IAEAV,IAAI,CAACW,IAAI,CAAC;MAAER,IAAI;MAAEC;IAAQ,CAAC,CAAC;EAC9B,CAAC,CAAC;EACF,OAAOJ,IAAI;AACb;AAOO,MAAMY,0BAA0B,CAAC;EAC9BC,OAAO,GAAiC,EAAE;EAE3CC,kBAAkBA,CACvBC,kBAAgD,EAC7B;IACnB,IAAIC,SAAS,GAAGD,kBAAkB,CAACE,MAAM,GAAG,IAAI,CAACJ,OAAO,CAACI,MAAM;IAC/D,IAAI,CAACD,SAAS,EAAE;MACd,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACL,OAAO,CAACI,MAAM,EAAEC,CAAC,EAAE,EAAE;QAC5C,IAAIC,IAAI,CAACC,SAAS,CAAC,IAAI,CAACP,OAAO,CAACK,CAAC,CAAC,CAAC,KAAKC,IAAI,CAACC,SAAS,CAACL,kBAAkB,CAACG,CAAC,CAAC,CAAC,EAAE;UAC7EF,SAAS,GAAG,IAAI;UAChB;QACF;MACF;IACF;IAEA,IAAIA,SAAS,EAAE;MACb,OAAO;QAAEK,WAAW,EAAEN,kBAAkB;QAAEO,aAAa,EAAE;MAAK,CAAC;IACjE;IAEA,MAAMD,WAAW,GAAGN,kBAAkB,CAACQ,KAAK,CAAC,IAAI,CAACV,OAAO,CAACI,MAAM,CAAC;IACjE,OAAO;MAAEI,WAAW;MAAEC,aAAa,EAAE;IAAM,CAAC;EAC9C;EAEOE,MAAMA,CACXH,WAAyC,EACzCI,iBAA6C,EAC7C;IACA,IAAI,CAACZ,OAAO,CAACF,IAAI,CAAC,GAAGU,WAAW,EAAEI,iBAAiB,CAAC;EACtD;EAEOC,KAAKA,CAAA,EAAG;IACb,IAAI,CAACb,OAAO,GAAG,EAAE;EACnB;EAEOc,WAAWA,CAAA,EAAiC;IACjD,OAAO,IAAI,CAACd,OAAO;EACrB;AACF;AAACe,OAAA,CAAAhB,0BAAA,GAAAA,0BAAA","ignoreList":[]}
@@ -28,10 +28,18 @@ var _exportNames = {
28
28
  tokenize: true,
29
29
  getDeviceInfo: true,
30
30
  Tools: true,
31
+ parseAndExecuteTool: true,
31
32
  CactusLM: true,
32
33
  CactusVLM: true,
33
- CactusTTS: true
34
+ CactusTTS: true,
35
+ CactusAgent: true
34
36
  };
37
+ Object.defineProperty(exports, "CactusAgent", {
38
+ enumerable: true,
39
+ get: function () {
40
+ return _agent.CactusAgent;
41
+ }
42
+ });
35
43
  Object.defineProperty(exports, "CactusLM", {
36
44
  enumerable: true,
37
45
  get: function () {
@@ -63,6 +71,12 @@ exports.initLlama = initLlama;
63
71
  exports.isVocoderEnabled = exports.isMultimodalSupportVision = exports.isMultimodalSupportAudio = exports.isMultimodalEnabled = exports.initVocoder = exports.initMultimodal = void 0;
64
72
  exports.loadLlamaModelInfo = loadLlamaModelInfo;
65
73
  exports.multimodalCompletion = void 0;
74
+ Object.defineProperty(exports, "parseAndExecuteTool", {
75
+ enumerable: true,
76
+ get: function () {
77
+ return _tools.parseAndExecuteTool;
78
+ }
79
+ });
66
80
  exports.releaseAllLlama = releaseAllLlama;
67
81
  exports.releaseVocoder = exports.releaseMultimodal = void 0;
68
82
  exports.setContextLimit = setContextLimit;
@@ -88,6 +102,7 @@ Object.keys(_remote).forEach(function (key) {
88
102
  var _lm = require("./lm");
89
103
  var _vlm = require("./vlm");
90
104
  var _tts = require("./tts");
105
+ var _agent = require("./agent");
91
106
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
92
107
  const EVENT_ON_INIT_CONTEXT_PROGRESS = '@Cactus_onInitContextProgress';
93
108
  const EVENT_ON_TOKEN = '@Cactus_onToken';
@@ -107,7 +122,6 @@ if (EventEmitter) {
107
122
  EventEmitter.addListener(EVENT_ON_NATIVE_LOG, evt => {
108
123
  logListeners.forEach(listener => listener(evt.level, evt.text));
109
124
  });
110
- // Trigger unset to use default log callback
111
125
  _NativeCactus.default?.toggleNativeLog?.(false)?.catch?.(() => {});
112
126
  }
113
127
  const getJsonSchema = responseFormat => {
@@ -138,19 +152,11 @@ class LlamaContext {
138
152
  this.reasonNoGPU = reasonNoGPU;
139
153
  this.model = model;
140
154
  }
141
-
142
- /**
143
- * Load cached prompt & completion state from a file.
144
- */
145
155
  async loadSession(filepath) {
146
156
  let path = filepath;
147
157
  if (path.startsWith('file://')) path = path.slice(7);
148
158
  return _NativeCactus.default.loadSession(this.id, path);
149
159
  }
150
-
151
- /**
152
- * Save current cached prompt & completion state to a file.
153
- */
154
160
  async saveSession(filepath, options) {
155
161
  return _NativeCactus.default.saveSession(this.id, filepath, options?.tokenSize || -1);
156
162
  }
@@ -179,11 +185,9 @@ class LlamaContext {
179
185
  }
180
186
  async completionWithTools(params, callback, recursionCount = 0, recursionLimit = 3) {
181
187
  if (!params.messages) {
182
- // tool calling only works with messages
183
188
  return this.completion(params, callback);
184
189
  }
185
190
  if (!params.tools) {
186
- // no tools => default completion
187
191
  return this.completion(params, callback);
188
192
  }
189
193
  if (recursionCount >= recursionLimit) {
@@ -193,8 +197,7 @@ class LlamaContext {
193
197
  tools: params.tools.getSchemas()
194
198
  }, callback);
195
199
  }
196
- const messages = [...params.messages]; // avoid mutating the original messages
197
-
200
+ const messages = [...params.messages];
198
201
  const result = await this.completion({
199
202
  ...params,
200
203
  messages: messages,
@@ -235,7 +238,6 @@ class LlamaContext {
235
238
  emit_partial_completion: !!callback
236
239
  };
237
240
  if (params.messages) {
238
- // messages always win
239
241
  const formattedResult = await this.getFormattedChat(params.messages, params.chat_template || params.chatTemplate, {
240
242
  jinja: params.jinja,
241
243
  tools: params.tools,
@@ -377,7 +379,6 @@ async function loadLlamaModelInfo(model) {
377
379
  return _NativeCactus.default.modelInfo(path, modelInfoSkip);
378
380
  }
379
381
  const poolTypeMap = {
380
- // -1 is unspecified as undefined
381
382
  none: 0,
382
383
  mean: 1,
383
384
  cls: 2,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_NativeCactus","_interopRequireDefault","_chat","_tools","_telemetry","_remote","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_lm","_vlm","_tts","e","__esModule","default","EVENT_ON_INIT_CONTEXT_PROGRESS","EVENT_ON_TOKEN","EVENT_ON_NATIVE_LOG","EventEmitter","Platform","OS","NativeEventEmitter","Cactus","DeviceEventEmitter","logListeners","addListener","evt","listener","level","text","toggleNativeLog","catch","getJsonSchema","responseFormat","type","json_schema","schema","telemetryParams","n_gpu_layers","n_ctx","model","LlamaContext","gpu","reasonNoGPU","constructor","contextId","id","loadSession","filepath","path","startsWith","slice","saveSession","options","tokenSize","isLlamaChatSupported","chatTemplates","llamaChat","isJinjaSupported","minja","toolUse","getFormattedChat","messages","template","params","chat","formatChat","useJinja","jinja","tmpl","undefined","jsonSchema","response_format","JSON","stringify","tools","parallel_tool_calls","tool_choice","completionWithTools","callback","recursionCount","recursionLimit","completion","getSchemas","result","toolCalled","toolName","toolInput","toolOutput","parseAndExecuteTool","assistantMessage","role","content","tool_calls","push","toolCallId","toolMessage","tool_call_id","nativeParams","prompt","emit_partial_completion","formattedResult","chat_template","chatTemplate","chat_format","grammar","grammar_lazy","grammar_triggers","preserved_tokens","additional_stops","stop","startTime","Date","now","firstTokenTime","deviceInfo","getDeviceInfo","wrappedCallback","data","tokenListener","tokenResult","Error","promise","then","completionResult","Telemetry","track","event","tok_per_sec","timings","predicted_per_second","toks_generated","predicted_n","ttft","remove","err","stopCompletion","tokenize","detokenize","tokens","embedding","embeddingResult","totalTime","mode","embedding_time","bench","pp","tg","pl","nr","modelDesc","modelSize","modelNParams","ppAvg","ppStd","tgAvg","tgStd","parse","applyLoraAdapters","loraList","loraAdapters","map","l","replace","scaled","removeLoraAdapters","getLoadedLoraAdapters","release","releaseContext","rewind","enabled","addNativeLogListener","splice","indexOf","setContextLimit","limit","contextIdCounter","contextIdRandom","process","env","NODE_ENV","Math","floor","random","modelInfoSkip","loadLlamaModelInfo","modelInfo","poolTypeMap","none","mean","cls","last","rank","initLlama","is_model_asset","isModelAsset","pooling_type","poolingType","lora","lora_list","rest","onProgress","loraPath","removeProgressListener","progress","poolType","modelDetails","androidLib","initContext","use_progress_callback","releaseAllLlama","releaseAllContexts","initMultimodal","mmprojPath","useGpu","isMultimodalEnabled","isMultimodalSupportVision","isMultimodalSupportAudio","releaseMultimodal","multimodalCompletion","mediaPaths","num_images","length","initVocoder","vocoderModelPath","isVocoderEnabled","getTTSType","getFormattedAudioCompletion","speakerJsonStr","textToSpeak","getAudioCompletionGuideTokens","decodeAudioTokens","releaseVocoder"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_NativeCactus","_interopRequireDefault","_chat","_tools","_telemetry","_remote","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_lm","_vlm","_tts","_agent","e","__esModule","default","EVENT_ON_INIT_CONTEXT_PROGRESS","EVENT_ON_TOKEN","EVENT_ON_NATIVE_LOG","EventEmitter","Platform","OS","NativeEventEmitter","Cactus","DeviceEventEmitter","logListeners","addListener","evt","listener","level","text","toggleNativeLog","catch","getJsonSchema","responseFormat","type","json_schema","schema","telemetryParams","n_gpu_layers","n_ctx","model","LlamaContext","gpu","reasonNoGPU","constructor","contextId","id","loadSession","filepath","path","startsWith","slice","saveSession","options","tokenSize","isLlamaChatSupported","chatTemplates","llamaChat","isJinjaSupported","minja","toolUse","getFormattedChat","messages","template","params","chat","formatChat","useJinja","jinja","tmpl","undefined","jsonSchema","response_format","JSON","stringify","tools","parallel_tool_calls","tool_choice","completionWithTools","callback","recursionCount","recursionLimit","completion","getSchemas","result","toolCalled","toolName","toolInput","toolOutput","parseAndExecuteTool","assistantMessage","role","content","tool_calls","push","toolCallId","toolMessage","tool_call_id","nativeParams","prompt","emit_partial_completion","formattedResult","chat_template","chatTemplate","chat_format","grammar","grammar_lazy","grammar_triggers","preserved_tokens","additional_stops","stop","startTime","Date","now","firstTokenTime","deviceInfo","getDeviceInfo","wrappedCallback","data","tokenListener","tokenResult","Error","promise","then","completionResult","Telemetry","track","event","tok_per_sec","timings","predicted_per_second","toks_generated","predicted_n","ttft","remove","err","stopCompletion","tokenize","detokenize","tokens","embedding","embeddingResult","totalTime","mode","embedding_time","bench","pp","tg","pl","nr","modelDesc","modelSize","modelNParams","ppAvg","ppStd","tgAvg","tgStd","parse","applyLoraAdapters","loraList","loraAdapters","map","l","replace","scaled","removeLoraAdapters","getLoadedLoraAdapters","release","releaseContext","rewind","enabled","addNativeLogListener","splice","indexOf","setContextLimit","limit","contextIdCounter","contextIdRandom","process","env","NODE_ENV","Math","floor","random","modelInfoSkip","loadLlamaModelInfo","modelInfo","poolTypeMap","none","mean","cls","last","rank","initLlama","is_model_asset","isModelAsset","pooling_type","poolingType","lora","lora_list","rest","onProgress","loraPath","removeProgressListener","progress","poolType","modelDetails","androidLib","initContext","use_progress_callback","releaseAllLlama","releaseAllContexts","initMultimodal","mmprojPath","useGpu","isMultimodalEnabled","isMultimodalSupportVision","isMultimodalSupportAudio","releaseMultimodal","multimodalCompletion","mediaPaths","num_images","length","initVocoder","vocoderModelPath","isVocoderEnabled","getTTSType","getFormattedAudioCompletion","speakerJsonStr","textToSpeak","getAudioCompletionGuideTokens","decodeAudioTokens","releaseVocoder"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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","ignoreList":[]}
@@ -11,8 +11,6 @@ var _chat = require("./chat");
11
11
  // @ts-ignore
12
12
 
13
13
  class CactusLM {
14
- // the initPromise enables a "async singleton" initialization pattern which
15
- // protects against a race condition in the event of multiple init attempts
16
14
  static _initCache = new Map();
17
15
  static getCacheKey(params, cactusToken, retryOptions) {
18
16
  return JSON.stringify({
@@ -31,7 +29,6 @@ class CactusLM {
31
29
  }
32
30
  const key = CactusLM.getCacheKey(params, cactusToken, retryOptions);
33
31
  if (CactusLM._initCache.has(key)) {
34
- // concurrent initialization calls with the same params all get the same cached Promise
35
32
  return CactusLM._initCache.get(key);
36
33
  }
37
34
  const initPromise = (async () => {
@@ -95,7 +92,7 @@ class CactusLM {
95
92
  CactusLM._initCache.set(key, initPromise);
96
93
  const result = await initPromise;
97
94
  if (result.error) {
98
- CactusLM._initCache.delete(key); // Reset on failure to allow retries
95
+ CactusLM._initCache.delete(key);
99
96
  }
100
97
  return result;
101
98
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","_telemetry","_remote","_chat","CactusLM","_initCache","Map","getCacheKey","params","cactusToken","retryOptions","JSON","stringify","constructor","context","conversationHistoryManager","ConversationHistoryManager","init","onProgress","setCactusToken","key","has","get","initPromise","maxRetries","delayMs","configs","n_gpu_layers","sleep","ms","Promise","resolve","start","Date","now","wait","then","config","lastError","attempt","initLlama","lm","error","e","isLastConfig","indexOf","length","isLastAttempt","Telemetry","n_ctx","model","delay","Math","pow","Error","set","result","delete","completion","messages","callback","newMessages","requiresReset","processNewMessages","rewind","reset","console","warn","update","role","content","embedding","text","mode","_handleRemoteEmbedding","_handleLocalEmbedding","remoteError","localError","embeddingValues","getVertexAIEmbedding","release","stopCompletion","exports"],"sourceRoot":"../../src","sources":["lm.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_index","require","_telemetry","_remote","_chat","CactusLM","_initCache","Map","getCacheKey","params","cactusToken","retryOptions","JSON","stringify","constructor","context","conversationHistoryManager","ConversationHistoryManager","init","onProgress","setCactusToken","key","has","get","initPromise","maxRetries","delayMs","configs","n_gpu_layers","sleep","ms","Promise","resolve","start","Date","now","wait","then","config","lastError","attempt","initLlama","lm","error","e","isLastConfig","indexOf","length","isLastAttempt","Telemetry","n_ctx","model","delay","Math","pow","Error","set","result","delete","completion","messages","callback","newMessages","requiresReset","processNewMessages","rewind","reset","console","warn","update","role","content","embedding","text","mode","_handleRemoteEmbedding","_handleLocalEmbedding","remoteError","localError","embeddingValues","getVertexAIEmbedding","release","stopCompletion","exports"],"sourceRoot":"../../src","sources":["lm.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAYA,IAAAC,UAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,KAAA,GAAAH,OAAA;AAbA;;AAoBO,MAAMI,QAAQ,CAAC;EAIpB,OAAeC,UAAU,GAAyC,IAAIC,GAAG,CAAC,CAAC;EAE3E,OAAeC,WAAWA,CAACC,MAAqB,EAAEC,WAAoB,EAAEC,YAAwD,EAAU;IACxI,OAAOC,IAAI,CAACC,SAAS,CAAC;MAAEJ,MAAM;MAAEC,WAAW;MAAEC;IAAa,CAAC,CAAC;EAC9D;EAEUG,WAAWA,CAACC,OAAqB,EAAE;IAC3C,IAAI,CAACA,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,0BAA0B,GAAG,IAAIC,gCAA0B,CAAC,CAAC;EACpE;EAEA,aAAaC,IAAIA,CACfT,MAAqB,EACrBU,UAAuC,EACvCT,WAAoB,EACpBC,YAAwD,EAC/B;IAEzB,IAAID,WAAW,EAAE;MACf,IAAAU,sBAAc,EAACV,WAAW,CAAC;IAC7B;IAEA,MAAMW,GAAG,GAAGhB,QAAQ,CAACG,WAAW,CAACC,MAAM,EAAEC,WAAW,EAAEC,YAAY,CAAC;IACnE,IAAIN,QAAQ,CAACC,UAAU,CAACgB,GAAG,CAACD,GAAG,CAAC,EAAE;MAChC,OAAOhB,QAAQ,CAACC,UAAU,CAACiB,GAAG,CAACF,GAAG,CAAC;IACrC;IAEA,MAAMG,WAAW,GAAG,CAAC,YAAY;MAC/B,MAAMC,UAAU,GAAGd,YAAY,EAAEc,UAAU,IAAI,CAAC;MAChD,MAAMC,OAAO,GAAGf,YAAY,EAAEe,OAAO,IAAI,IAAI;MAE7C,MAAMC,OAAO,GAAG,CACdlB,MAAM,EACN;QAAE,GAAGA,MAAM;QAAEmB,YAAY,EAAE;MAAE,CAAC,CAC/B;MAED,MAAMC,KAAK,GAAIC,EAAU,IAAoB;QAC3C,OAAO,IAAIC,OAAO,CAACC,OAAO,IAAI;UAC5B,MAAMC,KAAK,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;UACxB,MAAMC,IAAI,GAAGA,CAAA,KAAM;YACjB,IAAIF,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF,KAAK,IAAIH,EAAE,EAAE;cAC5BE,OAAO,CAAC,CAAC;YACX,CAAC,MAAM;cACLD,OAAO,CAACC,OAAO,CAAC,CAAC,CAACK,IAAI,CAACD,IAAI,CAAC;YAC9B;UACF,CAAC;UACDA,IAAI,CAAC,CAAC;QACR,CAAC,CAAC;MACJ,CAAC;MAED,KAAK,MAAME,MAAM,IAAIX,OAAO,EAAE;QAC5B,IAAIY,SAAuB,GAAG,IAAI;QAElC,KAAK,IAAIC,OAAO,GAAG,CAAC,EAAEA,OAAO,IAAIf,UAAU,EAAEe,OAAO,EAAE,EAAE;UACtD,IAAI;YACF,MAAMzB,OAAO,GAAG,MAAM,IAAA0B,gBAAS,EAACH,MAAM,EAAEnB,UAAU,CAAC;YACnD,OAAO;cAAEuB,EAAE,EAAE,IAAIrC,QAAQ,CAACU,OAAO,CAAC;cAAE4B,KAAK,EAAE;YAAK,CAAC;UACnD,CAAC,CAAC,OAAOC,CAAC,EAAE;YACVL,SAAS,GAAGK,CAAU;YACtB,MAAMC,YAAY,GAAGlB,OAAO,CAACmB,OAAO,CAACR,MAAM,CAAC,KAAKX,OAAO,CAACoB,MAAM,GAAG,CAAC;YACnE,MAAMC,aAAa,GAAGR,OAAO,KAAKf,UAAU;YAE5CwB,oBAAS,CAACN,KAAK,CAACC,CAAC,EAAW;cAC1BhB,YAAY,EAAEU,MAAM,CAACV,YAAY,IAAI,IAAI;cACzCsB,KAAK,EAAEZ,MAAM,CAACY,KAAK,IAAI,IAAI;cAC3BC,KAAK,EAAEb,MAAM,CAACa,KAAK,IAAI;YACzB,CAAC,CAAC;YAEF,IAAI,CAACH,aAAa,EAAE;cAClB,MAAMI,KAAK,GAAG1B,OAAO,GAAG2B,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEd,OAAO,GAAG,CAAC,CAAC;cAChD,MAAMX,KAAK,CAACuB,KAAK,CAAC;YACpB,CAAC,MAAM,IAAI,CAACP,YAAY,EAAE;cACxB;YACF;UACF;QACF;QAEA,IAAIlB,OAAO,CAACmB,OAAO,CAACR,MAAM,CAAC,KAAKX,OAAO,CAACoB,MAAM,GAAG,CAAC,IAAIR,SAAS,EAAE;UAC/D,OAAO;YAAEG,EAAE,EAAE,IAAI;YAAEC,KAAK,EAAEJ;UAAU,CAAC;QACvC;MACF;MACA,OAAO;QAAEG,EAAE,EAAE,IAAI;QAAEC,KAAK,EAAE,IAAIY,KAAK,CAAC,iDAAiD;MAAE,CAAC;IAC1F,CAAC,EAAE,CAAC;IAEJlD,QAAQ,CAACC,UAAU,CAACkD,GAAG,CAACnC,GAAG,EAAEG,WAAW,CAAC;IAEzC,MAAMiC,MAAM,GAAG,MAAMjC,WAAW;IAChC,IAAIiC,MAAM,CAACd,KAAK,EAAE;MAChBtC,QAAQ,CAACC,UAAU,CAACoD,MAAM,CAACrC,GAAG,CAAC;IACjC;IACA,OAAOoC,MAAM;EACf;EAEAE,UAAU,GAAG,MAAAA,CACXC,QAAsC,EACtCnD,MAAwB,GAAG,CAAC,CAAC,EAC7BoD,QAA8B,KACM;IACpC,MAAM;MAAEC,WAAW;MAAEC;IAAc,CAAC,GAClC,IAAI,CAAC/C,0BAA0B,CAACgD,kBAAkB,CAACJ,QAAQ,CAAC;IAE9D,IAAIG,aAAa,EAAE;MACjB,IAAI,CAAChD,OAAO,EAAEkD,MAAM,CAAC,CAAC;MACtB,IAAI,CAACjD,0BAA0B,CAACkD,KAAK,CAAC,CAAC;IACzC;IAEA,IAAIJ,WAAW,CAACf,MAAM,KAAK,CAAC,EAAE;MAC5BoB,OAAO,CAACC,IAAI,CAAC,0BAA0B,CAAC;IAC1C;IAEA,MAAMX,MAAM,GAAG,MAAM,IAAI,CAAC1C,OAAO,CAAC4C,UAAU,CAAC;MAAEC,QAAQ,EAAEE,WAAW;MAAE,GAAGrD;IAAO,CAAC,EAAEoD,QAAQ,CAAC;IAE5F,IAAI,CAAC7C,0BAA0B,CAACqD,MAAM,CAACP,WAAW,EAAE;MAClDQ,IAAI,EAAE,WAAW;MACjBC,OAAO,EAAEd,MAAM,CAACc;IAClB,CAAC,CAAC;IAEF,OAAOd,MAAM;EACf,CAAC;EAED,MAAMe,SAASA,CACbC,IAAY,EACZhE,MAAwB,EACxBiE,IAAY,GAAG,OAAO,EACU;IAChC,IAAIjB,MAA6B;IACjC,IAAIlB,SAAuB,GAAG,IAAI;IAElC,IAAImC,IAAI,KAAK,QAAQ,EAAE;MACrBjB,MAAM,GAAG,MAAM,IAAI,CAACkB,sBAAsB,CAACF,IAAI,CAAC;IAClD,CAAC,MAAM,IAAIC,IAAI,KAAK,OAAO,EAAE;MAC3BjB,MAAM,GAAG,MAAM,IAAI,CAACmB,qBAAqB,CAACH,IAAI,EAAEhE,MAAM,CAAC;IACzD,CAAC,MAAM,IAAIiE,IAAI,KAAK,YAAY,EAAE;MAChC,IAAI;QACFjB,MAAM,GAAG,MAAM,IAAI,CAACmB,qBAAqB,CAACH,IAAI,EAAEhE,MAAM,CAAC;MACzD,CAAC,CAAC,OAAOmC,CAAC,EAAE;QACVL,SAAS,GAAGK,CAAU;QACtB,IAAI;UACFa,MAAM,GAAG,MAAM,IAAI,CAACkB,sBAAsB,CAACF,IAAI,CAAC;QAClD,CAAC,CAAC,OAAOI,WAAW,EAAE;UACpB,MAAMtC,SAAS;QACjB;MACF;IACF,CAAC,MAAM,IAAImC,IAAI,KAAK,aAAa,EAAE;MACjC,IAAI;QACFjB,MAAM,GAAG,MAAM,IAAI,CAACkB,sBAAsB,CAACF,IAAI,CAAC;MAClD,CAAC,CAAC,OAAO7B,CAAC,EAAE;QACVL,SAAS,GAAGK,CAAU;QACtB,IAAI;UACFa,MAAM,GAAG,MAAM,IAAI,CAACmB,qBAAqB,CAACH,IAAI,EAAEhE,MAAM,CAAC;QACzD,CAAC,CAAC,OAAOqE,UAAU,EAAE;UACnB,MAAMvC,SAAS;QACjB;MACF;IACF,CAAC,MAAM;MACL,MAAM,IAAIgB,KAAK,CAAC,gBAAgB,GAAGmB,IAAI,GAAG,6DAA6D,CAAC;IAC1G;IACA,OAAOjB,MAAM;EACf;EAEA,MAAgBmB,qBAAqBA,CAACH,IAAY,EAAEhE,MAAwB,EAAkC;IAC5G,OAAO,IAAI,CAACM,OAAO,CAACyD,SAAS,CAACC,IAAI,EAAEhE,MAAM,CAAC;EAC7C;EAEA,MAAgBkE,sBAAsBA,CAACF,IAAY,EAAkC;IACnF,MAAMM,eAAe,GAAG,MAAM,IAAAC,4BAAoB,EAACP,IAAI,CAAC;IACxD,OAAO;MACLD,SAAS,EAAEO;IACb,CAAC;EACH;EAEAd,MAAM,GAAG,MAAAA,CAAA,KAA2B;IAClC,OAAO,IAAI,CAAClD,OAAO,EAAEkD,MAAM,CAAC,CAAC;EAC/B,CAAC;EAED,MAAMgB,OAAOA,CAAA,EAAkB;IAC7B,OAAO,IAAI,CAAClE,OAAO,CAACkE,OAAO,CAAC,CAAC;EAC/B;EAEA,MAAMC,cAAcA,CAAA,EAAkB;IACpC,OAAO,MAAM,IAAI,CAACnE,OAAO,CAACmE,cAAc,CAAC,CAAC;EAC5C;AAEF;AAACC,OAAA,CAAA9E,QAAA,GAAAA,QAAA","ignoreList":[]}
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.Telemetry = void 0;
7
7
  var _reactNative = require("react-native");
8
8
  var _projectId = require("./projectId");
9
- // Import package.json to get version
10
9
  const packageJson = require('../package.json');
11
10
  class Telemetry {
12
11
  static instance = null;
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_projectId","packageJson","Telemetry","instance","constructor","config","table","getFilename","path","split","pop","autoInit","supabaseUrl","supabaseKey","init","track","payload","options","deviceMetadata","trackInternal","error","errorInternal","record","project_id","PROJECT_ID","device_id","deviceId","device_manufacturer","make","device_model","model","os","Platform","OS","os_version","Version","toString","framework","framework_version","version","telemetry_payload","timestamp","Date","toISOString","model_filename","n_ctx","n_gpu_layers","sendRecord","catch","errorPayload","message","stack","name","error_payload","globalThis","fetch","method","headers","body","JSON","stringify","exports"],"sourceRoot":"../../src","sources":["telemetry.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_projectId","packageJson","Telemetry","instance","constructor","config","table","getFilename","path","split","pop","autoInit","supabaseUrl","supabaseKey","init","track","payload","options","deviceMetadata","trackInternal","error","errorInternal","record","project_id","PROJECT_ID","device_id","deviceId","device_manufacturer","make","device_model","model","os","Platform","OS","os_version","Version","toString","framework","framework_version","version","telemetry_payload","timestamp","Date","toISOString","model_filename","n_ctx","n_gpu_layers","sendRecord","catch","errorPayload","message","stack","name","error_payload","globalThis","fetch","method","headers","body","JSON","stringify","exports"],"sourceRoot":"../../src","sources":["telemetry.ts"],"mappings":"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","ignoreList":[]}
@@ -9,7 +9,6 @@ var _telemetry = require("./telemetry");
9
9
  var _remote = require("./remote");
10
10
  var _chat = require("./chat");
11
11
  class CactusVLM {
12
- // see CactusLM for detailed docs
13
12
  static _initCache = new Map();
14
13
  static getCacheKey(params, cactusToken, retryOptions) {
15
14
  return JSON.stringify({
@@ -1 +1 @@
1
- {"version":3,"names":["_index","require","_telemetry","_remote","_chat","CactusVLM","_initCache","Map","getCacheKey","params","cactusToken","retryOptions","JSON","stringify","constructor","context","conversationHistoryManager","ConversationHistoryManager","init","onProgress","setCactusToken","key","has","get","initPromise","maxRetries","delayMs","configs","n_gpu_layers","sleep","ms","Promise","resolve","start","Date","now","wait","then","config","lastError","attempt","initLlama","initMultimodal","id","mmproj","vlm","error","e","isLastConfig","indexOf","length","isLastAttempt","Telemetry","n_ctx","model","delay","Math","pow","Error","set","result","delete","completion","messages","callback","mode","_handleRemoteCompletion","_handleLocalCompletion","remoteError","localError","newMessages","requiresReset","processNewMessages","rewind","reset","console","warn","images","formattedPrompt","getFormattedChat","prompt","multimodalCompletion","emit_partial_completion","update","role","content","text","map","m","join","imagePath","responseText","getVisionCompletion","getTextCompletion","i","token","reasoning_content","tool_calls","tokens_predicted","split","tokens_evaluated","truncated","stopped_eos","stopped_word","stopped_limit","stopping_word","tokens_cached","timings","prompt_n","prompt_ms","prompt_per_token_ms","prompt_per_second","predicted_n","predicted_ms","predicted_per_token_ms","predicted_per_second","release","stopCompletion","exports"],"sourceRoot":"../../src","sources":["vlm.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_index","require","_telemetry","_remote","_chat","CactusVLM","_initCache","Map","getCacheKey","params","cactusToken","retryOptions","JSON","stringify","constructor","context","conversationHistoryManager","ConversationHistoryManager","init","onProgress","setCactusToken","key","has","get","initPromise","maxRetries","delayMs","configs","n_gpu_layers","sleep","ms","Promise","resolve","start","Date","now","wait","then","config","lastError","attempt","initLlama","initMultimodal","id","mmproj","vlm","error","e","isLastConfig","indexOf","length","isLastAttempt","Telemetry","n_ctx","model","delay","Math","pow","Error","set","result","delete","completion","messages","callback","mode","_handleRemoteCompletion","_handleLocalCompletion","remoteError","localError","newMessages","requiresReset","processNewMessages","rewind","reset","console","warn","images","formattedPrompt","getFormattedChat","prompt","multimodalCompletion","emit_partial_completion","update","role","content","text","map","m","join","imagePath","responseText","getVisionCompletion","getTextCompletion","i","token","reasoning_content","tool_calls","tokens_predicted","split","tokens_evaluated","truncated","stopped_eos","stopped_word","stopped_limit","stopping_word","tokens_cached","timings","prompt_n","prompt_ms","prompt_per_token_ms","prompt_per_second","predicted_n","predicted_ms","predicted_per_token_ms","predicted_per_second","release","stopCompletion","exports"],"sourceRoot":"../../src","sources":["vlm.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ import { CactusLM } from './lm';
4
+ import { Tools } from './tools';
5
+ export class CactusAgent extends CactusLM {
6
+ constructor(context) {
7
+ super(context);
8
+ this.tools = new Tools();
9
+ }
10
+ static async init(params, onProgress, cactusToken, retryOptions) {
11
+ const result = await CactusLM.init(params, onProgress, cactusToken, retryOptions);
12
+ if (result.error || !result.lm) {
13
+ return {
14
+ agent: null,
15
+ error: result.error,
16
+ lm: null
17
+ };
18
+ }
19
+ const agent = Object.setPrototypeOf(result.lm, CactusAgent.prototype);
20
+ agent.tools = new Tools();
21
+ return {
22
+ agent,
23
+ error: null,
24
+ lm: agent
25
+ };
26
+ }
27
+ addTool(func, description, parameters) {
28
+ return this.tools.add(func, description, parameters);
29
+ }
30
+ getTools() {
31
+ return this.tools;
32
+ }
33
+ async completionWithTools(messages, params = {}, callback, recursionCount = 0, recursionLimit = 3) {
34
+ const tools = params.tools || this.tools;
35
+ if (!messages?.length) {
36
+ return this.completion([], params, callback);
37
+ }
38
+ if (!tools || tools.getSchemas().length === 0) {
39
+ return this.completion(messages, params, callback);
40
+ }
41
+ if (recursionCount >= recursionLimit) {
42
+ return this.completion(messages, {
43
+ ...params,
44
+ jinja: true,
45
+ tools: tools.getSchemas()
46
+ }, callback);
47
+ }
48
+ const {
49
+ newMessages,
50
+ requiresReset
51
+ } = this.conversationHistoryManager.processNewMessages(messages);
52
+ if (requiresReset) {
53
+ this.context?.rewind();
54
+ this.conversationHistoryManager.reset();
55
+ }
56
+ const result = await this.context.completionWithTools({
57
+ ...params,
58
+ messages: newMessages.length > 0 ? newMessages : messages,
59
+ tools: tools
60
+ }, callback, recursionCount, recursionLimit);
61
+ this.conversationHistoryManager.update(newMessages.length > 0 ? newMessages : messages, {
62
+ role: 'assistant',
63
+ content: result.content,
64
+ tool_calls: result.tool_calls
65
+ });
66
+ return result;
67
+ }
68
+ }
69
+ //# sourceMappingURL=agent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CactusLM","Tools","CactusAgent","constructor","context","tools","init","params","onProgress","cactusToken","retryOptions","result","error","lm","agent","Object","setPrototypeOf","prototype","addTool","func","description","parameters","add","getTools","completionWithTools","messages","callback","recursionCount","recursionLimit","length","completion","getSchemas","jinja","newMessages","requiresReset","conversationHistoryManager","processNewMessages","rewind","reset","update","role","content","tool_calls"],"sourceRoot":"../../src","sources":["agent.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["formatChat","messages","chat","forEach","currMsg","role","content","Array","isArray","part","text","TypeError","Error","push","ConversationHistoryManager","history","processNewMessages","fullMessageHistory","divergent","length","i","JSON","stringify","newMessages","requiresReset","slice","update","assistantResponse","reset","getMessages"],"sourceRoot":"../../src","sources":["chat.ts"],"mappings":";;AAWA,OAAO,SAASA,UAAUA,CACxBC,QAAsC,EACZ;EAC1B,MAAMC,IAA8B,GAAG,EAAE;EAEzCD,QAAQ,CAACE,OAAO,CAAEC,OAAO,IAAK;IAC5B,MAAMC,IAAY,GAAGD,OAAO,CAACC,IAAI,IAAI,EAAE;IAEvC,IAAIC,OAAe,GAAG,EAAE;IACxB,IAAI,SAAS,IAAIF,OAAO,EAAE;MACxB,IAAI,OAAOA,OAAO,CAACE,OAAO,KAAK,QAAQ,EAAE;QACvC;QAAC,CAAC;UAAEA;QAAQ,CAAC,GAAGF,OAAO;MACzB,CAAC,MAAM,IAAIG,KAAK,CAACC,OAAO,CAACJ,OAAO,CAACE,OAAO,CAAC,EAAE;QACzCF,OAAO,CAACE,OAAO,CAACH,OAAO,CAAEM,IAAI,IAAK;UAChC,IAAI,MAAM,IAAIA,IAAI,EAAE;YAClBH,OAAO,IAAI,GAAGA,OAAO,GAAG,IAAI,GAAG,EAAE,GAAGG,IAAI,CAACC,IAAI,EAAE;UACjD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACL,MAAM,IAAIC,SAAS,CACjB,kFACF,CAAC;MACH;IACF,CAAC,MAAM;MACL,MAAM,IAAIC,KAAK,CACb,6EACF,CAAC;IACH;IAEAV,IAAI,CAACW,IAAI,CAAC;MAAER,IAAI;MAAEC;IAAQ,CAAC,CAAC;EAC9B,CAAC,CAAC;EACF,OAAOJ,IAAI;AACb;AAOA,OAAO,MAAMY,0BAA0B,CAAC;EAC9BC,OAAO,GAAiC,EAAE;EAE3CC,kBAAkBA,CACvBC,kBAAgD,EAC7B;IACnB,IAAIC,SAAS,GAAGD,kBAAkB,CAACE,MAAM,GAAG,IAAI,CAACJ,OAAO,CAACI,MAAM;IAC/D,IAAI,CAACD,SAAS,EAAE;MACd,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACL,OAAO,CAACI,MAAM,EAAEC,CAAC,EAAE,EAAE;QAC5C,IAAIC,IAAI,CAACC,SAAS,CAAC,IAAI,CAACP,OAAO,CAACK,CAAC,CAAC,CAAC,KAAKC,IAAI,CAACC,SAAS,CAACL,kBAAkB,CAACG,CAAC,CAAC,CAAC,EAAE;UAC7EF,SAAS,GAAG,IAAI;UAChB;QACF;MACF;IACF;IAEA,IAAIA,SAAS,EAAE;MACb,OAAO;QAAEK,WAAW,EAAEN,kBAAkB;QAAEO,aAAa,EAAE;MAAK,CAAC;IACjE;IAEA,MAAMD,WAAW,GAAGN,kBAAkB,CAACQ,KAAK,CAAC,IAAI,CAACV,OAAO,CAACI,MAAM,CAAC;IACjE,OAAO;MAAEI,WAAW;MAAEC,aAAa,EAAE;IAAM,CAAC;EAC9C;EAEOE,MAAMA,CACXH,WAAyC,EACzCI,iBAA6C,EAC7C;IACA,IAAI,CAACZ,OAAO,CAACF,IAAI,CAAC,GAAGU,WAAW,EAAEI,iBAAiB,CAAC;EACtD;EAEOC,KAAKA,CAAA,EAAG;IACb,IAAI,CAACb,OAAO,GAAG,EAAE;EACnB;EAEOc,WAAWA,CAAA,EAAiC;IACjD,OAAO,IAAI,CAACd,OAAO;EACrB;AACF","ignoreList":[]}
1
+ {"version":3,"names":["formatChat","messages","chat","forEach","currMsg","role","content","Array","isArray","part","text","TypeError","Error","push","ConversationHistoryManager","history","processNewMessages","fullMessageHistory","divergent","length","i","JSON","stringify","newMessages","requiresReset","slice","update","assistantResponse","reset","getMessages"],"sourceRoot":"../../src","sources":["chat.ts"],"mappings":";;AAaA,OAAO,SAASA,UAAUA,CACxBC,QAAsC,EACZ;EAC1B,MAAMC,IAA8B,GAAG,EAAE;EAEzCD,QAAQ,CAACE,OAAO,CAAEC,OAAO,IAAK;IAC5B,MAAMC,IAAY,GAAGD,OAAO,CAACC,IAAI,IAAI,EAAE;IAEvC,IAAIC,OAAe,GAAG,EAAE;IACxB,IAAI,SAAS,IAAIF,OAAO,EAAE;MACxB,IAAI,OAAOA,OAAO,CAACE,OAAO,KAAK,QAAQ,EAAE;QACvC;QAAC,CAAC;UAAEA;QAAQ,CAAC,GAAGF,OAAO;MACzB,CAAC,MAAM,IAAIG,KAAK,CAACC,OAAO,CAACJ,OAAO,CAACE,OAAO,CAAC,EAAE;QACzCF,OAAO,CAACE,OAAO,CAACH,OAAO,CAAEM,IAAI,IAAK;UAChC,IAAI,MAAM,IAAIA,IAAI,EAAE;YAClBH,OAAO,IAAI,GAAGA,OAAO,GAAG,IAAI,GAAG,EAAE,GAAGG,IAAI,CAACC,IAAI,EAAE;UACjD;QACF,CAAC,CAAC;MACJ,CAAC,MAAM;QACL,MAAM,IAAIC,SAAS,CACjB,kFACF,CAAC;MACH;IACF,CAAC,MAAM;MACL,MAAM,IAAIC,KAAK,CACb,6EACF,CAAC;IACH;IAEAV,IAAI,CAACW,IAAI,CAAC;MAAER,IAAI;MAAEC;IAAQ,CAAC,CAAC;EAC9B,CAAC,CAAC;EACF,OAAOJ,IAAI;AACb;AAOA,OAAO,MAAMY,0BAA0B,CAAC;EAC9BC,OAAO,GAAiC,EAAE;EAE3CC,kBAAkBA,CACvBC,kBAAgD,EAC7B;IACnB,IAAIC,SAAS,GAAGD,kBAAkB,CAACE,MAAM,GAAG,IAAI,CAACJ,OAAO,CAACI,MAAM;IAC/D,IAAI,CAACD,SAAS,EAAE;MACd,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACL,OAAO,CAACI,MAAM,EAAEC,CAAC,EAAE,EAAE;QAC5C,IAAIC,IAAI,CAACC,SAAS,CAAC,IAAI,CAACP,OAAO,CAACK,CAAC,CAAC,CAAC,KAAKC,IAAI,CAACC,SAAS,CAACL,kBAAkB,CAACG,CAAC,CAAC,CAAC,EAAE;UAC7EF,SAAS,GAAG,IAAI;UAChB;QACF;MACF;IACF;IAEA,IAAIA,SAAS,EAAE;MACb,OAAO;QAAEK,WAAW,EAAEN,kBAAkB;QAAEO,aAAa,EAAE;MAAK,CAAC;IACjE;IAEA,MAAMD,WAAW,GAAGN,kBAAkB,CAACQ,KAAK,CAAC,IAAI,CAACV,OAAO,CAACI,MAAM,CAAC;IACjE,OAAO;MAAEI,WAAW;MAAEC,aAAa,EAAE;IAAM,CAAC;EAC9C;EAEOE,MAAMA,CACXH,WAAyC,EACzCI,iBAA6C,EAC7C;IACA,IAAI,CAACZ,OAAO,CAACF,IAAI,CAAC,GAAGU,WAAW,EAAEI,iBAAiB,CAAC;EACtD;EAEOC,KAAKA,CAAA,EAAG;IACb,IAAI,CAACb,OAAO,GAAG,EAAE;EACnB;EAEOc,WAAWA,CAAA,EAAiC;IACjD,OAAO,IAAI,CAACd,OAAO;EACrB;AACF","ignoreList":[]}