@cloudbase/ai 2.22.0 → 2.22.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/cjs/AI.js +1 -1
  2. package/dist/cjs/bot/index.js +1 -1
  3. package/dist/cjs/index.js +1 -1
  4. package/dist/cjs/models/Ark/index.js +1 -1
  5. package/dist/cjs/models/DashScope/index.js +1 -1
  6. package/dist/cjs/models/DeepSeek/index.js +1 -1
  7. package/dist/cjs/models/Default/index.js +1 -1
  8. package/dist/cjs/models/HunYuan/index.js +1 -1
  9. package/dist/cjs/models/HunYuan/util.js +1 -1
  10. package/dist/cjs/models/HunYuanBeta/index.js +1 -1
  11. package/dist/cjs/models/HunYuanExp/index.js +1 -1
  12. package/dist/cjs/models/HunYuanOpen/index.js +1 -1
  13. package/dist/cjs/models/Moonshot/index.js +1 -1
  14. package/dist/cjs/models/Yi/index.js +1 -1
  15. package/dist/cjs/models/ZhiPu/index.js +1 -1
  16. package/dist/cjs/models/model.js +1 -1
  17. package/dist/cjs/utils.js +1 -1
  18. package/dist/esm/AI.js +1 -1
  19. package/dist/esm/bot/index.js +1 -1
  20. package/dist/esm/index.js +1 -1
  21. package/dist/esm/models/Ark/index.js +1 -1
  22. package/dist/esm/models/DashScope/index.js +1 -1
  23. package/dist/esm/models/DeepSeek/index.js +1 -1
  24. package/dist/esm/models/Default/index.js +1 -1
  25. package/dist/esm/models/HunYuan/index.js +1 -1
  26. package/dist/esm/models/HunYuan/util.js +1 -1
  27. package/dist/esm/models/HunYuanBeta/index.js +1 -1
  28. package/dist/esm/models/HunYuanExp/index.js +1 -1
  29. package/dist/esm/models/HunYuanOpen/index.js +1 -1
  30. package/dist/esm/models/Moonshot/index.js +1 -1
  31. package/dist/esm/models/Yi/index.js +1 -1
  32. package/dist/esm/models/ZhiPu/index.js +1 -1
  33. package/dist/esm/models/model.js +1 -1
  34. package/dist/esm/utils.js +1 -1
  35. package/package.json +4 -4
  36. package/src/AI.ts +2 -0
  37. package/src/bot/index.ts +2 -0
  38. package/src/index.ts +1 -0
  39. package/src/models/Ark/index.ts +2 -0
  40. package/src/models/DashScope/index.ts +2 -0
  41. package/src/models/DeepSeek/index.ts +2 -0
  42. package/src/models/Default/index.ts +2 -0
  43. package/src/models/HunYuan/index.ts +2 -0
  44. package/src/models/HunYuan/util.ts +2 -0
  45. package/src/models/HunYuanBeta/index.ts +2 -0
  46. package/src/models/HunYuanExp/index.ts +2 -0
  47. package/src/models/HunYuanOpen/index.ts +2 -0
  48. package/src/models/Moonshot/index.ts +3 -0
  49. package/src/models/Yi/index.ts +2 -0
  50. package/src/models/ZhiPu/index.ts +2 -0
  51. package/src/models/model.ts +2 -0
  52. package/src/utils.ts +3 -1
  53. package/tsconfig.json +1 -1
package/dist/esm/utils.js CHANGED
@@ -249,4 +249,4 @@ export function functionToolToModelTool(tool) {
249
249
  },
250
250
  };
251
251
  }
