modelstat 0.1.0 → 0.1.2

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/dist/cli.mjs CHANGED
@@ -46436,6 +46436,17 @@ function basenameFromUrl(url) {
46436
46436
  const parts = clean.split("/");
46437
46437
  return parts[parts.length - 1] || "model.gguf";
46438
46438
  }
46439
+ async function disposeLlama() {
46440
+ const inst = llamaInstance;
46441
+ llamaInstance = null;
46442
+ loaded = null;
46443
+ loadPromise = null;
46444
+ if (!inst) return;
46445
+ try {
46446
+ await inst.dispose();
46447
+ } catch {
46448
+ }
46449
+ }
46439
46450
  async function ensureLlamaModel(cfg = defaultLlamaConfig()) {
46440
46451
  if (existsSync7(cfg.modelPath)) return cfg.modelPath;
46441
46452
  await mkdir(dirname5(cfg.modelPath), { recursive: true });
@@ -46506,6 +46517,7 @@ async function loadOnce(cfg) {
46506
46517
  const llamaMod = await import("node-llama-cpp");
46507
46518
  const modelPath = await ensureLlamaModel(cfg);
46508
46519
  const llama = await llamaMod.getLlama();
46520
+ llamaInstance = llama;
46509
46521
  const model = await llama.loadModel({ modelPath });
46510
46522
  const summariserContext = await model.createContext({
46511
46523
  contextSize: cfg.contextSize
@@ -46689,7 +46701,7 @@ function llamaExtractLinks(cfg = defaultLlamaConfig()) {
46689
46701
  }
46690
46702
  };
46691
46703
  }
46692
- var DEFAULT_LLAMA_MODEL_URL, LLAMA_MAX_TOKENS, loaded, loadPromise, inflight;
46704
+ var DEFAULT_LLAMA_MODEL_URL, LLAMA_MAX_TOKENS, loaded, loadPromise, inflight, llamaInstance;
46693
46705
  var init_llama = __esm({
46694
46706
  "../../packages/companion-core/src/node/llama.ts"() {
46695
46707
  "use strict";
@@ -46703,6 +46715,7 @@ var init_llama = __esm({
46703
46715
  loaded = null;
46704
46716
  loadPromise = null;
46705
46717
  inflight = Promise.resolve();
46718
+ llamaInstance = null;
46706
46719
  }
46707
46720
  });
46708
46721
 
@@ -46911,6 +46924,7 @@ __export(node_exports, {
46911
46924
  createTransformersJsEmbedder: () => createTransformersJsEmbedder,
46912
46925
  defaultLlamaConfig: () => defaultLlamaConfig,
46913
46926
  defaultOllamaConfig: () => defaultOllamaConfig,
46927
+ disposeLlama: () => disposeLlama,
46914
46928
  ensureLlamaModel: () => ensureLlamaModel,
46915
46929
  llamaCognize: () => llamaCognize,
46916
46930
  llamaEntitle: () => llamaEntitle,
@@ -47426,7 +47440,7 @@ var init_scan = __esm({
47426
47440
  init_api();
47427
47441
  init_config2();
47428
47442
  init_pipeline2();
47429
- AGENT_VERSION = true ? "agent-0.1.0" : "agent-dev";
47443
+ AGENT_VERSION = true ? "agent-0.1.2" : "agent-dev";
47430
47444
  BATCH_MAX_EVENTS = INGEST_BATCH_MAX_EVENTS;
47431
47445
  BATCH_MAX_TOOL_CALLS = 2e4;
47432
47446
  BATCH_BUFFER_HARD_CAP = BATCH_MAX_EVENTS * 2;
@@ -49911,6 +49925,11 @@ async function runDaemon(opts = {}) {
49911
49925
  setPhase("offline", "Shutting down");
49912
49926
  await sendHeartbeat();
49913
49927
  await watcher.close();
49928
+ try {
49929
+ const { disposeLlama: disposeLlama2 } = await Promise.resolve().then(() => (init_node2(), node_exports));
49930
+ await disposeLlama2();
49931
+ } catch {
49932
+ }
49914
49933
  process.exit(0);
49915
49934
  };
49916
49935
  process.on("SIGINT", shutdown);
@@ -49931,7 +49950,7 @@ var init_daemon = __esm({
49931
49950
  init_machine_key();
49932
49951
  init_scan();
49933
49952
  init_single_flight();
49934
- AGENT_VERSION2 = true ? "agent-0.1.0" : "agent-dev";
49953
+ AGENT_VERSION2 = true ? "agent-0.1.2" : "agent-dev";
49935
49954
  HEARTBEAT_INTERVAL_MS = 1e4;
49936
49955
  SCAN_INTERVAL_MS = 5 * 60 * 1e3;
49937
49956
  DISCOVERY_INTERVAL_MS = 6e4;
@@ -50199,8 +50218,7 @@ function locateTrayExecutable() {
50199
50218
  function writePlist(cliPath) {
50200
50219
  const p = plistPath();
50201
50220
  mkdirSync3(dirname6(p), { recursive: true });
50202
- const tray = locateTrayExecutable();
50203
- const programArgs = tray ? ` <string>${tray}</string>` : [
50221
+ const programArgs = [
50204
50222
  ` <string>${nodeBinary()}</string>`,
50205
50223
  ` <string>${cliPath}</string>`,
50206
50224
  ` <string>start</string>`
@@ -50225,8 +50243,7 @@ ${programArgs}
50225
50243
  <key>PATH</key><string>/usr/local/bin:/opt/homebrew/bin:/usr/bin:/bin</string>
50226
50244
  <!-- Heap headroom for the startup scan of a large transcript backlog.
50227
50245
  Node's default old-space ceiling (~4 GB) OOM-crashed the daemon on
50228
- big histories; raise it well below typical RAM. Inherited by the
50229
- tray-spawned 'modelstat start' child too (NODE_OPTIONS propagates). -->
50246
+ big histories; raise it well below typical RAM. -->
50230
50247
  <key>NODE_OPTIONS</key><string>--max-old-space-size=8192</string>
50231
50248
  </dict>
50232
50249
  <key>WorkingDirectory</key><string>${home()}</string>
@@ -50533,7 +50550,7 @@ function tryOpenBrowser(url) {
50533
50550
  return false;
50534
50551
  }
50535
50552
  }
50536
- var AGENT_VERSION3 = true ? "agent-0.1.0" : "agent-dev";
50553
+ var AGENT_VERSION3 = true ? "agent-0.1.2" : "agent-dev";
50537
50554
  function osFamily() {
50538
50555
  const p = platform5();
50539
50556
  if (p === "darwin") return "macos";
@@ -50907,6 +50924,11 @@ async function cmdScan() {
50907
50924
  console.log(
50908
50925
  `Done: ${r.filesScanned} files scanned, ${r.filesUnchanged} unchanged, ${r.batchesUploaded} batches, ${r.segmentsUploaded} segments, ${r.eventsUploaded} events uploaded`
50909
50926
  );
50927
+ try {
50928
+ const { disposeLlama: disposeLlama2 } = await Promise.resolve().then(() => (init_node2(), node_exports));
50929
+ await disposeLlama2();
50930
+ } catch {
50931
+ }
50910
50932
  }
50911
50933
  async function cmdRescan() {
50912
50934
  const { PROCESSING_VERSION: PROCESSING_VERSION2 } = await Promise.resolve().then(() => (init_processing_version(), processing_version_exports));