@tryhamster/gerbil 1.0.0-rc.14 → 1.0.0-rc.16
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/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +75 -4
- package/dist/browser/index.js.map +1 -1
- package/dist/cli.mjs +1 -1
- package/dist/cli.mjs.map +1 -1
- package/dist/frameworks/react.d.mts.map +1 -1
- package/dist/skills/index.d.mts +4 -4
- package/dist/skills/index.d.mts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/core/types.ts","../../src/core/models.ts","../../src/browser/index.ts"],"sourcesContent":[],"mappings":";;;;AAyBY,KAfA,WAAA,GAeW;EASX,EAAA,EAAA,MAAA;EAWA,IAAA,EAAA,MAAA;EAmCA,WAAA,EAAA,MAAc;EA8Bd,IAAA,EAAA,MAAA;EAkBA,aAAA,EAAY,MAAA;EAQZ,gBAAW,EAAA,OAAA;EAWX,YAAA,EAAA,OAAY;EAWZ;EAkBA,cAAW,CAAA,EAAA,OAAA;EAqBX;EAYA,iBAAY,CAAA,EAAA,MAAA;EAiBZ,MAAA,EAAA,MAAW,GAAA,QAAA,GAAA,KAAA,GAAA,SAAA,GAAA,OAAA,GAAA,OAAA;AAiBvB,CAAA;AAqBY,KA/OA,WAAA,GA+OY;EAUZ,IAAA,EAAA,SAAU,GAAA,aAAA,GAAA,OAAA;EAOV,IAAA,EAAA,MAAA;AAyBZ,CAAA;AAWY,KA3RA,UAAA,GA2RA;EAYA;EAeA,MAAA,EAAA,MAAA;EAmBA;EAWA,GAAA,CAAA,EAAA,MAAA;AAWZ,CAAA;AAaY,KAjWA,eAAA,GAiWc;EAWd;EAiBA,SAAA,CAAA,EAAA,MAAA;EASA;EASA,WAAA,CAAA,EAAA,MAAgB;EAahB;EAWA,IAAA,CAAA,EAAA,MAAA;EAeA;EAES,IAAA,CAAA,EAAA,MAAA;EAEN;EAID,aAAA,CAAA,EAAA,MAAA,EAAA;EAAO;;;;EC/dR;;;WD2DF;EEVC;EAYA,KAAA,CAAA,EAAA,OAAW;EAQX;EAQA,QAAA,CAAA,EAAA,MAAA;CAIc;AAEN,KFfR,cAAA,GEeQ;EAEI;EAAc,IAAA,EAAA,MAAA;EAO1B;EAmBA,QAAA,CAAA,EAAA,MAAY;EAuBF;EAA4B,eAAA,EAAA,MAAA;EAAmC;EAAR,eAAA,EAAA,MAAA;EAAO;EA+exE,SAAA,EAAO,MAAA;EAUP;EAYA,YAAA,EAAA,MAAc,GAAA,QAYN,GAAA,OAAO;EAUf;EAmEI,QAAA,CAAA,EAAO,OAAA,GAAA,QAAU,GAAA,WAAsB;EAwS3C;EAoBA,MAAA,CAAA,EAAA,OAAA;AAMZ,CAAA;AAMuC,KF18B3B,WE08B2B,CAAA,IAAA,OAAA,CAAA,GAAA;EAAoB;EAIxC,MAAA,EF58BT,CAAA,CAAE,OE48BO,CF58BC,CE48BD,CAAA;EAAe;EAoClB,OAAA,CAAA,EAAA,MAAa;EAsMjB;EASA,WAAA,CAAA,EAAU,MAAA;EAGV;EA0NA,MAAA,CAAA,EAAA,MAAA;AAoBZ,CAAA;AAEyE,KFl6C7D,YAAA,GEk6C6D;EAMtD;EAUC,KAAA,CAAA,EAAA,MAAA;EAUJ;EAAU,SAAA,CAAA,EAAA,OAAA;AAoK1B,CAAA;AAuTsB,KF/4DV,WAAA,GE+4DmB;EACtB;EAE+B,MAAA,EAAA,MAAA,EAAA;EAArC;EAAO,IAAA,EAAA,MAAA;EAmDM;EA4HJ,SAAA,EAAA,MAAW;AAUvB,CAAA;AAwBY,KFxlEA,YAAA,GEwlEmB;EAEP;EAED,IAAA,EAAA,MAAA;EAID;EAAiB,KAAA,EAAA,MAAA;EAgBpB;EAAW,KAAA,EAAA,MAAA;AAiD9B,CAAA;AA0kBY,KFhuFA,gBAAA,GEguFmB;EA4BnB;EAWA,KAAA,EAAA,MAAA;EAEA;EAEY,KAAA,EAAA,MAAA;EAED;EAAO,KAAA,EAAA,MAAA;EAoEd;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/core/types.ts","../../src/core/models.ts","../../src/browser/index.ts"],"sourcesContent":[],"mappings":";;;;AAyBY,KAfA,WAAA,GAeW;EASX,EAAA,EAAA,MAAA;EAWA,IAAA,EAAA,MAAA;EAmCA,WAAA,EAAA,MAAc;EA8Bd,IAAA,EAAA,MAAA;EAkBA,aAAA,EAAY,MAAA;EAQZ,gBAAW,EAAA,OAAA;EAWX,YAAA,EAAA,OAAY;EAWZ;EAkBA,cAAW,CAAA,EAAA,OAAA;EAqBX;EAYA,iBAAY,CAAA,EAAA,MAAA;EAiBZ,MAAA,EAAA,MAAW,GAAA,QAAA,GAAA,KAAA,GAAA,SAAA,GAAA,OAAA,GAAA,OAAA;AAiBvB,CAAA;AAqBY,KA/OA,WAAA,GA+OY;EAUZ,IAAA,EAAA,SAAU,GAAA,aAAA,GAAA,OAAA;EAOV,IAAA,EAAA,MAAA;AAyBZ,CAAA;AAWY,KA3RA,UAAA,GA2RA;EAYA;EAeA,MAAA,EAAA,MAAA;EAmBA;EAWA,GAAA,CAAA,EAAA,MAAA;AAWZ,CAAA;AAaY,KAjWA,eAAA,GAiWc;EAWd;EAiBA,SAAA,CAAA,EAAA,MAAA;EASA;EASA,WAAA,CAAA,EAAA,MAAgB;EAahB;EAWA,IAAA,CAAA,EAAA,MAAA;EAeA;EAES,IAAA,CAAA,EAAA,MAAA;EAEN;EAID,aAAA,CAAA,EAAA,MAAA,EAAA;EAAO;;;;EC/dR;;;WD2DF;EEVC;EAYA,KAAA,CAAA,EAAA,OAAW;EAQX;EAQA,QAAA,CAAA,EAAA,MAAA;CAIc;AAEN,KFfR,cAAA,GEeQ;EAEI;EAAc,IAAA,EAAA,MAAA;EAO1B;EAmBA,QAAA,CAAA,EAAA,MAAY;EAuBF;EAA4B,eAAA,EAAA,MAAA;EAAmC;EAAR,eAAA,EAAA,MAAA;EAAO;EA+exE,SAAA,EAAO,MAAA;EAUP;EAYA,YAAA,EAAA,MAAc,GAAA,QAYN,GAAA,OAAO;EAUf;EAmEI,QAAA,CAAA,EAAO,OAAA,GAAA,QAAU,GAAA,WAAsB;EAwS3C;EAoBA,MAAA,CAAA,EAAA,OAAA;AAMZ,CAAA;AAMuC,KF18B3B,WE08B2B,CAAA,IAAA,OAAA,CAAA,GAAA;EAAoB;EAIxC,MAAA,EF58BT,CAAA,CAAE,OE48BO,CF58BC,CE48BD,CAAA;EAAe;EAoClB,OAAA,CAAA,EAAA,MAAa;EAsMjB;EASA,WAAA,CAAA,EAAU,MAAA;EAGV;EA0NA,MAAA,CAAA,EAAA,MAAA;AAoBZ,CAAA;AAEyE,KFl6C7D,YAAA,GEk6C6D;EAMtD;EAUC,KAAA,CAAA,EAAA,MAAA;EAUJ;EAAU,SAAA,CAAA,EAAA,OAAA;AAoK1B,CAAA;AAuTsB,KF/4DV,WAAA,GE+4DmB;EACtB;EAE+B,MAAA,EAAA,MAAA,EAAA;EAArC;EAAO,IAAA,EAAA,MAAA;EAmDM;EA4HJ,SAAA,EAAA,MAAW;AAUvB,CAAA;AAwBY,KFxlEA,YAAA,GEwlEmB;EAEP;EAED,IAAA,EAAA,MAAA;EAID;EAAiB,KAAA,EAAA,MAAA;EAgBpB;EAAW,KAAA,EAAA,MAAA;AAiD9B,CAAA;AA0kBY,KFhuFA,gBAAA,GEguFmB;EA4BnB;EAWA,KAAA,EAAA,MAAA;EAEA;EAEY,KAAA,EAAA,MAAA;EAED;EAAO,KAAA,EAAA,MAAA;EAoEd;EA+oBJ,SAAA,EAAA,MAAA;AAMZ,CAAA;AAOY,KF39GA,WAAA,GE29GmB;EAcnB;EAEe,UAAA,CAAA,EAAA,CAAA,IAAA,EFz+GL,YEy+GK,EAAA,GAAA,IAAA;EAEgB;EAAR,MAAA,CAAA,EAAA,MAAA,GAAA,KAAA,GAAA,KAAA,GAAA,QAAA;EAEa;EAEsB,KAAA,CAAA,EAAA,IAAA,GAAA,IAAA,GAAA,MAAA,GAAA,MAAA;EAAR;EAM/C,aAAA,CAAA,EAAA,MAAA;CAAR;AA0Ze,KF53HV,YAAA,GE43HU;EA4CA,MAAA,EAAA,MAAA;EACX,QAAA,CAAA,EAAA,MAAA;EACA,IAAA,CAAA,EAAA,MAAA;EACR,MAAA,CAAA,EAAA,MAAA;EAAO,KAAA,CAAA,EAAA,MAAA;AAqDV,CAAA;AA0DgB,KF9gIJ,YAAA,GE8gIqB;EAUX;EAwBrB,KAAA,CAAA,EAAA,MAAA;;;;;;UFriIS;;aAGG;;KAGD,WAAA;;;;;;;;;;;;KAiBA,cAAA;;;;;;;;;;;;KAqBA,YAAA;;;;;;;;;KAUA,UAAA;;;;;;KAOA,UAAA;;SAEH;;;;;;;;;;;;;;;;;;KAuBG,mBAAA;;;;;;;;KAWA,sBAAA;;;;;;KAYA,SAAA;;;;;;;;;;;;;;KAeA,cAAA;;;;;;;;;;;;UAYF;;;;;;KAOE,YAAA;;;;;;sBAMU;;yBAEG;;KAGb,UAAA;;WAED;;;;;;;;KASC,WAAA;;SAEH;;;;;;;;;;KAWG,cAAA;;sBAEU;;;;KASV,cAAA;;;;;;;;;;;;;;;;KAiBA,iBAAA;;;;;;sBAMU;;KAGV,iBAAA;;;;;;;;KASA,gBAAA;;;;;;aAMC;;;;;;KAOD,cAAA;;sBAEU;;;;KASV,6BAAA;;;;;;;;;;;;;;KAeA,6BAAA;;qBAES;;eAEN;;;;cAID;;;;;;;;;;;;;;AA9bF,cCjCC,cD2DF,EC3DkB,MD2DlB,CAAA,MAAU,EC3DuB,WD2DvB,CAAA;;;;AEET,KAZA,cAAA,GAYW;EAQX,MAAA,EAAA,SAAc,GAAA,aAAA,GAAA,OAAA,GAAA,OAAA;EAQd,OAAA,CAAA,EAAA,MAAA;EAIc,IAAA,CAAA,EAAA,MAAA;EAEN,QAAA,CAAA,EAAA,MAAA;EAEI;EAAc,aAAA,CAAA,EAAA,MAAA;EAO1B;EAmBA,UAAA,CAAA,EAAA,MAAY;EAuBF,KAAA,CAAA,EAAA,MAAA;CAA4B;AAAmC,KAzEzE,WAAA,GAyEyE;EAAR,MAAA,EAAA,OAAA;EAAO,IAAA,EAAA,MAAA;EA+exE,KAAA,EAAA,UAAO,GAAA,WAAA;EAUP,SAAA,EAAA,MAAA;EAYA,GAAA,EAAA,MAAA;AAsBZ,CAAA;AAmEgB,KA/pBJ,cAAA,GA+pBqB;EAwSrB,MAAA,EAAA,UAAA;EAoBA,IAAA,EAAA,MAAA;EAMA,SAAA,EAAA,MAAA;EAM2B,SAAA,EAAA,MAAA;EAAoB,GAAA,EAAA,MAAA;CAIxC;AAAe,KAn+BtB,mBAAA,GAm+BsB;EAoClB;EAsMJ,OAAA,CAAA,EAAA,MAAW;EASX;EAGA,UAAA,CAAA,EAAA,CAAA,QAAgB,EArtCF,cAqtCE,EAAA,GAAA,IAAA;EA0NhB;EAoBA,OAAA,CAAA,EAAA,CAAA,KAAA,EAj8CQ,WAi8CO,EAAA,GAAA,IAAA;EAE8C;EAMtD,UAAA,CAAA,EAAA,CAAA,MAAA,EAv8CK,cAu8CL,EAAA,GAAA,IAAA;EAUC;EAUJ,OAAA,CAAA,EAAA,CAAA,KAAA,EAAA,MAAA,EAAA,GAAA,IAAA;EAAU;EAoKV,SAAA,CAAA,EAAS,MAAA;AAuTzB,CAAA;AACS,KAh7DG,qBAAA,GAg7DH;EAE+B;EAArC,SAAA,CAAA,EAAA,MAAA;EAAO;EAmDM,WAAA,CAAA,EAAA,MAAiB;EA4HrB;EAUA,IAAA,CAAA,EAAA,MAAA;EAwBA;EAEY,IAAA,CAAA,EAAA,MAAA;EAED;EAID,QAAA,CAAA,EAAA,OAAA;EAAiB;EAgBpB,MAAA,CAAA,EAAA,MAAA;EAAW;EAiDd,MAAA,CAAA,EAAA,MAAA,EAAa;EA0kBjB;EA4BA,OAAA,CAAA,EAlyFA,KAkyFA,CAAA;IAWA,IAAA,EAAA,MAAA,GAAA,WAAkB,GAAA,QAAA;IAElB,OAAA,EAAA,MAAA;EAEY,CAAA,CAAA;CAED;AAAO,KAhzFlB,YAAA,GAgzFkB;EAoEd;EA+oBJ,QAAA,EAAA,CAAA,MAAA,EAAA,MAAkB,EAAA,OAAA,CAAA,EAjgHS,qBAigHT,EAAA,GAjgHmC,OAigHnC,CAAA,MAAA,CAAA;EAMlB;EAOA,SAAA,EAAA,GAAA,GAAA,IAAA;EAcA;EAEe,KAAA,EAAA,GAAA,GAAA,IAAA;EAEgB;EAAR,SAAA,EAAA,GAAA,GAAA,IAAA;EAEa;EAEsB,OAAA,EAAA,GAAA,GAAA,OAAA;CAAR;;;;;AA8C9D;AAkTA;AAQY,iBAv3HU,kBAAA,CAw3HI,OAAe,CAAA,EAx3HS,mBAw3HT,CAAA,EAx3HoC,OAw3HpC,CAx3H4C,YAw3H5C,CAAA;AAqBzC;AAkCsB,KAh8GV,OAAA,GAg8GU;EA4CA,EAAA,EAAA,MAAA;EACX,IAAA,EAAA,MAAA,GAAA,WAAA;EACA,OAAA,EAAA,MAAA;EACR,QAAA,CAAA,EAAA,MAAA;EAAO;EAqDY,MAAA,CAAA,EAAA,MAAA,EAAA;AA0DtB,CAAA;AAUA;AAwBC,KAtnHW,eAAA,GAsnHX;;;;;;;;;;;KA1mHW,cAAA;;;;;;;;;;;;oBAYQ;;;;;;;;;KAUR,aAAA;;YAEA;;;;;;;;;;;;mBAUO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuDH,OAAA,WAAiB,iBAAsB;;KAwS3C,oBAAA;;;;;;;;;;;;;;;;;;;KAoBA,eAAA;;;;;KAMA,mBAAA;;;;;;uCAM2B,oBAAoB;;;;mBAIxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoCH,aAAA,WAAuB,uBAA4B;;KAsMvD,WAAA;;;;;;;;KASA,UAAA;;KAGA,gBAAA;;;;;;;;KA0NA,gBAAA;;UAEF;;;;;;;;;;;;;;;;;KAkBE,eAAA;;;;;QAE6D;;;;;;mBAMtD;;;;;;;;;;oBAUC;;;;;;;;;;gBAUJ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoKA,SAAA,WAAmB,mBAAwB;;;;;;;;;;;;;;;iBAuTrC,SAAA,QACb,oCAEN;;WAAqC;;;;;;;;;;;;;;;;;;;iBAmDxB,iBAAA;iBACC;;;;;;;KA2HL,WAAA;;;;;;;;;KAUA,oBAAA;;;;;;;;;;;;0BAYc;;;;;;;;;;;KAYd,mBAAA;;wBAEY;;uBAED;;;;sBAID,iBAAiB;;;;;;;;;;;;;;;;mBAgBpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiDH,aAAA,WAAuB,uBAA4B;;;;KA0kBvD,mBAAA;;;;;;aAMC;;;;;;;;;;;;;;;;;;;;;KAsBD,gBAAA;;;;;;;;;;KAWA,kBAAA;;YAEA;;wBAEY;;uBAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoEP,YAAA,WAAsB,sBAA2B;;KA+oBrD,kBAAA;;;;;KAMA,mBAAA;;;;;;KAOA,mBAAA;;;;;;;;;;;;;KAcA,kBAAA;;2BAEe;;mCAEQ,QAAQ;;gDAEK;;8DAEc,QAAQ;;6EAM/D,QAAQ;;;;cAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoCE,YAAA,WAAsB,sBAA2B;;KAkTrD,eAAA;;;;;;;KAQA,cAAA;0BACc;;;;;;;;;;;;;;;;;;;;iBAqBJ,gBAAA,4BAEX,iBACR;;;;;;;;;iBA+BmB,qBAAA,6BAEX,iBACR;;;;;;;;;iBAyCmB,eAAA,WACX,sBACA,iBACR;;;;;;;;;iBAqDmB,eAAA,6BAEX,iBACR;;;;iBAuDa,iBAAA,CAAA;;;;iBAUM,aAAA,CAAA,GAAiB;;;;;cAwBtC"}
|
package/dist/browser/index.js
CHANGED
|
@@ -2719,6 +2719,8 @@ const EMBEDDING_WORKER_CODE = `
|
|
|
2719
2719
|
// Embedding Worker - runs in separate thread, loads from CDN
|
|
2720
2720
|
import { pipeline, env } from "https://cdn.jsdelivr.net/npm/@huggingface/transformers@3.8.1";
|
|
2721
2721
|
|
|
2722
|
+
console.log("[EMBED WORKER] Worker script starting...");
|
|
2723
|
+
|
|
2722
2724
|
// Configure environment
|
|
2723
2725
|
env.useBrowserCache = true;
|
|
2724
2726
|
env.allowLocalModels = false;
|
|
@@ -2728,46 +2730,85 @@ const EMBEDDING_WORKER_CODE = `
|
|
|
2728
2730
|
|
|
2729
2731
|
self.onmessage = async (e) => {
|
|
2730
2732
|
const { type, payload } = e.data;
|
|
2733
|
+
console.log("[EMBED WORKER] Received message:", type, payload);
|
|
2731
2734
|
|
|
2732
2735
|
if (type === "load") {
|
|
2733
2736
|
try {
|
|
2734
2737
|
modelId = payload.model || "Xenova/all-MiniLM-L6-v2";
|
|
2738
|
+
console.log("[EMBED WORKER] Loading model:", modelId);
|
|
2735
2739
|
|
|
2740
|
+
// Note: Don't specify device for embeddings - they're small models
|
|
2741
|
+
// that work fine with default backend (unlike LLMs/STT which need WebGPU)
|
|
2736
2742
|
embedder = await pipeline("feature-extraction", modelId, {
|
|
2737
2743
|
progress_callback: (progress) => {
|
|
2738
2744
|
self.postMessage({ type: "progress", payload: progress });
|
|
2739
2745
|
},
|
|
2740
2746
|
});
|
|
2741
2747
|
|
|
2742
|
-
|
|
2748
|
+
console.log("[EMBED WORKER] Pipeline created, running warmup...");
|
|
2749
|
+
|
|
2750
|
+
// Warmup - don't swallow errors
|
|
2743
2751
|
try {
|
|
2744
|
-
await embedder("hello", { pooling: "mean", normalize: true });
|
|
2752
|
+
const warmup = await embedder("hello", { pooling: "mean", normalize: true });
|
|
2753
|
+
console.log("[EMBED WORKER] Warmup successful, output type:", typeof warmup, warmup?.constructor?.name);
|
|
2745
2754
|
} catch (e) {
|
|
2746
|
-
console.
|
|
2755
|
+
console.error("[EMBED WORKER] Warmup failed:", e);
|
|
2756
|
+
self.postMessage({ type: "error", payload: "Warmup failed: " + (e.message || String(e)) });
|
|
2757
|
+
return;
|
|
2747
2758
|
}
|
|
2748
2759
|
|
|
2760
|
+
console.log("[EMBED WORKER] Sending ready message...");
|
|
2749
2761
|
self.postMessage({ type: "ready" });
|
|
2762
|
+
console.log("[EMBED WORKER] Ready message sent!");
|
|
2750
2763
|
} catch (err) {
|
|
2764
|
+
console.error("[EMBED WORKER] Load error:", err);
|
|
2751
2765
|
self.postMessage({ type: "error", payload: err.message || String(err) });
|
|
2752
2766
|
}
|
|
2753
2767
|
}
|
|
2754
2768
|
|
|
2755
2769
|
if (type === "embed") {
|
|
2770
|
+
console.log("[EMBED WORKER] Processing embed request...");
|
|
2756
2771
|
try {
|
|
2757
2772
|
const { text, normalize } = payload;
|
|
2773
|
+
console.log("[EMBED WORKER] Text to embed:", text?.substring?.(0, 50));
|
|
2774
|
+
|
|
2775
|
+
if (!embedder) {
|
|
2776
|
+
throw new Error("Embedder not initialized");
|
|
2777
|
+
}
|
|
2778
|
+
|
|
2779
|
+
console.log("[EMBED WORKER] Calling embedder...");
|
|
2758
2780
|
const output = await embedder(text, {
|
|
2759
2781
|
pooling: "mean",
|
|
2760
2782
|
normalize: normalize !== false,
|
|
2761
2783
|
});
|
|
2762
2784
|
|
|
2763
|
-
|
|
2785
|
+
console.log("[EMBED WORKER] Got output, type:", typeof output, output?.constructor?.name);
|
|
2786
|
+
console.log("[EMBED WORKER] Output keys:", output ? Object.keys(output) : "null");
|
|
2787
|
+
|
|
2788
|
+
// Handle different output formats from transformers.js
|
|
2789
|
+
let vector;
|
|
2790
|
+
if (output?.data) {
|
|
2791
|
+
vector = Array.from(output.data);
|
|
2792
|
+
} else if (output?.tolist) {
|
|
2793
|
+
vector = output.tolist();
|
|
2794
|
+
} else if (Array.isArray(output)) {
|
|
2795
|
+
vector = output;
|
|
2796
|
+
} else {
|
|
2797
|
+
throw new Error("Unknown output format: " + typeof output);
|
|
2798
|
+
}
|
|
2799
|
+
|
|
2800
|
+
console.log("[EMBED WORKER] Vector length:", vector?.length);
|
|
2801
|
+
console.log("[EMBED WORKER] Sending embedding result...");
|
|
2764
2802
|
self.postMessage({ type: "embedding", payload: { vector, text } });
|
|
2803
|
+
console.log("[EMBED WORKER] Embedding result sent!");
|
|
2765
2804
|
} catch (err) {
|
|
2805
|
+
console.error("[EMBED WORKER] Embed error:", err);
|
|
2766
2806
|
self.postMessage({ type: "error", payload: err.message || String(err) });
|
|
2767
2807
|
}
|
|
2768
2808
|
}
|
|
2769
2809
|
|
|
2770
2810
|
if (type === "embedBatch") {
|
|
2811
|
+
console.log("[EMBED WORKER] Processing embedBatch request...");
|
|
2771
2812
|
try {
|
|
2772
2813
|
const { texts, normalize } = payload;
|
|
2773
2814
|
const results = [];
|
|
@@ -2780,12 +2821,16 @@ const EMBEDDING_WORKER_CODE = `
|
|
|
2780
2821
|
results.push({ vector: Array.from(output.data), text });
|
|
2781
2822
|
}
|
|
2782
2823
|
|
|
2824
|
+
console.log("[EMBED WORKER] Batch complete, sending results...");
|
|
2783
2825
|
self.postMessage({ type: "embeddings", payload: results });
|
|
2784
2826
|
} catch (err) {
|
|
2827
|
+
console.error("[EMBED WORKER] Batch error:", err);
|
|
2785
2828
|
self.postMessage({ type: "error", payload: err.message || String(err) });
|
|
2786
2829
|
}
|
|
2787
2830
|
}
|
|
2788
2831
|
};
|
|
2832
|
+
|
|
2833
|
+
console.log("[EMBED WORKER] Worker script loaded, waiting for messages...");
|
|
2789
2834
|
`;
|
|
2790
2835
|
/** Create Embedding worker instance */
|
|
2791
2836
|
function createEmbeddingWorker() {
|
|
@@ -2863,6 +2908,7 @@ function useEmbedding(options = {}) {
|
|
|
2863
2908
|
workerRef.current = worker;
|
|
2864
2909
|
worker.onmessage = (e) => {
|
|
2865
2910
|
const { type, payload } = e.data;
|
|
2911
|
+
console.log("[EMBED HOOK] Received from worker:", type, payload);
|
|
2866
2912
|
if (type === "progress") {
|
|
2867
2913
|
if (payload.status === "progress" && payload.file) setLoadingProgress({
|
|
2868
2914
|
status: "downloading",
|
|
@@ -2870,17 +2916,32 @@ function useEmbedding(options = {}) {
|
|
|
2870
2916
|
progress: Math.round(payload.loaded / payload.total * 100)
|
|
2871
2917
|
});
|
|
2872
2918
|
} else if (type === "ready") {
|
|
2919
|
+
console.log("[EMBED HOOK] Model ready! Resolving promise...");
|
|
2873
2920
|
setIsLoading(false);
|
|
2874
2921
|
setIsReady(true);
|
|
2875
2922
|
setLoadingProgress({ status: "ready" });
|
|
2876
2923
|
readyResolveRef.current?.();
|
|
2924
|
+
console.log("[EMBED HOOK] Promise resolved, calling onReady...");
|
|
2877
2925
|
onReady?.();
|
|
2878
2926
|
} else if (type === "error") {
|
|
2927
|
+
console.error("[EMBED HOOK] Error from worker:", payload);
|
|
2879
2928
|
setIsLoading(false);
|
|
2880
2929
|
setError(payload);
|
|
2881
2930
|
onError?.(payload);
|
|
2882
2931
|
}
|
|
2883
2932
|
};
|
|
2933
|
+
worker.onerror = (err) => {
|
|
2934
|
+
console.error("[EMBED HOOK] Worker onerror:", err);
|
|
2935
|
+
setIsLoading(false);
|
|
2936
|
+
const errMsg = err.message || "Worker error";
|
|
2937
|
+
setError(errMsg);
|
|
2938
|
+
setLoadingProgress({
|
|
2939
|
+
status: "error",
|
|
2940
|
+
message: errMsg
|
|
2941
|
+
});
|
|
2942
|
+
onError?.(errMsg);
|
|
2943
|
+
};
|
|
2944
|
+
console.log("[EMBED HOOK] Sending load message to worker...");
|
|
2884
2945
|
worker.postMessage({
|
|
2885
2946
|
type: "load",
|
|
2886
2947
|
payload: { model }
|
|
@@ -2902,31 +2963,40 @@ function useEmbedding(options = {}) {
|
|
|
2902
2963
|
};
|
|
2903
2964
|
}, [autoLoad, load]);
|
|
2904
2965
|
const embed = useCallback(async (text) => {
|
|
2966
|
+
console.log("[EMBED HOOK] embed() called with:", text?.substring?.(0, 50));
|
|
2905
2967
|
const loadPromise = load();
|
|
2968
|
+
console.log("[EMBED HOOK] Waiting for ready promise...");
|
|
2906
2969
|
if (readyPromiseRef.current) await readyPromiseRef.current;
|
|
2907
2970
|
else await loadPromise;
|
|
2971
|
+
console.log("[EMBED HOOK] Ready promise resolved, sending embed message...");
|
|
2908
2972
|
return new Promise((resolve, reject) => {
|
|
2909
2973
|
const worker = workerRef.current;
|
|
2910
2974
|
if (!worker) {
|
|
2975
|
+
console.error("[EMBED HOOK] No worker available!");
|
|
2911
2976
|
reject(/* @__PURE__ */ new Error("Worker not initialized. Call load() first."));
|
|
2912
2977
|
return;
|
|
2913
2978
|
}
|
|
2914
2979
|
const timeout = setTimeout(() => {
|
|
2980
|
+
console.error("[EMBED HOOK] Timeout reached!");
|
|
2915
2981
|
worker.removeEventListener("message", handler);
|
|
2916
2982
|
reject(/* @__PURE__ */ new Error("Embedding timeout after 30s"));
|
|
2917
2983
|
}, 3e4);
|
|
2918
2984
|
const handler = (e) => {
|
|
2985
|
+
console.log("[EMBED HOOK] embed handler received:", e.data.type);
|
|
2919
2986
|
if (e.data.type === "embedding") {
|
|
2987
|
+
console.log("[EMBED HOOK] Got embedding result!");
|
|
2920
2988
|
clearTimeout(timeout);
|
|
2921
2989
|
worker.removeEventListener("message", handler);
|
|
2922
2990
|
resolve(e.data.payload.vector);
|
|
2923
2991
|
} else if (e.data.type === "error") {
|
|
2992
|
+
console.error("[EMBED HOOK] Got error:", e.data.payload);
|
|
2924
2993
|
clearTimeout(timeout);
|
|
2925
2994
|
worker.removeEventListener("message", handler);
|
|
2926
2995
|
reject(new Error(e.data.payload));
|
|
2927
2996
|
}
|
|
2928
2997
|
};
|
|
2929
2998
|
worker.addEventListener("message", handler);
|
|
2999
|
+
console.log("[EMBED HOOK] Posting embed message to worker...");
|
|
2930
3000
|
worker.postMessage({
|
|
2931
3001
|
type: "embed",
|
|
2932
3002
|
payload: {
|
|
@@ -2934,6 +3004,7 @@ function useEmbedding(options = {}) {
|
|
|
2934
3004
|
normalize
|
|
2935
3005
|
}
|
|
2936
3006
|
});
|
|
3007
|
+
console.log("[EMBED HOOK] Message posted, waiting for response...");
|
|
2937
3008
|
});
|
|
2938
3009
|
}, [load, normalize]);
|
|
2939
3010
|
const embedBatch = useCallback(async (texts) => {
|