252
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxlQUFlLElBQUksZ0JBQWdCLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQTRDLE1BQU0sc0JBQXNCLENBQUE7QUFRN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRWhELE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBRyxlQVc3QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sZUFBZSxHQUFHLGdCQVE5QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sc0NBQXNDLEdBQUc7SUFDcEQsSUFBSSxNQUEwQixDQUFBO0lBRTlCLE9BQU8sSUFBSSxlQUFlLENBQXNCO1FBQzlDLEtBQUssWUFBQyxVQUFVO1lBQ2QsTUFBTSxHQUFHLFlBQVksQ0FBQyxVQUFDLEtBQUs7Z0JBQzFCLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQzFCLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQzFCO1lBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBQ0QsU0FBUyxZQUFDLEtBQUs7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BCLENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRywyQkFBMkIsQ0FBQyxjQUFjLENBQUMsQ0FBQTtBQUU3RTtJQXFCRSwyQkFBWSxRQUFrQixFQUFFLE9BQWdDO1FBQXBELHlCQUFB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R0FBRyxHQUFHLE1BQU0sQ0FBQTtJQUNkLENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxFQUFFLE9BQU8sU0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLENBQUE7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxPQUF5Qjs7SUFDbEUsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxZQUFZLElBQUksT0FBTyxJQUFJLENBQUEsTUFBQSxPQUFPLENBQUMsVUFBVSwwQ0FBRyxDQUFDLENBQUMsS0FBSSxJQUFJLENBQUE7QUFDbkcsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxJQUFrQjtJQUN4RCxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsUUFBUSxFQUFFO1lBQ1IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUM1QjtLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtU3RyZWFtIGFzIF9UcmFuc2Zvcm1TdHJlYW0sIFJlYWRhYmxlU3RyZWFtIGFzIF9SZWFkYWJsZVN0cmVhbSB9IGZyb20gJ3dlYi1zdHJlYW1zLXBvbHlmaWxsJ1xuaW1wb3J0IHsgY3JlYXRlUmVhZGFibGVTdHJlYW1XcmFwcGVyIH0gZnJvbSAnQG1hdHRpYXNidWVsZW5zL3dlYi1zdHJlYW1zLWFkYXB0ZXInXG5pbXBvcnQgeyBjcmVhdGVQYXJzZXIsIHR5cGUgRXZlbnRTb3VyY2VQYXJzZXIsIHR5cGUgUGFyc2VkRXZlbnQgfSBmcm9tICcuL2V2ZW50c291cmNlX3BhcnNlcidcbmltcG9ydCB0eXBlIHtcbiAgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtLFxuICBDaGF0TW9kZWxNZXNzYWdlLFxuICBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UsXG4gIE1vZGVsVG9vbCxcbiAgRnVuY3Rpb25Ub29sLFxufSBmcm9tICcuL3R5cGUnXG5pbXBvcnQgeyBUZXh0RGVjb2RlciB9IGZyb20gJ3RleHQtZW5jb2Rpbmctc2hpbSdcblxuZXhwb3J0IGNvbnN0IFJlYWRhYmxlU3RyZWFtID0gX1JlYWRhYmxlU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBSZWFkYWJsZVN0cmVhbVxuXG4gIG5ldyAoXG4gICAgdW5kZXJseWluZ1NvdXJjZTogVW5kZXJseWluZ0J5dGVTb3VyY2UsXG4gICAgc3RyYXRlZ3k/OiB7XG4gICAgICBoaWdoV2F0ZXJNYXJrPzogbnVtYmVyXG4gICAgfSxcbiAgKTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT5cbiAgbmV3IDxSID0gYW55Pih1bmRlcmx5aW5nU291cmNlOiBVbmRlcmx5aW5nRGVmYXVsdFNvdXJjZTxSPiwgc3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Uj4pOiBSZWFkYWJsZVN0cmVhbTxSPlxuICBuZXcgPFIgPSBhbnk+KHVuZGVybHlpbmdTb3VyY2U/OiBVbmRlcmx5aW5nU291cmNlPFI+LCBzdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxSPik6IFJlYWRhYmxlU3RyZWFtPFI+XG59XG5cbmV4cG9ydCBjb25zdCBUcmFuc2Zvcm1TdHJlYW0gPSBfVHJhbnNmb3JtU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBUcmFuc2Zvcm1TdHJlYW1cblxuICBuZXcgPEkgPSBhbnksIE8gPSBhbnk+KFxuICAgIHRyYW5zZm9ybWVyPzogVHJhbnNmb3JtZXI8SSwgTz4sXG4gICAgd3JpdGFibGVTdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxJPixcbiAgICByZWFkYWJsZVN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PE8+LFxuICApOiBUcmFuc2Zvcm1TdHJlYW08SSwgTz5cbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtID0gKCkgPT4ge1xuICBsZXQgcGFyc2VyITogRXZlbnRTb3VyY2VQYXJzZXJcblxuICByZXR1cm4gbmV3IFRyYW5zZm9ybVN0cmVhbTxzdHJpbmcsIFBhcnNlZEV2ZW50Pih7XG4gICAgc3RhcnQoY29udHJvbGxlcikge1xuICAgICAgcGFyc2VyID0gY3JlYXRlUGFyc2VyKChldmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2V2ZW50Jykge1xuICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShldmVudClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9LFxuICAgIHRyYW5zZm9ybShjaHVuaykge1xuICAgICAgcGFyc2VyLmZlZWQoY2h1bmspXG4gICAgfSxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IHRvUG9seWZpbGxSZWFkYWJsZSA9IGNyZWF0ZVJlYWRhYmxlU3RyZWFtV3JhcHBlcihSZWFkYWJsZVN0cmVhbSlcblxuZXhwb3J0IGNsYXNzIFRleHREZWNvZGVyU3RyZWFtIHtcbiAgcHJpdmF0ZSBoYW5kbGU6IFRleHREZWNvZGVyXG5cbiAgcHJpdmF0ZSB0cmFuc2Zvcm0gPSBuZXcgVHJhbnNmb3JtU3RyZWFtKHtcbiAgICB0cmFuc2Zvcm06IChjaHVuaywgY29udHJvbGxlcikgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmhhbmRsZS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoY2h1bmspLCB7IHN0cmVhbTogdHJ1ZSB9KVxuXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuICAgIH0sXG4gICAgZmx1c2g6IChjb250cm9sbGVyKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaGFuZGxlLmRlY29kZSgpXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuXG4gICAgICBjb250cm9sbGVyLnRlcm1pbmF0ZSgpXG4gICAgfSxcbiAgfSlcblxuICBjb25zdHJ1Y3RvcihlbmNvZGluZyA9ICd1dGYtOCcsIG9wdGlvbnM6IFRleHREZWNvZGVyT3B0aW9ucyA9IHt9KSB7XG4gICAgdGhpcy5oYW5kbGUgPSBuZXcgVGV4dERlY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpXG4gIH1cblxuICBnZXQgZW5jb2RpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmVuY29kaW5nXG4gIH1cblxuICBnZXQgZmF0YWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmZhdGFsXG4gIH1cblxuICBnZXQgaWdub3JlQk9NKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5pZ25vcmVCT01cbiAgfVxuXG4gIGdldCByZWFkYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ucmVhZGFibGVcbiAgfVxuXG4gIGdldCB3cml0YWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ud3JpdGFibGVcbiAgfVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpIHtcbiAgICByZXR1cm4gJ1RleHREZWNvZGVyU3RyZWFtJ1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBc3luY0l0ZXJhYmxlPFQ+KHN0cmVhbTogUmVhZGFibGVTdHJlYW08VD4pIHtcbiAgY29uc3QgX3N0cmVhbSA9IHN0cmVhbSBhcyBBc3luY0l0ZXJhYmxlUmVhZGFibGVTdHJlYW08VD5cbiAgX3N0cmVhbVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0gPSAoKSA9PiB7XG4gICAgY29uc3QgcmVhZGVyID0gc3RyZWFtLmdldFJlYWRlcigpXG4gICAgcmV0dXJuIHtcbiAgICAgIGFzeW5jIG5leHQoKTogUHJvbWlzZTxJdGVyYXRvclJlc3VsdDxUPj4ge1xuICAgICAgICBjb25zdCB7IGRvbmUsIHZhbHVlIH0gPSBhd2FpdCByZWFkZXIucmVhZCgpXG4gICAgICAgIHJldHVybiBkb25lID8geyBkb25lOiB0cnVlLCB2YWx1ZTogdW5kZWZpbmVkIH0gOiB7IGRvbmU6IGZhbHNlLCB2YWx1ZSB9XG4gICAgICB9LFxuICAgIH1cbiAgfVxuICByZXR1cm4gX3N0cmVhbVxufVxuXG4vKipcbiAqIOWwhiBTU0Ug5LqM6L+b5Yi25rWB6L2s5o2i5Li6IFQg57G75Z6L55qE5rWBXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnRvU3RhbmRhcmRTdHJlYW08VD4oc3RyZWFtOiBSZWFkYWJsZVN0cmVhbTxVaW50OEFycmF5Pik6IFJlYWRhYmxlU3RyZWFtPFQ+IHtcbiAgcmV0dXJuIGNyZWF0ZUFzeW5jSXRlcmFibGUoc3RyZWFtXG4gICAgLnBpcGVUaHJvdWdoKG5ldyBUZXh0RGVjb2RlclN0cmVhbSgpKVxuICAgIC5waXBlVGhyb3VnaChjcmVhdGVFdmVudFNvdXJjZVBhcnNlclRyYW5zZm9ybVN0cmVhbSgpKVxuICAgIC5waXBlVGhyb3VnaChuZXcgVHJhbnNmb3JtU3RyZWFtPFBhcnNlZEV2ZW50LCBUPih7XG4gICAgICB0cmFuc2Zvcm0oY2h1bmssIGNvbnRyb2xsZXIpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShjaHVuay5kYXRhKSBhcyBUXG4gICAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKGRhdGEpXG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBpZiAoY2h1bmsuZGF0YSAhPT0gJ1tET05FXScpIHtcbiAgICAgICAgICAgIGNvbnNvbGUud2FybignRXJyb3Igd2hlbiB0cmFuc2Zvcm1pbmcgZXZlbnQgc291cmNlIGRhdGEgdG8ganNvbicsIGUsIGNodW5rKVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb250cm9sbGVyLnRlcm1pbmF0ZSgpXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pLCksKVxufVxuXG4vKipcbiAqIOWwhiBTU0Ug5LqM6L+b5Yi25rWB6L2s5o2i5Li65a2X56ym5Liy5rWBXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnRvVGV4dFN0cmVhbShzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+KTogQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtPHN0cmluZz4ge1xuICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZSgodG9Qb2x5ZmlsbFJlYWRhYmxlKHN0cmVhbSkgYXMgdHlwZW9mIHN0cmVhbSkucGlwZVRocm91Z2gobmV3IFRleHREZWNvZGVyU3RyZWFtKCkpKVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVhZGFibGVTdHJlYW0ySnNvbk9iamVjdChzdHJlYW06IFJlYWRhYmxlU3RyZWFtKSB7XG4gIGNvbnN0IHMgPSBpbnRvVGV4dFN0cmVhbShzdHJlYW0pXG4gIGxldCB0b3RhbCA9ICcnXG4gIGZvciBhd2FpdCAoY29uc3QgY2h1bmsgb2Ygcykge1xuICAgIHRvdGFsICs9IGNodW5rXG4gIH1cbiAgcmV0dXJuIEpTT04ucGFyc2UodG90YWwpXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVQcm9taXNlPFQgPSB1bmtub3duPigpIHtcbiAgbGV0IHJlczogKHZhbHVlOiBUIHwgUHJvbWlzZUxpa2U8VD4pID0+IHZvaWRcbiAgbGV0IHJlajogKHJlYXNvbj86IGFueSkgPT4gdm9pZFxuICBjb25zdCBwcm9taXNlID0gbmV3IFByb21pc2U8VD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIHJlcyA9IHJlc29sdmVcbiAgICByZWogPSByZWplY3RcbiAgfSlcbiAgcmV0dXJuIHsgcHJvbWlzZSwgcmVzLCByZWogfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UobWVzc2FnZTogQ2hhdE1vZGVsTWVzc2FnZSk6IG1lc3NhZ2UgaXMgVG9vbENhbGxBc3Npc3RhbnRNZXNzYWdlIHtcbiAgcmV0dXJuIG1lc3NhZ2Uucm9sZSA9PT0gJ2Fzc2lzdGFudCcgJiYgJ3Rvb2xfY2FsbHMnIGluIG1lc3NhZ2UgJiYgbWVzc2FnZS50b29sX2NhbGxzPy5bMF0gIT0gbnVsbFxufVxuXG5leHBvcnQgZnVuY3Rpb24gZnVuY3Rpb25Ub29sVG9Nb2RlbFRvb2wodG9vbDogRnVuY3Rpb25Ub29sKTogTW9kZWxUb29sIHtcbiAgcmV0dXJuIHtcbiAgICB0eXBlOiAnZnVuY3Rpb24nLFxuICAgIGZ1bmN0aW9uOiB7XG4gICAgICBkZXNjcmlwdGlvbjogdG9vbC5kZXNjcmlwdGlvbixcbiAgICAgIG5hbWU6IHRvb2wubmFtZSxcbiAgICAgIHBhcmFtZXRlcnM6IHRvb2wucGFyYW1ldGVycyxcbiAgICB9LFxuICB9XG59XG4iXX0=
252
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxlQUFlLElBQUksZ0JBQWdCLEVBQUUsY0FBYyxJQUFJLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQzdHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFDQUFxQyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSxZQUFZLEVBQTRDLE1BQU0sc0JBQXNCLENBQUE7QUFRN0YsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFBO0FBRWhELE1BQU0sQ0FBQyxJQUFNLGNBQWMsR0FBRyxlQVc3QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sZUFBZSxHQUFHLGdCQVE5QixDQUFBO0FBRUQsTUFBTSxDQUFDLElBQU0sc0NBQXNDLEdBQUc7SUFDcEQsSUFBSSxNQUEwQixDQUFBO0lBRTlCLE9BQU8sSUFBSSxlQUFlLENBQXNCO1FBQzlDLEtBQUssWUFBQyxVQUFVO1lBQ2QsTUFBTSxHQUFHLFlBQVksQ0FBQyxVQUFDLEtBQUs7Z0JBQzFCLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7b0JBQzFCLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQzFCO1lBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO1FBQ0QsU0FBUyxZQUFDLEtBQUs7WUFDYixNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BCLENBQUM7S0FDRixDQUFDLENBQUE7QUFDSixDQUFDLENBQUE7QUFFRCxNQUFNLENBQUMsSUFBTSxrQkFBa0IsR0FBRywyQkFBMkIsQ0FBQyxjQUFjLENBQUMsQ0FBQTtBQUU3RTtJQXFCRSwyQkFBWSxRQUFrQixFQUFFLE9BQWdDO1FBQXBELHlCQUFB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R0FBRyxHQUFHLE1BQU0sQ0FBQTtJQUNkLENBQUMsQ0FBQyxDQUFBO0lBQ0YsT0FBTyxFQUFFLE9BQU8sU0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLEdBQUcsS0FBQSxFQUFFLENBQUE7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSwwQkFBMEIsQ0FBQyxPQUF5Qjs7SUFFbEUsT0FBTyxPQUFPLENBQUMsSUFBSSxLQUFLLFdBQVcsSUFBSSxZQUFZLElBQUksT0FBTyxJQUFJLENBQUEsTUFBQSxPQUFPLENBQUMsVUFBVSwwQ0FBRyxDQUFDLENBQUMsS0FBSSxJQUFJLENBQUE7QUFDbkcsQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxJQUFrQjtJQUN4RCxPQUFPO1FBQ0wsSUFBSSxFQUFFLFVBQVU7UUFDaEIsUUFBUSxFQUFFO1lBQ1IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO1lBQzdCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtTQUM1QjtLQUNGLENBQUE7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNmb3JtU3RyZWFtIGFzIF9UcmFuc2Zvcm1TdHJlYW0sIFJlYWRhYmxlU3RyZWFtIGFzIF9SZWFkYWJsZVN0cmVhbSB9IGZyb20gJ3dlYi1zdHJlYW1zLXBvbHlmaWxsJ1xuaW1wb3J0IHsgY3JlYXRlUmVhZGFibGVTdHJlYW1XcmFwcGVyIH0gZnJvbSAnQG1hdHRpYXNidWVsZW5zL3dlYi1zdHJlYW1zLWFkYXB0ZXInXG5pbXBvcnQgeyBjcmVhdGVQYXJzZXIsIHR5cGUgRXZlbnRTb3VyY2VQYXJzZXIsIHR5cGUgUGFyc2VkRXZlbnQgfSBmcm9tICcuL2V2ZW50c291cmNlX3BhcnNlcidcbmltcG9ydCB0eXBlIHtcbiAgQXN5bmNJdGVyYWJsZVJlYWRhYmxlU3RyZWFtLFxuICBDaGF0TW9kZWxNZXNzYWdlLFxuICBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2UsXG4gIE1vZGVsVG9vbCxcbiAgRnVuY3Rpb25Ub29sLFxufSBmcm9tICcuL3R5cGUnXG5pbXBvcnQgeyBUZXh0RGVjb2RlciB9IGZyb20gJ3RleHQtZW5jb2Rpbmctc2hpbSdcblxuZXhwb3J0IGNvbnN0IFJlYWRhYmxlU3RyZWFtID0gX1JlYWRhYmxlU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBSZWFkYWJsZVN0cmVhbVxuXG4gIG5ldyAoXG4gICAgdW5kZXJseWluZ1NvdXJjZTogVW5kZXJseWluZ0J5dGVTb3VyY2UsXG4gICAgc3RyYXRlZ3k/OiB7XG4gICAgICBoaWdoV2F0ZXJNYXJrPzogbnVtYmVyXG4gICAgfSxcbiAgKTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT5cbiAgbmV3IDxSID0gYW55Pih1bmRlcmx5aW5nU291cmNlOiBVbmRlcmx5aW5nRGVmYXVsdFNvdXJjZTxSPiwgc3RyYXRlZ3k/OiBRdWV1aW5nU3RyYXRlZ3k8Uj4pOiBSZWFkYWJsZVN0cmVhbTxSPlxuICBuZXcgPFIgPSBhbnk+KHVuZGVybHlpbmdTb3VyY2U/OiBVbmRlcmx5aW5nU291cmNlPFI+LCBzdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxSPik6IFJlYWRhYmxlU3RyZWFtPFI+XG59XG5cbmV4cG9ydCBjb25zdCBUcmFuc2Zvcm1TdHJlYW0gPSBfVHJhbnNmb3JtU3RyZWFtIGFzIHtcbiAgcHJvdG90eXBlOiBUcmFuc2Zvcm1TdHJlYW1cblxuICBuZXcgPEkgPSBhbnksIE8gPSBhbnk+KFxuICAgIHRyYW5zZm9ybWVyPzogVHJhbnNmb3JtZXI8SSwgTz4sXG4gICAgd3JpdGFibGVTdHJhdGVneT86IFF1ZXVpbmdTdHJhdGVneTxJPixcbiAgICByZWFkYWJsZVN0cmF0ZWd5PzogUXVldWluZ1N0cmF0ZWd5PE8+LFxuICApOiBUcmFuc2Zvcm1TdHJlYW08SSwgTz5cbn1cblxuZXhwb3J0IGNvbnN0IGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtID0gKCkgPT4ge1xuICBsZXQgcGFyc2VyITogRXZlbnRTb3VyY2VQYXJzZXJcblxuICByZXR1cm4gbmV3IFRyYW5zZm9ybVN0cmVhbTxzdHJpbmcsIFBhcnNlZEV2ZW50Pih7XG4gICAgc3RhcnQoY29udHJvbGxlcikge1xuICAgICAgcGFyc2VyID0gY3JlYXRlUGFyc2VyKChldmVudCkgPT4ge1xuICAgICAgICBpZiAoZXZlbnQudHlwZSA9PT0gJ2V2ZW50Jykge1xuICAgICAgICAgIGNvbnRyb2xsZXIuZW5xdWV1ZShldmVudClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICB9LFxuICAgIHRyYW5zZm9ybShjaHVuaykge1xuICAgICAgcGFyc2VyLmZlZWQoY2h1bmspXG4gICAgfSxcbiAgfSlcbn1cblxuZXhwb3J0IGNvbnN0IHRvUG9seWZpbGxSZWFkYWJsZSA9IGNyZWF0ZVJlYWRhYmxlU3RyZWFtV3JhcHBlcihSZWFkYWJsZVN0cmVhbSlcblxuZXhwb3J0IGNsYXNzIFRleHREZWNvZGVyU3RyZWFtIHtcbiAgcHJpdmF0ZSBoYW5kbGU6IFRleHREZWNvZGVyXG5cbiAgcHJpdmF0ZSB0cmFuc2Zvcm0gPSBuZXcgVHJhbnNmb3JtU3RyZWFtKHtcbiAgICB0cmFuc2Zvcm06IChjaHVuaywgY29udHJvbGxlcikgPT4ge1xuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmhhbmRsZS5kZWNvZGUobmV3IFVpbnQ4QXJyYXkoY2h1bmspLCB7IHN0cmVhbTogdHJ1ZSB9KVxuXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuICAgIH0sXG4gICAgZmx1c2g6IChjb250cm9sbGVyKSA9PiB7XG4gICAgICBjb25zdCB2YWx1ZSA9IHRoaXMuaGFuZGxlLmRlY29kZSgpXG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29udHJvbGxlci5lbnF1ZXVlKHZhbHVlKVxuICAgICAgfVxuXG4gICAgICBjb250cm9sbGVyLnRlcm1pbmF0ZSgpXG4gICAgfSxcbiAgfSlcblxuICBjb25zdHJ1Y3RvcihlbmNvZGluZyA9ICd1dGYtOCcsIG9wdGlvbnM6IFRleHREZWNvZGVyT3B0aW9ucyA9IHt9KSB7XG4gICAgdGhpcy5oYW5kbGUgPSBuZXcgVGV4dERlY29kZXIoZW5jb2RpbmcsIG9wdGlvbnMpXG4gIH1cblxuICBnZXQgZW5jb2RpbmcoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmVuY29kaW5nXG4gIH1cblxuICBnZXQgZmF0YWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuaGFuZGxlLmZhdGFsXG4gIH1cblxuICBnZXQgaWdub3JlQk9NKCkge1xuICAgIHJldHVybiB0aGlzLmhhbmRsZS5pZ25vcmVCT01cbiAgfVxuXG4gIGdldCByZWFkYWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ucmVhZGFibGVcbiAgfVxuXG4gIGdldCB3cml0YWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy50cmFuc2Zvcm0ud3JpdGFibGVcbiAgfVxuXG4gIGdldCBbU3ltYm9sLnRvU3RyaW5nVGFnXSgpIHtcbiAgICByZXR1cm4gJ1RleHREZWNvZGVyU3RyZWFtJ1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVBc3luY0l0ZXJhYmxlPFQ+KHN0cmVhbTogUmVhZGFibGVTdHJlYW08VD4pIHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICBjb25zdCBfc3RyZWFtID0gc3RyZWFtIGFzIEFzeW5jSXRlcmFibGVSZWFkYWJsZVN0cmVhbTxUPlxuICAoX3N0cmVhbSBhcyBhbnkpW1N5bWJvbC5hc3luY0l0ZXJhdG9yXSA9ICgpID0+IHtcbiAgICBjb25zdCByZWFkZXIgPSBzdHJlYW0uZ2V0UmVhZGVyKClcbiAgICByZXR1cm4ge1xuICAgICAgYXN5bmMgbmV4dCgpOiBQcm9taXNlPEl0ZXJhdG9yUmVzdWx0PFQ+PiB7XG4gICAgICAgIGNvbnN0IHsgZG9uZSwgdmFsdWUgfSA9IGF3YWl0IHJlYWRlci5yZWFkKClcbiAgICAgICAgcmV0dXJuIGRvbmUgPyB7IGRvbmU6IHRydWUsIHZhbHVlOiB1bmRlZmluZWQgfSA6IHsgZG9uZTogZmFsc2UsIHZhbHVlIH1cbiAgICAgIH0sXG4gICAgfVxuICB9XG4gIHJldHVybiBfc3RyZWFtXG59XG5cbi8qKlxuICog5bCGIFNTRSDkuozov5vliLbmtYHovazmjaLkuLogVCDnsbvlnovnmoTmtYFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludG9TdGFuZGFyZFN0cmVhbTxUPihzdHJlYW06IFJlYWRhYmxlU3RyZWFtPFVpbnQ4QXJyYXk+KTogUmVhZGFibGVTdHJlYW08VD4ge1xuICByZXR1cm4gY3JlYXRlQXN5bmNJdGVyYWJsZShzdHJlYW1cbiAgICAucGlwZVRocm91Z2gobmV3IFRleHREZWNvZGVyU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKGNyZWF0ZUV2ZW50U291cmNlUGFyc2VyVHJhbnNmb3JtU3RyZWFtKCkpXG4gICAgLnBpcGVUaHJvdWdoKG5ldyBUcmFuc2Zvcm1TdHJlYW08UGFyc2VkRXZlbnQsIFQ+KHtcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgY29udHJvbGxlcikge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGNvbnN0IGRhdGEgPSBKU09OLnBhcnNlKGNodW5rLmRhdGEpIGFzIFRcbiAgICAgICAgICBjb250cm9sbGVyLmVucXVldWUoZGF0YSlcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmIChjaHVuay5kYXRhICE9PSAnW0RPTkVdJykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGVuIHRyYW5zZm9ybWluZyBldmVudCBzb3VyY2UgZGF0YSB0byBqc29uJywgZSwgY2h1bmspXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnRyb2xsZXIudGVybWluYXRlKClcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSksKSwpXG59XG5cbi8qKlxuICog5bCGIFNTRSDkuozov5vliLbmtYHovazmjaLkuLrlrZfnrKbkuLLmtYFcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGludG9UZXh0U3RyZWFtKHN0cmVhbTogUmVhZGFibGVTdHJlYW08VWludDhBcnJheT4pOiBBc3luY0l0ZXJhYmxlUmVhZGFibGVTdHJlYW08c3RyaW5nPiB7XG4gIHJldHVybiBjcmVhdGVBc3luY0l0ZXJhYmxlKCh0b1BvbHlmaWxsUmVhZGFibGUoc3RyZWFtKSBhcyB0eXBlb2Ygc3RyZWFtKS5waXBlVGhyb3VnaChuZXcgVGV4dERlY29kZXJTdHJlYW0oKSkpXG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWFkYWJsZVN0cmVhbTJKc29uT2JqZWN0KHN0cmVhbTogUmVhZGFibGVTdHJlYW0pIHtcbiAgY29uc3QgcyA9IGludG9UZXh0U3RyZWFtKHN0cmVhbSlcbiAgbGV0IHRvdGFsID0gJydcbiAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBzKSB7XG4gICAgdG90YWwgKz0gY2h1bmtcbiAgfVxuICByZXR1cm4gSlNPTi5wYXJzZSh0b3RhbClcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVByb21pc2U8VCA9IHVua25vd24+KCkge1xuICBsZXQgcmVzOiAodmFsdWU6IFQgfCBQcm9taXNlTGlrZTxUPikgPT4gdm9pZFxuICBsZXQgcmVqOiAocmVhc29uPzogYW55KSA9PiB2b2lkXG4gIGNvbnN0IHByb21pc2UgPSBuZXcgUHJvbWlzZTxUPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgcmVzID0gcmVzb2x2ZVxuICAgIHJlaiA9IHJlamVjdFxuICB9KVxuICByZXR1cm4geyBwcm9taXNlLCByZXMsIHJlaiB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Rvb2xDYWxsQXNzaXN0YW50TWVzc2FnZShtZXNzYWdlOiBDaGF0TW9kZWxNZXNzYWdlKTogbWVzc2FnZSBpcyBUb29sQ2FsbEFzc2lzdGFudE1lc3NhZ2Uge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxXG4gIHJldHVybiBtZXNzYWdlLnJvbGUgPT09ICdhc3Npc3RhbnQnICYmICd0b29sX2NhbGxzJyBpbiBtZXNzYWdlICYmIG1lc3NhZ2UudG9vbF9jYWxscz8uWzBdICE9IG51bGxcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZ1bmN0aW9uVG9vbFRvTW9kZWxUb29sKHRvb2w6IEZ1bmN0aW9uVG9vbCk6IE1vZGVsVG9vbCB7XG4gIHJldHVybiB7XG4gICAgdHlwZTogJ2Z1bmN0aW9uJyxcbiAgICBmdW5jdGlvbjoge1xuICAgICAgZGVzY3JpcHRpb246IHRvb2wuZGVzY3JpcHRpb24sXG4gICAgICBuYW1lOiB0b29sLm5hbWUsXG4gICAgICBwYXJhbWV0ZXJzOiB0b29sLnBhcmFtZXRlcnMsXG4gICAgfSxcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloudbase/ai",
3
- "version": "2.22.0",
3
+ "version": "2.22.2",
4
4
  "description": "cloudbase js sdk ai module",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -30,8 +30,8 @@
