@aeye/ai 0.3.9 → 0.7.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.
Files changed (52) hide show
  1. package/README.md +898 -798
  2. package/aeye-ai.md +237 -219
  3. package/dist/ai.d.ts +7 -1
  4. package/dist/ai.d.ts.map +1 -1
  5. package/dist/ai.js +50 -77
  6. package/dist/ai.js.map +1 -1
  7. package/dist/apis/batch.d.ts +74 -0
  8. package/dist/apis/batch.d.ts.map +1 -0
  9. package/dist/apis/batch.js +127 -0
  10. package/dist/apis/batch.js.map +1 -0
  11. package/dist/apis/chat.d.ts.map +1 -1
  12. package/dist/apis/chat.js +55 -35
  13. package/dist/apis/chat.js.map +1 -1
  14. package/dist/apis/decide.d.ts +33 -0
  15. package/dist/apis/decide.d.ts.map +1 -0
  16. package/dist/apis/decide.js +52 -0
  17. package/dist/apis/decide.js.map +1 -0
  18. package/dist/apis/embed.d.ts +4 -11
  19. package/dist/apis/embed.d.ts.map +1 -1
  20. package/dist/apis/embed.js +5 -32
  21. package/dist/apis/embed.js.map +1 -1
  22. package/dist/apis/get.d.ts +18 -0
  23. package/dist/apis/get.d.ts.map +1 -0
  24. package/dist/apis/get.js +30 -0
  25. package/dist/apis/get.js.map +1 -0
  26. package/dist/apis/image.d.ts +2 -2
  27. package/dist/apis/image.d.ts.map +1 -1
  28. package/dist/apis/image.js +45 -40
  29. package/dist/apis/image.js.map +1 -1
  30. package/dist/apis/rerank.d.ts +24 -0
  31. package/dist/apis/rerank.d.ts.map +1 -0
  32. package/dist/apis/rerank.js +40 -0
  33. package/dist/apis/rerank.js.map +1 -0
  34. package/dist/apis/schema-fallback.d.ts +9 -14
  35. package/dist/apis/schema-fallback.d.ts.map +1 -1
  36. package/dist/apis/schema-fallback.js +15 -64
  37. package/dist/apis/schema-fallback.js.map +1 -1
  38. package/dist/common.d.ts +20 -2
  39. package/dist/common.d.ts.map +1 -1
  40. package/dist/common.js +36 -0
  41. package/dist/common.js.map +1 -1
  42. package/dist/index.d.ts +4 -0
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +4 -0
  45. package/dist/index.js.map +1 -1
  46. package/dist/registry.d.ts +30 -1
  47. package/dist/registry.d.ts.map +1 -1
  48. package/dist/registry.js +61 -1
  49. package/dist/registry.js.map +1 -1
  50. package/dist/types.d.ts +198 -55
  51. package/dist/types.d.ts.map +1 -1
  52. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","sourceRoot":"","sources":["../../src/apis/image.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAc,MAAM,YAAY,CAAC;AAmBtF,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,MAAM,gBAAwC,SAAQ,OAKrD;IACC,YAAY,EAAS;QACnB,KAAK,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC;IAES,uBAAuB,CAAC,QAA2B,EAAE,OAAgC;QAC7F,OAAO,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,qBAAqB,CAAC,QAA0B,EAAE,OAA+B,EAAE,YAAqB;QAChH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,CAAC;QAEjD,IAAI,OAAO,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,YAAY,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAES,oBAAoB;QAC5B,OAAO,gDAAgD,CAAC;IAC1D,CAAC;IAES,YAAY,CAAC,SAA+B;QACpD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,gCAAgC,CAAC;IACvC,CAAC;IAES,eAAe,CAAC,SAA+B;QACvD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,mCAAmC,CAAC;IAC1C,CAAC;IAES,oBAAoB,CAAC,OAA+B;QAC5D,2DAA2D;QAC3D,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7E,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC;QAC9C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;QAE7B,6BAA6B;QAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE1D,OAAO;YACL,IAAI,EAAE;gBACJ,KAAK,EAAE,YAAY;aACpB;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,CAAC;wBACP,OAAO;wBACP,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;wBACvB,KAAK;qBACN,CAAC;aACH;SACF,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,cAAc,CAC5B,OAA+B,EAC/B,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAC,aAAc,CAC3C,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,CAAC,oBAAoB,CACnC,OAA+B,EAC/B,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAoB,CAClD,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,gBAAgB,CAAC,QAAiC;QAC1D,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnC,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,GAAG;YACV,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAC,CAAC;IACN,CAAC;IAES,gBAAgB,CAAC,MAA8B,EAAE,KAA0B;QACnF,MAAM,MAAM,GAAG,MAAM;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAM,CAAC,CAAC;QAEtB,OAAO;YACL,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK;YACvD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK;SACxC,CAAC;IACJ,CAAC;IAES,mBAAmB,CAC3B,OAA4B;QAE5B,OAAO,OAAO,EAAE,aAAa,EAAE,GAAG,CAAC;IACrC,CAAC;IAES,sBAAsB,CAC9B,OAA4B;QAE5B,OAAO,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC;IACxC,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC3C,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IACjD,CAAC;CACF;AAED,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,MAAM,YAAoC,SAAQ,OAKjD;IACC,YAAY,EAAS;QACnB,KAAK,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC;IAES,QAAQ,CAAC,OAAyB;QAC1C,OAAO,OAAO,CAAC,KAAK,CAAC;IACvB,CAAC;IAES,uBAAuB,CAAC,QAA2B,EAAE,OAAyB,EAAE,YAAqB;QAC7G,OAAO,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,qBAAqB,CAAC,QAA0B,EAAE,OAAyB,EAAE,YAAqB;QAC1G,MAAM,MAAM,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,CAAC;QAEjD,IAAI,OAAO,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,YAAY,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAES,oBAAoB;QAC5B,OAAO,6CAA6C,CAAC;IACvD,CAAC;IAES,YAAY,CAAC,SAA+B;QACpD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,0BAA0B,CAAC;IACjC,CAAC;IAES,eAAe,CAAC,SAA+B;QACvD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,gCAAgC,CAAC;IACvC,CAAC;IAES,oBAAoB,CAAC,OAAyB;QACtD,0BAA0B;QAC1B,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7E,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;QAE7B,6BAA6B;QAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE1D,0DAA0D;QAC1D,MAAM,gBAAgB,GAAG,IAAI,CAAC,CAAC,4CAA4C;QAE3E,OAAO;YACL,IAAI,EAAE;gBACJ,KAAK,EAAE,YAAY;aACpB;YACD,KAAK,EAAE;gBACL,KAAK,EAAE,gBAAgB;gBACvB,MAAM,EAAE,CAAC;wBACP,OAAO,EAAE,UAAU;wBACnB,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;wBACvB,KAAK;qBACN,CAAC;aACH;SACF,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,cAAc,CAC5B,OAAyB,EACzB,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAC,SAAU,CACvC,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,CAAC,oBAAoB,CACnC,OAAyB,EACzB,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAgB,CAC9C,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,gBAAgB,CAAC,QAAiC;QAC1D,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnC,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,GAAG;YACV,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAC,CAAC;IACN,CAAC;IAES,gBAAgB,CAAC,MAA8B,EAAE,KAA0B;QACnF,MAAM,MAAM,GAAG,MAAM;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAM,CAAC,CAAC;QAEtB,OAAO;YACL,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK;YACvD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK;SACxC,CAAC;IACJ,CAAC;IAES,mBAAmB,CAC3B,OAA4B;QAE5B,OAAO,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC;IACjC,CAAC;IAES,sBAAsB,CAC9B,OAA4B;QAE5B,OAAO,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC;IACpC,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;IACvC,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC;IAC7C,CAAC;CACF;AAED,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,MAAM,eAAqD,SAAQ,OAKlE;IACC,YAAY,EAAS;QACnB,KAAK,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC;IAES,uBAAuB,CAAC,QAA2B,EAAE,OAA4B,EAAE,YAAqB;QAChH,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC;IACzC,CAAC;IAES,qBAAqB,CAAC,QAA0B,EAAE,OAA4B,EAAE,YAAqB;QAC7G,MAAM,MAAM,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,CAAC;QAEjD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAES,oBAAoB;QAC5B,OAAO,qDAAqD,CAAC;IAC/D,CAAC;IAES,YAAY,CAAC,SAA+B;QACpD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,6BAA6B,CAAC;IACpC,CAAC;IAES,eAAe,CAAC,SAA+B;QACvD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,iCAAiC,CAAC;IACxC,CAAC;IAES,gCAAgC;QACxC,OAAO,+DAA+D,CAAC;IACzE,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,OAA4B;QACvD,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE;wBACzC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;4BAC9B,IAAI,EAAE,OAAgB;4BACtB,OAAO,EAAE,GAAG;yBACb,CAAC,CAAC;qBACJ;iBACF;aACF;YACD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;IACJ,CAAC;IAES,oBAAoB,CAAC,OAA4B,EAAE,QAA6B;QACxF,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAES,KAAK,CAAC,cAAc,CAC5B,OAA4B,EAC5B,QAA6B,EAC7B,GAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC5E,OAAO,MAAM,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAES,KAAK,CAAC,CAAC,oBAAoB,CACnC,OAA4B,EAC5B,QAA6B,EAC7B,GAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAES,gBAAgB,CAAC,QAAkB;QAC3C,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAES,gBAAgB,CAAC,MAAe,EAAE,KAA0B;QACpE,OAAO,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAES,mBAAmB,CAC3B,OAA4B;QAE5B,OAAO,OAAO,EAAE,YAAY,EAAE,GAAG,CAAC;IACpC,CAAC;IAES,sBAAsB,CAC9B,OAA4B;QAE5B,OAAO,SAAS,CAAC,CAAC,+CAA+C;IACnE,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC5C,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC5C,CAAC;CACF;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,OAAO,QAAQ;IACH,QAAQ,CAAsB;IAC9B,IAAI,CAAkB;IACtB,OAAO,CAAqB;IAE5C,YAAY,EAAS;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;CACF"}
