@ainetwork/adk 0.3.3 → 0.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{chunk-BX6NH3FF.cjs → chunk-3COIZ4H5.cjs} +2 -2
- package/dist/cjs/chunk-3COIZ4H5.cjs.map +1 -0
- package/dist/cjs/{chunk-4EBXZQBI.cjs → chunk-4ZTPNV3C.cjs} +3 -3
- package/dist/cjs/{chunk-4EBXZQBI.cjs.map → chunk-4ZTPNV3C.cjs.map} +1 -1
- package/dist/cjs/{chunk-F7OUDIWN.cjs → chunk-6JO4LWIY.cjs} +3 -3
- package/dist/cjs/{chunk-6IJQHCZU.cjs.map → chunk-6JO4LWIY.cjs.map} +1 -1
- package/dist/cjs/{chunk-UJAN2KQL.cjs → chunk-7E3A6PCO.cjs} +6 -6
- package/dist/cjs/chunk-7E3A6PCO.cjs.map +1 -0
- package/dist/cjs/chunk-7XYVRO76.cjs +68 -0
- package/dist/cjs/chunk-7XYVRO76.cjs.map +1 -0
- package/dist/cjs/chunk-CHREGFB3.cjs +38 -0
- package/dist/cjs/chunk-CHREGFB3.cjs.map +1 -0
- package/dist/cjs/{chunk-GNVBFKDS.cjs → chunk-CKZDAQBG.cjs} +3 -3
- package/dist/cjs/{chunk-CPLL6U4I.cjs.map → chunk-CKZDAQBG.cjs.map} +1 -1
- package/dist/cjs/{chunk-HI6W5ECZ.cjs → chunk-EQWAVDJY.cjs} +2 -2
- package/dist/cjs/{chunk-HI6W5ECZ.cjs.map → chunk-EQWAVDJY.cjs.map} +1 -1
- package/dist/cjs/{chunk-FJJNZKVY.cjs → chunk-EUNCRF3F.cjs} +3 -3
- package/dist/cjs/{chunk-EFHGBEXG.cjs.map → chunk-EUNCRF3F.cjs.map} +1 -1
- package/dist/cjs/{chunk-V63O7TO7.cjs → chunk-HDF5WQFQ.cjs} +15 -5
- package/dist/cjs/chunk-HDF5WQFQ.cjs.map +1 -0
- package/dist/cjs/{chunk-7CKMI7HV.cjs → chunk-HVNTK4O7.cjs} +5 -5
- package/dist/cjs/{chunk-DJI4KAQI.cjs.map → chunk-HVNTK4O7.cjs.map} +1 -1
- package/dist/cjs/chunk-I72VEOEC.cjs +62 -0
- package/dist/cjs/chunk-I72VEOEC.cjs.map +1 -0
- package/dist/cjs/{chunk-I2ZH2SJW.cjs → chunk-IP6P2TQM.cjs} +68 -37
- package/dist/cjs/chunk-IP6P2TQM.cjs.map +1 -0
- package/dist/cjs/{chunk-3CHMHNNT.cjs → chunk-JQIAM5N4.cjs} +3 -3
- package/dist/cjs/{chunk-3CHMHNNT.cjs.map → chunk-JQIAM5N4.cjs.map} +1 -1
- package/dist/cjs/{chunk-6O2AI6BC.cjs → chunk-LTBTLUJD.cjs} +8 -5
- package/dist/cjs/chunk-LTBTLUJD.cjs.map +1 -0
- package/dist/cjs/{chunk-2X4ACIYT.cjs → chunk-NFEFQTIX.cjs} +16 -3
- package/dist/cjs/chunk-NFEFQTIX.cjs.map +1 -0
- package/dist/cjs/chunk-NNVC34HX.cjs +95 -0
- package/dist/cjs/chunk-NNVC34HX.cjs.map +1 -0
- package/dist/cjs/{chunk-TZ6JOGWV.cjs → chunk-PH5CFKLN.cjs} +4 -1
- package/dist/cjs/chunk-PH5CFKLN.cjs.map +1 -0
- package/dist/cjs/{chunk-BCKDMXTF.cjs → chunk-QHDIM62U.cjs} +5 -5
- package/dist/cjs/{chunk-4NFOZDMI.cjs.map → chunk-QHDIM62U.cjs.map} +1 -1
- package/dist/cjs/{chunk-WHCDV7F2.cjs → chunk-TDHM5TWT.cjs} +7 -4
- package/dist/cjs/chunk-TDHM5TWT.cjs.map +1 -0
- package/dist/cjs/{chunk-TOSYTVTM.cjs → chunk-UNRN7WF6.cjs} +1 -1
- package/dist/cjs/{chunk-TOSYTVTM.cjs.map → chunk-UNRN7WF6.cjs.map} +1 -1
- package/dist/cjs/{chunk-3N3VNHUA.cjs → chunk-VM74R2KP.cjs} +4 -4
- package/dist/cjs/{chunk-3N3VNHUA.cjs.map → chunk-VM74R2KP.cjs.map} +1 -1
- package/dist/cjs/chunk-WQIUHNUX.cjs +45 -0
- package/dist/cjs/chunk-WQIUHNUX.cjs.map +1 -0
- package/dist/cjs/{chunk-5FQG6TMG.cjs → chunk-ZWJ6IAP2.cjs} +10 -10
- package/dist/cjs/{chunk-G6U33GUW.cjs.map → chunk-ZWJ6IAP2.cjs.map} +1 -1
- package/dist/cjs/container/controllers.cjs +5 -4
- package/dist/cjs/container/controllers.cjs.map +1 -1
- package/dist/cjs/container/index.cjs +18 -13
- package/dist/cjs/container/index.cjs.map +1 -1
- package/dist/cjs/container/services.cjs +14 -10
- package/dist/cjs/container/services.cjs.map +1 -1
- package/dist/cjs/controllers/api/workflow.api.controller.cjs +7 -0
- package/dist/cjs/controllers/api/workflow.api.controller.cjs.map +1 -0
- package/dist/cjs/controllers/index.cjs +3 -3
- package/dist/cjs/controllers/query.controller.cjs +3 -3
- package/dist/cjs/index.cjs +34 -28
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/modules/a2a/a2a.module.cjs +1 -1
- package/dist/cjs/modules/index.cjs +9 -9
- package/dist/cjs/modules/index.cjs.map +1 -1
- package/dist/cjs/modules/memory/memory.module.cjs +2 -2
- package/dist/cjs/routes/a2a.routes.cjs +19 -14
- package/dist/cjs/routes/a2a.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/agent.routes.cjs +19 -14
- package/dist/cjs/routes/api/agent.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/intent.routes.cjs +19 -14
- package/dist/cjs/routes/api/intent.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/model.routes.cjs +19 -14
- package/dist/cjs/routes/api/model.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/threads.routes.cjs +19 -14
- package/dist/cjs/routes/api/threads.routes.cjs.map +1 -1
- package/dist/cjs/routes/api/workflow.routes.cjs +35 -0
- package/dist/cjs/routes/api/workflow.routes.cjs.map +1 -0
- package/dist/cjs/routes/api.routes.cjs +24 -18
- package/dist/cjs/routes/api.routes.cjs.map +1 -1
- package/dist/cjs/routes/index.cjs +26 -20
- package/dist/cjs/routes/index.cjs.map +1 -1
- package/dist/cjs/routes/intent.routes.cjs +19 -14
- package/dist/cjs/routes/intent.routes.cjs.map +1 -1
- package/dist/cjs/routes/query.routes.cjs +19 -14
- package/dist/cjs/routes/query.routes.cjs.map +1 -1
- package/dist/cjs/services/a2a.service.cjs +2 -2
- package/dist/cjs/services/index.cjs +14 -10
- package/dist/cjs/services/index.cjs.map +1 -1
- package/dist/cjs/services/intents/aggregate.service.cjs +3 -3
- package/dist/cjs/services/intents/fulfill.service.cjs +5 -3
- package/dist/cjs/services/intents/fulfill.service.cjs.map +1 -1
- package/dist/cjs/services/intents/multi-trigger.service.cjs +8 -0
- package/dist/cjs/services/intents/multi-trigger.service.cjs.map +1 -0
- package/dist/cjs/services/intents/single-trigger.service.cjs +8 -0
- package/dist/cjs/services/intents/single-trigger.service.cjs.map +1 -0
- package/dist/cjs/services/intents/trigger.service.cjs +4 -2
- package/dist/cjs/services/intents/trigger.service.cjs.map +1 -1
- package/dist/cjs/services/query.service.cjs +4 -4
- package/dist/cjs/services/utils/aggregate.common.cjs +2 -2
- package/dist/cjs/types/memory.cjs +2 -2
- package/dist/esm/{chunk-BGKNOP4G.js → chunk-2VGXYWJD.js} +2 -2
- package/dist/esm/{chunk-ZOBIMOTU.js → chunk-44CTGJX4.js} +104 -43
- package/dist/esm/chunk-44CTGJX4.js.map +1 -0
- package/dist/esm/{chunk-GRN6CHNO.js → chunk-4BHU7SPZ.js} +1 -1
- package/dist/esm/{chunk-GRN6CHNO.js.map → chunk-4BHU7SPZ.js.map} +1 -1
- package/dist/esm/{chunk-2536GWW5.js → chunk-6YBQCUNB.js} +4 -4
- package/dist/esm/{chunk-2536GWW5.js.map → chunk-6YBQCUNB.js.map} +1 -1
- package/dist/esm/{chunk-75Q7LGNT.js → chunk-7DH4SI44.js} +10 -10
- package/dist/esm/{chunk-OUIXXZFI.js → chunk-7GV6DSPE.js} +4 -1
- package/dist/esm/chunk-7GV6DSPE.js.map +1 -0
- package/dist/esm/chunk-7XQPJVYO.js +62 -0
- package/dist/esm/chunk-7XQPJVYO.js.map +1 -0
- package/dist/esm/{chunk-E6G2X5EM.js → chunk-AEBBZSQ4.js} +5 -5
- package/dist/esm/chunk-BZUWX7HX.js +68 -0
- package/dist/esm/chunk-BZUWX7HX.js.map +1 -0
- package/dist/esm/chunk-CC6DWPHZ.js +95 -0
- package/dist/esm/chunk-CC6DWPHZ.js.map +1 -0
- package/dist/esm/{chunk-KASACQMB.js → chunk-D6STNZ2L.js} +15 -5
- package/dist/esm/chunk-D6STNZ2L.js.map +1 -0
- package/dist/esm/{chunk-FBYS3TIH.js → chunk-FCH7BUK4.js} +2 -2
- package/dist/esm/{chunk-N5EFUB6B.js → chunk-I4P7JMJC.js} +21 -8
- package/dist/esm/chunk-I4P7JMJC.js.map +1 -0
- package/dist/esm/{chunk-IXCR6CXV.js → chunk-IG3B5AXN.js} +6 -3
- package/dist/esm/{chunk-IXCR6CXV.js.map → chunk-IG3B5AXN.js.map} +1 -1
- package/dist/esm/{chunk-FEX3CUAV.js → chunk-JXGQVFCO.js} +9 -5
- package/dist/esm/chunk-JXGQVFCO.js.map +1 -0
- package/dist/esm/{chunk-SXD4YK2V.js → chunk-LMOWEXWF.js} +13 -9
- package/dist/esm/chunk-LMOWEXWF.js.map +1 -0
- package/dist/{cjs/chunk-7FCRNHT4.cjs → esm/chunk-O3MPFL5J.js} +15 -15
- package/dist/esm/chunk-O3MPFL5J.js.map +1 -0
- package/dist/esm/{chunk-OJE3CB72.js → chunk-PZQRSWST.js} +2 -2
- package/dist/esm/{chunk-PUZ5SGXS.js → chunk-QQZ5ANSD.js} +6 -6
- package/dist/esm/chunk-QQZ5ANSD.js.map +1 -0
- package/dist/{cjs/chunk-KD7SOTR3.cjs → esm/chunk-TQJCYP7X.js} +45 -39
- package/dist/esm/chunk-TQJCYP7X.js.map +1 -0
- package/dist/esm/{chunk-DLP5I2ML.js → chunk-VP5Q63JU.js} +4 -4
- package/dist/esm/{chunk-DLP5I2ML.js.map → chunk-VP5Q63JU.js.map} +1 -1
- package/dist/esm/{chunk-VZXSBAQV.js → chunk-ZJVWC666.js} +2 -2
- package/dist/esm/chunk-ZJVWC666.js.map +1 -0
- package/dist/esm/{chunk-JMSOXYYY.js → chunk-ZK3HZBER.js} +2 -2
- package/dist/esm/chunk-ZNZZZ4NN.js +45 -0
- package/dist/esm/chunk-ZNZZZ4NN.js.map +1 -0
- package/dist/esm/container/controllers.d.ts +3 -0
- package/dist/esm/container/controllers.js +5 -4
- package/dist/esm/container/index.d.ts +2 -0
- package/dist/esm/container/index.js +21 -16
- package/dist/esm/container/services.js +13 -9
- package/dist/esm/controllers/api/workflow.api.controller.d.ts +16 -0
- package/dist/esm/controllers/api/workflow.api.controller.js +7 -0
- package/dist/esm/controllers/api/workflow.api.controller.js.map +1 -0
- package/dist/esm/controllers/index.js +5 -5
- package/dist/esm/controllers/query.controller.js +2 -2
- package/dist/esm/index.js +37 -31
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/modules/a2a/a2a.module.js +1 -1
- package/dist/esm/modules/index.d.ts +1 -1
- package/dist/esm/modules/index.js +8 -8
- package/dist/esm/modules/memory/base.memory.d.ts +13 -2
- package/dist/esm/modules/memory/memory.module.d.ts +2 -1
- package/dist/esm/modules/memory/memory.module.js +1 -1
- package/dist/esm/routes/a2a.routes.js +24 -19
- package/dist/esm/routes/api/agent.routes.js +22 -17
- package/dist/esm/routes/api/intent.routes.js +22 -17
- package/dist/esm/routes/api/model.routes.js +22 -17
- package/dist/esm/routes/api/threads.routes.js +22 -17
- package/dist/esm/routes/api/workflow.routes.d.ts +5 -0
- package/dist/esm/routes/api/workflow.routes.js +35 -0
- package/dist/esm/routes/api/workflow.routes.js.map +1 -0
- package/dist/esm/routes/api.routes.js +27 -21
- package/dist/esm/routes/index.js +33 -27
- package/dist/esm/routes/intent.routes.js +22 -17
- package/dist/esm/routes/query.routes.js +22 -17
- package/dist/esm/services/a2a.service.js +1 -1
- package/dist/esm/services/index.js +13 -9
- package/dist/esm/services/intents/aggregate.service.d.ts +41 -0
- package/dist/esm/services/intents/aggregate.service.js +10 -0
- package/dist/esm/services/intents/aggregate.service.js.map +1 -0
- package/dist/esm/services/intents/fulfill.service.d.ts +17 -4
- package/dist/esm/services/intents/fulfill.service.js +5 -3
- package/dist/esm/services/intents/multi-trigger.service.d.ts +27 -0
- package/dist/esm/services/intents/multi-trigger.service.js +8 -0
- package/dist/esm/services/intents/multi-trigger.service.js.map +1 -0
- package/dist/esm/services/intents/single-trigger.service.d.ts +28 -0
- package/dist/esm/services/intents/single-trigger.service.js +8 -0
- package/dist/esm/services/intents/single-trigger.service.js.map +1 -0
- package/dist/esm/services/intents/trigger.service.d.ts +8 -3
- package/dist/esm/services/intents/trigger.service.js +3 -1
- package/dist/esm/services/query.service.d.ts +4 -1
- package/dist/esm/services/query.service.js +2 -2
- package/dist/esm/services/utils/aggregate.common.d.ts +10 -0
- package/dist/esm/services/utils/aggregate.common.js +9 -0
- package/dist/esm/services/utils/aggregate.common.js.map +1 -0
- package/dist/esm/types/memory.d.ts +23 -1
- package/dist/esm/types/memory.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/chunk-22GUZQUJ.cjs +0 -44
- package/dist/cjs/chunk-22GUZQUJ.cjs.map +0 -1
- package/dist/cjs/chunk-2GJOCIJC.cjs +0 -166
- package/dist/cjs/chunk-2GJOCIJC.cjs.map +0 -1
- package/dist/cjs/chunk-2JIEFW2D.cjs +0 -71
- package/dist/cjs/chunk-2JIEFW2D.cjs.map +0 -1
- package/dist/cjs/chunk-2MQFLBYL.cjs +0 -105
- package/dist/cjs/chunk-2MQFLBYL.cjs.map +0 -1
- package/dist/cjs/chunk-2NTW7MRF.cjs +0 -321
- package/dist/cjs/chunk-2NTW7MRF.cjs.map +0 -1
- package/dist/cjs/chunk-2P3ZBNVN.cjs +0 -45
- package/dist/cjs/chunk-2P3ZBNVN.cjs.map +0 -1
- package/dist/cjs/chunk-2X4ACIYT.cjs.map +0 -1
- package/dist/cjs/chunk-357IURJ2.cjs +0 -44
- package/dist/cjs/chunk-357IURJ2.cjs.map +0 -1
- package/dist/cjs/chunk-3H6WQ2FI.cjs +0 -36
- package/dist/cjs/chunk-3H6WQ2FI.cjs.map +0 -1
- package/dist/cjs/chunk-3JH7BATM.cjs +0 -17
- package/dist/cjs/chunk-3JH7BATM.cjs.map +0 -1
- package/dist/cjs/chunk-3JNCJIO3.cjs +0 -115
- package/dist/cjs/chunk-3JNCJIO3.cjs.map +0 -1
- package/dist/cjs/chunk-3L2W36P6.cjs +0 -89
- package/dist/cjs/chunk-3L2W36P6.cjs.map +0 -1
- package/dist/cjs/chunk-3Q2XJVZP.cjs +0 -44
- package/dist/cjs/chunk-3Q2XJVZP.cjs.map +0 -1
- package/dist/cjs/chunk-3QRYHFBW.cjs +0 -32
- package/dist/cjs/chunk-3QRYHFBW.cjs.map +0 -1
- package/dist/cjs/chunk-3RS6NVSN.cjs +0 -41
- package/dist/cjs/chunk-3RS6NVSN.cjs.map +0 -1
- package/dist/cjs/chunk-3YPBEXGX.cjs +0 -17
- package/dist/cjs/chunk-3YPBEXGX.cjs.map +0 -1
- package/dist/cjs/chunk-44EZXX6Z.cjs +0 -45
- package/dist/cjs/chunk-44EZXX6Z.cjs.map +0 -1
- package/dist/cjs/chunk-45NLC256.cjs +0 -44
- package/dist/cjs/chunk-45NLC256.cjs.map +0 -1
- package/dist/cjs/chunk-4DNRUQTD.cjs +0 -17
- package/dist/cjs/chunk-4DNRUQTD.cjs.map +0 -1
- package/dist/cjs/chunk-4DSUBFZU.cjs +0 -34
- package/dist/cjs/chunk-4DSUBFZU.cjs.map +0 -1
- package/dist/cjs/chunk-4F23Y2I2.cjs +0 -41
- package/dist/cjs/chunk-4F23Y2I2.cjs.map +0 -1
- package/dist/cjs/chunk-4MGPYMIT.cjs +0 -258
- package/dist/cjs/chunk-4MGPYMIT.cjs.map +0 -1
- package/dist/cjs/chunk-4MZPPHCO.cjs +0 -41
- package/dist/cjs/chunk-4MZPPHCO.cjs.map +0 -1
- package/dist/cjs/chunk-4NFOZDMI.cjs +0 -44
- package/dist/cjs/chunk-4OCGTV5B.cjs +0 -34
- package/dist/cjs/chunk-4OCGTV5B.cjs.map +0 -1
- package/dist/cjs/chunk-4PDFGVRN.cjs +0 -123
- package/dist/cjs/chunk-4PDFGVRN.cjs.map +0 -1
- package/dist/cjs/chunk-4POJFDOS.cjs +0 -87
- package/dist/cjs/chunk-4POJFDOS.cjs.map +0 -1
- package/dist/cjs/chunk-4QYRHCZT.cjs +0 -44
- package/dist/cjs/chunk-4QYRHCZT.cjs.map +0 -1
- package/dist/cjs/chunk-4RVMA37A.cjs +0 -91
- package/dist/cjs/chunk-4RVMA37A.cjs.map +0 -1
- package/dist/cjs/chunk-4VV26C64.cjs +0 -44
- package/dist/cjs/chunk-4VV26C64.cjs.map +0 -1
- package/dist/cjs/chunk-4Y6N2H4C.cjs +0 -41
- package/dist/cjs/chunk-4Y6N2H4C.cjs.map +0 -1
- package/dist/cjs/chunk-4Z4HSVCQ.cjs +0 -21
- package/dist/cjs/chunk-4Z4HSVCQ.cjs.map +0 -1
- package/dist/cjs/chunk-5CRNAAHL.cjs +0 -34
- package/dist/cjs/chunk-5CRNAAHL.cjs.map +0 -1
- package/dist/cjs/chunk-5FQG6TMG.cjs.map +0 -1
- package/dist/cjs/chunk-5FZ7QLJD.cjs +0 -17
- package/dist/cjs/chunk-5FZ7QLJD.cjs.map +0 -1
- package/dist/cjs/chunk-5QSLQX4H.cjs +0 -112
- package/dist/cjs/chunk-5QSLQX4H.cjs.map +0 -1
- package/dist/cjs/chunk-5TTTCQWF.cjs +0 -34
- package/dist/cjs/chunk-5TTTCQWF.cjs.map +0 -1
- package/dist/cjs/chunk-6BGDRGMO.cjs +0 -71
- package/dist/cjs/chunk-6BGDRGMO.cjs.map +0 -1
- package/dist/cjs/chunk-6DI7OHR6.cjs +0 -98
- package/dist/cjs/chunk-6DI7OHR6.cjs.map +0 -1
- package/dist/cjs/chunk-6G62GL46.cjs +0 -105
- package/dist/cjs/chunk-6G62GL46.cjs.map +0 -1
- package/dist/cjs/chunk-6IH4A3KY.cjs +0 -36
- package/dist/cjs/chunk-6IH4A3KY.cjs.map +0 -1
- package/dist/cjs/chunk-6IJQHCZU.cjs +0 -29
- package/dist/cjs/chunk-6O2AI6BC.cjs.map +0 -1
- package/dist/cjs/chunk-6T2YGFSD.cjs +0 -28
- package/dist/cjs/chunk-6T2YGFSD.cjs.map +0 -1
- package/dist/cjs/chunk-6WULDUSY.cjs +0 -41
- package/dist/cjs/chunk-6WULDUSY.cjs.map +0 -1
- package/dist/cjs/chunk-6XVJ4LYS.cjs +0 -44
- package/dist/cjs/chunk-6XVJ4LYS.cjs.map +0 -1
- package/dist/cjs/chunk-6YCWZ475.cjs +0 -44
- package/dist/cjs/chunk-6YCWZ475.cjs.map +0 -1
- package/dist/cjs/chunk-755BILHQ.cjs +0 -107
- package/dist/cjs/chunk-755BILHQ.cjs.map +0 -1
- package/dist/cjs/chunk-776PYAVR.cjs +0 -105
- package/dist/cjs/chunk-776PYAVR.cjs.map +0 -1
- package/dist/cjs/chunk-7CKMI7HV.cjs.map +0 -1
- package/dist/cjs/chunk-7FCRNHT4.cjs.map +0 -1
- package/dist/cjs/chunk-7FGVEGCS.cjs +0 -166
- package/dist/cjs/chunk-7FGVEGCS.cjs.map +0 -1
- package/dist/cjs/chunk-7KXB6FOT.cjs +0 -112
- package/dist/cjs/chunk-7KXB6FOT.cjs.map +0 -1
- package/dist/cjs/chunk-7VP4HWUU.cjs +0 -18
- package/dist/cjs/chunk-7VP4HWUU.cjs.map +0 -1
- package/dist/cjs/chunk-7XEHYLKQ.cjs +0 -35
- package/dist/cjs/chunk-7XEHYLKQ.cjs.map +0 -1
- package/dist/cjs/chunk-A2I7D6JW.cjs +0 -45
- package/dist/cjs/chunk-A2I7D6JW.cjs.map +0 -1
- package/dist/cjs/chunk-A3UM7LLD.cjs +0 -44
- package/dist/cjs/chunk-A3UM7LLD.cjs.map +0 -1
- package/dist/cjs/chunk-AHNKY3JY.cjs +0 -30
- package/dist/cjs/chunk-AHNKY3JY.cjs.map +0 -1
- package/dist/cjs/chunk-AKB6GA4L.cjs +0 -288
- package/dist/cjs/chunk-AKB6GA4L.cjs.map +0 -1
- package/dist/cjs/chunk-ALRBSKSI.cjs +0 -71
- package/dist/cjs/chunk-ALRBSKSI.cjs.map +0 -1
- package/dist/cjs/chunk-AOGX72RA.cjs +0 -117
- package/dist/cjs/chunk-AOGX72RA.cjs.map +0 -1
- package/dist/cjs/chunk-APON3XHI.cjs +0 -115
- package/dist/cjs/chunk-APON3XHI.cjs.map +0 -1
- package/dist/cjs/chunk-AVBLFPVO.cjs +0 -36
- package/dist/cjs/chunk-AVBLFPVO.cjs.map +0 -1
- package/dist/cjs/chunk-AZNZX34U.cjs +0 -86
- package/dist/cjs/chunk-AZNZX34U.cjs.map +0 -1
- package/dist/cjs/chunk-BCKDMXTF.cjs.map +0 -1
- package/dist/cjs/chunk-BJIWQE5T.cjs +0 -258
- package/dist/cjs/chunk-BJIWQE5T.cjs.map +0 -1
- package/dist/cjs/chunk-BMX5EISU.cjs +0 -44
- package/dist/cjs/chunk-BMX5EISU.cjs.map +0 -1
- package/dist/cjs/chunk-BRJYKH4F.cjs +0 -115
- package/dist/cjs/chunk-BRJYKH4F.cjs.map +0 -1
- package/dist/cjs/chunk-BTHJU46T.cjs +0 -235
- package/dist/cjs/chunk-BTHJU46T.cjs.map +0 -1
- package/dist/cjs/chunk-BTYANR7C.cjs +0 -89
- package/dist/cjs/chunk-BTYANR7C.cjs.map +0 -1
- package/dist/cjs/chunk-BX6NH3FF.cjs.map +0 -1
- package/dist/cjs/chunk-BXY2ASBS.cjs +0 -44
- package/dist/cjs/chunk-BXY2ASBS.cjs.map +0 -1
- package/dist/cjs/chunk-CA3EGQYX.cjs +0 -17
- package/dist/cjs/chunk-CA3EGQYX.cjs.map +0 -1
- package/dist/cjs/chunk-CDV26Q7Y.cjs +0 -17
- package/dist/cjs/chunk-CDV26Q7Y.cjs.map +0 -1
- package/dist/cjs/chunk-CGGZPBZJ.cjs +0 -1
- package/dist/cjs/chunk-CGGZPBZJ.cjs.map +0 -1
- package/dist/cjs/chunk-CHF6UVDG.cjs +0 -36
- package/dist/cjs/chunk-CHF6UVDG.cjs.map +0 -1
- package/dist/cjs/chunk-CPLL6U4I.cjs +0 -17
- package/dist/cjs/chunk-CRUKUOIQ.cjs +0 -17
- package/dist/cjs/chunk-CRUKUOIQ.cjs.map +0 -1
- package/dist/cjs/chunk-CSTQMV3N.cjs +0 -34
- package/dist/cjs/chunk-CSTQMV3N.cjs.map +0 -1
- package/dist/cjs/chunk-D2YHNQ3Z.cjs +0 -48
- package/dist/cjs/chunk-D2YHNQ3Z.cjs.map +0 -1
- package/dist/cjs/chunk-DBUJ56SX.cjs +0 -112
- package/dist/cjs/chunk-DBUJ56SX.cjs.map +0 -1
- package/dist/cjs/chunk-DCJONF3G.cjs +0 -105
- package/dist/cjs/chunk-DCJONF3G.cjs.map +0 -1
- package/dist/cjs/chunk-DGXLVGIM.cjs +0 -36
- package/dist/cjs/chunk-DGXLVGIM.cjs.map +0 -1
- package/dist/cjs/chunk-DHCI45FT.cjs +0 -17
- package/dist/cjs/chunk-DHCI45FT.cjs.map +0 -1
- package/dist/cjs/chunk-DJI4KAQI.cjs +0 -44
- package/dist/cjs/chunk-DNBGXPBY.cjs +0 -36
- package/dist/cjs/chunk-DNBGXPBY.cjs.map +0 -1
- package/dist/cjs/chunk-DNH2AYFZ.cjs +0 -20
- package/dist/cjs/chunk-DNH2AYFZ.cjs.map +0 -1
- package/dist/cjs/chunk-DNZIJ5PP.cjs +0 -29
- package/dist/cjs/chunk-DNZIJ5PP.cjs.map +0 -1
- package/dist/cjs/chunk-DSXSDMIV.cjs +0 -112
- package/dist/cjs/chunk-DSXSDMIV.cjs.map +0 -1
- package/dist/cjs/chunk-E2BBWV3A.cjs +0 -44
- package/dist/cjs/chunk-E2BBWV3A.cjs.map +0 -1
- package/dist/cjs/chunk-E3PD4Q76.cjs +0 -41
- package/dist/cjs/chunk-E3PD4Q76.cjs.map +0 -1
- package/dist/cjs/chunk-EA3YMPST.cjs +0 -36
- package/dist/cjs/chunk-EA3YMPST.cjs.map +0 -1
- package/dist/cjs/chunk-EFHGBEXG.cjs +0 -17
- package/dist/cjs/chunk-EH5ZJNX2.cjs +0 -71
- package/dist/cjs/chunk-EH5ZJNX2.cjs.map +0 -1
- package/dist/cjs/chunk-EO3GRZSL.cjs +0 -89
- package/dist/cjs/chunk-EO3GRZSL.cjs.map +0 -1
- package/dist/cjs/chunk-EZ6UZX7E.cjs +0 -37
- package/dist/cjs/chunk-EZ6UZX7E.cjs.map +0 -1
- package/dist/cjs/chunk-EZ74DPRH.cjs +0 -44
- package/dist/cjs/chunk-EZ74DPRH.cjs.map +0 -1
- package/dist/cjs/chunk-F3IKO62T.cjs +0 -29
- package/dist/cjs/chunk-F3IKO62T.cjs.map +0 -1
- package/dist/cjs/chunk-F6ZKKRAP.cjs +0 -258
- package/dist/cjs/chunk-F6ZKKRAP.cjs.map +0 -1
- package/dist/cjs/chunk-F7OUDIWN.cjs.map +0 -1
- package/dist/cjs/chunk-FJ2JWXSL.cjs +0 -40
- package/dist/cjs/chunk-FJ2JWXSL.cjs.map +0 -1
- package/dist/cjs/chunk-FJJNZKVY.cjs.map +0 -1
- package/dist/cjs/chunk-FLPYCYCF.cjs +0 -27
- package/dist/cjs/chunk-FLPYCYCF.cjs.map +0 -1
- package/dist/cjs/chunk-FR2EDCDZ.cjs +0 -34
- package/dist/cjs/chunk-FR2EDCDZ.cjs.map +0 -1
- package/dist/cjs/chunk-FT462YZZ.cjs +0 -98
- package/dist/cjs/chunk-FT462YZZ.cjs.map +0 -1
- package/dist/cjs/chunk-FT4HGZUO.cjs +0 -17
- package/dist/cjs/chunk-FT4HGZUO.cjs.map +0 -1
- package/dist/cjs/chunk-FTT4Z3LJ.cjs +0 -44
- package/dist/cjs/chunk-FTT4Z3LJ.cjs.map +0 -1
- package/dist/cjs/chunk-FXC6AWL7.cjs +0 -105
- package/dist/cjs/chunk-FXC6AWL7.cjs.map +0 -1
- package/dist/cjs/chunk-G2VESVFB.cjs +0 -48
- package/dist/cjs/chunk-G2VESVFB.cjs.map +0 -1
- package/dist/cjs/chunk-G327WAYJ.cjs +0 -17
- package/dist/cjs/chunk-G327WAYJ.cjs.map +0 -1
- package/dist/cjs/chunk-G4K62PCM.cjs +0 -116
- package/dist/cjs/chunk-G4K62PCM.cjs.map +0 -1
- package/dist/cjs/chunk-G6U33GUW.cjs +0 -89
- package/dist/cjs/chunk-G75JNMGC.cjs +0 -18
- package/dist/cjs/chunk-G75JNMGC.cjs.map +0 -1
- package/dist/cjs/chunk-GES3BKIB.cjs +0 -18
- package/dist/cjs/chunk-GES3BKIB.cjs.map +0 -1
- package/dist/cjs/chunk-GFPOPDHD.cjs +0 -32
- package/dist/cjs/chunk-GFPOPDHD.cjs.map +0 -1
- package/dist/cjs/chunk-GKEK3TD2.cjs +0 -37
- package/dist/cjs/chunk-GKEK3TD2.cjs.map +0 -1
- package/dist/cjs/chunk-GNVBFKDS.cjs.map +0 -1
- package/dist/cjs/chunk-GSTTIFCP.cjs +0 -36
- package/dist/cjs/chunk-GSTTIFCP.cjs.map +0 -1
- package/dist/cjs/chunk-GUGGI3D4.cjs +0 -36
- package/dist/cjs/chunk-GUGGI3D4.cjs.map +0 -1
- package/dist/cjs/chunk-GVI4KTAQ.cjs +0 -27
- package/dist/cjs/chunk-GVI4KTAQ.cjs.map +0 -1
- package/dist/cjs/chunk-HF2QUMQV.cjs +0 -30
- package/dist/cjs/chunk-HF2QUMQV.cjs.map +0 -1
- package/dist/cjs/chunk-HF7GKQ6Y.cjs +0 -105
- package/dist/cjs/chunk-HF7GKQ6Y.cjs.map +0 -1
- package/dist/cjs/chunk-HPJLKZWC.cjs +0 -17
- package/dist/cjs/chunk-HPJLKZWC.cjs.map +0 -1
- package/dist/cjs/chunk-HQS676OW.cjs +0 -36
- package/dist/cjs/chunk-HQS676OW.cjs.map +0 -1
- package/dist/cjs/chunk-HWDKJMY2.cjs +0 -20
- package/dist/cjs/chunk-HWDKJMY2.cjs.map +0 -1
- package/dist/cjs/chunk-I2TJT6FD.cjs +0 -34
- package/dist/cjs/chunk-I2TJT6FD.cjs.map +0 -1
- package/dist/cjs/chunk-I2ZH2SJW.cjs.map +0 -1
- package/dist/cjs/chunk-I5EYF6CF.cjs +0 -34
- package/dist/cjs/chunk-I5EYF6CF.cjs.map +0 -1
- package/dist/cjs/chunk-I6YD2PIC.cjs +0 -17
- package/dist/cjs/chunk-I6YD2PIC.cjs.map +0 -1
- package/dist/cjs/chunk-IDHZO3BG.cjs +0 -17
- package/dist/cjs/chunk-IDHZO3BG.cjs.map +0 -1
- package/dist/cjs/chunk-IGCC7IZH.cjs +0 -42
- package/dist/cjs/chunk-IGCC7IZH.cjs.map +0 -1
- package/dist/cjs/chunk-IOJN2UFP.cjs +0 -29
- package/dist/cjs/chunk-IOJN2UFP.cjs.map +0 -1
- package/dist/cjs/chunk-IR4MO5IX.cjs +0 -288
- package/dist/cjs/chunk-IR4MO5IX.cjs.map +0 -1
- package/dist/cjs/chunk-ITX6AVBT.cjs +0 -22
- package/dist/cjs/chunk-ITX6AVBT.cjs.map +0 -1
- package/dist/cjs/chunk-J2NC4SS4.cjs +0 -36
- package/dist/cjs/chunk-J2NC4SS4.cjs.map +0 -1
- package/dist/cjs/chunk-J54MXQRK.cjs +0 -17
- package/dist/cjs/chunk-J54MXQRK.cjs.map +0 -1
- package/dist/cjs/chunk-JBN6MQKQ.cjs +0 -156
- package/dist/cjs/chunk-JBN6MQKQ.cjs.map +0 -1
- package/dist/cjs/chunk-JCGV5ZA3.cjs +0 -41
- package/dist/cjs/chunk-JCGV5ZA3.cjs.map +0 -1
- package/dist/cjs/chunk-JE2SDLKQ.cjs +0 -36
- package/dist/cjs/chunk-JE2SDLKQ.cjs.map +0 -1
- package/dist/cjs/chunk-JF66SARJ.cjs +0 -17
- package/dist/cjs/chunk-JF66SARJ.cjs.map +0 -1
- package/dist/cjs/chunk-JFSB5ARH.cjs +0 -115
- package/dist/cjs/chunk-JFSB5ARH.cjs.map +0 -1
- package/dist/cjs/chunk-JFYWZHPV.cjs +0 -27
- package/dist/cjs/chunk-JFYWZHPV.cjs.map +0 -1
- package/dist/cjs/chunk-JHKPFTZB.cjs +0 -36
- package/dist/cjs/chunk-JHKPFTZB.cjs.map +0 -1
- package/dist/cjs/chunk-JMCNGRZC.cjs +0 -17
- package/dist/cjs/chunk-JMCNGRZC.cjs.map +0 -1
- package/dist/cjs/chunk-JPLE6IZD.cjs +0 -17
- package/dist/cjs/chunk-JPLE6IZD.cjs.map +0 -1
- package/dist/cjs/chunk-JRCYE2QX.cjs +0 -34
- package/dist/cjs/chunk-JRCYE2QX.cjs.map +0 -1
- package/dist/cjs/chunk-K7XLKKJA.cjs +0 -258
- package/dist/cjs/chunk-K7XLKKJA.cjs.map +0 -1
- package/dist/cjs/chunk-KB3VLITP.cjs +0 -71
- package/dist/cjs/chunk-KB3VLITP.cjs.map +0 -1
- package/dist/cjs/chunk-KD7SOTR3.cjs.map +0 -1
- package/dist/cjs/chunk-KJWMCZ7W.cjs +0 -36
- package/dist/cjs/chunk-KJWMCZ7W.cjs.map +0 -1
- package/dist/cjs/chunk-KS4HVN5P.cjs +0 -17
- package/dist/cjs/chunk-KS4HVN5P.cjs.map +0 -1
- package/dist/cjs/chunk-KVMC47CV.cjs +0 -41
- package/dist/cjs/chunk-KVMC47CV.cjs.map +0 -1
- package/dist/cjs/chunk-KW7WI3DJ.cjs +0 -17
- package/dist/cjs/chunk-KW7WI3DJ.cjs.map +0 -1
- package/dist/cjs/chunk-KX4MY3NT.cjs +0 -44
- package/dist/cjs/chunk-KX4MY3NT.cjs.map +0 -1
- package/dist/cjs/chunk-L2QIWLEF.cjs +0 -288
- package/dist/cjs/chunk-L2QIWLEF.cjs.map +0 -1
- package/dist/cjs/chunk-L2SL7WRS.cjs +0 -34
- package/dist/cjs/chunk-L2SL7WRS.cjs.map +0 -1
- package/dist/cjs/chunk-L7GTFA76.cjs +0 -18
- package/dist/cjs/chunk-L7GTFA76.cjs.map +0 -1
- package/dist/cjs/chunk-LB5N6YMF.cjs +0 -319
- package/dist/cjs/chunk-LB5N6YMF.cjs.map +0 -1
- package/dist/cjs/chunk-LGKUMQFQ.cjs +0 -34
- package/dist/cjs/chunk-LGKUMQFQ.cjs.map +0 -1
- package/dist/cjs/chunk-LKFCVFKI.cjs +0 -43
- package/dist/cjs/chunk-LKFCVFKI.cjs.map +0 -1
- package/dist/cjs/chunk-LUI3IP4N.cjs +0 -21
- package/dist/cjs/chunk-LUI3IP4N.cjs.map +0 -1
- package/dist/cjs/chunk-LYLUYSYP.cjs +0 -44
- package/dist/cjs/chunk-LYLUYSYP.cjs.map +0 -1
- package/dist/cjs/chunk-M22KG6DN.cjs +0 -168
- package/dist/cjs/chunk-M22KG6DN.cjs.map +0 -1
- package/dist/cjs/chunk-M2YINXQX.cjs +0 -34
- package/dist/cjs/chunk-M2YINXQX.cjs.map +0 -1
- package/dist/cjs/chunk-M3Z5EH67.cjs +0 -17
- package/dist/cjs/chunk-M3Z5EH67.cjs.map +0 -1
- package/dist/cjs/chunk-MCXZRMMK.cjs +0 -125
- package/dist/cjs/chunk-MCXZRMMK.cjs.map +0 -1
- package/dist/cjs/chunk-MFEKR42X.cjs +0 -91
- package/dist/cjs/chunk-MFEKR42X.cjs.map +0 -1
- package/dist/cjs/chunk-MHVAT7UU.cjs +0 -28
- package/dist/cjs/chunk-MHVAT7UU.cjs.map +0 -1
- package/dist/cjs/chunk-MMGHH7VT.cjs +0 -17
- package/dist/cjs/chunk-MMGHH7VT.cjs.map +0 -1
- package/dist/cjs/chunk-MOOQQDEF.cjs +0 -28
- package/dist/cjs/chunk-MOOQQDEF.cjs.map +0 -1
- package/dist/cjs/chunk-MT722JJC.cjs +0 -1
- package/dist/cjs/chunk-MT722JJC.cjs.map +0 -1
- package/dist/cjs/chunk-MTJK4JWP.cjs +0 -34
- package/dist/cjs/chunk-MTJK4JWP.cjs.map +0 -1
- package/dist/cjs/chunk-MX7JQSHU.cjs +0 -98
- package/dist/cjs/chunk-MX7JQSHU.cjs.map +0 -1
- package/dist/cjs/chunk-MXXM7KJC.cjs +0 -36
- package/dist/cjs/chunk-MXXM7KJC.cjs.map +0 -1
- package/dist/cjs/chunk-MYEOT3YN.cjs +0 -44
- package/dist/cjs/chunk-MYEOT3YN.cjs.map +0 -1
- package/dist/cjs/chunk-NEWJ7PXH.cjs +0 -114
- package/dist/cjs/chunk-NEWJ7PXH.cjs.map +0 -1
- package/dist/cjs/chunk-NF54ZJES.cjs +0 -288
- package/dist/cjs/chunk-NF54ZJES.cjs.map +0 -1
- package/dist/cjs/chunk-NHHLPNSF.cjs +0 -18
- package/dist/cjs/chunk-NHHLPNSF.cjs.map +0 -1
- package/dist/cjs/chunk-NNYPZA6W.cjs +0 -96
- package/dist/cjs/chunk-NNYPZA6W.cjs.map +0 -1
- package/dist/cjs/chunk-NSQVDDCA.cjs +0 -43
- package/dist/cjs/chunk-NSQVDDCA.cjs.map +0 -1
- package/dist/cjs/chunk-NZOZ55EW.cjs +0 -112
- package/dist/cjs/chunk-NZOZ55EW.cjs.map +0 -1
- package/dist/cjs/chunk-O32NHVMD.cjs +0 -89
- package/dist/cjs/chunk-O32NHVMD.cjs.map +0 -1
- package/dist/cjs/chunk-O3JYRSW4.cjs +0 -34
- package/dist/cjs/chunk-O3JYRSW4.cjs.map +0 -1
- package/dist/cjs/chunk-OJIMVE3B.cjs +0 -113
- package/dist/cjs/chunk-OJIMVE3B.cjs.map +0 -1
- package/dist/cjs/chunk-OO2VTRQQ.cjs +0 -319
- package/dist/cjs/chunk-OO2VTRQQ.cjs.map +0 -1
- package/dist/cjs/chunk-OQZWWS6Q.cjs +0 -29
- package/dist/cjs/chunk-OQZWWS6Q.cjs.map +0 -1
- package/dist/cjs/chunk-OS6MZ5VI.cjs +0 -34
- package/dist/cjs/chunk-OS6MZ5VI.cjs.map +0 -1
- package/dist/cjs/chunk-OUQQMTMS.cjs +0 -17
- package/dist/cjs/chunk-OUQQMTMS.cjs.map +0 -1
- package/dist/cjs/chunk-OZMHWB3Q.cjs +0 -29
- package/dist/cjs/chunk-OZMHWB3Q.cjs.map +0 -1
- package/dist/cjs/chunk-OZPPTVUA.cjs +0 -235
- package/dist/cjs/chunk-OZPPTVUA.cjs.map +0 -1
- package/dist/cjs/chunk-P32NDUHI.cjs +0 -18
- package/dist/cjs/chunk-P32NDUHI.cjs.map +0 -1
- package/dist/cjs/chunk-P5E6SVFZ.cjs +0 -44
- package/dist/cjs/chunk-P5E6SVFZ.cjs.map +0 -1
- package/dist/cjs/chunk-P6CG6IDR.cjs +0 -113
- package/dist/cjs/chunk-P6CG6IDR.cjs.map +0 -1
- package/dist/cjs/chunk-P77GBZAH.cjs +0 -29
- package/dist/cjs/chunk-P77GBZAH.cjs.map +0 -1
- package/dist/cjs/chunk-PCCLPRCT.cjs +0 -17
- package/dist/cjs/chunk-PCCLPRCT.cjs.map +0 -1
- package/dist/cjs/chunk-PEH67KTL.cjs +0 -71
- package/dist/cjs/chunk-PEH67KTL.cjs.map +0 -1
- package/dist/cjs/chunk-PFDR7VFD.cjs +0 -29
- package/dist/cjs/chunk-PFDR7VFD.cjs.map +0 -1
- package/dist/cjs/chunk-PH5HB4AB.cjs +0 -71
- package/dist/cjs/chunk-PH5HB4AB.cjs.map +0 -1
- package/dist/cjs/chunk-PMJ2MILE.cjs +0 -44
- package/dist/cjs/chunk-PMJ2MILE.cjs.map +0 -1
- package/dist/cjs/chunk-PRSAYPA7.cjs +0 -157
- package/dist/cjs/chunk-PRSAYPA7.cjs.map +0 -1
- package/dist/cjs/chunk-PTTJR5V7.cjs +0 -17
- package/dist/cjs/chunk-PTTJR5V7.cjs.map +0 -1
- package/dist/cjs/chunk-PTWBGDKW.cjs +0 -17
- package/dist/cjs/chunk-PTWBGDKW.cjs.map +0 -1
- package/dist/cjs/chunk-Q7OE6V2L.cjs +0 -44
- package/dist/cjs/chunk-Q7OE6V2L.cjs.map +0 -1
- package/dist/cjs/chunk-QBPSFRJT.cjs +0 -71
- package/dist/cjs/chunk-QBPSFRJT.cjs.map +0 -1
- package/dist/cjs/chunk-QCQNPWZR.cjs +0 -44
- package/dist/cjs/chunk-QCQNPWZR.cjs.map +0 -1
- package/dist/cjs/chunk-QCYLIOXZ.cjs +0 -43
- package/dist/cjs/chunk-QCYLIOXZ.cjs.map +0 -1
- package/dist/cjs/chunk-QGJWH5WW.cjs +0 -107
- package/dist/cjs/chunk-QGJWH5WW.cjs.map +0 -1
- package/dist/cjs/chunk-QGPDRP6T.cjs +0 -115
- package/dist/cjs/chunk-QGPDRP6T.cjs.map +0 -1
- package/dist/cjs/chunk-QILRAUW5.cjs +0 -91
- package/dist/cjs/chunk-QILRAUW5.cjs.map +0 -1
- package/dist/cjs/chunk-QJOFGNIN.cjs +0 -116
- package/dist/cjs/chunk-QJOFGNIN.cjs.map +0 -1
- package/dist/cjs/chunk-QKUQQKBS.cjs +0 -18
- package/dist/cjs/chunk-QKUQQKBS.cjs.map +0 -1
- package/dist/cjs/chunk-QP6A3QDO.cjs +0 -17
- package/dist/cjs/chunk-QP6A3QDO.cjs.map +0 -1
- package/dist/cjs/chunk-QQFZUKPI.cjs +0 -34
- package/dist/cjs/chunk-QQFZUKPI.cjs.map +0 -1
- package/dist/cjs/chunk-QRSI5AGD.cjs +0 -166
- package/dist/cjs/chunk-QRSI5AGD.cjs.map +0 -1
- package/dist/cjs/chunk-QTQRFIS2.cjs +0 -33
- package/dist/cjs/chunk-QTQRFIS2.cjs.map +0 -1
- package/dist/cjs/chunk-QU5TDLLR.cjs +0 -89
- package/dist/cjs/chunk-QU5TDLLR.cjs.map +0 -1
- package/dist/cjs/chunk-RCOESZIX.cjs +0 -123
- package/dist/cjs/chunk-RCOESZIX.cjs.map +0 -1
- package/dist/cjs/chunk-RFD765I4.cjs +0 -112
- package/dist/cjs/chunk-RFD765I4.cjs.map +0 -1
- package/dist/cjs/chunk-RGAMZEUS.cjs +0 -45
- package/dist/cjs/chunk-RGAMZEUS.cjs.map +0 -1
- package/dist/cjs/chunk-RJRFHHQE.cjs +0 -34
- package/dist/cjs/chunk-RJRFHHQE.cjs.map +0 -1
- package/dist/cjs/chunk-RSXMABC4.cjs +0 -41
- package/dist/cjs/chunk-RSXMABC4.cjs.map +0 -1
- package/dist/cjs/chunk-RVE5SBZZ.cjs +0 -22
- package/dist/cjs/chunk-RVE5SBZZ.cjs.map +0 -1
- package/dist/cjs/chunk-RVT67VJL.cjs +0 -105
- package/dist/cjs/chunk-RVT67VJL.cjs.map +0 -1
- package/dist/cjs/chunk-RYYSZBTO.cjs +0 -319
- package/dist/cjs/chunk-RYYSZBTO.cjs.map +0 -1
- package/dist/cjs/chunk-S3XOD73C.cjs +0 -29
- package/dist/cjs/chunk-S3XOD73C.cjs.map +0 -1
- package/dist/cjs/chunk-S4EFHXWR.cjs +0 -45
- package/dist/cjs/chunk-S4EFHXWR.cjs.map +0 -1
- package/dist/cjs/chunk-SEA7G4G5.cjs +0 -44
- package/dist/cjs/chunk-SEA7G4G5.cjs.map +0 -1
- package/dist/cjs/chunk-SF7W7KRY.cjs +0 -27
- package/dist/cjs/chunk-SF7W7KRY.cjs.map +0 -1
- package/dist/cjs/chunk-SJLEY53X.cjs +0 -17
- package/dist/cjs/chunk-SJLEY53X.cjs.map +0 -1
- package/dist/cjs/chunk-SLZVCRH6.cjs +0 -89
- package/dist/cjs/chunk-SLZVCRH6.cjs.map +0 -1
- package/dist/cjs/chunk-SN2VQUW6.cjs +0 -30
- package/dist/cjs/chunk-SN2VQUW6.cjs.map +0 -1
- package/dist/cjs/chunk-SN3GO6EK.cjs +0 -17
- package/dist/cjs/chunk-SN3GO6EK.cjs.map +0 -1
- package/dist/cjs/chunk-SQ6A25GY.cjs +0 -258
- package/dist/cjs/chunk-SQ6A25GY.cjs.map +0 -1
- package/dist/cjs/chunk-STHRRGLF.cjs +0 -17
- package/dist/cjs/chunk-STHRRGLF.cjs.map +0 -1
- package/dist/cjs/chunk-T6Q5NNOS.cjs +0 -28
- package/dist/cjs/chunk-T6Q5NNOS.cjs.map +0 -1
- package/dist/cjs/chunk-TECP3LTH.cjs +0 -89
- package/dist/cjs/chunk-TECP3LTH.cjs.map +0 -1
- package/dist/cjs/chunk-TJZRYRN4.cjs +0 -98
- package/dist/cjs/chunk-TJZRYRN4.cjs.map +0 -1
- package/dist/cjs/chunk-TOMTCQDA.cjs +0 -44
- package/dist/cjs/chunk-TOMTCQDA.cjs.map +0 -1
- package/dist/cjs/chunk-TRDZ3N3H.cjs +0 -29
- package/dist/cjs/chunk-TRDZ3N3H.cjs.map +0 -1
- package/dist/cjs/chunk-TYDQAGXX.cjs +0 -17
- package/dist/cjs/chunk-TYDQAGXX.cjs.map +0 -1
- package/dist/cjs/chunk-TZ6JOGWV.cjs.map +0 -1
- package/dist/cjs/chunk-U3N7EXJ2.cjs +0 -20
- package/dist/cjs/chunk-U3N7EXJ2.cjs.map +0 -1
- package/dist/cjs/chunk-U47SG7XG.cjs +0 -168
- package/dist/cjs/chunk-U47SG7XG.cjs.map +0 -1
- package/dist/cjs/chunk-U6ATLO7G.cjs +0 -116
- package/dist/cjs/chunk-U6ATLO7G.cjs.map +0 -1
- package/dist/cjs/chunk-UBV2VIH4.cjs +0 -41
- package/dist/cjs/chunk-UBV2VIH4.cjs.map +0 -1
- package/dist/cjs/chunk-UETHRFEM.cjs +0 -18
- package/dist/cjs/chunk-UETHRFEM.cjs.map +0 -1
- package/dist/cjs/chunk-UJAN2KQL.cjs.map +0 -1
- package/dist/cjs/chunk-UKQYMMRJ.cjs +0 -45
- package/dist/cjs/chunk-UKQYMMRJ.cjs.map +0 -1
- package/dist/cjs/chunk-UPUTMO6J.cjs +0 -89
- package/dist/cjs/chunk-UPUTMO6J.cjs.map +0 -1
- package/dist/cjs/chunk-UTUVP4UK.cjs +0 -17
- package/dist/cjs/chunk-UTUVP4UK.cjs.map +0 -1
- package/dist/cjs/chunk-UX23YXBZ.cjs +0 -34
- package/dist/cjs/chunk-UX23YXBZ.cjs.map +0 -1
- package/dist/cjs/chunk-UZRZ6FE6.cjs +0 -44
- package/dist/cjs/chunk-UZRZ6FE6.cjs.map +0 -1
- package/dist/cjs/chunk-V42HUQXR.cjs +0 -91
- package/dist/cjs/chunk-V42HUQXR.cjs.map +0 -1
- package/dist/cjs/chunk-V63O7TO7.cjs.map +0 -1
- package/dist/cjs/chunk-VCWW7RC3.cjs +0 -44
- package/dist/cjs/chunk-VCWW7RC3.cjs.map +0 -1
- package/dist/cjs/chunk-VJ2ZFF5A.cjs +0 -17
- package/dist/cjs/chunk-VJ2ZFF5A.cjs.map +0 -1
- package/dist/cjs/chunk-VJOYTTFL.cjs +0 -71
- package/dist/cjs/chunk-VJOYTTFL.cjs.map +0 -1
- package/dist/cjs/chunk-VKVEIBY2.cjs +0 -17
- package/dist/cjs/chunk-VKVEIBY2.cjs.map +0 -1
- package/dist/cjs/chunk-VLN2TYHD.cjs +0 -44
- package/dist/cjs/chunk-VLN2TYHD.cjs.map +0 -1
- package/dist/cjs/chunk-VSP3YJDS.cjs +0 -17
- package/dist/cjs/chunk-VSP3YJDS.cjs.map +0 -1
- package/dist/cjs/chunk-VVOHBDOG.cjs +0 -44
- package/dist/cjs/chunk-VVOHBDOG.cjs.map +0 -1
- package/dist/cjs/chunk-W224GBH7.cjs +0 -18
- package/dist/cjs/chunk-W224GBH7.cjs.map +0 -1
- package/dist/cjs/chunk-W33KE4UU.cjs +0 -17
- package/dist/cjs/chunk-W33KE4UU.cjs.map +0 -1
- package/dist/cjs/chunk-W6KOKWP5.cjs +0 -44
- package/dist/cjs/chunk-W6KOKWP5.cjs.map +0 -1
- package/dist/cjs/chunk-WDSSGJ4L.cjs +0 -17
- package/dist/cjs/chunk-WDSSGJ4L.cjs.map +0 -1
- package/dist/cjs/chunk-WFMAEZ54.cjs +0 -18
- package/dist/cjs/chunk-WFMAEZ54.cjs.map +0 -1
- package/dist/cjs/chunk-WGP4RY66.cjs +0 -25
- package/dist/cjs/chunk-WGP4RY66.cjs.map +0 -1
- package/dist/cjs/chunk-WH5QEI2V.cjs +0 -28
- package/dist/cjs/chunk-WH5QEI2V.cjs.map +0 -1
- package/dist/cjs/chunk-WHCDV7F2.cjs.map +0 -1
- package/dist/cjs/chunk-WIZX6WQN.cjs +0 -25
- package/dist/cjs/chunk-WIZX6WQN.cjs.map +0 -1
- package/dist/cjs/chunk-WLSTIZ3F.cjs +0 -17
- package/dist/cjs/chunk-WLSTIZ3F.cjs.map +0 -1
- package/dist/cjs/chunk-WML6XTOZ.cjs +0 -18
- package/dist/cjs/chunk-WML6XTOZ.cjs.map +0 -1
- package/dist/cjs/chunk-WTGAYRSK.cjs +0 -20
- package/dist/cjs/chunk-WTGAYRSK.cjs.map +0 -1
- package/dist/cjs/chunk-WWCOG5FH.cjs +0 -168
- package/dist/cjs/chunk-WWCOG5FH.cjs.map +0 -1
- package/dist/cjs/chunk-WWNKFNCV.cjs +0 -34
- package/dist/cjs/chunk-WWNKFNCV.cjs.map +0 -1
- package/dist/cjs/chunk-WWRBT6LX.cjs +0 -44
- package/dist/cjs/chunk-WWRBT6LX.cjs.map +0 -1
- package/dist/cjs/chunk-WYBJDBO2.cjs +0 -89
- package/dist/cjs/chunk-WYBJDBO2.cjs.map +0 -1
- package/dist/cjs/chunk-WYBWKMQK.cjs +0 -96
- package/dist/cjs/chunk-WYBWKMQK.cjs.map +0 -1
- package/dist/cjs/chunk-WYWWAPMG.cjs +0 -112
- package/dist/cjs/chunk-WYWWAPMG.cjs.map +0 -1
- package/dist/cjs/chunk-X46GJS7X.cjs +0 -17
- package/dist/cjs/chunk-X46GJS7X.cjs.map +0 -1
- package/dist/cjs/chunk-XBCCK5UL.cjs +0 -29
- package/dist/cjs/chunk-XBCCK5UL.cjs.map +0 -1
- package/dist/cjs/chunk-XEAJBA3S.cjs +0 -30
- package/dist/cjs/chunk-XEAJBA3S.cjs.map +0 -1
- package/dist/cjs/chunk-XF5BFSXR.cjs +0 -29
- package/dist/cjs/chunk-XF5BFSXR.cjs.map +0 -1
- package/dist/cjs/chunk-XLOAQ52S.cjs +0 -44
- package/dist/cjs/chunk-XLOAQ52S.cjs.map +0 -1
- package/dist/cjs/chunk-XP5TFWFZ.cjs +0 -29
- package/dist/cjs/chunk-XP5TFWFZ.cjs.map +0 -1
- package/dist/cjs/chunk-XQTVE64W.cjs +0 -8
- package/dist/cjs/chunk-XQTVE64W.cjs.map +0 -1
- package/dist/cjs/chunk-XXQD4JUX.cjs +0 -105
- package/dist/cjs/chunk-XXQD4JUX.cjs.map +0 -1
- package/dist/cjs/chunk-Y37PQ5OY.cjs +0 -17
- package/dist/cjs/chunk-Y37PQ5OY.cjs.map +0 -1
- package/dist/cjs/chunk-Y4ESEG6S.cjs +0 -34
- package/dist/cjs/chunk-Y4ESEG6S.cjs.map +0 -1
- package/dist/cjs/chunk-YCTPMLZO.cjs +0 -40
- package/dist/cjs/chunk-YCTPMLZO.cjs.map +0 -1
- package/dist/cjs/chunk-YEHFDRQQ.cjs +0 -116
- package/dist/cjs/chunk-YEHFDRQQ.cjs.map +0 -1
- package/dist/cjs/chunk-YETFXMLH.cjs +0 -41
- package/dist/cjs/chunk-YETFXMLH.cjs.map +0 -1
- package/dist/cjs/chunk-YEXP7IAY.cjs +0 -78
- package/dist/cjs/chunk-YEXP7IAY.cjs.map +0 -1
- package/dist/cjs/chunk-YLQBFTA2.cjs +0 -17
- package/dist/cjs/chunk-YLQBFTA2.cjs.map +0 -1
- package/dist/cjs/chunk-YN2E34XD.cjs +0 -18
- package/dist/cjs/chunk-YN2E34XD.cjs.map +0 -1
- package/dist/cjs/chunk-YUIW7LG5.cjs +0 -116
- package/dist/cjs/chunk-YUIW7LG5.cjs.map +0 -1
- package/dist/cjs/chunk-YY7HSXBP.cjs +0 -36
- package/dist/cjs/chunk-YY7HSXBP.cjs.map +0 -1
- package/dist/cjs/chunk-Z4MQZALG.cjs +0 -18
- package/dist/cjs/chunk-Z4MQZALG.cjs.map +0 -1
- package/dist/cjs/chunk-Z6TQ7TFO.cjs +0 -13
- package/dist/cjs/chunk-Z6TQ7TFO.cjs.map +0 -1
- package/dist/cjs/chunk-ZEVQYX77.cjs +0 -261
- package/dist/cjs/chunk-ZEVQYX77.cjs.map +0 -1
- package/dist/cjs/chunk-ZJPVYNOR.cjs +0 -17
- package/dist/cjs/chunk-ZJPVYNOR.cjs.map +0 -1
- package/dist/cjs/chunk-ZJZYXDCI.cjs +0 -28
- package/dist/cjs/chunk-ZJZYXDCI.cjs.map +0 -1
- package/dist/cjs/chunk-ZL4HOH54.cjs +0 -21
- package/dist/cjs/chunk-ZL4HOH54.cjs.map +0 -1
- package/dist/cjs/chunk-ZOXV6RCE.cjs +0 -71
- package/dist/cjs/chunk-ZOXV6RCE.cjs.map +0 -1
- package/dist/cjs/chunk-ZR74LIUJ.cjs +0 -34
- package/dist/cjs/chunk-ZR74LIUJ.cjs.map +0 -1
- package/dist/cjs/chunk-ZUFBMNY2.cjs +0 -105
- package/dist/cjs/chunk-ZUFBMNY2.cjs.map +0 -1
- package/dist/cjs/chunk-ZVO73S6Q.cjs +0 -18
- package/dist/cjs/chunk-ZVO73S6Q.cjs.map +0 -1
- package/dist/cjs/chunk-ZZBFUCUH.cjs +0 -36
- package/dist/cjs/chunk-ZZBFUCUH.cjs.map +0 -1
- package/dist/cjs/config/container.cjs +0 -27
- package/dist/cjs/config/container.cjs.map +0 -1
- package/dist/cjs/modules/auth/base.auth.cjs +0 -7
- package/dist/cjs/modules/auth/base.auth.cjs.map +0 -1
- package/dist/cjs/services/intents/fulfill-stream.service.cjs +0 -12
- package/dist/cjs/services/intents/fulfill-stream.service.cjs.map +0 -1
- package/dist/cjs/services/intents/rewrite.service.cjs +0 -9
- package/dist/cjs/services/intents/rewrite.service.cjs.map +0 -1
- package/dist/cjs/services/intents/trigger.multi.cjs +0 -8
- package/dist/cjs/services/intents/trigger.multi.cjs.map +0 -1
- package/dist/cjs/services/intents/trigger.single.cjs +0 -8
- package/dist/cjs/services/intents/trigger.single.cjs.map +0 -1
- package/dist/cjs/services/query-stream.service.cjs +0 -17
- package/dist/cjs/services/query-stream.service.cjs.map +0 -1
- package/dist/cjs/services/utils/rewrite.common.cjs +0 -9
- package/dist/cjs/services/utils/rewrite.common.cjs.map +0 -1
- package/dist/esm/chunk-FEX3CUAV.js.map +0 -1
- package/dist/esm/chunk-KASACQMB.js.map +0 -1
- package/dist/esm/chunk-N5EFUB6B.js.map +0 -1
- package/dist/esm/chunk-OUIXXZFI.js.map +0 -1
- package/dist/esm/chunk-PUZ5SGXS.js.map +0 -1
- package/dist/esm/chunk-SXD4YK2V.js.map +0 -1
- package/dist/esm/chunk-VZXSBAQV.js.map +0 -1
- package/dist/esm/chunk-ZOBIMOTU.js.map +0 -1
- /package/dist/esm/{chunk-BGKNOP4G.js.map → chunk-2VGXYWJD.js.map} +0 -0
- /package/dist/esm/{chunk-75Q7LGNT.js.map → chunk-7DH4SI44.js.map} +0 -0
- /package/dist/esm/{chunk-E6G2X5EM.js.map → chunk-AEBBZSQ4.js.map} +0 -0
- /package/dist/esm/{chunk-FBYS3TIH.js.map → chunk-FCH7BUK4.js.map} +0 -0
- /package/dist/esm/{chunk-OJE3CB72.js.map → chunk-PZQRSWST.js.map} +0 -0
- /package/dist/esm/{chunk-JMSOXYYY.js.map → chunk-ZK3HZBER.js.map} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/intents/single-trigger.service.ts"],"sourcesContent":["import type { MemoryModule, ModelModule } from \"@/modules\";\nimport type {\n\tMessageObject,\n\tThreadObject,\n\tTriggeredIntent,\n} from \"@/types/memory\";\nimport { loggers } from \"@/utils/logger\";\n\n/**\n * Service for single-intent triggering.\n * Identifies a single intent without decomposing queries into subqueries.\n */\nexport class SingleIntentTriggerService {\n\tprivate modelModule: ModelModule;\n\tprivate memoryModule: MemoryModule;\n\n\tconstructor(modelModule: ModelModule, memoryModule: MemoryModule) {\n\t\tthis.modelModule = modelModule;\n\t\tthis.memoryModule = memoryModule;\n\t}\n\n\t/**\n\t * Detects a single intent from context.\n\t * Simpler prompt that doesn't decompose queries into subqueries.\n\t *\n\t * @param query - The user's input query\n\t * @param thread - The thread history\n\t * @returns Array with single TriggeredIntent\n\t */\n\tpublic async intentTriggering(\n\t\tquery: string,\n\t\tthread: ThreadObject | undefined,\n\t): Promise<Array<TriggeredIntent>> {\n\t\tconst modelInstance = this.modelModule.getModel();\n\t\tconst modelOptions = this.modelModule.getModelOptions();\n\t\tconst intentMemory = this.memoryModule.getIntentMemory();\n\t\tif (!intentMemory) {\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\tconst intents = await intentMemory.listIntents();\n\t\tif (intents.length === 0) {\n\t\t\tloggers.intentStream.warn(\"No intent found\");\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\tconst intentList = intents\n\t\t\t.map((intent) => `- ${intent.name}: ${intent.description}`)\n\t\t\t.join(\"\\n\");\n\n\t\t// Convert thread messages to a string\n\t\tconst threadMessages = !thread\n\t\t\t? \"\"\n\t\t\t: thread.messages\n\t\t\t\t\t.sort((a, b) => a.timestamp - b.timestamp)\n\t\t\t\t\t.map((message: MessageObject) => {\n\t\t\t\t\t\tconst role =\n\t\t\t\t\t\t\tmessage.role === \"USER\"\n\t\t\t\t\t\t\t\t? \"User\"\n\t\t\t\t\t\t\t\t: message.role === \"MODEL\"\n\t\t\t\t\t\t\t\t\t? \"Assistant\"\n\t\t\t\t\t\t\t\t\t: \"System\";\n\t\t\t\t\t\tconst content = Array.isArray(message.content.parts)\n\t\t\t\t\t\t\t? message.content.parts.join(\" \")\n\t\t\t\t\t\t\t: String(message.content.parts);\n\t\t\t\t\t\treturn `${role}: \"\"\"${content}\"\"\"`;\n\t\t\t\t\t})\n\t\t\t\t\t.join(\"\\n\");\n\n\t\tconst systemPrompt = `\nToday is ${new Date().toLocaleDateString()}.\nYou are an expert in accurately identifying user intentions.\n\nAvailable intent list:\n${intentList}\n\nPlease select and answer only from the above intent list.`;\n\n\t\tconst userMessage = `\n${\n\tthreadMessages !== \"\"\n\t\t? `The following is the conversation history with the user: ${threadMessages}\n\n\t`\n\t\t: \"\"\n}\nUser question: \"${query}\"\n\nBased on the above conversation history, analyze the user question and identify the most relevant intent.\n\nInstructions:\n1. Select the single most appropriate intent from the available intent list\n2. If no intent matches well, do not set intentName\n3. Provide a 2-3 sentence action plan describing what will be done\n\nOutput Format:\nYou MUST return the output in the following JSON format. Do not include any other text before or after the JSON:\n{\n \"intentName\": \"<intent_name or null>\",\n \"actionPlan\": \"<2-3 sentence description of what will be done>\"\n}`;\n\n\t\tconst messages = modelInstance.generateMessages({\n\t\t\tquery: userMessage,\n\t\t\tsystemPrompt,\n\t\t});\n\n\t\tconst response = await modelInstance.fetch(messages, modelOptions);\n\t\tif (!response.content) {\n\t\t\tloggers.intent.warn(\"Cannot extract intent from query\");\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\tlet parsed: { intentName?: string; actionPlan?: string };\n\t\ttry {\n\t\t\tparsed = JSON.parse(response.content);\n\t\t} catch (error: unknown) {\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\tconst result: TriggeredIntent = {\n\t\t\tsubquery: query,\n\t\t\tactionPlan: parsed.actionPlan,\n\t\t};\n\n\t\tif (parsed.intentName) {\n\t\t\tresult.intent = await intentMemory.getIntentByName(parsed.intentName);\n\t\t}\n\n\t\treturn [result];\n\t}\n}\n"],"mappings":";;;;;AAYO,IAAM,6BAAN,MAAiC;AAAA,EAC/B;AAAA,EACA;AAAA,EAER,YAAY,aAA0B,cAA4B;AACjE,SAAK,cAAc;AACnB,SAAK,eAAe;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,MAAa,iBACZ,OACA,QACkC;AAClC,UAAM,gBAAgB,KAAK,YAAY,SAAS;AAChD,UAAM,eAAe,KAAK,YAAY,gBAAgB;AACtD,UAAM,eAAe,KAAK,aAAa,gBAAgB;AACvD,QAAI,CAAC,cAAc;AAClB,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAEA,UAAM,UAAU,MAAM,aAAa,YAAY;AAC/C,QAAI,QAAQ,WAAW,GAAG;AACzB,cAAQ,aAAa,KAAK,iBAAiB;AAC3C,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAEA,UAAM,aAAa,QACjB,IAAI,CAAC,WAAW,KAAK,OAAO,IAAI,KAAK,OAAO,WAAW,EAAE,EACzD,KAAK,IAAI;AAGX,UAAM,iBAAiB,CAAC,SACrB,KACA,OAAO,SACN,KAAK,CAAC,GAAG,MAAM,EAAE,YAAY,EAAE,SAAS,EACxC,IAAI,CAAC,YAA2B;AAChC,YAAM,OACL,QAAQ,SAAS,SACd,SACA,QAAQ,SAAS,UAChB,cACA;AACL,YAAM,UAAU,MAAM,QAAQ,QAAQ,QAAQ,KAAK,IAChD,QAAQ,QAAQ,MAAM,KAAK,GAAG,IAC9B,OAAO,QAAQ,QAAQ,KAAK;AAC/B,aAAO,GAAG,IAAI,QAAQ,OAAO;AAAA,IAC9B,CAAC,EACA,KAAK,IAAI;AAEb,UAAM,eAAe;AAAA,YACZ,oBAAI,KAAK,GAAE,mBAAmB,CAAC;AAAA;AAAA;AAAA;AAAA,EAIxC,UAAU;AAAA;AAAA;AAIV,UAAM,cAAc;AAAA,EAErB,mBAAmB,KAChB,4DAA4D,cAAc;AAAA;AAAA,KAG1E,EACJ;AAAA,kBACkB,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBrB,UAAM,WAAW,cAAc,iBAAiB;AAAA,MAC/C,OAAO;AAAA,MACP;AAAA,IACD,CAAC;AAED,UAAM,WAAW,MAAM,cAAc,MAAM,UAAU,YAAY;AACjE,QAAI,CAAC,SAAS,SAAS;AACtB,cAAQ,OAAO,KAAK,kCAAkC;AACtD,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAEA,QAAI;AACJ,QAAI;AACH,eAAS,KAAK,MAAM,SAAS,OAAO;AAAA,IACrC,SAAS,OAAgB;AACxB,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAEA,UAAM,SAA0B;AAAA,MAC/B,UAAU;AAAA,MACV,YAAY,OAAO;AAAA,IACpB;AAEA,QAAI,OAAO,YAAY;AACtB,aAAO,SAAS,MAAM,aAAa,gBAAgB,OAAO,UAAU;AAAA,IACrE;AAEA,WAAO,CAAC,MAAM;AAAA,EACf;AACD;","names":[]}
|
|
@@ -6,12 +6,17 @@ var QueryController = class {
|
|
|
6
6
|
this.queryService = queryService;
|
|
7
7
|
}
|
|
8
8
|
handleQueryRequest = async (req, res, next) => {
|
|
9
|
-
const {
|
|
9
|
+
const {
|
|
10
|
+
type,
|
|
11
|
+
threadId,
|
|
12
|
+
message: query,
|
|
13
|
+
displayMessage: displayQuery
|
|
14
|
+
} = req.body;
|
|
10
15
|
const userId = res.locals.userId;
|
|
11
16
|
try {
|
|
12
17
|
const stream = this.queryService.handleQuery(
|
|
13
18
|
{ type, userId, threadId },
|
|
14
|
-
query
|
|
19
|
+
{ query, displayQuery }
|
|
15
20
|
);
|
|
16
21
|
let content = "";
|
|
17
22
|
let responseThreadId = threadId;
|
|
@@ -28,7 +33,12 @@ var QueryController = class {
|
|
|
28
33
|
}
|
|
29
34
|
};
|
|
30
35
|
handleQueryStreamRequest = async (req, res, _next) => {
|
|
31
|
-
const {
|
|
36
|
+
const {
|
|
37
|
+
type,
|
|
38
|
+
threadId,
|
|
39
|
+
message: query,
|
|
40
|
+
displayMessage: displayQuery
|
|
41
|
+
} = req.body;
|
|
32
42
|
const userId = res.locals.userId;
|
|
33
43
|
res.writeHead(200, {
|
|
34
44
|
"Content-Type": "text/event-stream",
|
|
@@ -45,7 +55,7 @@ var QueryController = class {
|
|
|
45
55
|
let currentThreadId = threadId;
|
|
46
56
|
const stream = this.queryService.handleQuery(
|
|
47
57
|
{ type, userId, threadId },
|
|
48
|
-
query
|
|
58
|
+
{ query, displayQuery }
|
|
49
59
|
);
|
|
50
60
|
try {
|
|
51
61
|
for await (const event of stream) {
|
|
@@ -88,4 +98,4 @@ data: ${errMsg}
|
|
|
88
98
|
export {
|
|
89
99
|
QueryController
|
|
90
100
|
};
|
|
91
|
-
//# sourceMappingURL=chunk-
|
|
101
|
+
//# sourceMappingURL=chunk-D6STNZ2L.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/controllers/query.controller.ts"],"sourcesContent":["import { randomUUID } from \"node:crypto\";\nimport type { NextFunction, Request, Response } from \"express\";\nimport type { QueryService } from \"@/services\";\nimport { MessageRole } from \"@/types/memory\";\n\nexport class QueryController {\n\tprivate queryService: QueryService;\n\n\tconstructor(queryService: QueryService) {\n\t\tthis.queryService = queryService;\n\t}\n\n\tpublic handleQueryRequest = async (\n\t\treq: Request,\n\t\tres: Response,\n\t\tnext: NextFunction,\n\t) => {\n\t\tconst {\n\t\t\ttype,\n\t\t\tthreadId,\n\t\t\tmessage: query,\n\t\t\tdisplayMessage: displayQuery,\n\t\t} = req.body;\n\t\tconst userId = res.locals.userId;\n\n\t\ttry {\n\t\t\tconst stream = this.queryService.handleQuery(\n\t\t\t\t{ type, userId, threadId },\n\t\t\t\t{ query, displayQuery },\n\t\t\t);\n\n\t\t\tlet content = \"\";\n\t\t\tlet responseThreadId = threadId;\n\n\t\t\tfor await (const event of stream) {\n\t\t\t\tif (event.event === \"thread_id\") {\n\t\t\t\t\tresponseThreadId = event.data.threadId;\n\t\t\t\t} else if (event.event === \"text_chunk\" && event.data.delta) {\n\t\t\t\t\tcontent += event.data.delta;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tres.status(200).json({ content, threadId: responseThreadId });\n\t\t} catch (error) {\n\t\t\tnext(error);\n\t\t}\n\t};\n\n\tpublic handleQueryStreamRequest = async (\n\t\treq: Request,\n\t\tres: Response,\n\t\t_next: NextFunction,\n\t) => {\n\t\tconst {\n\t\t\ttype,\n\t\t\tthreadId,\n\t\t\tmessage: query,\n\t\t\tdisplayMessage: displayQuery,\n\t\t} = req.body;\n\t\tconst userId = res.locals.userId;\n\n\t\tres.writeHead(200, {\n\t\t\t\"Content-Type\": \"text/event-stream\",\n\t\t\t\"Cache-Control\": \"no-cache\",\n\t\t\tConnection: \"keep-alive\",\n\t\t\t\"X-Accel-Buffering\": \"no\", // nginx 버퍼링 비활성화\n\t\t});\n\t\tres.flushHeaders();\n\t\tres.write(\":ok\\n\\n\");\n\n\t\tconst keepaliveInterval = setInterval(() => {\n\t\t\tres.write(\":keepalive\\n\\n\");\n\t\t}, 10000); // 10초마다 keepalive 전송\n\n\t\tlet currentThreadId = threadId;\n\t\tconst stream = this.queryService.handleQuery(\n\t\t\t{ type, userId, threadId },\n\t\t\t{ query, displayQuery },\n\t\t);\n\n\t\ttry {\n\t\t\tfor await (const event of stream) {\n\t\t\t\tif (event.event === \"thread_id\") {\n\t\t\t\t\tcurrentThreadId = event.data.threadId;\n\t\t\t\t} else if (event.event === \"thinking_process\") {\n\t\t\t\t\t// a2a 호출에 대해서는 데이터베이스에 추가하지 않기 위해 여기서 thread message에 기록\n\t\t\t\t\tthis.queryService.addToThreadMessages(userId, currentThreadId, [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmessageId: randomUUID(),\n\t\t\t\t\t\t\trole: MessageRole.MODEL,\n\t\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\t\tcontent: { type: \"text\", parts: [event.data.title] },\n\t\t\t\t\t\t\tmetadata: {\n\t\t\t\t\t\t\t\tisThinking: true,\n\t\t\t\t\t\t\t\tthinkData: event.data,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t]);\n\t\t\t\t}\n\n\t\t\t\tres.write(\n\t\t\t\t\t`event: ${event.event}\\ndata: ${JSON.stringify(event.data)}\\n\\n`,\n\t\t\t\t);\n\t\t\t}\n\t\t} catch (error: unknown) {\n\t\t\tconst errMsg =\n\t\t\t\t(error as Error)?.message || \"Failed to handle query stream\";\n\t\t\tres.write(`event: error\\ndata: ${errMsg}\\n\\n`);\n\t\t} finally {\n\t\t\tclearInterval(keepaliveInterval);\n\t\t\tres.end();\n\t\t}\n\t};\n}\n"],"mappings":";AAAA,SAAS,kBAAkB;AAKpB,IAAM,kBAAN,MAAsB;AAAA,EACpB;AAAA,EAER,YAAY,cAA4B;AACvC,SAAK,eAAe;AAAA,EACrB;AAAA,EAEO,qBAAqB,OAC3B,KACA,KACA,SACI;AACJ,UAAM;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS;AAAA,MACT,gBAAgB;AAAA,IACjB,IAAI,IAAI;AACR,UAAM,SAAS,IAAI,OAAO;AAE1B,QAAI;AACH,YAAM,SAAS,KAAK,aAAa;AAAA,QAChC,EAAE,MAAM,QAAQ,SAAS;AAAA,QACzB,EAAE,OAAO,aAAa;AAAA,MACvB;AAEA,UAAI,UAAU;AACd,UAAI,mBAAmB;AAEvB,uBAAiB,SAAS,QAAQ;AACjC,YAAI,MAAM,UAAU,aAAa;AAChC,6BAAmB,MAAM,KAAK;AAAA,QAC/B,WAAW,MAAM,UAAU,gBAAgB,MAAM,KAAK,OAAO;AAC5D,qBAAW,MAAM,KAAK;AAAA,QACvB;AAAA,MACD;AAEA,UAAI,OAAO,GAAG,EAAE,KAAK,EAAE,SAAS,UAAU,iBAAiB,CAAC;AAAA,IAC7D,SAAS,OAAO;AACf,WAAK,KAAK;AAAA,IACX;AAAA,EACD;AAAA,EAEO,2BAA2B,OACjC,KACA,KACA,UACI;AACJ,UAAM;AAAA,MACL;AAAA,MACA;AAAA,MACA,SAAS;AAAA,MACT,gBAAgB;AAAA,IACjB,IAAI,IAAI;AACR,UAAM,SAAS,IAAI,OAAO;AAE1B,QAAI,UAAU,KAAK;AAAA,MAClB,gBAAgB;AAAA,MAChB,iBAAiB;AAAA,MACjB,YAAY;AAAA,MACZ,qBAAqB;AAAA;AAAA,IACtB,CAAC;AACD,QAAI,aAAa;AACjB,QAAI,MAAM,SAAS;AAEnB,UAAM,oBAAoB,YAAY,MAAM;AAC3C,UAAI,MAAM,gBAAgB;AAAA,IAC3B,GAAG,GAAK;AAER,QAAI,kBAAkB;AACtB,UAAM,SAAS,KAAK,aAAa;AAAA,MAChC,EAAE,MAAM,QAAQ,SAAS;AAAA,MACzB,EAAE,OAAO,aAAa;AAAA,IACvB;AAEA,QAAI;AACH,uBAAiB,SAAS,QAAQ;AACjC,YAAI,MAAM,UAAU,aAAa;AAChC,4BAAkB,MAAM,KAAK;AAAA,QAC9B,WAAW,MAAM,UAAU,oBAAoB;AAE9C,eAAK,aAAa,oBAAoB,QAAQ,iBAAiB;AAAA,YAC9D;AAAA,cACC,WAAW,WAAW;AAAA,cACtB;AAAA,cACA,WAAW,KAAK,IAAI;AAAA,cACpB,SAAS,EAAE,MAAM,QAAQ,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE;AAAA,cACnD,UAAU;AAAA,gBACT,YAAY;AAAA,gBACZ,WAAW,MAAM;AAAA,cAClB;AAAA,YACD;AAAA,UACD,CAAC;AAAA,QACF;AAEA,YAAI;AAAA,UACH,UAAU,MAAM,KAAK;AAAA,QAAW,KAAK,UAAU,MAAM,IAAI,CAAC;AAAA;AAAA;AAAA,QAC3D;AAAA,MACD;AAAA,IACD,SAAS,OAAgB;AACxB,YAAM,SACJ,OAAiB,WAAW;AAC9B,UAAI,MAAM;AAAA,QAAuB,MAAM;AAAA;AAAA,CAAM;AAAA,IAC9C,UAAE;AACD,oBAAc,iBAAiB;AAC/B,UAAI,IAAI;AAAA,IACT;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
container
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-IG3B5AXN.js";
|
|
4
4
|
|
|
5
5
|
// src/routes/intent.routes.ts
|
|
6
6
|
import { Router } from "express";
|
|
@@ -14,4 +14,4 @@ var createIntentRouter = () => {
|
|
|
14
14
|
export {
|
|
15
15
|
createIntentRouter
|
|
16
16
|
};
|
|
17
|
-
//# sourceMappingURL=chunk-
|
|
17
|
+
//# sourceMappingURL=chunk-FCH7BUK4.js.map
|
|
@@ -2,10 +2,8 @@ import {
|
|
|
2
2
|
IntentApiController
|
|
3
3
|
} from "./chunk-DFXHJUGV.js";
|
|
4
4
|
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
getModelModule
|
|
8
|
-
} from "./chunk-VSQVYW2H.js";
|
|
5
|
+
WorkflowApiController
|
|
6
|
+
} from "./chunk-BZUWX7HX.js";
|
|
9
7
|
import {
|
|
10
8
|
AgentApiController
|
|
11
9
|
} from "./chunk-WKFSYGMH.js";
|
|
@@ -15,12 +13,17 @@ import {
|
|
|
15
13
|
import {
|
|
16
14
|
ThreadApiController
|
|
17
15
|
} from "./chunk-ZVYC5Y6Z.js";
|
|
18
|
-
import {
|
|
19
|
-
QueryController
|
|
20
|
-
} from "./chunk-KASACQMB.js";
|
|
21
16
|
import {
|
|
22
17
|
IntentController
|
|
23
18
|
} from "./chunk-YUKPKFX5.js";
|
|
19
|
+
import {
|
|
20
|
+
QueryController
|
|
21
|
+
} from "./chunk-D6STNZ2L.js";
|
|
22
|
+
import {
|
|
23
|
+
getA2AModule,
|
|
24
|
+
getMemoryModule,
|
|
25
|
+
getModelModule
|
|
26
|
+
} from "./chunk-VSQVYW2H.js";
|
|
24
27
|
|
|
25
28
|
// src/container/controllers.ts
|
|
26
29
|
var ControllerContainer = class {
|
|
@@ -31,6 +34,7 @@ var ControllerContainer = class {
|
|
|
31
34
|
_agentApiController;
|
|
32
35
|
_threadApiController;
|
|
33
36
|
_intentApiController;
|
|
37
|
+
_workflowApiController;
|
|
34
38
|
constructor(services) {
|
|
35
39
|
this.services = services;
|
|
36
40
|
}
|
|
@@ -75,6 +79,14 @@ var ControllerContainer = class {
|
|
|
75
79
|
}
|
|
76
80
|
return this._intentApiController;
|
|
77
81
|
}
|
|
82
|
+
getWorkflowApiController() {
|
|
83
|
+
if (!this._workflowApiController) {
|
|
84
|
+
this._workflowApiController = new WorkflowApiController(
|
|
85
|
+
getMemoryModule()
|
|
86
|
+
);
|
|
87
|
+
}
|
|
88
|
+
return this._workflowApiController;
|
|
89
|
+
}
|
|
78
90
|
reset() {
|
|
79
91
|
this._queryController = void 0;
|
|
80
92
|
this._intentController = void 0;
|
|
@@ -82,10 +94,11 @@ var ControllerContainer = class {
|
|
|
82
94
|
this._agentApiController = void 0;
|
|
83
95
|
this._threadApiController = void 0;
|
|
84
96
|
this._intentApiController = void 0;
|
|
97
|
+
this._workflowApiController = void 0;
|
|
85
98
|
}
|
|
86
99
|
};
|
|
87
100
|
|
|
88
101
|
export {
|
|
89
102
|
ControllerContainer
|
|
90
103
|
};
|
|
91
|
-
//# sourceMappingURL=chunk-
|
|
104
|
+
//# sourceMappingURL=chunk-I4P7JMJC.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/container/controllers.ts"],"sourcesContent":["import {\n\tgetA2AModule,\n\tgetMemoryModule,\n\tgetModelModule,\n} from \"@/config/modules\";\nimport { AgentApiController } from \"@/controllers/api/agent.api.controller\";\nimport { IntentApiController } from \"@/controllers/api/intent.api.controller\";\nimport { ModelApiController } from \"@/controllers/api/model.api.controller\";\nimport { ThreadApiController } from \"@/controllers/api/threads.api.controller\";\nimport { WorkflowApiController } from \"@/controllers/api/workflow.api.controller\";\nimport { IntentController } from \"@/controllers/intent.controller\";\nimport { QueryController } from \"@/controllers/query.controller\";\nimport type { ServiceContainer } from \"./services\";\n\n/**\n * Controller factory for dependency injection.\n * Manages singleton instances of all controllers.\n */\nexport class ControllerContainer {\n\tprivate services: ServiceContainer;\n\n\tprivate _queryController?: QueryController;\n\tprivate _intentController?: IntentController;\n\tprivate _modelApiController?: ModelApiController;\n\tprivate _agentApiController?: AgentApiController;\n\tprivate _threadApiController?: ThreadApiController;\n\tprivate _intentApiController?: IntentApiController;\n\tprivate _workflowApiController?: WorkflowApiController;\n\n\tconstructor(services: ServiceContainer) {\n\t\tthis.services = services;\n\t}\n\n\tgetQueryController(): QueryController {\n\t\tif (!this._queryController) {\n\t\t\tthis._queryController = new QueryController(\n\t\t\t\tthis.services.getQueryService(),\n\t\t\t);\n\t\t}\n\t\treturn this._queryController;\n\t}\n\n\tgetIntentController(): IntentController {\n\t\tif (!this._intentController) {\n\t\t\tthis._intentController = new IntentController(\n\t\t\t\tthis.services.getThreadService(),\n\t\t\t\tthis.services.getIntentTriggerService(),\n\t\t\t);\n\t\t}\n\t\treturn this._intentController;\n\t}\n\n\tgetModelApiController(): ModelApiController {\n\t\tif (!this._modelApiController) {\n\t\t\tthis._modelApiController = new ModelApiController(getModelModule());\n\t\t}\n\t\treturn this._modelApiController;\n\t}\n\n\tgetAgentApiController(): AgentApiController {\n\t\tif (!this._agentApiController) {\n\t\t\tthis._agentApiController = new AgentApiController(getA2AModule());\n\t\t}\n\t\treturn this._agentApiController;\n\t}\n\n\tgetThreadApiController(): ThreadApiController {\n\t\tif (!this._threadApiController) {\n\t\t\tthis._threadApiController = new ThreadApiController(getMemoryModule());\n\t\t}\n\t\treturn this._threadApiController;\n\t}\n\n\tgetIntentApiController(): IntentApiController {\n\t\tif (!this._intentApiController) {\n\t\t\tthis._intentApiController = new IntentApiController(getMemoryModule());\n\t\t}\n\t\treturn this._intentApiController;\n\t}\n\n\tgetWorkflowApiController(): WorkflowApiController {\n\t\tif (!this._workflowApiController) {\n\t\t\tthis._workflowApiController = new WorkflowApiController(\n\t\t\t\tgetMemoryModule(),\n\t\t\t);\n\t\t}\n\t\treturn this._workflowApiController;\n\t}\n\n\treset(): void {\n\t\tthis._queryController = undefined;\n\t\tthis._intentController = undefined;\n\t\tthis._modelApiController = undefined;\n\t\tthis._agentApiController = undefined;\n\t\tthis._threadApiController = undefined;\n\t\tthis._intentApiController = undefined;\n\t\tthis._workflowApiController = undefined;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBO,IAAM,sBAAN,MAA0B;AAAA,EACxB;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAER,YAAY,UAA4B;AACvC,SAAK,WAAW;AAAA,EACjB;AAAA,EAEA,qBAAsC;AACrC,QAAI,CAAC,KAAK,kBAAkB;AAC3B,WAAK,mBAAmB,IAAI;AAAA,QAC3B,KAAK,SAAS,gBAAgB;AAAA,MAC/B;AAAA,IACD;AACA,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,sBAAwC;AACvC,QAAI,CAAC,KAAK,mBAAmB;AAC5B,WAAK,oBAAoB,IAAI;AAAA,QAC5B,KAAK,SAAS,iBAAiB;AAAA,QAC/B,KAAK,SAAS,wBAAwB;AAAA,MACvC;AAAA,IACD;AACA,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,wBAA4C;AAC3C,QAAI,CAAC,KAAK,qBAAqB;AAC9B,WAAK,sBAAsB,IAAI,mBAAmB,eAAe,CAAC;AAAA,IACnE;AACA,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,wBAA4C;AAC3C,QAAI,CAAC,KAAK,qBAAqB;AAC9B,WAAK,sBAAsB,IAAI,mBAAmB,aAAa,CAAC;AAAA,IACjE;AACA,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,yBAA8C;AAC7C,QAAI,CAAC,KAAK,sBAAsB;AAC/B,WAAK,uBAAuB,IAAI,oBAAoB,gBAAgB,CAAC;AAAA,IACtE;AACA,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,yBAA8C;AAC7C,QAAI,CAAC,KAAK,sBAAsB;AAC/B,WAAK,uBAAuB,IAAI,oBAAoB,gBAAgB,CAAC;AAAA,IACtE;AACA,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,2BAAkD;AACjD,QAAI,CAAC,KAAK,wBAAwB;AACjC,WAAK,yBAAyB,IAAI;AAAA,QACjC,gBAAgB;AAAA,MACjB;AAAA,IACD;AACA,WAAO,KAAK;AAAA,EACb;AAAA,EAEA,QAAc;AACb,SAAK,mBAAmB;AACxB,SAAK,oBAAoB;AACzB,SAAK,sBAAsB;AAC3B,SAAK,sBAAsB;AAC3B,SAAK,uBAAuB;AAC5B,SAAK,uBAAuB;AAC5B,SAAK,yBAAyB;AAAA,EAC/B;AACD;","names":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ControllerContainer
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-I4P7JMJC.js";
|
|
4
4
|
import {
|
|
5
5
|
ServiceContainer
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-7DH4SI44.js";
|
|
7
7
|
|
|
8
8
|
// src/container/index.ts
|
|
9
9
|
var Container = class {
|
|
@@ -55,6 +55,9 @@ var Container = class {
|
|
|
55
55
|
getIntentApiController() {
|
|
56
56
|
return this._controllers.getIntentApiController();
|
|
57
57
|
}
|
|
58
|
+
getWorkflowApiController() {
|
|
59
|
+
return this._controllers.getWorkflowApiController();
|
|
60
|
+
}
|
|
58
61
|
/**
|
|
59
62
|
* Reset all instances (useful for testing)
|
|
60
63
|
*/
|
|
@@ -68,4 +71,4 @@ var container = new Container();
|
|
|
68
71
|
export {
|
|
69
72
|
container
|
|
70
73
|
};
|
|
71
|
-
//# sourceMappingURL=chunk-
|
|
74
|
+
//# sourceMappingURL=chunk-IG3B5AXN.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/container/index.ts"],"sourcesContent":["import { ControllerContainer } from \"./controllers\";\nimport { ServiceContainer } from \"./services\";\n\n/**\n * Dependency Injection Container\n *\n * Provides singleton instances of services and controllers with proper dependency injection.\n * Benefits:\n * - Services maintain DI pattern (testable with mocks)\n * - Routes use clean, simple API\n * - Dependencies are explicit and traceable\n */\nclass Container {\n\tprivate _services: ServiceContainer;\n\tprivate _controllers: ControllerContainer;\n\n\tconstructor() {\n\t\tthis._services = new ServiceContainer();\n\t\tthis._controllers = new ControllerContainer(this._services);\n\t}\n\n\t// Services\n\tget services(): ServiceContainer {\n\t\treturn this._services;\n\t}\n\n\t// Controllers\n\tget controllers(): ControllerContainer {\n\t\treturn this._controllers;\n\t}\n\n\t// Convenience methods for direct access\n\tgetThreadService() {\n\t\treturn this._services.getThreadService();\n\t}\n\tgetIntentTriggerService() {\n\t\treturn this._services.getIntentTriggerService();\n\t}\n\tgetIntentFulfillService() {\n\t\treturn this._services.getIntentFulfillService();\n\t}\n\tgetQueryService() {\n\t\treturn this._services.getQueryService();\n\t}\n\tgetA2AService() {\n\t\treturn this._services.getA2AService();\n\t}\n\n\tgetQueryController() {\n\t\treturn this._controllers.getQueryController();\n\t}\n\tgetIntentController() {\n\t\treturn this._controllers.getIntentController();\n\t}\n\tgetModelApiController() {\n\t\treturn this._controllers.getModelApiController();\n\t}\n\tgetAgentApiController() {\n\t\treturn this._controllers.getAgentApiController();\n\t}\n\tgetThreadApiController() {\n\t\treturn this._controllers.getThreadApiController();\n\t}\n\tgetIntentApiController() {\n\t\treturn this._controllers.getIntentApiController();\n\t}\n\n\t/**\n\t * Reset all instances (useful for testing)\n\t */\n\treset(): void {\n\t\tthis._services.reset();\n\t\tthis._controllers.reset();\n\t}\n}\n\n// Export singleton instance\nexport const container = new Container();\n\n// Export types for testing\nexport { ControllerContainer } from \"./controllers\";\nexport { ServiceContainer } from \"./services\";\n"],"mappings":";;;;;;;;AAYA,IAAM,YAAN,MAAgB;AAAA,EACP;AAAA,EACA;AAAA,EAER,cAAc;AACb,SAAK,YAAY,IAAI,iBAAiB;AACtC,SAAK,eAAe,IAAI,oBAAoB,KAAK,SAAS;AAAA,EAC3D;AAAA;AAAA,EAGA,IAAI,WAA6B;AAChC,WAAO,KAAK;AAAA,EACb;AAAA;AAAA,EAGA,IAAI,cAAmC;AACtC,WAAO,KAAK;AAAA,EACb;AAAA;AAAA,EAGA,mBAAmB;AAClB,WAAO,KAAK,UAAU,iBAAiB;AAAA,EACxC;AAAA,EACA,0BAA0B;AACzB,WAAO,KAAK,UAAU,wBAAwB;AAAA,EAC/C;AAAA,EACA,0BAA0B;AACzB,WAAO,KAAK,UAAU,wBAAwB;AAAA,EAC/C;AAAA,EACA,kBAAkB;AACjB,WAAO,KAAK,UAAU,gBAAgB;AAAA,EACvC;AAAA,EACA,gBAAgB;AACf,WAAO,KAAK,UAAU,cAAc;AAAA,EACrC;AAAA,EAEA,qBAAqB;AACpB,WAAO,KAAK,aAAa,mBAAmB;AAAA,EAC7C;AAAA,EACA,sBAAsB;AACrB,WAAO,KAAK,aAAa,oBAAoB;AAAA,EAC9C;AAAA,EACA,wBAAwB;AACvB,WAAO,KAAK,aAAa,sBAAsB;AAAA,EAChD;AAAA,EACA,wBAAwB;AACvB,WAAO,KAAK,aAAa,sBAAsB;AAAA,EAChD;AAAA,EACA,yBAAyB;AACxB,WAAO,KAAK,aAAa,uBAAuB;AAAA,EACjD;AAAA,EACA,yBAAyB;AACxB,WAAO,KAAK,aAAa,uBAAuB;AAAA,EACjD;AAAA;AAAA;AAAA;AAAA,EAKA,QAAc;AACb,SAAK,UAAU,MAAM;AACrB,SAAK,aAAa,MAAM;AAAA,EACzB;AACD;AAGO,IAAM,YAAY,IAAI,UAAU;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../src/container/index.ts"],"sourcesContent":["import { ControllerContainer } from \"./controllers\";\nimport { ServiceContainer } from \"./services\";\n\n/**\n * Dependency Injection Container\n *\n * Provides singleton instances of services and controllers with proper dependency injection.\n * Benefits:\n * - Services maintain DI pattern (testable with mocks)\n * - Routes use clean, simple API\n * - Dependencies are explicit and traceable\n */\nclass Container {\n\tprivate _services: ServiceContainer;\n\tprivate _controllers: ControllerContainer;\n\n\tconstructor() {\n\t\tthis._services = new ServiceContainer();\n\t\tthis._controllers = new ControllerContainer(this._services);\n\t}\n\n\t// Services\n\tget services(): ServiceContainer {\n\t\treturn this._services;\n\t}\n\n\t// Controllers\n\tget controllers(): ControllerContainer {\n\t\treturn this._controllers;\n\t}\n\n\t// Convenience methods for direct access\n\tgetThreadService() {\n\t\treturn this._services.getThreadService();\n\t}\n\tgetIntentTriggerService() {\n\t\treturn this._services.getIntentTriggerService();\n\t}\n\tgetIntentFulfillService() {\n\t\treturn this._services.getIntentFulfillService();\n\t}\n\tgetQueryService() {\n\t\treturn this._services.getQueryService();\n\t}\n\tgetA2AService() {\n\t\treturn this._services.getA2AService();\n\t}\n\n\tgetQueryController() {\n\t\treturn this._controllers.getQueryController();\n\t}\n\tgetIntentController() {\n\t\treturn this._controllers.getIntentController();\n\t}\n\tgetModelApiController() {\n\t\treturn this._controllers.getModelApiController();\n\t}\n\tgetAgentApiController() {\n\t\treturn this._controllers.getAgentApiController();\n\t}\n\tgetThreadApiController() {\n\t\treturn this._controllers.getThreadApiController();\n\t}\n\tgetIntentApiController() {\n\t\treturn this._controllers.getIntentApiController();\n\t}\n\tgetWorkflowApiController() {\n\t\treturn this._controllers.getWorkflowApiController();\n\t}\n\n\t/**\n\t * Reset all instances (useful for testing)\n\t */\n\treset(): void {\n\t\tthis._services.reset();\n\t\tthis._controllers.reset();\n\t}\n}\n\n// Export singleton instance\nexport const container = new Container();\n\n// Export types for testing\nexport { ControllerContainer } from \"./controllers\";\nexport { ServiceContainer } from \"./services\";\n"],"mappings":";;;;;;;;AAYA,IAAM,YAAN,MAAgB;AAAA,EACP;AAAA,EACA;AAAA,EAER,cAAc;AACb,SAAK,YAAY,IAAI,iBAAiB;AACtC,SAAK,eAAe,IAAI,oBAAoB,KAAK,SAAS;AAAA,EAC3D;AAAA;AAAA,EAGA,IAAI,WAA6B;AAChC,WAAO,KAAK;AAAA,EACb;AAAA;AAAA,EAGA,IAAI,cAAmC;AACtC,WAAO,KAAK;AAAA,EACb;AAAA;AAAA,EAGA,mBAAmB;AAClB,WAAO,KAAK,UAAU,iBAAiB;AAAA,EACxC;AAAA,EACA,0BAA0B;AACzB,WAAO,KAAK,UAAU,wBAAwB;AAAA,EAC/C;AAAA,EACA,0BAA0B;AACzB,WAAO,KAAK,UAAU,wBAAwB;AAAA,EAC/C;AAAA,EACA,kBAAkB;AACjB,WAAO,KAAK,UAAU,gBAAgB;AAAA,EACvC;AAAA,EACA,gBAAgB;AACf,WAAO,KAAK,UAAU,cAAc;AAAA,EACrC;AAAA,EAEA,qBAAqB;AACpB,WAAO,KAAK,aAAa,mBAAmB;AAAA,EAC7C;AAAA,EACA,sBAAsB;AACrB,WAAO,KAAK,aAAa,oBAAoB;AAAA,EAC9C;AAAA,EACA,wBAAwB;AACvB,WAAO,KAAK,aAAa,sBAAsB;AAAA,EAChD;AAAA,EACA,wBAAwB;AACvB,WAAO,KAAK,aAAa,sBAAsB;AAAA,EAChD;AAAA,EACA,yBAAyB;AACxB,WAAO,KAAK,aAAa,uBAAuB;AAAA,EACjD;AAAA,EACA,yBAAyB;AACxB,WAAO,KAAK,aAAa,uBAAuB;AAAA,EACjD;AAAA,EACA,2BAA2B;AAC1B,WAAO,KAAK,aAAa,yBAAyB;AAAA,EACnD;AAAA;AAAA;AAAA;AAAA,EAKA,QAAc;AACb,SAAK,UAAU,MAAM;AACrB,SAAK,aAAa,MAAM;AAAA,EACzB;AACD;AAGO,IAAM,YAAY,IAAI,UAAU;","names":[]}
|
|
@@ -42,8 +42,9 @@ var QueryService = class {
|
|
|
42
42
|
* @param query - The user's input query
|
|
43
43
|
* @returns AsyncGenerator yielding StreamEvent objects for SSE
|
|
44
44
|
*/
|
|
45
|
-
async *handleQuery(threadMetadata,
|
|
45
|
+
async *handleQuery(threadMetadata, queryData, isA2A) {
|
|
46
46
|
const { type, userId, options } = threadMetadata;
|
|
47
|
+
const { query, displayQuery } = queryData;
|
|
47
48
|
const threadMemory = this.memoryModule.getThreadMemory();
|
|
48
49
|
let threadId = threadMetadata.threadId;
|
|
49
50
|
let thread;
|
|
@@ -73,18 +74,21 @@ var QueryService = class {
|
|
|
73
74
|
messageId: randomUUID(),
|
|
74
75
|
role: "USER" /* USER */,
|
|
75
76
|
timestamp: Date.now(),
|
|
76
|
-
|
|
77
|
+
// use displayQuery for better UX in enterprise application
|
|
78
|
+
content: { type: "text", parts: [displayQuery || query] },
|
|
77
79
|
metadata: {
|
|
78
80
|
intents: triggeredIntent.filter((intent) => !!intent.intent).map((intent) => ({
|
|
79
81
|
id: intent.intent?.id,
|
|
80
82
|
subquery: intent.subquery
|
|
81
|
-
}))
|
|
83
|
+
})),
|
|
84
|
+
query: !displayQuery ? void 0 : query
|
|
82
85
|
}
|
|
83
86
|
}
|
|
84
87
|
]);
|
|
85
88
|
const stream = this.intentFulfillService.intentFulfill(
|
|
86
89
|
triggeredIntent,
|
|
87
|
-
thread
|
|
90
|
+
thread,
|
|
91
|
+
query
|
|
88
92
|
);
|
|
89
93
|
for await (const event of stream) {
|
|
90
94
|
yield event;
|
|
@@ -95,4 +99,4 @@ var QueryService = class {
|
|
|
95
99
|
export {
|
|
96
100
|
QueryService
|
|
97
101
|
};
|
|
98
|
-
//# sourceMappingURL=chunk-
|
|
102
|
+
//# sourceMappingURL=chunk-JXGQVFCO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/query.service.ts"],"sourcesContent":["import { randomUUID } from \"node:crypto\";\nimport { StatusCodes } from \"http-status-codes\";\nimport type {\n\tMemoryModule,\n\tModelFetchOptions,\n\tModelModule,\n} from \"@/modules/index.js\";\nimport { AinHttpError } from \"@/types/agent.js\";\nimport {\n\ttype MessageObject,\n\tMessageRole,\n\ttype ThreadMetadata,\n\ttype ThreadObject,\n\ttype ThreadType,\n\ttype TriggeredIntent,\n} from \"@/types/memory.js\";\nimport type { StreamEvent } from \"@/types/stream\";\nimport { loggers } from \"@/utils/logger.js\";\nimport type { IntentFulfillService } from \"./intents/fulfill.service\";\nimport type { IntentTriggerService } from \"./intents/trigger.service\";\nimport { generateTitle } from \"./utils/query.common\";\n\n/**\n * Service for processing user queries through the agent's AI pipeline.\n *\n * Orchestrates the query processing workflow including intent detection,\n * model inference, tool execution, and response generation. Manages\n * conversation context and coordinates between different modules.\n */\nexport class QueryService {\n\tprivate modelModule: ModelModule;\n\tprivate memoryModule: MemoryModule;\n\tprivate intentTriggerService: IntentTriggerService;\n\tprivate intentFulfillService: IntentFulfillService;\n\n\tconstructor(\n\t\tmodelModule: ModelModule,\n\t\tmemoryModule: MemoryModule,\n\t\tintentTriggerService: IntentTriggerService,\n\t\tintentFulfillService: IntentFulfillService,\n\t) {\n\t\tthis.modelModule = modelModule;\n\t\tthis.memoryModule = memoryModule;\n\t\tthis.intentTriggerService = intentTriggerService;\n\t\tthis.intentFulfillService = intentFulfillService;\n\t}\n\n\tpublic async addToThreadMessages(\n\t\tuserId: string,\n\t\tthreadId: string,\n\t\tmessages: Array<MessageObject>,\n\t) {\n\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\t\tawait threadMemory?.addMessagesToThread(userId, threadId, messages);\n\t}\n\n\t/**\n\t * Main entry point for processing streaming user queries.\n\t *\n\t * Handles the complete query lifecycle:\n\t * 1. Loads or creates thread from memory\n\t * 2. Detects intent from the query\n\t * 3. Fulfills the intent with streaming AI response\n\t * 4. Updates conversation history in real-time\n\t *\n\t * @param threadMetadata - Metadata containing type, userId, and optional threadId\n\t * @param threadMetadata.type - The type of thread (e.g., chat, workflow)\n\t * @param threadMetadata.userId - The user's unique identifier\n\t * @param threadMetadata.threadId - Optional thread identifier\n\t * @param query - The user's input query\n\t * @returns AsyncGenerator yielding StreamEvent objects for SSE\n\t */\n\tpublic async *handleQuery(\n\t\tthreadMetadata: {\n\t\t\ttype: ThreadType;\n\t\t\tuserId: string;\n\t\t\tthreadId?: string;\n\t\t\toptions?: ModelFetchOptions;\n\t\t},\n\t\tqueryData: {\n\t\t\tquery: string;\n\t\t\tdisplayQuery?: string;\n\t\t},\n\t\tisA2A?: boolean,\n\t): AsyncGenerator<StreamEvent> {\n\t\tconst { type, userId, options } = threadMetadata;\n\t\tconst { query, displayQuery } = queryData;\n\t\tconst threadMemory = this.memoryModule.getThreadMemory();\n\n\t\t// 1. Load or create thread\n\t\tlet threadId = threadMetadata.threadId;\n\t\tlet thread: ThreadObject | undefined;\n\t\tif (threadId) {\n\t\t\tthread = await threadMemory?.getThread(userId, threadId);\n\t\t\tif (!thread && !isA2A) {\n\t\t\t\tthrow new AinHttpError(StatusCodes.NOT_FOUND, \"Thread not found\");\n\t\t\t}\n\t\t}\n\n\t\tthreadId ??= randomUUID();\n\t\tif (!thread) {\n\t\t\tconst title = await generateTitle(this.modelModule, query, options);\n\t\t\tconst metadata: ThreadMetadata = (await threadMemory?.createThread(\n\t\t\t\ttype,\n\t\t\t\tuserId,\n\t\t\t\tthreadId,\n\t\t\t\ttitle,\n\t\t\t)) || { type, userId, threadId, title };\n\t\t\tthread = { ...metadata, messages: [] };\n\t\t\tloggers.intent.info(`Create new thread: ${threadId}`);\n\t\t\tyield { event: \"thread_id\", data: { type, userId, threadId, title } };\n\t\t}\n\n\t\t// 2. intent triggering\n\t\tconst triggeredIntent: Array<TriggeredIntent> =\n\t\t\tawait this.intentTriggerService.intentTriggering(query, thread);\n\t\tloggers.intent.debug(\"Triggered intents\", { triggeredIntent });\n\n\t\t// only add for storage, not for inference\n\t\tawait this.addToThreadMessages(userId, threadId, [\n\t\t\t{\n\t\t\t\tmessageId: randomUUID(),\n\t\t\t\trole: MessageRole.USER,\n\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t// use displayQuery for better UX in enterprise application\n\t\t\t\tcontent: { type: \"text\", parts: [displayQuery || query] },\n\t\t\t\tmetadata: {\n\t\t\t\t\tintents: triggeredIntent\n\t\t\t\t\t\t.filter((intent) => !!intent.intent)\n\t\t\t\t\t\t.map((intent) => ({\n\t\t\t\t\t\t\tid: intent.intent?.id,\n\t\t\t\t\t\t\tsubquery: intent.subquery,\n\t\t\t\t\t\t})),\n\t\t\t\t\tquery: !displayQuery ? undefined : query,\n\t\t\t\t},\n\t\t\t},\n\t\t]);\n\n\t\t// 3. intent fulfillment (with rewrite step)\n\t\tconst stream = this.intentFulfillService.intentFulfill(\n\t\t\ttriggeredIntent,\n\t\t\tthread,\n\t\t\tquery,\n\t\t);\n\n\t\tfor await (const event of stream) {\n\t\t\tyield event;\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;AAAA,SAAS,kBAAkB;AAC3B,SAAS,mBAAmB;AA4BrB,IAAM,eAAN,MAAmB;AAAA,EACjB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAER,YACC,aACA,cACA,sBACA,sBACC;AACD,SAAK,cAAc;AACnB,SAAK,eAAe;AACpB,SAAK,uBAAuB;AAC5B,SAAK,uBAAuB;AAAA,EAC7B;AAAA,EAEA,MAAa,oBACZ,QACA,UACA,UACC;AACD,UAAM,eAAe,KAAK,aAAa,gBAAgB;AACvD,UAAM,cAAc,oBAAoB,QAAQ,UAAU,QAAQ;AAAA,EACnE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAkBA,OAAc,YACb,gBAMA,WAIA,OAC8B;AAC9B,UAAM,EAAE,MAAM,QAAQ,QAAQ,IAAI;AAClC,UAAM,EAAE,OAAO,aAAa,IAAI;AAChC,UAAM,eAAe,KAAK,aAAa,gBAAgB;AAGvD,QAAI,WAAW,eAAe;AAC9B,QAAI;AACJ,QAAI,UAAU;AACb,eAAS,MAAM,cAAc,UAAU,QAAQ,QAAQ;AACvD,UAAI,CAAC,UAAU,CAAC,OAAO;AACtB,cAAM,IAAI,aAAa,YAAY,WAAW,kBAAkB;AAAA,MACjE;AAAA,IACD;AAEA,iBAAa,WAAW;AACxB,QAAI,CAAC,QAAQ;AACZ,YAAM,QAAQ,MAAM,cAAc,KAAK,aAAa,OAAO,OAAO;AAClE,YAAM,WAA4B,MAAM,cAAc;AAAA,QACrD;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD,KAAM,EAAE,MAAM,QAAQ,UAAU,MAAM;AACtC,eAAS,EAAE,GAAG,UAAU,UAAU,CAAC,EAAE;AACrC,cAAQ,OAAO,KAAK,sBAAsB,QAAQ,EAAE;AACpD,YAAM,EAAE,OAAO,aAAa,MAAM,EAAE,MAAM,QAAQ,UAAU,MAAM,EAAE;AAAA,IACrE;AAGA,UAAM,kBACL,MAAM,KAAK,qBAAqB,iBAAiB,OAAO,MAAM;AAC/D,YAAQ,OAAO,MAAM,qBAAqB,EAAE,gBAAgB,CAAC;AAG7D,UAAM,KAAK,oBAAoB,QAAQ,UAAU;AAAA,MAChD;AAAA,QACC,WAAW,WAAW;AAAA,QACtB;AAAA,QACA,WAAW,KAAK,IAAI;AAAA;AAAA,QAEpB,SAAS,EAAE,MAAM,QAAQ,OAAO,CAAC,gBAAgB,KAAK,EAAE;AAAA,QACxD,UAAU;AAAA,UACT,SAAS,gBACP,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,MAAM,EAClC,IAAI,CAAC,YAAY;AAAA,YACjB,IAAI,OAAO,QAAQ;AAAA,YACnB,UAAU,OAAO;AAAA,UAClB,EAAE;AAAA,UACH,OAAO,CAAC,eAAe,SAAY;AAAA,QACpC;AAAA,MACD;AAAA,IACD,CAAC;AAGD,UAAM,SAAS,KAAK,qBAAqB;AAAA,MACxC;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAEA,qBAAiB,SAAS,QAAQ;AACjC,YAAM;AAAA,IACP;AAAA,EACD;AACD;","names":[]}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
|
-
import {
|
|
2
|
-
createAgentApiRouter
|
|
3
|
-
} from "./chunk-BGKNOP4G.js";
|
|
4
|
-
import {
|
|
5
|
-
createIntentApiRouter
|
|
6
|
-
} from "./chunk-DLP5I2ML.js";
|
|
7
1
|
import {
|
|
8
2
|
createModelApiRouter
|
|
9
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ZK3HZBER.js";
|
|
10
4
|
import {
|
|
11
5
|
createThreadApiRouter
|
|
12
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6YBQCUNB.js";
|
|
7
|
+
import {
|
|
8
|
+
createWorkflowApiRouter
|
|
9
|
+
} from "./chunk-7XQPJVYO.js";
|
|
10
|
+
import {
|
|
11
|
+
createAgentApiRouter
|
|
12
|
+
} from "./chunk-2VGXYWJD.js";
|
|
13
|
+
import {
|
|
14
|
+
createIntentApiRouter
|
|
15
|
+
} from "./chunk-VP5Q63JU.js";
|
|
13
16
|
import {
|
|
14
17
|
getMemoryModule
|
|
15
18
|
} from "./chunk-VSQVYW2H.js";
|
|
@@ -24,6 +27,7 @@ var createApiRouter = () => {
|
|
|
24
27
|
if (memoryModule) {
|
|
25
28
|
router.use("/threads", createThreadApiRouter());
|
|
26
29
|
router.use("/intent", createIntentApiRouter());
|
|
30
|
+
router.use("/workflow", createWorkflowApiRouter());
|
|
27
31
|
}
|
|
28
32
|
return router;
|
|
29
33
|
};
|
|
@@ -31,4 +35,4 @@ var createApiRouter = () => {
|
|
|
31
35
|
export {
|
|
32
36
|
createApiRouter
|
|
33
37
|
};
|
|
34
|
-
//# sourceMappingURL=chunk-
|
|
38
|
+
//# sourceMappingURL=chunk-LMOWEXWF.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/routes/api.routes.ts"],"sourcesContent":["import { Router } from \"express\";\nimport { getMemoryModule } from \"@/config/modules\";\nimport { createAgentApiRouter } from \"./api/agent.routes.js\";\nimport { createIntentApiRouter } from \"./api/intent.routes.js\";\nimport { createModelApiRouter } from \"./api/model.routes.js\";\nimport { createThreadApiRouter } from \"./api/threads.routes.js\";\nimport { createWorkflowApiRouter } from \"./api/workflow.routes.js\";\n\nexport const createApiRouter = (): Router => {\n\tconst router = Router();\n\n\trouter.use(\"/model\", createModelApiRouter());\n\trouter.use(\"/agent\", createAgentApiRouter());\n\n\tconst memoryModule = getMemoryModule();\n\tif (memoryModule) {\n\t\trouter.use(\"/threads\", createThreadApiRouter());\n\t\trouter.use(\"/intent\", createIntentApiRouter());\n\t\trouter.use(\"/workflow\", createWorkflowApiRouter());\n\t}\n\n\treturn router;\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,SAAS,cAAc;AAQhB,IAAM,kBAAkB,MAAc;AAC5C,QAAM,SAAS,OAAO;AAEtB,SAAO,IAAI,UAAU,qBAAqB,CAAC;AAC3C,SAAO,IAAI,UAAU,qBAAqB,CAAC;AAE3C,QAAM,eAAe,gBAAgB;AACrC,MAAI,cAAc;AACjB,WAAO,IAAI,YAAY,sBAAsB,CAAC;AAC9C,WAAO,IAAI,WAAW,sBAAsB,CAAC;AAC7C,WAAO,IAAI,aAAa,wBAAwB,CAAC;AAAA,EAClD;AAEA,SAAO;AACR;","names":[]}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
var
|
|
1
|
+
// src/services/utils/aggregate.common.ts
|
|
2
|
+
var AGGREGATE_DECISION_SYSTEM_PROMPT = `You are an assistant that determines whether multiple task responses need to be aggregated into a unified response.
|
|
3
3
|
|
|
4
4
|
Analyze the original query and the responses from each task.
|
|
5
5
|
|
|
6
6
|
**Return JSON only:**
|
|
7
7
|
{
|
|
8
|
-
"
|
|
9
|
-
"reason": string
|
|
8
|
+
"needsAggregation": boolean,
|
|
9
|
+
"reason": string // Write the reason in the same language as the original query
|
|
10
10
|
}
|
|
11
11
|
|
|
12
|
-
**Set
|
|
12
|
+
**Set needsAggregation to FALSE when:**
|
|
13
13
|
- The last response already synthesizes/summarizes all previous results
|
|
14
14
|
- The last task explicitly asks for a "report", "summary", "\uACB0\uACFC\uBB3C", "\uB808\uD3EC\uD2B8", "\uC815\uB9AC" based on previous tasks
|
|
15
15
|
- The last response comprehensively addresses the original query by incorporating previous results
|
|
16
16
|
|
|
17
|
-
**Set
|
|
17
|
+
**Set needsAggregation to TRUE when:**
|
|
18
18
|
- Each response is independent and doesn't reference other results
|
|
19
19
|
- The original query asks for multiple distinct things that weren't combined
|
|
20
20
|
- Important information from earlier responses is missing in the final response
|
|
@@ -22,14 +22,14 @@ Analyze the original query and the responses from each task.
|
|
|
22
22
|
Examples:
|
|
23
23
|
|
|
24
24
|
Query: "A\uD558\uACE0, B\uD558\uACE0, \uADF8\uAC78 \uAE30\uBC18\uC73C\uB85C \uB808\uD3EC\uD2B8 \uB9CC\uB4E4\uC5B4\uC918"
|
|
25
|
-
\u2192
|
|
25
|
+
\u2192 needsAggregation: false (last task already creates a combined report)
|
|
26
26
|
|
|
27
27
|
Query: "A\uD558\uACE0, B\uB3C4 \uD574\uC918"
|
|
28
|
-
\u2192
|
|
28
|
+
\u2192 needsAggregation: true (independent tasks, need combination)
|
|
29
29
|
|
|
30
30
|
Query: "\uB0A0\uC528 \uC54C\uB824\uC8FC\uACE0, \uC77C\uC815\uB3C4 \uD655\uC778\uD574\uC918"
|
|
31
|
-
\u2192
|
|
32
|
-
var
|
|
31
|
+
\u2192 needsAggregation: true (independent queries, results should be combined)`;
|
|
32
|
+
var AGGREGATE_GENERATION_SYSTEM_PROMPT = `You are an assistant that combines multiple task responses into a single, coherent response.
|
|
33
33
|
|
|
34
34
|
Guidelines:
|
|
35
35
|
- Preserve all important information from each response
|
|
@@ -40,8 +40,8 @@ Guidelines:
|
|
|
40
40
|
- Be concise - don't add unnecessary filler
|
|
41
41
|
- Respond in the same language as the original query`;
|
|
42
42
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
//# sourceMappingURL=chunk-
|
|
43
|
+
export {
|
|
44
|
+
AGGREGATE_DECISION_SYSTEM_PROMPT,
|
|
45
|
+
AGGREGATE_GENERATION_SYSTEM_PROMPT
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=chunk-O3MPFL5J.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/utils/aggregate.common.ts"],"sourcesContent":["/**\n * System prompt for deciding whether to aggregate/combine multiple responses.\n */\nexport const AGGREGATE_DECISION_SYSTEM_PROMPT = `You are an assistant that determines whether multiple task responses need to be aggregated into a unified response.\n\nAnalyze the original query and the responses from each task.\n\n**Return JSON only:**\n{\n \"needsAggregation\": boolean,\n \"reason\": string // Write the reason in the same language as the original query\n}\n\n**Set needsAggregation to FALSE when:**\n- The last response already synthesizes/summarizes all previous results\n- The last task explicitly asks for a \"report\", \"summary\", \"결과물\", \"레포트\", \"정리\" based on previous tasks\n- The last response comprehensively addresses the original query by incorporating previous results\n\n**Set needsAggregation to TRUE when:**\n- Each response is independent and doesn't reference other results\n- The original query asks for multiple distinct things that weren't combined\n- Important information from earlier responses is missing in the final response\n\nExamples:\n\nQuery: \"A하고, B하고, 그걸 기반으로 레포트 만들어줘\"\n→ needsAggregation: false (last task already creates a combined report)\n\nQuery: \"A하고, B도 해줘\"\n→ needsAggregation: true (independent tasks, need combination)\n\nQuery: \"날씨 알려주고, 일정도 확인해줘\"\n→ needsAggregation: true (independent queries, results should be combined)`;\n\n/**\n * System prompt for generating a unified response from multiple results.\n */\nexport const AGGREGATE_GENERATION_SYSTEM_PROMPT = `You are an assistant that combines multiple task responses into a single, coherent response.\n\nGuidelines:\n- Preserve all important information from each response\n- Create a natural, flowing response that addresses the original query\n- Don't use section headers like \"[Task 1]\" - integrate smoothly\n- If responses have related information, synthesize them logically\n- Keep the tone consistent with the original responses\n- Be concise - don't add unnecessary filler\n- Respond in the same language as the original query`;\n"],"mappings":";AAGO,IAAM,mCAAmC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkCzC,IAAM,qCAAqC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
container
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-IG3B5AXN.js";
|
|
4
4
|
|
|
5
5
|
// src/routes/query.routes.ts
|
|
6
6
|
import { Router } from "express";
|
|
@@ -15,4 +15,4 @@ var createQueryRouter = () => {
|
|
|
15
15
|
export {
|
|
16
16
|
createQueryRouter
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=chunk-
|
|
18
|
+
//# sourceMappingURL=chunk-PZQRSWST.js.map
|
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
loggers
|
|
3
3
|
} from "./chunk-VUMI4XOY.js";
|
|
4
4
|
|
|
5
|
-
// src/services/intents/trigger.service.ts
|
|
6
|
-
var
|
|
5
|
+
// src/services/intents/multi-trigger.service.ts
|
|
6
|
+
var MultiIntentTriggerService = class {
|
|
7
7
|
modelModule;
|
|
8
8
|
memoryModule;
|
|
9
9
|
constructor(modelModule, memoryModule) {
|
|
@@ -11,11 +11,11 @@ var IntentTriggerService = class {
|
|
|
11
11
|
this.memoryModule = memoryModule;
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
|
-
* Detects
|
|
14
|
+
* Detects multiple intents from context by decomposing queries into subqueries.
|
|
15
15
|
*
|
|
16
16
|
* @param query - The user's input query
|
|
17
17
|
* @param thread - The thread history
|
|
18
|
-
* @returns
|
|
18
|
+
* @returns Array of TriggeredIntent objects
|
|
19
19
|
*/
|
|
20
20
|
async intentTriggering(query, thread) {
|
|
21
21
|
const modelInstance = this.modelModule.getModel();
|
|
@@ -110,6 +110,6 @@ Requirements:
|
|
|
110
110
|
};
|
|
111
111
|
|
|
112
112
|
export {
|
|
113
|
-
|
|
113
|
+
MultiIntentTriggerService
|
|
114
114
|
};
|
|
115
|
-
//# sourceMappingURL=chunk-
|
|
115
|
+
//# sourceMappingURL=chunk-QQZ5ANSD.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/services/intents/multi-trigger.service.ts"],"sourcesContent":["import type { MemoryModule, ModelModule } from \"@/modules\";\nimport type {\n\tMessageObject,\n\tThreadObject,\n\tTriggeredIntent,\n} from \"@/types/memory\";\nimport { loggers } from \"@/utils/logger\";\n\n/**\n * Service for multi-intent triggering.\n * Decomposes queries into multiple subqueries and maps each to an intent.\n */\nexport class MultiIntentTriggerService {\n\tprivate modelModule: ModelModule;\n\tprivate memoryModule: MemoryModule;\n\n\tconstructor(modelModule: ModelModule, memoryModule: MemoryModule) {\n\t\tthis.modelModule = modelModule;\n\t\tthis.memoryModule = memoryModule;\n\t}\n\n\t/**\n\t * Detects multiple intents from context by decomposing queries into subqueries.\n\t *\n\t * @param query - The user's input query\n\t * @param thread - The thread history\n\t * @returns Array of TriggeredIntent objects\n\t */\n\tpublic async intentTriggering(\n\t\tquery: string,\n\t\tthread: ThreadObject | undefined,\n\t): Promise<Array<TriggeredIntent>> {\n\t\tconst modelInstance = this.modelModule.getModel();\n\t\tconst modelOptions = this.modelModule.getModelOptions();\n\t\tconst intentMemory = this.memoryModule.getIntentMemory();\n\t\tif (!intentMemory) {\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\t// 인텐트 목록 가져오기\n\t\tconst intents = await intentMemory.listIntents();\n\n\t\tif (intents.length === 0) {\n\t\t\tloggers.intentStream.warn(\"No intent found\");\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\tconst intentList = intents\n\t\t\t.map((intent) => `- ${intent.name}: ${intent.description}`)\n\t\t\t.join(\"\\n\");\n\n\t\t// Convert thread messages to a string\n\t\tconst threadMessages = !thread\n\t\t\t? \"\"\n\t\t\t: thread.messages\n\t\t\t\t\t.sort((a, b) => a.timestamp - b.timestamp)\n\t\t\t\t\t.map((message: MessageObject) => {\n\t\t\t\t\t\tconst role =\n\t\t\t\t\t\t\tmessage.role === \"USER\"\n\t\t\t\t\t\t\t\t? \"User\"\n\t\t\t\t\t\t\t\t: message.role === \"MODEL\"\n\t\t\t\t\t\t\t\t\t? \"Assistant\"\n\t\t\t\t\t\t\t\t\t: \"System\";\n\t\t\t\t\t\tconst content = Array.isArray(message.content.parts)\n\t\t\t\t\t\t\t? message.content.parts.join(\" \")\n\t\t\t\t\t\t\t: String(message.content.parts);\n\t\t\t\t\t\treturn `${role}: \"\"\"${content}\"\"\"`;\n\t\t\t\t\t})\n\t\t\t\t\t.join(\"\\n\");\n\n\t\tconst systemPrompt = `\nToday is ${new Date().toLocaleDateString()}.\nYou are an expert in accurately identifying user intentions.\n\nAvailable intent list:\n${intentList}\n\nPlease select and answer only from the above intent list.`;\n\n\t\tconst userMessage = `\n${\n\tthreadMessages !== \"\"\n\t\t? `The following is the conversation history with the user: ${threadMessages}\n\n\t`\n\t\t: \"\"\n}\nLast user question: \"${query}\"\n\nBased on the above conversation history, analyze the last user question and identify all relevant intents.\n\nInstructions:\n1. First, decompose the last user question into action-based subqueries (each representing a distinct action or task)\n2. Then, map each subquery to its corresponding intent from the available intent list\n3. For each subquery, provide a 2-3 sentence summary of what actions will be performed\n4. Multiple intents can be identified if the question covers various topics or actions\n5. Maintain the logical sequence of the original question when splitting into subqueries\n6. **Important**: If the query cannot be split into multiple subqueries (i.e., it represents a single action or request), treat the entire query as one subquery and still follow the output format\n\nOutput Format:\nYou MUST return the output in the following JSON format. Do not include any other text before or after the JSON:\n[\n {\n \"subquery\": \"<subquery_1>\",\n \"intentName\": \"<intent_name_1>\",\n\t\t\"actionPlan\": \"<2-3 sentence description of what will be done for this subquery>\"\n\t},\n {\n \"subquery\": \"<subquery_2>\",\n \"intentName\": \"<intent_name_2>\",\n\t\t\"actionPlan\": \"<2-3 sentence description of what will be done for this subquery>\"\n },\n ...\n]\n\nRequirements:\n- Each subquery should represent a single, actionable task or request\n- Preserve the original meaning and context when splitting queries\n- Select only from the provided intent list\n- DO NOT set intentName for any subquery that doesn't match available intents.\n- Even if the query is simple and cannot be decomposed, return it as a single-element array with one subquery object`;\n\n\t\tconst messages = modelInstance.generateMessages({\n\t\t\tquery: userMessage,\n\t\t\tsystemPrompt,\n\t\t});\n\n\t\tconst response = await modelInstance.fetch(messages, modelOptions);\n\t\tif (!response.content) {\n\t\t\tloggers.intent.warn(\"Cannot extract intent from query\");\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\tlet subqueries: any;\n\t\ttry {\n\t\t\tsubqueries = JSON.parse(response.content);\n\t\t} catch (error: unknown) {\n\t\t\treturn [{ subquery: query }];\n\t\t}\n\n\t\tconst triggeredIntent: Array<TriggeredIntent> = [];\n\t\tfor (const { subquery, intentName, actionPlan } of subqueries) {\n\t\t\tif (!subquery) continue;\n\t\t\tconst item = { subquery, actionPlan } as TriggeredIntent;\n\t\t\tif (intentName) {\n\t\t\t\titem.intent = await intentMemory.getIntentByName(intentName);\n\t\t\t}\n\t\t\ttriggeredIntent.push(item);\n\t\t}\n\n\t\treturn triggeredIntent;\n\t}\n}\n"],"mappings":";;;;;AAYO,IAAM,4BAAN,MAAgC;AAAA,EAC9B;AAAA,EACA;AAAA,EAER,YAAY,aAA0B,cAA4B;AACjE,SAAK,cAAc;AACnB,SAAK,eAAe;AAAA,EACrB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,MAAa,iBACZ,OACA,QACkC;AAClC,UAAM,gBAAgB,KAAK,YAAY,SAAS;AAChD,UAAM,eAAe,KAAK,YAAY,gBAAgB;AACtD,UAAM,eAAe,KAAK,aAAa,gBAAgB;AACvD,QAAI,CAAC,cAAc;AAClB,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAGA,UAAM,UAAU,MAAM,aAAa,YAAY;AAE/C,QAAI,QAAQ,WAAW,GAAG;AACzB,cAAQ,aAAa,KAAK,iBAAiB;AAC3C,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAEA,UAAM,aAAa,QACjB,IAAI,CAAC,WAAW,KAAK,OAAO,IAAI,KAAK,OAAO,WAAW,EAAE,EACzD,KAAK,IAAI;AAGX,UAAM,iBAAiB,CAAC,SACrB,KACA,OAAO,SACN,KAAK,CAAC,GAAG,MAAM,EAAE,YAAY,EAAE,SAAS,EACxC,IAAI,CAAC,YAA2B;AAChC,YAAM,OACL,QAAQ,SAAS,SACd,SACA,QAAQ,SAAS,UAChB,cACA;AACL,YAAM,UAAU,MAAM,QAAQ,QAAQ,QAAQ,KAAK,IAChD,QAAQ,QAAQ,MAAM,KAAK,GAAG,IAC9B,OAAO,QAAQ,QAAQ,KAAK;AAC/B,aAAO,GAAG,IAAI,QAAQ,OAAO;AAAA,IAC9B,CAAC,EACA,KAAK,IAAI;AAEb,UAAM,eAAe;AAAA,YACZ,oBAAI,KAAK,GAAE,mBAAmB,CAAC;AAAA;AAAA;AAAA;AAAA,EAIxC,UAAU;AAAA;AAAA;AAIV,UAAM,cAAc;AAAA,EAErB,mBAAmB,KAChB,4DAA4D,cAAc;AAAA;AAAA,KAG1E,EACJ;AAAA,uBACuB,KAAK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmC1B,UAAM,WAAW,cAAc,iBAAiB;AAAA,MAC/C,OAAO;AAAA,MACP;AAAA,IACD,CAAC;AAED,UAAM,WAAW,MAAM,cAAc,MAAM,UAAU,YAAY;AACjE,QAAI,CAAC,SAAS,SAAS;AACtB,cAAQ,OAAO,KAAK,kCAAkC;AACtD,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAEA,QAAI;AACJ,QAAI;AACH,mBAAa,KAAK,MAAM,SAAS,OAAO;AAAA,IACzC,SAAS,OAAgB;AACxB,aAAO,CAAC,EAAE,UAAU,MAAM,CAAC;AAAA,IAC5B;AAEA,UAAM,kBAA0C,CAAC;AACjD,eAAW,EAAE,UAAU,YAAY,WAAW,KAAK,YAAY;AAC9D,UAAI,CAAC,SAAU;AACf,YAAM,OAAO,EAAE,UAAU,WAAW;AACpC,UAAI,YAAY;AACf,aAAK,SAAS,MAAM,aAAa,gBAAgB,UAAU;AAAA,MAC5D;AACA,sBAAgB,KAAK,IAAI;AAAA,IAC1B;AAEA,WAAO;AAAA,EACR;AACD;","names":[]}
|
|
@@ -1,14 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
import {
|
|
2
|
+
AGGREGATE_DECISION_SYSTEM_PROMPT,
|
|
3
|
+
AGGREGATE_GENERATION_SYSTEM_PROMPT
|
|
4
|
+
} from "./chunk-O3MPFL5J.js";
|
|
5
|
+
import {
|
|
6
|
+
loggers
|
|
7
|
+
} from "./chunk-VUMI4XOY.js";
|
|
8
|
+
import {
|
|
9
|
+
getManifest
|
|
10
|
+
} from "./chunk-2J2TQRP4.js";
|
|
2
11
|
|
|
3
|
-
|
|
4
|
-
var
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
var _chunkCLJ3DWTAcjs = require('./chunk-CLJ3DWTA.cjs');
|
|
8
|
-
|
|
9
|
-
// src/services/intents/rewrite.service.ts
|
|
10
|
-
var RewriteService = class {
|
|
11
|
-
|
|
12
|
+
// src/services/intents/aggregate.service.ts
|
|
13
|
+
var AggregateService = class {
|
|
14
|
+
modelModule;
|
|
12
15
|
constructor(modelModule) {
|
|
13
16
|
this.modelModule = modelModule;
|
|
14
17
|
}
|
|
@@ -20,9 +23,9 @@ var RewriteService = class {
|
|
|
20
23
|
* @param results - Array of fulfillment results from each intent
|
|
21
24
|
* @returns AsyncGenerator yielding StreamEvent objects
|
|
22
25
|
*/
|
|
23
|
-
async *
|
|
26
|
+
async *aggregateIfNeeded(originalQuery, results) {
|
|
24
27
|
if (results.length <= 1) {
|
|
25
|
-
const response =
|
|
28
|
+
const response = results[0]?.response ?? "";
|
|
26
29
|
if (response) {
|
|
27
30
|
yield {
|
|
28
31
|
event: "text_chunk",
|
|
@@ -31,12 +34,12 @@ var RewriteService = class {
|
|
|
31
34
|
}
|
|
32
35
|
return;
|
|
33
36
|
}
|
|
34
|
-
const decision = await this.
|
|
35
|
-
|
|
36
|
-
|
|
37
|
+
const decision = await this.shouldAggregate(originalQuery, results);
|
|
38
|
+
loggers.intent.info("Aggregate decision", {
|
|
39
|
+
needsAggregation: decision.needsAggregation,
|
|
37
40
|
reason: decision.reason
|
|
38
41
|
});
|
|
39
|
-
if (!decision.
|
|
42
|
+
if (!decision.needsAggregation) {
|
|
40
43
|
yield {
|
|
41
44
|
event: "text_chunk",
|
|
42
45
|
data: { delta: results[results.length - 1].response }
|
|
@@ -46,16 +49,16 @@ var RewriteService = class {
|
|
|
46
49
|
yield {
|
|
47
50
|
event: "thinking_process",
|
|
48
51
|
data: {
|
|
49
|
-
title:
|
|
52
|
+
title: `[${getManifest().name}] \uC751\uB2F5 \uD1B5\uD569 \uC911`,
|
|
50
53
|
description: decision.reason || "\uC5EC\uB7EC \uC791\uC5C5 \uACB0\uACFC\uB97C \uD558\uB098\uC758 \uC751\uB2F5\uC73C\uB85C \uD1B5\uD569\uD569\uB2C8\uB2E4."
|
|
51
54
|
}
|
|
52
55
|
};
|
|
53
|
-
yield* this.
|
|
56
|
+
yield* this.generateAggregatedResponse(originalQuery, results);
|
|
54
57
|
}
|
|
55
58
|
/**
|
|
56
|
-
* Asks LLM to decide whether the results need to be
|
|
59
|
+
* Asks LLM to decide whether the results need to be aggregated.
|
|
57
60
|
*/
|
|
58
|
-
async
|
|
61
|
+
async shouldAggregate(originalQuery, results) {
|
|
59
62
|
const modelInstance = this.modelModule.getModel();
|
|
60
63
|
const modelOptions = this.modelModule.getModelOptions();
|
|
61
64
|
const prompt = this.buildDecisionPrompt(originalQuery, results);
|
|
@@ -69,7 +72,7 @@ var RewriteService = class {
|
|
|
69
72
|
const messages = modelInstance.generateMessages({
|
|
70
73
|
query: prompt,
|
|
71
74
|
thread: emptyThread,
|
|
72
|
-
systemPrompt:
|
|
75
|
+
systemPrompt: AGGREGATE_DECISION_SYSTEM_PROMPT
|
|
73
76
|
});
|
|
74
77
|
try {
|
|
75
78
|
const response = await modelInstance.fetchWithContextMessage(
|
|
@@ -77,7 +80,7 @@ var RewriteService = class {
|
|
|
77
80
|
[],
|
|
78
81
|
modelOptions
|
|
79
82
|
);
|
|
80
|
-
const responseText =
|
|
83
|
+
const responseText = response.content ?? "";
|
|
81
84
|
let jsonStr = responseText;
|
|
82
85
|
const jsonMatch = responseText.match(/```(?:json)?\s*([\s\S]*?)```/);
|
|
83
86
|
if (jsonMatch) {
|
|
@@ -85,23 +88,26 @@ var RewriteService = class {
|
|
|
85
88
|
}
|
|
86
89
|
const parsed = JSON.parse(jsonStr);
|
|
87
90
|
return {
|
|
88
|
-
|
|
89
|
-
reason:
|
|
91
|
+
needsAggregation: parsed.needsAggregation ?? true,
|
|
92
|
+
reason: parsed.reason ?? ""
|
|
90
93
|
};
|
|
91
94
|
} catch (error) {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
95
|
+
loggers.intent.warn(
|
|
96
|
+
"Failed to parse aggregate decision, defaulting to aggregate",
|
|
97
|
+
{
|
|
98
|
+
error
|
|
99
|
+
}
|
|
100
|
+
);
|
|
101
|
+
return { needsAggregation: true, reason: "Failed to parse decision" };
|
|
96
102
|
}
|
|
97
103
|
}
|
|
98
104
|
/**
|
|
99
105
|
* Generates a unified response by streaming from the model.
|
|
100
106
|
*/
|
|
101
|
-
async *
|
|
107
|
+
async *generateAggregatedResponse(originalQuery, results) {
|
|
102
108
|
const modelInstance = this.modelModule.getModel();
|
|
103
109
|
const modelOptions = this.modelModule.getModelOptions();
|
|
104
|
-
const prompt = this.
|
|
110
|
+
const prompt = this.buildAggregatePrompt(originalQuery, results);
|
|
105
111
|
const emptyThread = {
|
|
106
112
|
messages: [],
|
|
107
113
|
userId: "",
|
|
@@ -112,7 +118,7 @@ var RewriteService = class {
|
|
|
112
118
|
const messages = modelInstance.generateMessages({
|
|
113
119
|
query: prompt,
|
|
114
120
|
thread: emptyThread,
|
|
115
|
-
systemPrompt:
|
|
121
|
+
systemPrompt: AGGREGATE_GENERATION_SYSTEM_PROMPT
|
|
116
122
|
});
|
|
117
123
|
const stream = await modelInstance.fetchStreamWithContextMessage(
|
|
118
124
|
messages,
|
|
@@ -120,7 +126,7 @@ var RewriteService = class {
|
|
|
120
126
|
modelOptions
|
|
121
127
|
);
|
|
122
128
|
for await (const chunk of stream) {
|
|
123
|
-
if (
|
|
129
|
+
if (chunk.delta?.content) {
|
|
124
130
|
yield {
|
|
125
131
|
event: "text_chunk",
|
|
126
132
|
data: { delta: chunk.delta.content }
|
|
@@ -129,7 +135,7 @@ var RewriteService = class {
|
|
|
129
135
|
}
|
|
130
136
|
}
|
|
131
137
|
/**
|
|
132
|
-
* Builds the prompt for the
|
|
138
|
+
* Builds the prompt for the aggregation decision.
|
|
133
139
|
*/
|
|
134
140
|
buildDecisionPrompt(originalQuery, results) {
|
|
135
141
|
const resultsText = results.map(
|
|
@@ -142,9 +148,9 @@ Results:
|
|
|
142
148
|
${resultsText}`;
|
|
143
149
|
}
|
|
144
150
|
/**
|
|
145
|
-
* Builds the prompt for generating
|
|
151
|
+
* Builds the prompt for generating an aggregated response.
|
|
146
152
|
*/
|
|
147
|
-
|
|
153
|
+
buildAggregatePrompt(originalQuery, results) {
|
|
148
154
|
const resultsText = results.map(
|
|
149
155
|
(r, i) => `[Task ${i + 1}] ${r.subquery}
|
|
150
156
|
[Response ${i + 1}] ${r.response}`
|
|
@@ -158,7 +164,7 @@ Please provide a unified response that addresses the original query.`;
|
|
|
158
164
|
}
|
|
159
165
|
};
|
|
160
166
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
//# sourceMappingURL=chunk-
|
|
167
|
+
export {
|
|
168
|
+
AggregateService
|
|
169
|
+
};
|
|
170
|
+
//# sourceMappingURL=chunk-TQJCYP7X.js.map
|