30
30
  "author": "",
31
31
  "license": "Apache-2.0",
32
32
  "dependencies": {
33
- "@cloudbase/types": "2.22.0",
34
- "@cloudbase/utilities": "2.22.0",
33
+ "@cloudbase/types": "2.22.2",
34
+ "@cloudbase/utilities": "2.22.2",
35
35
  "@mattiasbuelens/web-streams-adapter": "^0.1.0",
36
36
  "text-encoding-shim": "^1.0.5",
37
37
  "web-streams-polyfill": "^4.0.0"
@@ -39,5 +39,5 @@
39
39
  "devDependencies": {
40
40
  "@cloudbase/adapter-interface": "^0.7.1"
41
41
  },
42
- "gitHead": "ec37fade5ab4e50bda976e37512aa08fbc02fca3"
42
+ "gitHead": "7e8ca8a2f3834924a14320c383e671cada829d19"
43
43
  }
package/src/AI.ts CHANGED
@@ -1,3 +1,5 @@
1
+ /* eslint-disable eqeqeq */
2
+ /* eslint-disable @typescript-eslint/naming-convention */
1
3
  import type { SDKRequestInterface } from '@cloudbase/adapter-interface'
2
4
  import { Bot } from './bot'
3
5
  import * as models from './models'
package/src/bot/index.ts CHANGED
@@ -34,6 +34,7 @@ export class Bot {
34
34
  req: BotReq
35
35
 
36
36
  constructor(req: BotReq, public baseUrl: string) {
37
+ // eslint-disable-next-line prefer-rest-params
37
38
  const token = arguments[2]
38
39
  if (typeof token === 'string') {
39
40
  this.req = ({ headers = {}, ...rest }) => req({ ...rest, headers: { ...headers, Authorization: `Bearer ${token}` } })
@@ -230,6 +231,7 @@ export class Bot {
230
231
  type BotEventStreamData = { content: string }
231
232
 
232
233
  class StreamResult {
234
+ // eslint-disable-next-line @typescript-eslint/naming-convention
233
235
  private _eventSourceStream: ReadableStream<ParsedEvent>
234
236
 
235
237
  constructor(_stream: ReadableStream<Uint8Array>) {
package/src/index.ts CHANGED
@@ -1,3 +1,4 @@
1
+ /* eslint-disable eqeqeq */
1
2
  import type { IFetchOptions, SDKRequestInterface } from '@cloudbase/adapter-interface'
2
3
  import type { ICloudbase, ICloudbaseConfig } from '@cloudbase/types'
3
4
  import type { ICloudbaseComponent } from '@cloudbase/types/component'
@@ -1,3 +1,5 @@
1
+ /* eslint-disable eqeqeq */
2
+ /* eslint-disable @typescript-eslint/naming-convention */
1
3
  import {
2
4
  createAsyncIterable,
3
5
  TransformStream,
@@ -1,3 +1,5 @@
1
+ /* eslint-disable eqeqeq */
2
+ /* eslint-disable @typescript-eslint/naming-convention */
1
3
  import {
2
4
  createAsyncIterable,
3
5
  TransformStream,
@@ -1,3 +1,4 @@
1
+ /* eslint-disable eqeqeq */
1
2
  import {
2
3
  createAsyncIterable,
3
4
  TransformStream,
@@ -42,6 +43,7 @@ export class DeepSeekSimpleModel implements SimpleChatModel {
42
43
 
43
44
  public async doStream(data: BaseChatModelInput, options?: ReqOptions): Promise<DoStreamOutput> {
44
45
  let isToolCall: null | boolean = null
46
+ // eslint-disable-next-line @typescript-eslint/naming-convention
45
47
  const _stream = await this.req({
46
48
  url: this.url,
47
49
  data: {
@@ -33,6 +33,7 @@ export class DefaultSimpleModel implements SimpleChatModel {
33
33
  public async doStream(data: BaseChatModelInput): Promise<DoStreamOutput> {
34
34
  let isToolCall: null | boolean = null
35
35
 
36
+ // eslint-disable-next-line @typescript-eslint/naming-convention
36
37
  const _stream = await this.req({
37
38
  url: this.url,
38
39
  data: {
@@ -48,6 +49,7 @@ export class DefaultSimpleModel implements SimpleChatModel {
48
49
  transform(chunk, controller) {
49
50
  const newChoices = chunk.choices.map((choice) => {
50
51
  const message = choice.delta
52
+ // eslint-disable-next-line eqeqeq
51
53
  if (isToolCall == null) isToolCall = isToolCallAssistantMessage(message)
52
54
  if (isToolCall) {
53
55
  return {
@@ -1,3 +1,4 @@
1
+ /* eslint-disable eqeqeq */
1
2
  import {
2
3
  createAsyncIterable,
3
4
  TransformStream,
@@ -52,6 +53,7 @@ export class HunYuanSimpleModel implements SimpleChatModel {
52
53
  public async doStream(data: BaseChatModelInput, options?: ReqOptions): Promise<DoStreamOutput> {
53
54
  let isToolCall: null | boolean = null
54
55
 
56
+ // eslint-disable-next-line @typescript-eslint/naming-convention
55
57
  const _stream = await this.req({
56
58
  url: this.url,
57
59
  headers: {
@@ -1,3 +1,5 @@
1
+ /* eslint-disable eqeqeq */
2
+ /* eslint-disable @typescript-eslint/naming-convention */
1
3
  import { HunYuanInputData } from './type'
2
4
  import { BaseChatModelInput } from '../../type'
3
5
 
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ /* eslint-disable eqeqeq */
1
3
  import {
2
4
  createAsyncIterable,
3
5
  TransformStream,
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ /* eslint-disable eqeqeq */
1
3
  import {
2
4
  createAsyncIterable,
3
5
  TransformStream,
@@ -1,3 +1,4 @@
1
+ /* eslint-disable eqeqeq */
1
2
  import {
2
3
  createAsyncIterable,
3
4
  TransformStream,
@@ -45,6 +46,7 @@ export class HunYuanOpenSimpleModel implements SimpleChatModel {
45
46
  public async doStream(data: BaseChatModelInput, options?: ReqOptions): Promise<DoStreamOutput> {
46
47
  let isToolCall: null | boolean = null
47
48
 
49
+ // eslint-disable-next-line @typescript-eslint/naming-convention
48
50
  const _stream = await this.req({
49
51
  url: this.url,
50
52
  data: {
@@ -1,3 +1,4 @@
1
+ /* eslint-disable eqeqeq */
1
2
  import {
2
3
  createAsyncIterable,
3
4
  TransformStream,
@@ -17,6 +18,7 @@ import type {
17
18
  } from '../../type'
18
19
 
19
20
  function processInput(input: BaseChatModelInput): MoonshotInputData {
21
+ // eslint-disable-next-line @typescript-eslint/naming-convention
20
22
  const { messages, model, temperature, tools, top_p } = input
21
23
 
22
24
  return {
@@ -56,6 +58,7 @@ export class MoonshotSimpleModel implements SimpleChatModel {
56
58
 
57
59
  public async doStream(data: BaseChatModelInput, options?: ReqOptions): Promise<DoStreamOutput> {
58
60
  let isToolCall: null | boolean = null
61
+ // eslint-disable-next-line @typescript-eslint/naming-convention
59
62
  const _stream = await this.req({
60
63
  url: this.url,
61
64
  data: {
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ /* eslint-disable eqeqeq */
1
3
  import {
2
4
  createAsyncIterable,
3
5
  TransformStream,
@@ -1,3 +1,5 @@
1
+ /* eslint-disable eqeqeq */
2
+ /* eslint-disable @typescript-eslint/naming-convention */
1
3
  import {
2
4
  createAsyncIterable,
3
5
  TransformStream,
@@ -1,3 +1,5 @@
1
+ /* eslint-disable @typescript-eslint/naming-convention */
2
+ /* eslint-disable eqeqeq */
1
3
  import {
2
4
  createAsyncIterable,
3
5
  TransformStream,
package/src/utils.ts CHANGED
@@ -103,8 +103,9 @@ export class TextDecoderStream {
103
103
  }
104
104
 
105
105
  export function createAsyncIterable<T>(stream: ReadableStream<T>) {
106
+ // eslint-disable-next-line @typescript-eslint/naming-convention
106
107
  const _stream = stream as AsyncIterableReadableStream<T>
107
- _stream[Symbol.asyncIterator] = () => {
108
+ (_stream as any)[Symbol.asyncIterator] = () => {
108
109
  const reader = stream.getReader()
109
110
  return {
110
111
  async next(): Promise<IteratorResult<T>> {
@@ -166,6 +167,7 @@ export function createPromise<T = unknown>() {
166
167
  }
167
168
 
168
169
  export function isToolCallAssistantMessage(message: ChatModelMessage): message is ToolCallAssistantMessage {
170
+ // eslint-disable-next-line eqeqeq
169
171
  return message.role === 'assistant' && 'tool_calls' in message && message.tool_calls?.[0] != null
170
172
  }
171
173
 
package/tsconfig.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "extends": "../../tsconfig.base.json",
3
3
  "compilerOptions": {
4
- "module": "commonjs",
4
+ "module": "node16",
5
5
  "outDir": "dist/cjs",
6
6
  "rootDir": "src",
7
7
  },