@soulcraft/brainy 0.46.0 → 0.48.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"hnswIndex.js","sourceRoot":"","sources":["../../src/hnsw/hnswIndex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hnswIndex.js","sourceRoot":"","sources":["../../src/hnsw/hnswIndex.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAG9E,0BAA0B;AAC1B,MAAM,cAAc,GAAe;IACjC,CAAC,EAAE,EAAE,EAAE,qCAAqC;IAC5C,cAAc,EAAE,GAAG,EAAE,uDAAuD;IAC5E,QAAQ,EAAE,EAAE,EAAE,iDAAiD;IAC/D,EAAE,EAAE,EAAE,CAAC,YAAY;CACpB,CAAA;AAED,MAAM,OAAO,SAAS;IASpB,YACE,SAA8B,EAAE,EAChC,mBAAqC,iBAAiB,EACtD,UAA4C,EAAE;QAXxC,UAAK,GAA0B,IAAI,GAAG,EAAE,CAAA;QACxC,iBAAY,GAAkB,IAAI,CAAA;QAClC,aAAQ,GAAG,CAAC,CAAA;QAGZ,cAAS,GAAkB,IAAI,CAAA;QAC/B,uBAAkB,GAAY,IAAI,CAAA,CAAC,qEAAqE;QAO9G,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAA;QAC9C,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACxC,IAAI,CAAC,kBAAkB;YACrB,OAAO,CAAC,kBAAkB,KAAK,SAAS;gBACtC,CAAC,CAAC,OAAO,CAAC,kBAAkB;gBAC5B,CAAC,CAAC,IAAI,CAAA;IACZ,CAAC;IAED;;OAEG;IACI,qBAAqB,CAAC,kBAA2B;QACtD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;IAC9C,CAAC;IAED;;OAEG;IACI,qBAAqB;QAC1B,OAAO,IAAI,CAAC,kBAAkB,CAAA;IAChC,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,4BAA4B,CACxC,WAAmB,EACnB,OAA8C;QAE9C,0FAA0F;QAC1F,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACpD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;aAC1D,CAAC,CAAC,CAAA;QACL,CAAC;QAED,IAAI,CAAC;YACH,gDAAgD;YAChD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAEtD,2CAA2C;YAC3C,MAAM,SAAS,GAAG,MAAM,uBAAuB,CAC7C,WAAW,EACX,WAAW,EACX,IAAI,CAAC,gBAAgB,CACtB,CAAA;YAED,sCAAsC;YACtC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;gBACnC,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC;aAC3B,CAAC,CAAC,CAAA;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,6EAA6E,EAC7E,KAAK,CACN,CAAA;YAED,gEAAgE;YAChE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;aAC1D,CAAC,CAAC,CAAA;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,OAAO,CAAC,IAAoB;QACvC,2BAA2B;QAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;QAC9C,CAAC;QAED,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAE3B,6BAA6B;QAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAChD,CAAC;QAED,gCAAgC;QAChC,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAA;QAChC,CAAC;aAAM,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,uCAAuC,IAAI,CAAC,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,CAC9E,CAAA;QACH,CAAC;QAED,sCAAsC;QACtC,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE,CAAA;QAEvC,kBAAkB;QAClB,MAAM,IAAI,GAAa;YACrB,EAAE;YACF,MAAM;YACN,WAAW,EAAE,IAAI,GAAG,EAAE;YACtB,KAAK,EAAE,SAAS;SACjB,CAAA;QAED,kDAAkD;QAClD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC;YAChD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAU,CAAC,CAAA;QAChD,CAAC;QAED,qDAAqD;QACrD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;YACtB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAA;YACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;YACxB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;YACvC,wFAAwF;YACxF,yBAAyB;YACzB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;YACtB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAA;YACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;YACxB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACpD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,YAAY,YAAY,CAAC,CAAA;YACnE,iEAAiE;YACjE,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;YACtB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAA;YACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;YACxB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,IAAI,OAAO,GAAG,UAAU,CAAA;QACxB,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;QAE/D,iEAAiE;QACjE,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC;YAC3D,IAAI,OAAO,GAAG,IAAI,CAAA;YAClB,OAAO,OAAO,EAAE,CAAC;gBACf,OAAO,GAAG,KAAK,CAAA;gBAEf,uCAAuC;gBACvC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;gBAEvE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;oBACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;oBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,8EAA8E;wBAC9E,SAAQ;oBACV,CAAC;oBACD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;oBAErE,IAAI,cAAc,GAAG,QAAQ,EAAE,CAAC;wBAC9B,QAAQ,GAAG,cAAc,CAAA;wBACzB,OAAO,GAAG,QAAQ,CAAA;wBAClB,OAAO,GAAG,IAAI,CAAA;oBAChB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,0CAA0C;QAC1C,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACzE,+CAA+C;YAC/C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CACzC,MAAM,EACN,OAAO,EACP,IAAI,CAAC,MAAM,CAAC,cAAc,EAC1B,KAAK,CACN,CAAA;YAED,6BAA6B;YAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CACpC,MAAM,EACN,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,CAAC,CACd,CAAA;YAED,gCAAgC;YAChC,KAAK,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC;gBACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;gBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,8EAA8E;oBAC9E,SAAQ;gBACV,CAAC;gBAED,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;gBAE5C,yBAAyB;gBACzB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBACrC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAU,CAAC,CAAA;gBACpD,CAAC;gBACD,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAExC,oDAAoD;gBACpD,IAAI,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;oBAC1D,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;gBACxC,CAAC;YACH,CAAC;YAED,wCAAwC;YACxC,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;gBACrD,IAAI,WAAW,GAAG,QAAQ,EAAE,CAAC;oBAC3B,QAAQ,GAAG,WAAW,CAAA;oBACtB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;oBAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,OAAO,CAAC,KAAK,CACX,wBAAwB,SAAS,uBAAuB,CACzD,CAAA;wBACD,gCAAgC;oBAClC,CAAC;yBAAM,CAAC;wBACN,OAAO,GAAG,WAAW,CAAA;oBACvB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAI,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAA;YACzB,IAAI,CAAC,YAAY,GAAG,EAAE,CAAA;QACxB,CAAC;QAED,wBAAwB;QACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QACxB,OAAO,EAAE,CAAA;IACX,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,MAAM,CACjB,WAAmB,EACnB,IAAY,EAAE;QAEd,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAA;QACX,CAAC;QAED,mCAAmC;QACnC,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;QACtD,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;YACrE,MAAM,IAAI,KAAK,CACb,6CAA6C,IAAI,CAAC,SAAS,SAAS,WAAW,CAAC,MAAM,EAAE,CACzF,CAAA;QACH,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;YACvC,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACpD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,YAAY,YAAY,CAAC,CAAA;YACnE,OAAO,EAAE,CAAA;QACX,CAAC;QAED,IAAI,OAAO,GAAG,UAAU,CAAA;QACxB,IAAI,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;QAEjE,iEAAiE;QACjE,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACnD,IAAI,OAAO,GAAG,IAAI,CAAA;YAClB,OAAO,OAAO,EAAE,CAAC;gBACf,OAAO,GAAG,KAAK,CAAA;gBAEf,uCAAuC;gBACvC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;gBAEvE,mEAAmE;gBACnE,IAAI,IAAI,CAAC,kBAAkB,IAAI,WAAW,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;oBACtD,2CAA2C;oBAC3C,MAAM,OAAO,GAA0C,EAAE,CAAA;oBACzD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;wBACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;wBAC3C,IAAI,CAAC,QAAQ;4BAAE,SAAQ;wBACvB,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;oBAC3D,CAAC;oBAED,kCAAkC;oBAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,4BAA4B,CACvD,WAAW,EACX,OAAO,CACR,CAAA;oBAED,4BAA4B;oBAC5B,KAAK,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,SAAS,EAAE,CAAC;wBACzC,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC;4BACxB,QAAQ,GAAG,QAAQ,CAAA;4BACnB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;4BACnC,IAAI,QAAQ,EAAE,CAAC;gCACb,OAAO,GAAG,QAAQ,CAAA;gCAClB,OAAO,GAAG,IAAI,CAAA;4BAChB,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,4DAA4D;oBAC5D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;wBACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;wBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACd,8EAA8E;4BAC9E,SAAQ;wBACV,CAAC;wBACD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAC1C,WAAW,EACX,QAAQ,CAAC,MAAM,CAChB,CAAA;wBAED,IAAI,cAAc,GAAG,QAAQ,EAAE,CAAC;4BAC9B,QAAQ,GAAG,cAAc,CAAA;4BACzB,OAAO,GAAG,QAAQ,CAAA;4BAClB,OAAO,GAAG,IAAI,CAAA;wBAChB,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,gCAAgC;QAChC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CACzC,WAAW,EACX,OAAO,EACP,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,EACjC,CAAC,CACF,CAAA;QAED,wCAAwC;QACxC,OAAO,CAAC,GAAG,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtC,CAAC;IAED;;OAEG;IACI,UAAU,CAAC,EAAU;QAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,OAAO,KAAK,CAAA;QACd,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAE,CAAA;QAEhC,qDAAqD;QACrD,KAAK,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;gBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,8EAA8E;oBAC9E,SAAQ;gBACV,CAAC;gBACD,IAAI,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBAE3C,mEAAmE;oBACnE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;gBACxC,CAAC;YACH,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,KAAK,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,MAAM,KAAK,EAAE;gBAAE,SAAQ,CAAC,8BAA8B;YAE1D,KAAK,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,IAAI,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnE,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBACxB,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBAEtB,kDAAkD;oBAClD,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;gBACzC,CAAC;YACH,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QAErB,gDAAgD;QAChD,IAAI,IAAI,CAAC,YAAY,KAAK,EAAE,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;gBACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;YACnB,CAAC;iBAAM,CAAC;gBACN,uCAAuC;gBACvC,IAAI,QAAQ,GAAG,CAAC,CAAA;gBAChB,IAAI,eAAe,GAAG,IAAI,CAAA;gBAE1B,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;oBAClD,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC;wBAAE,SAAQ,CAAC,iCAAiC;oBAE3E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;oBACtD,IAAI,SAAS,IAAI,QAAQ,EAAE,CAAC;wBAC1B,QAAQ,GAAG,SAAS,CAAA;wBACpB,eAAe,GAAG,MAAM,CAAA;oBAC1B,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,YAAY,GAAG,eAAe,CAAA;gBACnC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;;OAGG;IACI,QAAQ;QACb,OAAO,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5B,CAAC;IAED;;;;OAIG;IACI,iBAAiB,CACtB,UAII,EAAE;QAMN,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;QAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,GAAG,CAAA;QAClC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QAE7C,uBAAuB;QACvB,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QAEzC,2BAA2B;QAC3B,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;QAEnE,kCAAkC;QAClC,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAA;QAEzC,mBAAmB;QACnB,MAAM,gBAAgB,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAA;QAEtE,gCAAgC;QAChC,MAAM,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,UAAU,CAAA;QAE3C,8CAA8C;QAC9C,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAA;QAEvC,OAAO;YACL,KAAK;YACL,UAAU;YACV,OAAO;SACR,CAAA;IACH,CAAC;IAED;;OAEG;IACI,KAAK;QACV,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAA;QAClB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;IACnB,CAAC;IAED;;OAEG;IACI,IAAI;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;IACxB,CAAC;IAED;;OAEG;IACI,mBAAmB;QACxB,OAAO,IAAI,CAAC,gBAAgB,CAAA;IAC9B,CAAC;IAED;;OAEG;IACI,eAAe;QACpB,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAED;;OAEG;IACI,WAAW;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAED;;OAEG;IACI,YAAY;QACjB,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED;;OAEG;IACI,SAAS;QACd,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;IAC3B,CAAC;IAED;;OAEG;IACI,cAAc;QAMnB,IAAI,gBAAgB,GAAG,CAAC,CAAA;QACxB,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAExD,2CAA2C;QAC3C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACxB,kCAAkC;YAClC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;gBACjD,gBAAgB,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,CAAA;gBAC1D,WAAW,CAAC,KAAK,CAAC,EAAE,CAAA;YACtB,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;QAClC,MAAM,kBAAkB,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QAE7E,OAAO;YACL,kBAAkB;YAClB,iBAAiB,EAAE,WAAW;YAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU;SACX,CAAA;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,WAAW,CACvB,WAAmB,EACnB,UAAoB,EACpB,EAAU,EACV,KAAa;QAEb,uBAAuB;QACvB,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAA;QAEhD,+CAA+C;QAC/C,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAA;QAC5C,UAAU,CAAC,GAAG,CACZ,UAAU,CAAC,EAAE,EACb,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,CACtD,CAAA;QAED,mEAAmE;QACnE,MAAM,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAA;QACzC,OAAO,CAAC,GAAG,CACT,UAAU,CAAC,EAAE,EACb,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,CACtD,CAAA;QAED,wCAAwC;QACxC,OAAO,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC3B,wBAAwB;YACxB,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;YACnD,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;YAE5B,+EAA+E;YAC/E,MAAM,iBAAiB,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAA;YACxD,IAAI,OAAO,CAAC,IAAI,IAAI,EAAE,IAAI,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC7D,MAAK;YACP,CAAC;YAED,6CAA6C;YAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACtC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,gBAAgB,SAAS,2BAA2B,CAAC,CAAA;gBACnE,SAAQ;YACV,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,EAAU,CAAA;YAEpE,kGAAkG;YAClG,IAAI,IAAI,CAAC,kBAAkB,IAAI,WAAW,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;gBACtD,8BAA8B;gBAC9B,MAAM,kBAAkB,GAA0C,EAAE,CAAA;gBACpE,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;oBACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;wBAC7B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;wBACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;wBAC3C,IAAI,CAAC,QAAQ;4BAAE,SAAQ;wBACvB,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAA;oBACtE,CAAC;gBACH,CAAC;gBAED,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,kCAAkC;oBAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,4BAA4B,CACvD,WAAW,EACX,kBAAkB,CACnB,CAAA;oBAED,sBAAsB;oBACtB,KAAK,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,SAAS,EAAE,CAAC;wBACzC,6GAA6G;wBAC7G,IAAI,OAAO,CAAC,IAAI,GAAG,EAAE,IAAI,QAAQ,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;4BACzD,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;4BAC5B,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;4BAEzB,6DAA6D;4BAC7D,IAAI,OAAO,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC;gCACtB,MAAM,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gCAC9D,OAAO,CAAC,KAAK,EAAE,CAAA;gCACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;oCAC5B,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gCACvD,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,4DAA4D;gBAC5D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;oBACrC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;wBAC7B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;wBAEvB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;wBAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACd,8EAA8E;4BAC9E,SAAQ;wBACV,CAAC;wBACD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAC1C,WAAW,EACX,QAAQ,CAAC,MAAM,CAChB,CAAA;wBAED,6GAA6G;wBAC7G,IAAI,OAAO,CAAC,IAAI,GAAG,EAAE,IAAI,cAAc,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;4BAC/D,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;4BAC1C,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,cAAc,CAAC,CAAA;4BAEvC,6DAA6D;4BAC7D,IAAI,OAAO,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC;gCACtB,MAAM,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gCAC9D,OAAO,CAAC,KAAK,EAAE,CAAA;gCACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;oCAC5B,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gCACvD,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,2BAA2B;QAC3B,OAAO,IAAI,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1D,CAAC;IAED;;OAEG;IACK,eAAe,CACrB,WAAmB,EACnB,UAA+B,EAC/B,CAAS;QAET,IAAI,UAAU,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;YACzB,OAAO,UAAU,CAAA;QACnB,CAAC;QAED,4CAA4C;QAC5C,MAAM,gBAAgB,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACpE,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAA;QAExC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9D,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,IAAc,EAAE,KAAa;QACpD,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAE,CAAA;QAChD,IAAI,WAAW,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YACtC,OAAM;QACR,CAAC;QAED,uCAAuC;QACvC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAA;QAC3C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAA;QAE1C,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YAC3C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,8EAA8E;gBAC9E,SAAQ;YACV,CAAC;YAED,gDAAgD;YAChD,SAAS,CAAC,GAAG,CACX,UAAU,EACV,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CACpD,CAAA;YACD,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAClC,CAAC;QAED,0CAA0C;QAC1C,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACzB,yDAAyD;YACzD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;YACtC,OAAM;QACR,CAAC;QAED,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAC5C,IAAI,CAAC,MAAM,EACX,SAAS,EACT,IAAI,CAAC,MAAM,CAAC,CAAC,CACd,CAAA;QAED,+CAA+C;QAC/C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,GAAG,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;IAChE,CAAC;IAED;;;OAGG;IACK,cAAc;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;QACvB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACnE,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -2,17 +2,16 @@
2
2
  * Brainy
3
3
  * A vector and graph database using HNSW
4
4
  */
5
- import './setup.js';
6
5
  import { BrainyData, BrainyDataConfig } from './brainyData.js';
7
6
  export { BrainyData };
8
7
  export type { BrainyDataConfig };
9
8
  import { euclideanDistance, cosineDistance, manhattanDistance, dotProductDistance, getStatistics } from './utils/index.js';
10
9
  export { euclideanDistance, cosineDistance, manhattanDistance, dotProductDistance, getStatistics };
11
- import { UniversalSentenceEncoder, createEmbeddingFunction, createTensorFlowEmbeddingFunction, createThreadedEmbeddingFunction, defaultEmbeddingFunction } from './utils/embedding.js';
10
+ import { UniversalSentenceEncoder, TransformerEmbedding, createEmbeddingFunction, defaultEmbeddingFunction, batchEmbed, embeddingFunctions } from './utils/embedding.js';
12
11
  import { executeInThread, cleanupWorkerPools } from './utils/workerUtils.js';
13
12
  import { logger, LogLevel, configureLogger, createModuleLogger } from './utils/logger.js';
14
13
  import { isBrowser, isNode, isWebWorker, areWebWorkersAvailable, areWorkerThreadsAvailable, areWorkerThreadsAvailableSync, isThreadingAvailable, isThreadingAvailableAsync } from './utils/environment.js';
15
- export { UniversalSentenceEncoder, createEmbeddingFunction, createTensorFlowEmbeddingFunction, createThreadedEmbeddingFunction, defaultEmbeddingFunction, executeInThread, cleanupWorkerPools, isBrowser, isNode, isWebWorker, areWebWorkersAvailable, areWorkerThreadsAvailable, areWorkerThreadsAvailableSync, isThreadingAvailable, isThreadingAvailableAsync, logger, LogLevel, configureLogger, createModuleLogger };
14
+ export { UniversalSentenceEncoder, TransformerEmbedding, createEmbeddingFunction, defaultEmbeddingFunction, batchEmbed, embeddingFunctions, executeInThread, cleanupWorkerPools, isBrowser, isNode, isWebWorker, areWebWorkersAvailable, areWorkerThreadsAvailable, areWorkerThreadsAvailableSync, isThreadingAvailable, isThreadingAvailableAsync, logger, LogLevel, configureLogger, createModuleLogger };
16
15
  import { OPFSStorage, MemoryStorage, R2Storage, S3CompatibleStorage, createStorage } from './storage/storageFactory.js';
17
16
  export { OPFSStorage, MemoryStorage, R2Storage, S3CompatibleStorage, createStorage };
18
17
  export { FileSystemStorage } from './storage/adapters/fileSystemStorage.js';
package/dist/index.js CHANGED
@@ -2,13 +2,7 @@
2
2
  * Brainy
3
3
  * A vector and graph database using HNSW
4
4
  */
5
- // CRITICAL: The TensorFlow.js environment patch is now centralized in setup.ts
6
- // We import setup.js below which applies the necessary patches through textEncoding.js
7
- // This ensures a consistent patching approach and avoids conflicts
8
- // Import the setup file for its side-effects.
9
- // This MUST be the very first import to ensure patches are applied
10
- // before any other module (like TensorFlow.js) is loaded.
11
- import './setup.js';
5
+ // No setup needed - using clean ONNX Runtime with Transformers.js
12
6
  // Export main BrainyData class and related types
13
7
  import { BrainyData } from './brainyData.js';
14
8
  export { BrainyData };
@@ -16,14 +10,14 @@ export { BrainyData };
16
10
  import { euclideanDistance, cosineDistance, manhattanDistance, dotProductDistance, getStatistics } from './utils/index.js';
17
11
  export { euclideanDistance, cosineDistance, manhattanDistance, dotProductDistance, getStatistics };
18
12
  // Export embedding functionality
19
- import { UniversalSentenceEncoder, createEmbeddingFunction, createTensorFlowEmbeddingFunction, createThreadedEmbeddingFunction, defaultEmbeddingFunction } from './utils/embedding.js';
13
+ import { UniversalSentenceEncoder, TransformerEmbedding, createEmbeddingFunction, defaultEmbeddingFunction, batchEmbed, embeddingFunctions } from './utils/embedding.js';
20
14
  // Export worker utilities
21
15
  import { executeInThread, cleanupWorkerPools } from './utils/workerUtils.js';
22
16
  // Export logging utilities
23
17
  import { logger, LogLevel, configureLogger, createModuleLogger } from './utils/logger.js';
24
18
  // Export environment utilities
25
19
  import { isBrowser, isNode, isWebWorker, areWebWorkersAvailable, areWorkerThreadsAvailable, areWorkerThreadsAvailableSync, isThreadingAvailable, isThreadingAvailableAsync } from './utils/environment.js';
26
- export { UniversalSentenceEncoder, createEmbeddingFunction, createTensorFlowEmbeddingFunction, createThreadedEmbeddingFunction, defaultEmbeddingFunction,
20
+ export { UniversalSentenceEncoder, TransformerEmbedding, createEmbeddingFunction, defaultEmbeddingFunction, batchEmbed, embeddingFunctions,
27
21
  // Worker utilities
28
22
  executeInThread, cleanupWorkerPools,
29
23
  // Environment utilities
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/setup.d.ts CHANGED
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * CRITICAL: This file is imported for its side effects to patch the environment
3
- * for TensorFlow.js before any other library code runs.
3
+ * for Node.js compatibility before any other library code runs.
4
4
  *
5
- * It ensures that by the time TensorFlow.js is imported by any other
5
+ * It ensures that by the time Transformers.js/ONNX Runtime is imported by any other
6
6
  * module, the necessary compatibility fixes for the current Node.js
7
7
  * environment are already in place.
8
8
  *
9
9
  * This file MUST be imported as the first import in unified.ts to prevent
10
- * race conditions with TensorFlow.js initialization. Failure to do so will
10
+ * race conditions with library initialization. Failure to do so may
11
11
  * result in errors like "TextEncoder is not a constructor" when the package
12
12
  * is used in Node.js environments.
13
13
  *
package/dist/setup.js CHANGED
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * CRITICAL: This file is imported for its side effects to patch the environment
3
- * for TensorFlow.js before any other library code runs.
3
+ * for Node.js compatibility before any other library code runs.
4
4
  *
5
- * It ensures that by the time TensorFlow.js is imported by any other
5
+ * It ensures that by the time Transformers.js/ONNX Runtime is imported by any other
6
6
  * module, the necessary compatibility fixes for the current Node.js
7
7
  * environment are already in place.
8
8
  *
9
9
  * This file MUST be imported as the first import in unified.ts to prevent
10
- * race conditions with TensorFlow.js initialization. Failure to do so will
10
+ * race conditions with library initialization. Failure to do so may
11
11
  * result in errors like "TextEncoder is not a constructor" when the package
12
12
  * is used in Node.js environments.
13
13
  *
@@ -33,14 +33,14 @@ if (globalObj) {
33
33
  if (!globalObj.TextDecoder) {
34
34
  globalObj.TextDecoder = TextDecoder;
35
35
  }
36
- // Create a special global constructor that TensorFlow can use safely
36
+ // Create special global constructors for library compatibility
37
37
  ;
38
38
  globalObj.__TextEncoder__ = TextEncoder;
39
39
  globalObj.__TextDecoder__ = TextDecoder;
40
40
  }
41
41
  // Also import normally for ES modules environments
42
42
  import { applyTensorFlowPatch } from './utils/textEncoding.js';
43
- // Apply the TensorFlow.js platform patch
43
+ // Apply the TextEncoder/TextDecoder compatibility patch
44
44
  applyTensorFlowPatch();
45
- console.log('Applied TensorFlow.js patch via ES modules in setup.ts');
45
+ console.log('Applied TextEncoder/TextDecoder patch via ES modules in setup.ts');
46
46
  //# sourceMappingURL=setup.js.map
package/dist/setup.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,gEAAgE;AAChE,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;IACtB,IAAI,OAAO,UAAU,KAAK,WAAW;QAAE,OAAO,UAAU,CAAA;IACxD,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,MAAM,CAAA;IAChD,IAAI,OAAO,IAAI,KAAK,WAAW;QAAE,OAAO,IAAI,CAAA;IAC5C,OAAO,IAAI,CAAA,CAAC,6BAA6B;AAC3C,CAAC,CAAC,EAAE,CAAA;AAEJ,6EAA6E;AAC7E,wFAAwF;AACxF,IAAI,SAAS,EAAE,CAAC;IACd,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC3B,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;IACrC,CAAC;IACD,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC3B,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;IACrC,CAAC;IAED,qEAAqE;IACrE,CAAC;IAAC,SAAiB,CAAC,eAAe,GAAG,WAAW,CAChD;IAAC,SAAiB,CAAC,eAAe,GAAG,WAAW,CAAA;AACnD,CAAC;AAED,mDAAmD;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAE9D,yCAAyC;AACzC,oBAAoB,EAAE,CAAA;AACtB,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAA"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,gEAAgE;AAChE,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE;IACtB,IAAI,OAAO,UAAU,KAAK,WAAW;QAAE,OAAO,UAAU,CAAA;IACxD,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,MAAM,CAAA;IAChD,IAAI,OAAO,IAAI,KAAK,WAAW;QAAE,OAAO,IAAI,CAAA;IAC5C,OAAO,IAAI,CAAA,CAAC,6BAA6B;AAC3C,CAAC,CAAC,EAAE,CAAA;AAEJ,6EAA6E;AAC7E,wFAAwF;AACxF,IAAI,SAAS,EAAE,CAAC;IACd,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC3B,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;IACrC,CAAC;IACD,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC3B,SAAS,CAAC,WAAW,GAAG,WAAW,CAAA;IACrC,CAAC;IAED,+DAA+D;IAC/D,CAAC;IAAC,SAAiB,CAAC,eAAe,GAAG,WAAW,CAChD;IAAC,SAAiB,CAAC,eAAe,GAAG,WAAW,CAAA;AACnD,CAAC;AAED,mDAAmD;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAE9D,wDAAwD;AACxD,oBAAoB,EAAE,CAAA;AACtB,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAA"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Distance functions for vector similarity calculations
3
- * Optimized for Node.js 23.11+ using enhanced array methods
4
- * GPU-accelerated versions available for high-performance computing
3
+ * Optimized pure JavaScript implementations using enhanced array methods
4
+ * Faster than GPU for small vectors (384 dims) due to no transfer overhead
5
5
  */
6
6
  import { DistanceFunction, Vector } from '../coreTypes.js';
7
7
  /**
@@ -31,8 +31,8 @@ export declare const manhattanDistance: DistanceFunction;
31
31
  */
32
32
  export declare const dotProductDistance: DistanceFunction;
33
33
  /**
34
- * Batch distance calculation
35
- * Uses TensorFlow.js with CPU backend for optimized performance
34
+ * Batch distance calculation using optimized JavaScript
35
+ * More efficient than GPU for small vectors due to no memory transfer overhead
36
36
  *
37
37
  * @param queryVector The query vector to compare against all vectors
38
38
  * @param vectors Array of vectors to compare against
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Distance functions for vector similarity calculations
3
- * Optimized for Node.js 23.11+ using enhanced array methods
4
- * GPU-accelerated versions available for high-performance computing
3
+ * Optimized pure JavaScript implementations using enhanced array methods
4
+ * Faster than GPU for small vectors (384 dims) due to no transfer overhead
5
5
  */
6
6
  /**
7
7
  * Calculates the Euclidean distance between two vectors
@@ -72,8 +72,8 @@ export const dotProductDistance = (a, b) => {
72
72
  return -dotProduct;
73
73
  };
74
74
  /**
75
- * Batch distance calculation
76
- * Uses TensorFlow.js with CPU backend for optimized performance
75
+ * Batch distance calculation using optimized JavaScript
76
+ * More efficient than GPU for small vectors due to no memory transfer overhead
77
77
  *
78
78
  * @param queryVector The query vector to compare against all vectors
79
79
  * @param vectors Array of vectors to compare against
@@ -86,149 +86,76 @@ export async function calculateDistancesBatch(queryVector, vectors, distanceFunc
86
86
  return vectors.map((vector) => distanceFunction(queryVector, vector));
87
87
  }
88
88
  try {
89
- // Function to be executed in a worker thread
90
- const distanceCalculator = async (args) => {
89
+ // Function for optimized batch distance calculation
90
+ const distanceCalculator = (args) => {
91
91
  const { queryVector, vectors, distanceFnString } = args;
92
- // Use TensorFlow.js with CPU processing
93
- const useTensorFlow = async () => {
94
- // TensorFlow.js will use its default EPSILON value
95
- // Use the importTensorFlow function if available (in worker context)
96
- // or directly import TensorFlow.js (in main thread)
97
- let tf;
98
- if (typeof self !== 'undefined' &&
99
- typeof self.importTensorFlow === 'function') {
100
- // In worker context, use the importTensorFlow function
101
- tf = await self.importTensorFlow();
102
- }
103
- else {
104
- // CRITICAL: Ensure TextEncoder/TextDecoder are available before TensorFlow.js loads
105
- try {
106
- // Use dynamic imports for all environments to ensure TensorFlow loads after patch
107
- if (typeof process !== 'undefined' && process.versions && process.versions.node) {
108
- // Ensure TextEncoder/TextDecoder are globally available in Node.js
109
- const util = await import('util');
110
- if (typeof global.TextEncoder === 'undefined') {
111
- global.TextEncoder = util.TextEncoder;
112
- }
113
- if (typeof global.TextDecoder === 'undefined') {
114
- global.TextDecoder = util.TextDecoder;
115
- }
116
- }
117
- // Apply the TensorFlow.js patch
118
- const { applyTensorFlowPatch } = await import('./textEncoding.js');
119
- await applyTensorFlowPatch();
120
- // Now load TensorFlow.js core module using dynamic imports
121
- tf = await import('@tensorflow/tfjs-core');
122
- await import('@tensorflow/tfjs-backend-cpu');
123
- await tf.setBackend('cpu');
92
+ // Optimized JavaScript implementations for different distance functions
93
+ let distances;
94
+ if (distanceFnString.includes('euclideanDistance')) {
95
+ // Euclidean distance: sqrt(sum((a - b)^2))
96
+ distances = vectors.map((vector) => {
97
+ let sum = 0;
98
+ for (let i = 0; i < queryVector.length; i++) {
99
+ const diff = queryVector[i] - vector[i];
100
+ sum += diff * diff;
124
101
  }
125
- catch (error) {
126
- console.error('Failed to initialize TensorFlow.js:', error);
127
- throw error;
102
+ return Math.sqrt(sum);
103
+ });
104
+ }
105
+ else if (distanceFnString.includes('cosineDistance')) {
106
+ // Cosine distance: 1 - (a·b / (||a|| * ||b||))
107
+ distances = vectors.map((vector) => {
108
+ let dotProduct = 0;
109
+ let queryNorm = 0;
110
+ let vectorNorm = 0;
111
+ for (let i = 0; i < queryVector.length; i++) {
112
+ dotProduct += queryVector[i] * vector[i];
113
+ queryNorm += queryVector[i] * queryVector[i];
114
+ vectorNorm += vector[i] * vector[i];
115
+ }
116
+ queryNorm = Math.sqrt(queryNorm);
117
+ vectorNorm = Math.sqrt(vectorNorm);
118
+ if (queryNorm === 0 || vectorNorm === 0) {
119
+ return 1; // Maximum distance for zero vectors
120
+ }
121
+ const cosineSimilarity = dotProduct / (queryNorm * vectorNorm);
122
+ return 1 - cosineSimilarity;
123
+ });
124
+ }
125
+ else if (distanceFnString.includes('manhattanDistance')) {
126
+ // Manhattan distance: sum(|a - b|)
127
+ distances = vectors.map((vector) => {
128
+ let sum = 0;
129
+ for (let i = 0; i < queryVector.length; i++) {
130
+ sum += Math.abs(queryVector[i] - vector[i]);
128
131
  }
129
- }
130
- // Convert vectors to tensors
131
- const queryTensor = tf.tensor2d([queryVector]);
132
- const vectorsTensor = tf.tensor2d(vectors);
133
- let distances;
134
- // Calculate distances based on the distance function type
135
- if (distanceFnString.includes('euclideanDistance')) {
136
- // Euclidean distance using GPU-optimized operations
137
- // Formula: sqrt(sum((a - b)^2))
138
- const expanded = tf.sub(queryTensor.expandDims(1), vectorsTensor.expandDims(0));
139
- const squaredDiff = tf.square(expanded);
140
- const sumSquaredDiff = tf.sum(squaredDiff, -1);
141
- const distancesTensor = tf.sqrt(sumSquaredDiff);
142
- distances = (await distancesTensor
143
- .squeeze()
144
- .array());
145
- // Clean up tensors
146
- queryTensor.dispose();
147
- vectorsTensor.dispose();
148
- expanded.dispose();
149
- squaredDiff.dispose();
150
- sumSquaredDiff.dispose();
151
- distancesTensor.dispose();
152
- }
153
- else if (distanceFnString.includes('cosineDistance')) {
154
- // Cosine distance using GPU-optimized operations
155
- // Formula: 1 - (a·b / (||a|| * ||b||))
156
- const dotProduct = tf.matMul(queryTensor, vectorsTensor.transpose());
157
- const queryNorm = tf.norm(queryTensor, 2, 1);
158
- const vectorsNorm = tf.norm(vectorsTensor, 2, 1);
159
- const normProduct = tf.outerProduct(queryNorm, vectorsNorm);
160
- const cosineSimilarity = tf.div(dotProduct, normProduct);
161
- const distancesTensor = tf.sub(tf.scalar(1), cosineSimilarity);
162
- distances = (await distancesTensor
163
- .squeeze()
164
- .array());
165
- // Clean up tensors
166
- queryTensor.dispose();
167
- vectorsTensor.dispose();
168
- dotProduct.dispose();
169
- queryNorm.dispose();
170
- vectorsNorm.dispose();
171
- normProduct.dispose();
172
- cosineSimilarity.dispose();
173
- distancesTensor.dispose();
174
- }
175
- else if (distanceFnString.includes('manhattanDistance')) {
176
- // Manhattan distance using GPU-optimized operations
177
- // Formula: sum(|a - b|)
178
- const diff = tf.sub(queryTensor.expandDims(1), vectorsTensor.expandDims(0));
179
- const absDiff = tf.abs(diff);
180
- const distancesTensor = tf.sum(absDiff, -1);
181
- distances = (await distancesTensor
182
- .squeeze()
183
- .array());
184
- // Clean up tensors
185
- queryTensor.dispose();
186
- vectorsTensor.dispose();
187
- diff.dispose();
188
- absDiff.dispose();
189
- distancesTensor.dispose();
190
- }
191
- else if (distanceFnString.includes('dotProductDistance')) {
192
- // Dot product distance using GPU-optimized operations
193
- // Formula: -sum(a * b)
194
- const dotProduct = tf.matMul(queryTensor, vectorsTensor.transpose());
195
- const distancesTensor = tf.neg(dotProduct);
196
- distances = (await distancesTensor
197
- .squeeze()
198
- .array());
199
- // Clean up tensors
200
- queryTensor.dispose();
201
- vectorsTensor.dispose();
202
- dotProduct.dispose();
203
- distancesTensor.dispose();
204
- }
205
- else {
206
- // For unknown distance functions, fall back to direct CPU implementation
207
- throw new Error('Unsupported distance function for TensorFlow optimization');
208
- }
209
- return {
210
- distances
211
- };
212
- };
213
- // Try to use TensorFlow.js with CPU optimization
214
- try {
215
- return await useTensorFlow();
132
+ return sum;
133
+ });
216
134
  }
217
- catch (error) {
218
- // Fall back to direct CPU implementation if TensorFlow.js fails
219
- // Recreate the distance function from its string representation
135
+ else if (distanceFnString.includes('dotProductDistance')) {
136
+ // Dot product distance: -sum(a * b)
137
+ distances = vectors.map((vector) => {
138
+ let dotProduct = 0;
139
+ for (let i = 0; i < queryVector.length; i++) {
140
+ dotProduct += queryVector[i] * vector[i];
141
+ }
142
+ return -dotProduct;
143
+ });
144
+ }
145
+ else {
146
+ // For unknown distance functions, use the provided function
220
147
  const distanceFunction = new Function('return ' + distanceFnString)();
221
- // Calculate distances for all vectors
222
- const distances = vectors.map((vector) => distanceFunction(queryVector, vector));
223
- return {
224
- distances
225
- };
148
+ distances = vectors.map((vector) => distanceFunction(queryVector, vector));
226
149
  }
150
+ return { distances };
227
151
  };
228
- // Threading is not available, so we'll always use the main thread implementation
229
- // This comment is kept for clarity about the removed code
230
- // If threading is not available or failed, calculate distances in the main thread
231
- return vectors.map((vector) => distanceFunction(queryVector, vector));
152
+ // Use the optimized distance calculator
153
+ const result = distanceCalculator({
154
+ queryVector,
155
+ vectors,
156
+ distanceFnString: distanceFunction.toString()
157
+ });
158
+ return result.distances;
232
159
  }
233
160
  catch (error) {
234
161
  // If anything fails, fall back to the standard distance function
@@ -1 +1 @@
1
- {"version":3,"file":"distance.js","sourceRoot":"","sources":["../../src/utils/distance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"distance.js","sourceRoot":"","sources":["../../src/utils/distance.ts"],"names":[],"mappings":"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"}