1
+ {"version":3,"file":"image.js","sourceRoot":"","sources":["../../src/apis/image.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAc,MAAM,YAAY,CAAC;AAsBtF,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEjC;;;GAGG;AACH,MAAM,YAAY,GAAiC;IACjD,IAAI,EAAE,IAAI;IACV,GAAG,EAAE,GAAG;IACR,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,GAAG,EAAE,IAAI;CACV,CAAC;AAEF;;;;;;;;;;GAUG;AACH,SAAS,kBAAkB,CAAC,OAA2B,EAAE,KAAgB,EAAE,WAAmB;IAC5F,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO;QACL,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE;QACrD,KAAK,EAAE;YACL,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS;YACnD,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM;gBACjC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC;gBAChG,CAAC,CAAC,SAAS;YACb,MAAM,EAAE,CAAC;oBACP,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,QAAQ;oBACjF,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE;oBACvB,KAAK;iBACN,CAAC;SACH;KACF,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E,MAAM,gBAAwC,SAAQ,OAKrD;IACC,YAAY,EAAS;QACnB,KAAK,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC;IAES,uBAAuB,CAAC,QAA2B,EAAE,OAAgC;QAC7F,OAAO,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,qBAAqB,CAAC,QAA0B,EAAE,OAA+B,EAAE,YAAqB;QAChH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,CAAC;QAEjD,IAAI,OAAO,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAChC,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QACD,IAAI,YAAY,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAES,oBAAoB;QAC5B,OAAO,gDAAgD,CAAC;IAC1D,CAAC;IAES,YAAY,CAAC,SAA+B;QACpD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,gCAAgC,CAAC;IACvC,CAAC;IAES,eAAe,CAAC,SAA+B;QACvD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,mCAAmC,CAAC;IAC1C,CAAC;IAES,oBAAoB,CAAC,OAA+B,EAAE,QAA6B;QAC3F,OAAO,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;IAES,KAAK,CAAC,cAAc,CAC5B,OAA+B,EAC/B,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAC,aAAc,CAC3C,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,CAAC,oBAAoB,CACnC,OAA+B,EAC/B,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAoB,CAClD,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,gBAAgB,CAAC,QAAiC;QAC1D,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnC,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,GAAG;YACV,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAC,CAAC;IACN,CAAC;IAES,gBAAgB,CAAC,MAA8B,EAAE,KAA0B;QACnF,MAAM,MAAM,GAAG,MAAM;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAM,CAAC,CAAC;QAEtB,OAAO;YACL,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK;YACvD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK;SACxC,CAAC;IACJ,CAAC;IAES,mBAAmB,CAC3B,OAA4B;QAE5B,OAAO,OAAO,EAAE,aAAa,EAAE,GAAG,CAAC;IACrC,CAAC;IAES,sBAAsB,CAC9B,OAA4B;QAE5B,OAAO,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC;IACxC,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC3C,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IACjD,CAAC;CACF;AAED,+EAA+E;AAC/E,iBAAiB;AACjB,+EAA+E;AAE/E,MAAM,YAAoC,SAAQ,OAKjD;IACC,YAAY,EAAS;QACnB,KAAK,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC;IAES,QAAQ,CAAC,OAAyB;QAC1C,OAAO,OAAO,CAAC,KAAK,CAAC;IACvB,CAAC;IAES,uBAAuB,CAAC,QAA2B,EAAE,OAAyB,EAAE,YAAqB;QAC7G,OAAO,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;IAChC,CAAC;IAES,qBAAqB,CAAC,QAA0B,EAAE,OAAyB,EAAE,YAAqB;QAC1G,MAAM,MAAM,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,CAAC;QAEjD,IAAI,OAAO,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,OAAO,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,YAAY,IAAI,OAAO,CAAC,WAAW,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAES,oBAAoB;QAC5B,OAAO,6CAA6C,CAAC;IACvD,CAAC;IAES,YAAY,CAAC,SAA+B;QACpD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,0BAA0B,CAAC;IACjC,CAAC;IAES,eAAe,CAAC,SAA+B;QACvD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,gCAAgC,CAAC;IACvC,CAAC;IAES,oBAAoB,CAAC,OAAyB,EAAE,QAA6B;QACrF,OAAO,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;IAES,KAAK,CAAC,cAAc,CAC5B,OAAyB,EACzB,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,MAAM,QAAQ,CAAC,QAAQ,CAAC,SAAU,CACvC,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,CAAC,oBAAoB,CACnC,OAAyB,EACzB,QAA6B,EAC7B,GAAiB;QAEjB,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAgB,CAC9C,OAAO,EACP,GAAG,EACH,QAAQ,CAAC,cAAc,CACxB,CAAC;IACJ,CAAC;IAES,gBAAgB,CAAC,QAAiC;QAC1D,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACnC,QAAQ,EAAE,CAAC;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,GAAG;YACV,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,KAAK,EAAE,QAAQ,CAAC,KAAK;SACtB,CAAC,CAAC,CAAC;IACN,CAAC;IAES,gBAAgB,CAAC,MAA8B,EAAE,KAA0B;QACnF,MAAM,MAAM,GAAG,MAAM;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;aACpB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAM,CAAC,CAAC;QAEtB,OAAO;YACL,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,KAAK,EAAE,KAAK;YACvD,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK;SACxC,CAAC;IACJ,CAAC;IAES,mBAAmB,CAC3B,OAA4B;QAE5B,OAAO,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC;IACjC,CAAC;IAES,sBAAsB,CAC9B,OAA4B;QAE5B,OAAO,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC;IACpC,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;IACvC,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC;IAC7C,CAAC;CACF;AAED,+EAA+E;AAC/E,oBAAoB;AACpB,+EAA+E;AAE/E,MAAM,eAAqD,SAAQ,OAKlE;IACC,YAAY,EAAS;QACnB,KAAK,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC;IAES,uBAAuB,CAAC,QAA2B,EAAE,OAA4B,EAAE,YAAqB;QAChH,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC;IACzC,CAAC;IAES,qBAAqB,CAAC,QAA0B,EAAE,OAA4B,EAAE,YAAqB;QAC7G,MAAM,MAAM,GAAG,IAAI,GAAG,CAAiB,QAAQ,CAAC,CAAC;QAEjD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAES,oBAAoB;QAC5B,OAAO,qDAAqD,CAAC;IAC/D,CAAC;IAES,YAAY,CAAC,SAA+B;QACpD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,sBAAsB;YACxB,CAAC,CAAC,6BAA6B,CAAC;IACpC,CAAC;IAES,eAAe,CAAC,SAA+B;QACvD,OAAO,SAAS,KAAK,SAAS;YAC5B,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,iCAAiC,CAAC;IACxC,CAAC;IAES,gCAAgC;QACxC,OAAO,+DAA+D,CAAC;IACzE,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,OAA4B;QACvD,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE;wBACzC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;4BAC9B,IAAI,EAAE,OAAgB;4BACtB,OAAO,EAAE,GAAG;yBACb,CAAC,CAAC;qBACJ;iBACF;aACF;YACD,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;IACJ,CAAC;IAES,oBAAoB,CAAC,OAA4B,EAAE,QAA6B;QACxF,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAES,KAAK,CAAC,cAAc,CAC5B,OAA4B,EAC5B,QAA6B,EAC7B,GAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC5E,OAAO,MAAM,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;IAES,KAAK,CAAC,CAAC,oBAAoB,CACnC,OAA4B,EAC5B,QAA6B,EAC7B,GAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAe,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;QAC5E,OAAO,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;IAES,gBAAgB,CAAC,QAAkB;QAC3C,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAES,gBAAgB,CAAC,MAAe,EAAE,KAA0B;QACpE,OAAO,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACrD,CAAC;IAES,mBAAmB,CAC3B,OAA4B;QAE5B,OAAO,OAAO,EAAE,YAAY,EAAE,GAAG,CAAC;IACpC,CAAC;IAES,sBAAsB,CAC9B,OAA4B;QAE5B,OAAO,SAAS,CAAC,CAAC,+CAA+C;IACnE,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC5C,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC;IAC5C,CAAC;CACF;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,OAAO,QAAQ;IACH,QAAQ,CAAsB;IAC9B,IAAI,CAAkB;IACtB,OAAO,CAAqB;IAE5C,YAAY,EAAS;QACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;CACF"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Rerank API
3
+ *
4
+ * Orders documents by relevance to a query, typically the candidates a
5
+ * search or embedding lookup found.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const { results } = await ai.rerank.get({ query: 'capital of France', documents });
10
+ * const best = documents[results[0].index];
11
+ * ```
12
+ */
13
+ import type { AIBaseTypes, AIContext, ModelCapability, ModelHandlerFor, RerankRequest, RerankResponse, SelectedModelFor } from '../types';
14
+ import { GetAPI } from './get';
15
+ export declare class RerankAPI<T extends AIBaseTypes> extends GetAPI<T, RerankRequest, RerankResponse> {
16
+ protected getRequiredCapabilities(provided: ModelCapability[]): ModelCapability[];
17
+ protected getNoModelFoundError(): string;
18
+ protected getErrorType(): string;
19
+ protected getErrorMessage(): string;
20
+ protected executeRequest(request: RerankRequest, selected: SelectedModelFor<T>, ctx: AIContext<T>): Promise<RerankResponse>;
21
+ protected getHandlerGetMethod(handler?: ModelHandlerFor<T>): ((request: RerankRequest, ctx: AIContext<T>) => Promise<RerankResponse>) | undefined;
22
+ protected hasProviderExecutor(selected: SelectedModelFor<T>): boolean;
23
+ }
24
+ //# sourceMappingURL=rerank.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rerank.d.ts","sourceRoot":"","sources":["../../src/apis/rerank.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,eAAe,EACf,eAAe,EACf,aAAa,EACb,cAAc,EACd,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B,qBAAa,SAAS,CAAC,CAAC,SAAS,WAAW,CAAE,SAAQ,MAAM,CAAC,CAAC,EAAE,aAAa,EAAE,cAAc,CAAC;IAC5F,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,eAAe,EAAE;IAIjF,SAAS,CAAC,oBAAoB,IAAI,MAAM;IAIxC,SAAS,CAAC,YAAY,IAAI,MAAM;IAIhC,SAAS,CAAC,eAAe,IAAI,MAAM;IAInC,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAO3H,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,SAAS;IAIjJ,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,OAAO;CAGtE"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Rerank API
3
+ *
4
+ * Orders documents by relevance to a query, typically the candidates a
5
+ * search or embedding lookup found.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * const { results } = await ai.rerank.get({ query: 'capital of France', documents });
10
+ * const best = documents[results[0].index];
11
+ * ```
12
+ */
13
+ import { GetAPI } from './get';
14
+ export class RerankAPI extends GetAPI {
15
+ getRequiredCapabilities(provided) {
16
+ return ['rerank', ...provided];
17
+ }
18
+ getNoModelFoundError() {
19
+ return 'No compatible model found for reranking';
20
+ }
21
+ getErrorType() {
22
+ return 'rerank-failed';
23
+ }
24
+ getErrorMessage() {
25
+ return 'Reranking failed';
26
+ }
27
+ executeRequest(request, selected, ctx) {
28
+ if (!selected.provider.rerank) {
29
+ throw new Error(`Provider ${selected.provider.name} does not support reranking`);
30
+ }
31
+ return selected.provider.rerank(request, ctx, selected.providerConfig);
32
+ }
33
+ getHandlerGetMethod(handler) {
34
+ return handler?.rerank?.get;
35
+ }
36
+ hasProviderExecutor(selected) {
37
+ return !!selected.provider.rerank;
38
+ }
39
+ }
40
+ //# sourceMappingURL=rerank.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rerank.js","sourceRoot":"","sources":["../../src/apis/rerank.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAWH,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAE/B,MAAM,OAAO,SAAiC,SAAQ,MAAwC;IAClF,uBAAuB,CAAC,QAA2B;QAC3D,OAAO,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC;IACjC,CAAC;IAES,oBAAoB;QAC5B,OAAO,yCAAyC,CAAC;IACnD,CAAC;IAES,YAAY;QACpB,OAAO,eAAe,CAAC;IACzB,CAAC;IAES,eAAe;QACvB,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAES,cAAc,CAAC,OAAsB,EAAE,QAA6B,EAAE,GAAiB;QAC/F,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,CAAC,QAAQ,CAAC,IAAI,6BAA6B,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IACzE,CAAC;IAES,mBAAmB,CAAC,OAA4B;QACxD,OAAO,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC;IAC9B,CAAC;IAES,mBAAmB,CAAC,QAA6B;QACzD,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;IACpC,CAAC;CACF"}
@@ -7,7 +7,8 @@
7
7
  * model's descriptor, this helper transparently DROPS the wire schema
8
8
  * (`response_format`) and delivers the schema to the model as PROMPT TEXT
9
9
  * instead — steering it to emit a raw JSON object that the Prompt's existing
10
- * extract-and-`parse`/Zod path then validates.
10
+ * extract-and-`parse`/Zod path then validates. A schema delivered as `json` or
11
+ * `prompt` goes the same way (see `deliverSchema`).
11
12
  *
12
13
  * Provider-agnostic: called from the ai request-build (see `ChatAPI`) after the
13
14
  * model is resolved, BEFORE any provider converts the request to its wire form.
@@ -19,18 +20,12 @@
19
20
  import { type Request } from '@aeye/core';
20
21
  import type { ModelInfo } from '../types';
21
22
  /**
22
- * Apply the automatic schema-delivery fallback to `request` in place.
23
- *
24
- * When the request carries a structured (schema-valued) `responseFormat` and
25
- * either `schemaDelivery === 'prompt'` OR (`'auto'` AND the selected model's
26
- * dialect can't express the schema), the wire schema is DROPPED
27
- * (`request.responseFormat` cleared so no provider emits `response_format`) and
28
- * the schema is appended to the messages as prompt text. `schemaDelivery ===
29
- * 'structured'` forces structured output (no-op here). No-op for text/json
30
- * response formats.
31
- *
32
- * Idempotent: dropping the wire schema makes the trigger condition false on
33
- * subsequent calls, and the schema-text append is guarded per request object.
23
+ * The request to send under its schema delivery. A structured schema goes
24
+ * into the prompt as text when its delivery is `'prompt'`, or `'auto'` and
25
+ * the selected model's dialect can't express it; as text plus JSON mode when
26
+ * its delivery is `'json'`. `'structured'` and expressible `'auto'` schemas
27
+ * stay on the wire. The request itself isn't changed, so a Prompt can send it
28
+ * again under another delivery.
34
29
  */
35
- export declare function applySchemaDeliveryFallback(request: Request, model: ModelInfo | undefined): void;
30
+ export declare function applySchemaDeliveryFallback(request: Request, model: ModelInfo | undefined): Request;
36
31
  //# sourceMappingURL=schema-fallback.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-fallback.d.ts","sourceRoot":"","sources":["../../src/apis/schema-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAOL,KAAK,OAAO,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAmC1C;;;;;;;;;;;;;GAaG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,IAAI,CA4BhG"}
1
+ {"version":3,"file":"schema-fallback.d.ts","sourceRoot":"","sources":["../../src/apis/schema-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAKL,KAAK,OAAO,EACb,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,CAcnG"}
@@ -7,7 +7,8 @@
7
7
  * model's descriptor, this helper transparently DROPS the wire schema
8
8
  * (`response_format`) and delivers the schema to the model as PROMPT TEXT
9
9
  * instead — steering it to emit a raw JSON object that the Prompt's existing
10
- * extract-and-`parse`/Zod path then validates.
10
+ * extract-and-`parse`/Zod path then validates. A schema delivered as `json` or
11
+ * `prompt` goes the same way (see `deliverSchema`).
11
12
  *
12
13
  * Provider-agnostic: called from the ai request-build (see `ChatAPI`) after the
13
14
  * model is resolved, BEFORE any provider converts the request to its wire form.
@@ -16,77 +17,27 @@
16
17
  * provider bothers to emit that dialect strictly — because feasibility is a
17
18
  * property of the target model, not our request encoder.
18
19
  */
19
- import { canExpress, getDescriptor, getJsonFallbackInstruction, LENIENT, toJSONSchema, } from '@aeye/core';
20
+ import { canExpress, deliverSchema, getDescriptor, LENIENT, } from '@aeye/core';
20
21
  import { resolveStrictFormat } from '../registry';
21
22
  /**
22
- * Tracks requests whose schema text has already been appended, so a Prompt
23
- * that re-issues the SAME request object across its retry / dynamic-resolve
24
- * iterations doesn't accumulate duplicate schema blocks in the messages.
25
- */
26
- const schemaTextAppended = new WeakSet();
27
- /**
28
- * Render a Zod schema as fenced JSON-Schema prompt text. Uses the LENIENT
29
- * dialect so the model sees the true conceptual shape (unions as `anyOf`,
30
- * open records, etc.) rather than a strict-mode rewrite it would then have to
31
- * reproduce.
32
- */
33
- function renderSchemaText(schema, instruction) {
34
- const json = JSON.stringify(toJSONSchema(schema, LENIENT), null, 2);
35
- return `\n\nThe response must be a JSON object conforming to this schema:\n\`\`\`json\n${json}\n\`\`\`\n\n${instruction}`;
36
- }
37
- /**
38
- * Append schema `text` to the request's prompt. Prefers extending the first
39
- * system message (keeps the schema inside the instructions, avoids trailing
40
- * duplicate-role issues across providers); if there is no string-content
41
- * system message, inserts one at the front.
42
- */
43
- function appendSchemaText(request, text) {
44
- const system = request.messages.find((m) => m.role === 'system');
45
- if (system && typeof system.content === 'string') {
46
- system.content = system.content + text;
47
- }
48
- else {
49
- request.messages.unshift({ role: 'system', content: text.replace(/^\n+/, '') });
50
- }
51
- }
52
- /**
53
- * Apply the automatic schema-delivery fallback to `request` in place.
54
- *
55
- * When the request carries a structured (schema-valued) `responseFormat` and
56
- * either `schemaDelivery === 'prompt'` OR (`'auto'` AND the selected model's
57
- * dialect can't express the schema), the wire schema is DROPPED
58
- * (`request.responseFormat` cleared so no provider emits `response_format`) and
59
- * the schema is appended to the messages as prompt text. `schemaDelivery ===
60
- * 'structured'` forces structured output (no-op here). No-op for text/json
61
- * response formats.
62
- *
63
- * Idempotent: dropping the wire schema makes the trigger condition false on
64
- * subsequent calls, and the schema-text append is guarded per request object.
23
+ * The request to send under its schema delivery. A structured schema goes
24
+ * into the prompt as text when its delivery is `'prompt'`, or `'auto'` and
25
+ * the selected model's dialect can't express it; as text plus JSON mode when
26
+ * its delivery is `'json'`. `'structured'` and expressible `'auto'` schemas
27
+ * stay on the wire. The request itself isn't changed, so a Prompt can send it
28
+ * again under another delivery.
65
29
  */
66
30
  export function applySchemaDeliveryFallback(request, model) {
67
- const rf = request.responseFormat;
68
- if (!rf || typeof rf !== 'object')
69
- return; // only structured schemas
70
- const delivery = rf.schemaDelivery ?? 'auto';
71
- if (delivery === 'structured')
72
- return; // forced structured — leave as-is
31
+ const format = request.responseFormat;
32
+ if (typeof format !== 'object') {
33
+ return request;
34
+ }
73
35
  // Resolve the descriptor for the TARGET MODEL's dialect. `resolveStrictFormat`
74
36
  // returning undefined means an unknown dialect — assume it can express the
75
37
  // schema (matches today's lenient behavior) unless delivery is forced.
76
38
  const family = model ? resolveStrictFormat(model) : undefined;
77
39
  const descriptor = family ? getDescriptor(family, true) : LENIENT;
78
- const shouldFallback = delivery === 'prompt' || !canExpress(rf.type, descriptor);
79
- if (!shouldFallback)
80
- return;
81
- const schema = rf.type;
82
- // Drop the wire schema so NO provider sends `response_format` and the
83
- // Prompt's parse path (which keeps its own `schema`) runs on the model's
84
- // text JSON with no descriptor pinned (so `decodeWire` is correctly skipped).
85
- request.responseFormat = undefined;
86
- // Append the schema text exactly once per request object.
87
- if (schemaTextAppended.has(request))
88
- return;
89
- schemaTextAppended.add(request);
90
- appendSchemaText(request, renderSchemaText(schema, getJsonFallbackInstruction(descriptor)));
40
+ const inexpressible = (format.schemaDelivery ?? 'auto') === 'auto' && !canExpress(format.type, descriptor);
41
+ return deliverSchema(request, descriptor, inexpressible ? 'prompt' : undefined);
91
42
  }
92
43
  //# sourceMappingURL=schema-fallback.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-fallback.js","sourceRoot":"","sources":["../../src/apis/schema-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EACL,UAAU,EACV,aAAa,EACb,0BAA0B,EAC1B,OAAO,EACP,YAAY,GAGb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGlD;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAW,CAAC;AAElD;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,MAA0C,EAAE,WAAmB;IACvF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,OAAO,kFAAkF,IAAI,eAAe,WAAW,EAAE,CAAC;AAC5H,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,OAAgB,EAAE,IAAY;IACtD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC/E,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACjD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;IACzC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAgB,EAAE,KAA4B;IACxF,MAAM,EAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAClC,IAAI,CAAC,EAAE,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO,CAAC,0BAA0B;IAErE,MAAM,QAAQ,GAAG,EAAE,CAAC,cAAc,IAAI,MAAM,CAAC;IAC7C,IAAI,QAAQ,KAAK,YAAY;QAAE,OAAO,CAAC,kCAAkC;IAEzE,+EAA+E;IAC/E,2EAA2E;IAC3E,uEAAuE;IACvE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAElE,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IACjF,IAAI,CAAC,cAAc;QAAE,OAAO;IAE5B,MAAM,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC;IAEvB,sEAAsE;IACtE,yEAAyE;IACzE,8EAA8E;IAC9E,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IAEnC,0DAA0D;IAC1D,IAAI,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO;IAC5C,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEhC,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,MAAM,EAAE,0BAA0B,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC"}
1
+ {"version":3,"file":"schema-fallback.js","sourceRoot":"","sources":["../../src/apis/schema-fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EACL,UAAU,EACV,aAAa,EACb,aAAa,EACb,OAAO,GAER,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGlD;;;;;;;GAOG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAgB,EAAE,KAA4B;IACxF,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IACtC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,+EAA+E;IAC/E,2EAA2E;IAC3E,uEAAuE;IACvE,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;IAClE,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,KAAK,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE3G,OAAO,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAClF,CAAC"}
package/dist/common.d.ts CHANGED
@@ -1,5 +1,13 @@
1
- import { ModelInput } from "@aeye/core";
2
- import { ModelInfo } from "./types";
1
+ import { MessageContentType, ModelInput, OutputModality, ReasoningEffort } from "@aeye/core";
2
+ import { ModelCapability, ModelInfo } from "./types";
3
+ /**
4
+ * The capability a model needs to read each kind of message content.
5
+ */
6
+ export declare const INPUT_CAPABILITIES: Partial<Record<MessageContentType, ModelCapability>>;
7
+ /**
8
+ * The capability a chat model needs to produce each output modality beyond text.
9
+ */
10
+ export declare const OUTPUT_CAPABILITIES: Partial<Record<OutputModality, ModelCapability>>;
3
11
  /**
4
12
  * Type guard to check if a ModelInput is a ModelInfo object.
5
13
  *
@@ -7,4 +15,14 @@ import { ModelInfo } from "./types";
7
15
  * @returns True if the input is a ModelInfo object, false otherwise.
8
16
  */
9
17
  export declare function isModelInfo<TProvider extends string = string>(input: ModelInput): input is ModelInfo<TProvider>;
18
+ /**
19
+ * The accepted reasoning effort closest to the one asked for, preferring the
20
+ * lower on a tie, and `none` only when asked for or alone accepted. Returns
21
+ * the effort unchanged when acceptance is unknown.
22
+ *
23
+ * @param effort - The effort asked for.
24
+ * @param accepted - The efforts the model accepts, lowest to highest.
25
+ * @returns The effort to send.
26
+ */
27
+ export declare function clampReasoningEffort(effort: ReasoningEffort, accepted?: readonly ReasoningEffort[]): ReasoningEffort;
10
28
  //# sourceMappingURL=common.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC;;;;;EAKE;AACF,wBAAgB,WAAW,CAAC,SAAS,SAAS,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,KAAK,IAAI,SAAS,CAAC,SAAS,CAAC,CAS/G"}
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,cAAc,EAAqB,eAAe,EAAE,MAAM,YAAY,CAAC;AAChH,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAErD;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAKnF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,CAGhF,CAAC;AAEF;;;;;EAKE;AACF,wBAAgB,WAAW,CAAC,SAAS,SAAS,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,KAAK,IAAI,SAAS,CAAC,SAAS,CAAC,CAS/G;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,SAAS,eAAe,EAAE,GAAG,eAAe,CASpH"}
package/dist/common.js CHANGED
@@ -1,3 +1,20 @@
1
+ import { REASONING_EFFORTS } from "@aeye/core";
2
+ /**
3
+ * The capability a model needs to read each kind of message content.
4
+ */
5
+ export const INPUT_CAPABILITIES = {
6
+ image: 'vision',
7
+ file: 'files',
8
+ audio: 'hearing',
9
+ video: 'videoInput',
10
+ };
11
+ /**
12
+ * The capability a chat model needs to produce each output modality beyond text.
13
+ */
14
+ export const OUTPUT_CAPABILITIES = {
15
+ image: 'image',
16
+ audio: 'audio',
17
+ };
1
18
  /**
2
19
  * Type guard to check if a ModelInput is a ModelInfo object.
3
20
  *
@@ -14,4 +31,23 @@ export function isModelInfo(input) {
14
31
  && ('pricing' in input)
15
32
  && ('contextWindow' in input);
16
33
  }
34
+ /**
35
+ * The accepted reasoning effort closest to the one asked for, preferring the
36
+ * lower on a tie, and `none` only when asked for or alone accepted. Returns
37
+ * the effort unchanged when acceptance is unknown.
38
+ *
39
+ * @param effort - The effort asked for.
40
+ * @param accepted - The efforts the model accepts, lowest to highest.
41
+ * @returns The effort to send.
42
+ */
43
+ export function clampReasoningEffort(effort, accepted) {
44
+ if (!accepted?.length || accepted.includes(effort)) {
45
+ return effort;
46
+ }
47
+ // Reasoning asked for stays on
48
+ const reasoning = accepted.filter(e => e !== 'none');
49
+ const candidates = effort === 'none' || !reasoning.length ? accepted : reasoning;
50
+ const distance = (e) => Math.abs(REASONING_EFFORTS.indexOf(e) - REASONING_EFFORTS.indexOf(effort));
51
+ return candidates.reduce((best, e) => distance(e) < distance(best) ? e : best);
52
+ }
17
53
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAGA;;;;;EAKE;AACF,MAAM,UAAU,WAAW,CAAoC,KAAiB;IAC9E,OAAO,OAAO,KAAK,KAAK,QAAQ;WAC3B,CAAC,IAAI,IAAI,KAAK,CAAC;WACf,CAAC,UAAU,IAAI,KAAK,CAAC;WACrB,CAAC,MAAM,IAAI,KAAK,CAAC;WACjB,CAAC,cAAc,IAAI,KAAK,CAAC;WACzB,CAAC,MAAM,IAAI,KAAK,CAAC;WACjB,CAAC,SAAS,IAAI,KAAK,CAAC;WACpB,CAAC,eAAe,IAAI,KAAK,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../src/common.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,iBAAiB,EAAmB,MAAM,YAAY,CAAC;AAGhH;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAyD;IACtF,KAAK,EAAE,QAAQ;IACf,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,SAAS;IAChB,KAAK,EAAE,YAAY;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAqD;IACnF,KAAK,EAAE,OAAO;IACd,KAAK,EAAE,OAAO;CACf,CAAC;AAEF;;;;;EAKE;AACF,MAAM,UAAU,WAAW,CAAoC,KAAiB;IAC9E,OAAO,OAAO,KAAK,KAAK,QAAQ;WAC3B,CAAC,IAAI,IAAI,KAAK,CAAC;WACf,CAAC,UAAU,IAAI,KAAK,CAAC;WACrB,CAAC,MAAM,IAAI,KAAK,CAAC;WACjB,CAAC,cAAc,IAAI,KAAK,CAAC;WACzB,CAAC,MAAM,IAAI,KAAK,CAAC;WACjB,CAAC,SAAS,IAAI,KAAK,CAAC;WACpB,CAAC,eAAe,IAAI,KAAK,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAuB,EAAE,QAAqC;IACjG,IAAI,CAAC,QAAQ,EAAE,MAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACnD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,+BAA+B;IAC/B,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,MAAM,KAAK,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACjF,MAAM,QAAQ,GAAG,CAAC,CAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACpH,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACjF,CAAC"}
package/dist/index.d.ts CHANGED
@@ -10,9 +10,13 @@ export * from './ai';
10
10
  export * from './registry';
11
11
  export * from './apis/models';
12
12
  export * from './apis/base';
13
+ export * from './apis/batch';
13
14
  export * from './apis/chat';
14
15
  export * from './apis/schema-fallback';
15
16
  export * from './apis/embed';
17
+ export * from './apis/get';
18
+ export * from './apis/rerank';
19
+ export * from './apis/decide';
16
20
  export * from './apis/image';
17
21
  export * from './apis/speech';
18
22
  export * from './apis/transcribe';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -10,9 +10,13 @@ export * from './ai';
10
10
  export * from './registry';
11
11
  export * from './apis/models';
12
12
  export * from './apis/base';
13
+ export * from './apis/batch';
13
14
  export * from './apis/chat';
14
15
  export * from './apis/schema-fallback';
15
16
  export * from './apis/embed';
17
+ export * from './apis/get';
18
+ export * from './apis/rerank';
19
+ export * from './apis/decide';
16
20
  export * from './apis/image';
17
21
  export * from './apis/speech';
18
22
  export * from './apis/transcribe';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC"}
@@ -4,7 +4,7 @@
4
4
  * Centralized model management with provider ordering and adapter registration.
5
5
  * Provider order ensures deterministic model resolution: first provider to return a model ID wins.
6
6
  */
7
- import { type DescriptorFamily, type FormatDescriptor } from '@aeye/core';
7
+ import { type DescriptorFamily, type FormatDescriptor, SchemaBudget, type ToolDefinition } from '@aeye/core';
8
8
  import type { AIBaseMetadata, ModelCapability, ModelHandler, ModelInfo, ModelOverride, ModelSelectionWeights, ModelSource, Provider, Providers, ScoredModel, SelectedModel } from './types';
9
9
  /**
10
10
  * Resolve a model's strict-mode JSON-Schema dialect via three-step fallback:
@@ -29,6 +29,35 @@ export declare function resolveStrictFormat(model: {
29
29
  provider: string;
30
30
  strictFormat?: DescriptorFamily | 'none';
31
31
  }): DescriptorFamily | undefined;
32
+ /**
33
+ * Build a SchemaBudget over the model's tool and structured-output dialects.
34
+ * Anthropic-style per-request limits apply across BOTH tool schemas and the
35
+ * output schema, so a provider shares one budget between them, but each kind
36
+ * keeps its own descriptor: a model with strict output and no strict tools
37
+ * must not send `strict: true` tools.
38
+ *
39
+ * Strict mode engages only when the model's resolved family is one the
40
+ * provider speaks (`families`) AND the model has the corresponding capability
41
+ * (`'toolsStrict'` for tools, `'structured'` for output). Otherwise the
42
+ * family's non-strict descriptor applies, which keeps the dialect's own
43
+ * constraints (Gemini rejects LENIENT's recursive `$defs/Any`) even when only
44
+ * the model id is known. Families the provider doesn't speak fall back to
45
+ * LENIENT, so the wire never receives a dialect the API doesn't understand.
46
+ *
47
+ * @param model The full model, or just its id and provider when selection
48
+ * didn't supply one
49
+ * @param families The strict descriptor families the provider speaks
50
+ */
51
+ export declare function buildSchemaBudget(model: Pick<ModelInfo, 'id' | 'provider' | 'strictFormat'> & {
52
+ capabilities?: ModelInfo['capabilities'];
53
+ }, families: ReadonlySet<DescriptorFamily>): SchemaBudget;
54
+ /**
55
+ * Allocate per-tool descriptors in descending-priority order, so the
56
+ * most-wanted strict tools consume the budget first, then return them in
57
+ * declaration order. Records each chosen id on `tools[i].descriptor` for the
58
+ * Prompt's validation roundtrip.
59
+ */
60
+ export declare function allocateToolDescriptors(tools: ToolDefinition[], budget: SchemaBudget): FormatDescriptor[];
32
61
  /**
33
62
  * Determines which capabilities a provider supports based on its defined methods.
34
63
  * Treats streaming and non-streaming methods as equivalent for capability detection.
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
package/dist/registry.js CHANGED
@@ -4,7 +4,7 @@
4
4
  * Centralized model management with provider ordering and adapter registration.
5
5
  * Provider order ensures deterministic model resolution: first provider to return a model ID wins.
6
6
  */
7
- import { getDescriptor, getModel, hasDescriptorFamily, LENIENT } from '@aeye/core';
7
+ import { getDescriptor, getModel, hasDescriptorFamily, LENIENT, SchemaBudget, strictPriority } from '@aeye/core';
8
8
  import { detectTier } from './modelDetection';
9
9
  // ============================================================================
10
10
  // Strict-format resolution
@@ -45,6 +45,49 @@ export function resolveStrictFormat(model) {
45
45
  }
46
46
  return undefined;
47
47
  }
48
+ /**
49
+ * Build a SchemaBudget over the model's tool and structured-output dialects.
50
+ * Anthropic-style per-request limits apply across BOTH tool schemas and the
51
+ * output schema, so a provider shares one budget between them, but each kind
52
+ * keeps its own descriptor: a model with strict output and no strict tools
53
+ * must not send `strict: true` tools.
54
+ *
55
+ * Strict mode engages only when the model's resolved family is one the
56
+ * provider speaks (`families`) AND the model has the corresponding capability
57
+ * (`'toolsStrict'` for tools, `'structured'` for output). Otherwise the
58
+ * family's non-strict descriptor applies, which keeps the dialect's own
59
+ * constraints (Gemini rejects LENIENT's recursive `$defs/Any`) even when only
60
+ * the model id is known. Families the provider doesn't speak fall back to
61
+ * LENIENT, so the wire never receives a dialect the API doesn't understand.
62
+ *
63
+ * @param model The full model, or just its id and provider when selection
64
+ * didn't supply one
65
+ * @param families The strict descriptor families the provider speaks
66
+ */
67
+ export function buildSchemaBudget(model, families) {
68
+ const family = resolveStrictFormat(model);
69
+ const descriptorFor = (capability) => family !== undefined && families.has(family)
70
+ ? getDescriptor(family, model.capabilities?.has(capability) ?? false)
71
+ : LENIENT;
72
+ return new SchemaBudget(descriptorFor('toolsStrict'), descriptorFor('structured'));
73
+ }
74
+ /**
75
+ * Allocate per-tool descriptors in descending-priority order, so the
76
+ * most-wanted strict tools consume the budget first, then return them in
77
+ * declaration order. Records each chosen id on `tools[i].descriptor` for the
78
+ * Prompt's validation roundtrip.
79
+ */
80
+ export function allocateToolDescriptors(tools, budget) {
81
+ const descriptors = new Array(tools.length);
82
+ tools
83
+ .map((tool, i) => ({ i, p: strictPriority(tool.strict) }))
84
+ .sort((a, b) => b.p - a.p)
85
+ .forEach(({ i }) => {
86
+ descriptors[i] = budget.allocateTool(tools[i].parameters, tools[i].strict);
87
+ tools[i].descriptor = descriptors[i].id;
88
+ });
89
+ return descriptors;
90
+ }
48
91
  // ============================================================================
49
92
  // Generic Constraint Helpers
50
93
  // ============================================================================
@@ -274,6 +317,9 @@ export function getProviderCapabilities(provider) {
274
317
  // Vision is handled through chat messages with image content
275
318
  // It cannot be detected from provider methods alone
276
319
  capabilities.add('vision');
320
+ // files, videoInput - Like vision, carried by chat messages
321
+ capabilities.add('files');
322
+ capabilities.add('videoInput');
277
323
  // audio - Text-to-speech synthesis
278
324
  if (provider.speech !== undefined) {
279
325
  capabilities.add('audio');
@@ -286,6 +332,14 @@ export function getProviderCapabilities(provider) {
286
332
  if (provider.embed !== undefined) {
287
333
  capabilities.add('embedding');
288
334
  }
335
+ // rerank - Ordering documents by relevance
336
+ if (provider.rerank !== undefined) {
337
+ capabilities.add('rerank');
338
+ }
339
+ // decision - Typed answers about an input
340
+ if (provider.decide !== undefined) {
341
+ capabilities.add('decision');
342
+ }
289
343
  // tools - Function/tool calling
290
344
  // Note: This is typically a model capability, not detected from provider methods
291
345
  // Function calling is handled through createExecutor with tools parameter
@@ -619,6 +673,10 @@ export class ModelRegistry {
619
673
  * Returns null if not applicable, or an object with matched capabilities if applicable.
620
674
  */
621
675
  isModelApplicable(model, criteria) {
676
+ // Retired models can no longer serve requests (ISO dates compare as strings)
677
+ if (model.retiresAt && model.retiresAt <= new Date().toISOString().slice(0, 10)) {
678
+ return null;
679
+ }
622
680
  // Check provider allowlist/blocklist
623
681
  if (criteria.providers) {
624
682
  if (criteria.providers.deny?.includes(model.provider)) {
@@ -918,6 +976,8 @@ export class ModelRegistry {
918
976
  supportedParameters: source.supportedParameters ?? base.supportedParameters,
919
977
  tokenizer: source.tokenizer ?? base.tokenizer,
920
978
  strictFormat: source.strictFormat ?? base.strictFormat,
979
+ reasoningEfforts: source.reasoningEfforts ?? base.reasoningEfforts,
980
+ retiresAt: source.retiresAt ?? base.retiresAt,
921
981
  };
922
982
  }
923
983
  /**