@ainetwork/adk 0.0.1
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/README.md +299 -0
- package/dist/cjs/ainagent.d.ts +15 -0
- package/dist/cjs/ainagent.d.ts.map +1 -0
- package/dist/cjs/ainagent.js +68 -0
- package/dist/cjs/ainagent.js.map +1 -0
- package/dist/cjs/app.d.ts +102 -0
- package/dist/cjs/app.d.ts.map +1 -0
- package/dist/cjs/app.js +170 -0
- package/dist/cjs/app.js.map +1 -0
- package/dist/cjs/controllers/a2a.controller.d.ts +14 -0
- package/dist/cjs/controllers/a2a.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/a2a.controller.js +98 -0
- package/dist/cjs/controllers/a2a.controller.js.map +1 -0
- package/dist/cjs/controllers/api/model.api.controller.d.ts +8 -0
- package/dist/cjs/controllers/api/model.api.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/api/model.api.controller.js +19 -0
- package/dist/cjs/controllers/api/model.api.controller.js.map +1 -0
- package/dist/cjs/controllers/api/session.api.controller.d.ts +8 -0
- package/dist/cjs/controllers/api/session.api.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/api/session.api.controller.js +21 -0
- package/dist/cjs/controllers/api/session.api.controller.js.map +1 -0
- package/dist/cjs/controllers/query.controller.d.ts +8 -0
- package/dist/cjs/controllers/query.controller.d.ts.map +1 -0
- package/dist/cjs/controllers/query.controller.js +20 -0
- package/dist/cjs/controllers/query.controller.js.map +1 -0
- package/dist/cjs/intent/analyzer.d.ts +24 -0
- package/dist/cjs/intent/analyzer.d.ts.map +1 -0
- package/dist/cjs/intent/analyzer.js +154 -0
- package/dist/cjs/intent/analyzer.js.map +1 -0
- package/dist/cjs/intent/modules/a2a/index.d.ts +12 -0
- package/dist/cjs/intent/modules/a2a/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/a2a/index.js +136 -0
- package/dist/cjs/intent/modules/a2a/index.js.map +1 -0
- package/dist/cjs/intent/modules/a2a/tool.d.ts +8 -0
- package/dist/cjs/intent/modules/a2a/tool.d.ts.map +1 -0
- package/dist/cjs/intent/modules/a2a/tool.js +14 -0
- package/dist/cjs/intent/modules/a2a/tool.js.map +1 -0
- package/dist/cjs/intent/modules/common/tool.d.ts +10 -0
- package/dist/cjs/intent/modules/common/tool.d.ts.map +1 -0
- package/dist/cjs/intent/modules/common/tool.js +18 -0
- package/dist/cjs/intent/modules/common/tool.js.map +1 -0
- package/dist/cjs/intent/modules/common/types.d.ts +5 -0
- package/dist/cjs/intent/modules/common/types.d.ts.map +1 -0
- package/dist/cjs/intent/modules/common/types.js +9 -0
- package/dist/cjs/intent/modules/common/types.js.map +1 -0
- package/dist/cjs/intent/modules/fol/client/folClient.d.ts +31 -0
- package/dist/cjs/intent/modules/fol/client/folClient.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/client/folClient.js +185 -0
- package/dist/cjs/intent/modules/fol/client/folClient.js.map +1 -0
- package/dist/cjs/intent/modules/fol/index.d.ts +4 -0
- package/dist/cjs/intent/modules/fol/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/index.js +14 -0
- package/dist/cjs/intent/modules/fol/index.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/base.d.ts +9 -0
- package/dist/cjs/intent/modules/fol/store/base.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/base.js +7 -0
- package/dist/cjs/intent/modules/fol/store/base.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/index.d.ts +5 -0
- package/dist/cjs/intent/modules/fol/store/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/index.js +12 -0
- package/dist/cjs/intent/modules/fol/store/index.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/local.d.ts +25 -0
- package/dist/cjs/intent/modules/fol/store/local.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/local.js +221 -0
- package/dist/cjs/intent/modules/fol/store/local.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/mongo.d.ts +4 -0
- package/dist/cjs/intent/modules/fol/store/mongo.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/mongo.js +9 -0
- package/dist/cjs/intent/modules/fol/store/mongo.js.map +1 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.d.ts +4 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.js +9 -0
- package/dist/cjs/intent/modules/fol/store/postgresql.js.map +1 -0
- package/dist/cjs/intent/modules/fol/types/index.d.ts +43 -0
- package/dist/cjs/intent/modules/fol/types/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/fol/types/index.js +3 -0
- package/dist/cjs/intent/modules/fol/types/index.js.map +1 -0
- package/dist/cjs/intent/modules/mcp/index.d.ts +12 -0
- package/dist/cjs/intent/modules/mcp/index.d.ts.map +1 -0
- package/dist/cjs/intent/modules/mcp/index.js +65 -0
- package/dist/cjs/intent/modules/mcp/index.js.map +1 -0
- package/dist/cjs/intent/modules/mcp/tool.d.ts +8 -0
- package/dist/cjs/intent/modules/mcp/tool.d.ts.map +1 -0
- package/dist/cjs/intent/modules/mcp/tool.js +15 -0
- package/dist/cjs/intent/modules/mcp/tool.js.map +1 -0
- package/dist/cjs/middleware/auth/base.d.ts +5 -0
- package/dist/cjs/middleware/auth/base.d.ts.map +1 -0
- package/dist/cjs/middleware/auth/base.js +13 -0
- package/dist/cjs/middleware/auth/base.js.map +1 -0
- package/dist/cjs/middlewares/auth/base.d.ts +5 -0
- package/dist/cjs/middlewares/auth/base.d.ts.map +1 -0
- package/dist/cjs/middlewares/auth/base.js +13 -0
- package/dist/cjs/middlewares/auth/base.js.map +1 -0
- package/dist/cjs/middlewares/error.middleware.d.ts +6 -0
- package/dist/cjs/middlewares/error.middleware.d.ts.map +1 -0
- package/dist/cjs/middlewares/error.middleware.js +17 -0
- package/dist/cjs/middlewares/error.middleware.js.map +1 -0
- package/dist/cjs/models/BaseModel.d.ts +25 -0
- package/dist/cjs/models/BaseModel.d.ts.map +1 -0
- package/dist/cjs/models/BaseModel.js +7 -0
- package/dist/cjs/models/BaseModel.js.map +1 -0
- package/dist/cjs/models/base.d.ts +24 -0
- package/dist/cjs/models/base.d.ts.map +1 -0
- package/dist/cjs/models/base.js +7 -0
- package/dist/cjs/models/base.js.map +1 -0
- package/dist/cjs/models/gemini.d.ts +16 -0
- package/dist/cjs/models/gemini.d.ts.map +1 -0
- package/dist/cjs/models/gemini.js +107 -0
- package/dist/cjs/models/gemini.js.map +1 -0
- package/dist/cjs/models/openai.d.ts +16 -0
- package/dist/cjs/models/openai.d.ts.map +1 -0
- package/dist/cjs/models/openai.js +113 -0
- package/dist/cjs/models/openai.js.map +1 -0
- package/dist/cjs/modules/a2a/a2a.module.d.ts +71 -0
- package/dist/cjs/modules/a2a/a2a.module.d.ts.map +1 -0
- package/dist/cjs/modules/a2a/a2a.module.js +195 -0
- package/dist/cjs/modules/a2a/a2a.module.js.map +1 -0
- package/dist/cjs/modules/a2a/a2a.tool.d.ts +13 -0
- package/dist/cjs/modules/a2a/a2a.tool.d.ts.map +1 -0
- package/dist/cjs/modules/a2a/a2a.tool.js +21 -0
- package/dist/cjs/modules/a2a/a2a.tool.js.map +1 -0
- package/dist/cjs/modules/fol/fol.module.d.ts +31 -0
- package/dist/cjs/modules/fol/fol.module.d.ts.map +1 -0
- package/dist/cjs/modules/fol/fol.module.js +180 -0
- package/dist/cjs/modules/fol/fol.module.js.map +1 -0
- package/dist/cjs/modules/fol/store/base.d.ts +9 -0
- package/dist/cjs/modules/fol/store/base.d.ts.map +1 -0
- package/dist/cjs/modules/fol/store/base.js +7 -0
- package/dist/cjs/modules/fol/store/base.js.map +1 -0
- package/dist/cjs/modules/fol/store/index.d.ts +3 -0
- package/dist/cjs/modules/fol/store/index.d.ts.map +1 -0
- package/dist/cjs/modules/fol/store/index.js +8 -0
- package/dist/cjs/modules/fol/store/index.js.map +1 -0
- package/dist/cjs/modules/fol/store/local.d.ts +25 -0
- package/dist/cjs/modules/fol/store/local.d.ts.map +1 -0
- package/dist/cjs/modules/fol/store/local.js +221 -0
- package/dist/cjs/modules/fol/store/local.js.map +1 -0
- package/dist/cjs/modules/index.d.ts +6 -0
- package/dist/cjs/modules/index.d.ts.map +1 -0
- package/dist/cjs/modules/index.js +14 -0
- package/dist/cjs/modules/index.js.map +1 -0
- package/dist/cjs/modules/mcp/mcp.module.d.ts +65 -0
- package/dist/cjs/modules/mcp/mcp.module.d.ts.map +1 -0
- package/dist/cjs/modules/mcp/mcp.module.js +118 -0
- package/dist/cjs/modules/mcp/mcp.module.js.map +1 -0
- package/dist/cjs/modules/mcp/mcp.tool.d.ts +13 -0
- package/dist/cjs/modules/mcp/mcp.tool.d.ts.map +1 -0
- package/dist/cjs/modules/mcp/mcp.tool.js +22 -0
- package/dist/cjs/modules/mcp/mcp.tool.js.map +1 -0
- package/dist/cjs/modules/memory/inmemory.d.ts +14 -0
- package/dist/cjs/modules/memory/inmemory.d.ts.map +1 -0
- package/dist/cjs/modules/memory/inmemory.js +27 -0
- package/dist/cjs/modules/memory/inmemory.js.map +1 -0
- package/dist/cjs/modules/memory/memory.module.d.ts +65 -0
- package/dist/cjs/modules/memory/memory.module.d.ts.map +1 -0
- package/dist/cjs/modules/memory/memory.module.js +50 -0
- package/dist/cjs/modules/memory/memory.module.js.map +1 -0
- package/dist/cjs/modules/models/gemini.d.ts +16 -0
- package/dist/cjs/modules/models/gemini.d.ts.map +1 -0
- package/dist/cjs/modules/models/gemini.js +108 -0
- package/dist/cjs/modules/models/gemini.js.map +1 -0
- package/dist/cjs/modules/models/model.module.d.ts +102 -0
- package/dist/cjs/modules/models/model.module.d.ts.map +1 -0
- package/dist/cjs/modules/models/model.module.js +80 -0
- package/dist/cjs/modules/models/model.module.js.map +1 -0
- package/dist/cjs/modules/models/openai.d.ts +16 -0
- package/dist/cjs/modules/models/openai.d.ts.map +1 -0
- package/dist/cjs/modules/models/openai.js +114 -0
- package/dist/cjs/modules/models/openai.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/router/a2a/executor.d.ts +11 -0
- package/dist/cjs/router/a2a/executor.d.ts.map +1 -0
- package/dist/cjs/router/a2a/executor.js +96 -0
- package/dist/cjs/router/a2a/executor.js.map +1 -0
- package/dist/cjs/router/a2a/requestHandler.d.ts +9 -0
- package/dist/cjs/router/a2a/requestHandler.d.ts.map +1 -0
- package/dist/cjs/router/a2a/requestHandler.js +20 -0
- package/dist/cjs/router/a2a/requestHandler.js.map +1 -0
- package/dist/cjs/router/a2a/router.d.ts +12 -0
- package/dist/cjs/router/a2a/router.d.ts.map +1 -0
- package/dist/cjs/router/a2a/router.js +99 -0
- package/dist/cjs/router/a2a/router.js.map +1 -0
- package/dist/cjs/routes/a2a.routes.d.ts +12 -0
- package/dist/cjs/routes/a2a.routes.d.ts.map +1 -0
- package/dist/cjs/routes/a2a.routes.js +29 -0
- package/dist/cjs/routes/a2a.routes.js.map +1 -0
- package/dist/cjs/routes/api/models.routes.d.ts +4 -0
- package/dist/cjs/routes/api/models.routes.d.ts.map +1 -0
- package/dist/cjs/routes/api/models.routes.js +14 -0
- package/dist/cjs/routes/api/models.routes.js.map +1 -0
- package/dist/cjs/routes/api/sessions.routes.d.ts +4 -0
- package/dist/cjs/routes/api/sessions.routes.d.ts.map +1 -0
- package/dist/cjs/routes/api/sessions.routes.js +14 -0
- package/dist/cjs/routes/api/sessions.routes.js.map +1 -0
- package/dist/cjs/routes/api.routes.d.ts +4 -0
- package/dist/cjs/routes/api.routes.d.ts.map +1 -0
- package/dist/cjs/routes/api.routes.js +16 -0
- package/dist/cjs/routes/api.routes.js.map +1 -0
- package/dist/cjs/routes/index.d.ts +5 -0
- package/dist/cjs/routes/index.d.ts.map +1 -0
- package/dist/cjs/routes/index.js +10 -0
- package/dist/cjs/routes/index.js.map +1 -0
- package/dist/cjs/routes/query.routes.d.ts +4 -0
- package/dist/cjs/routes/query.routes.d.ts.map +1 -0
- package/dist/cjs/routes/query.routes.js +15 -0
- package/dist/cjs/routes/query.routes.js.map +1 -0
- package/dist/cjs/services/a2a.service.d.ts +15 -0
- package/dist/cjs/services/a2a.service.d.ts.map +1 -0
- package/dist/cjs/services/a2a.service.js +93 -0
- package/dist/cjs/services/a2a.service.js.map +1 -0
- package/dist/cjs/services/query.service.d.ts +57 -0
- package/dist/cjs/services/query.service.d.ts.map +1 -0
- package/dist/cjs/services/query.service.js +158 -0
- package/dist/cjs/services/query.service.js.map +1 -0
- package/dist/cjs/session/BaseSession.d.ts +21 -0
- package/dist/cjs/session/BaseSession.d.ts.map +1 -0
- package/dist/cjs/session/BaseSession.js +13 -0
- package/dist/cjs/session/BaseSession.js.map +1 -0
- package/dist/cjs/types/fol.d.ts +38 -0
- package/dist/cjs/types/fol.d.ts.map +1 -0
- package/dist/cjs/types/fol.js +3 -0
- package/dist/cjs/types/fol.js.map +1 -0
- package/dist/cjs/types/index.d.ts +44 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +3 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/mcp.d.ts +5 -0
- package/dist/cjs/types/mcp.d.ts.map +1 -0
- package/dist/cjs/types/mcp.js +3 -0
- package/dist/cjs/types/mcp.js.map +1 -0
- package/dist/cjs/types/memory.d.ts +73 -0
- package/dist/cjs/types/memory.d.ts.map +1 -0
- package/dist/cjs/types/memory.js +16 -0
- package/dist/cjs/types/memory.js.map +1 -0
- package/dist/cjs/types/tool.d.ts +87 -0
- package/dist/cjs/types/tool.d.ts.map +1 -0
- package/dist/cjs/types/tool.js +14 -0
- package/dist/cjs/types/tool.js.map +1 -0
- package/dist/cjs/utils/logger.d.ts +13 -0
- package/dist/cjs/utils/logger.d.ts.map +1 -0
- package/dist/cjs/utils/logger.js +39 -0
- package/dist/cjs/utils/logger.js.map +1 -0
- package/dist/esm/ainagent.d.ts +15 -0
- package/dist/esm/ainagent.d.ts.map +1 -0
- package/dist/esm/ainagent.js +61 -0
- package/dist/esm/ainagent.js.map +1 -0
- package/dist/esm/app.d.ts +102 -0
- package/dist/esm/app.d.ts.map +1 -0
- package/dist/esm/app.js +163 -0
- package/dist/esm/app.js.map +1 -0
- package/dist/esm/controllers/a2a.controller.d.ts +14 -0
- package/dist/esm/controllers/a2a.controller.d.ts.map +1 -0
- package/dist/esm/controllers/a2a.controller.js +94 -0
- package/dist/esm/controllers/a2a.controller.js.map +1 -0
- package/dist/esm/controllers/api/model.api.controller.d.ts +8 -0
- package/dist/esm/controllers/api/model.api.controller.d.ts.map +1 -0
- package/dist/esm/controllers/api/model.api.controller.js +15 -0
- package/dist/esm/controllers/api/model.api.controller.js.map +1 -0
- package/dist/esm/controllers/api/session.api.controller.d.ts +8 -0
- package/dist/esm/controllers/api/session.api.controller.d.ts.map +1 -0
- package/dist/esm/controllers/api/session.api.controller.js +17 -0
- package/dist/esm/controllers/api/session.api.controller.js.map +1 -0
- package/dist/esm/controllers/query.controller.d.ts +8 -0
- package/dist/esm/controllers/query.controller.d.ts.map +1 -0
- package/dist/esm/controllers/query.controller.js +16 -0
- package/dist/esm/controllers/query.controller.js.map +1 -0
- package/dist/esm/intent/analyzer.d.ts +24 -0
- package/dist/esm/intent/analyzer.d.ts.map +1 -0
- package/dist/esm/intent/analyzer.js +150 -0
- package/dist/esm/intent/analyzer.js.map +1 -0
- package/dist/esm/intent/modules/a2a/index.d.ts +12 -0
- package/dist/esm/intent/modules/a2a/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/a2a/index.js +132 -0
- package/dist/esm/intent/modules/a2a/index.js.map +1 -0
- package/dist/esm/intent/modules/a2a/tool.d.ts +8 -0
- package/dist/esm/intent/modules/a2a/tool.d.ts.map +1 -0
- package/dist/esm/intent/modules/a2a/tool.js +10 -0
- package/dist/esm/intent/modules/a2a/tool.js.map +1 -0
- package/dist/esm/intent/modules/common/tool.d.ts +10 -0
- package/dist/esm/intent/modules/common/tool.d.ts.map +1 -0
- package/dist/esm/intent/modules/common/tool.js +14 -0
- package/dist/esm/intent/modules/common/tool.js.map +1 -0
- package/dist/esm/intent/modules/common/types.d.ts +5 -0
- package/dist/esm/intent/modules/common/types.d.ts.map +1 -0
- package/dist/esm/intent/modules/common/types.js +6 -0
- package/dist/esm/intent/modules/common/types.js.map +1 -0
- package/dist/esm/intent/modules/fol/client/folClient.d.ts +31 -0
- package/dist/esm/intent/modules/fol/client/folClient.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/client/folClient.js +178 -0
- package/dist/esm/intent/modules/fol/client/folClient.js.map +1 -0
- package/dist/esm/intent/modules/fol/index.d.ts +4 -0
- package/dist/esm/intent/modules/fol/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/index.js +6 -0
- package/dist/esm/intent/modules/fol/index.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/base.d.ts +9 -0
- package/dist/esm/intent/modules/fol/store/base.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/base.js +3 -0
- package/dist/esm/intent/modules/fol/store/base.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/index.d.ts +5 -0
- package/dist/esm/intent/modules/fol/store/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/index.js +5 -0
- package/dist/esm/intent/modules/fol/store/index.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/local.d.ts +25 -0
- package/dist/esm/intent/modules/fol/store/local.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/local.js +214 -0
- package/dist/esm/intent/modules/fol/store/local.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/mongo.d.ts +4 -0
- package/dist/esm/intent/modules/fol/store/mongo.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/mongo.js +5 -0
- package/dist/esm/intent/modules/fol/store/mongo.js.map +1 -0
- package/dist/esm/intent/modules/fol/store/postgresql.d.ts +4 -0
- package/dist/esm/intent/modules/fol/store/postgresql.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/store/postgresql.js +5 -0
- package/dist/esm/intent/modules/fol/store/postgresql.js.map +1 -0
- package/dist/esm/intent/modules/fol/types/index.d.ts +43 -0
- package/dist/esm/intent/modules/fol/types/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/fol/types/index.js +2 -0
- package/dist/esm/intent/modules/fol/types/index.js.map +1 -0
- package/dist/esm/intent/modules/mcp/index.d.ts +12 -0
- package/dist/esm/intent/modules/mcp/index.d.ts.map +1 -0
- package/dist/esm/intent/modules/mcp/index.js +61 -0
- package/dist/esm/intent/modules/mcp/index.js.map +1 -0
- package/dist/esm/intent/modules/mcp/tool.d.ts +8 -0
- package/dist/esm/intent/modules/mcp/tool.d.ts.map +1 -0
- package/dist/esm/intent/modules/mcp/tool.js +11 -0
- package/dist/esm/intent/modules/mcp/tool.js.map +1 -0
- package/dist/esm/middleware/auth/base.d.ts +5 -0
- package/dist/esm/middleware/auth/base.d.ts.map +1 -0
- package/dist/esm/middleware/auth/base.js +9 -0
- package/dist/esm/middleware/auth/base.js.map +1 -0
- package/dist/esm/middlewares/auth/base.d.ts +5 -0
- package/dist/esm/middlewares/auth/base.d.ts.map +1 -0
- package/dist/esm/middlewares/auth/base.js +9 -0
- package/dist/esm/middlewares/auth/base.js.map +1 -0
- package/dist/esm/middlewares/error.middleware.d.ts +6 -0
- package/dist/esm/middlewares/error.middleware.d.ts.map +1 -0
- package/dist/esm/middlewares/error.middleware.js +13 -0
- package/dist/esm/middlewares/error.middleware.js.map +1 -0
- package/dist/esm/models/BaseModel.d.ts +25 -0
- package/dist/esm/models/BaseModel.d.ts.map +1 -0
- package/dist/esm/models/BaseModel.js +3 -0
- package/dist/esm/models/BaseModel.js.map +1 -0
- package/dist/esm/models/base.d.ts +24 -0
- package/dist/esm/models/base.d.ts.map +1 -0
- package/dist/esm/models/base.js +3 -0
- package/dist/esm/models/base.js.map +1 -0
- package/dist/esm/models/gemini.d.ts +16 -0
- package/dist/esm/models/gemini.d.ts.map +1 -0
- package/dist/esm/models/gemini.js +104 -0
- package/dist/esm/models/gemini.js.map +1 -0
- package/dist/esm/models/openai.d.ts +16 -0
- package/dist/esm/models/openai.d.ts.map +1 -0
- package/dist/esm/models/openai.js +110 -0
- package/dist/esm/models/openai.js.map +1 -0
- package/dist/esm/modules/a2a/a2a.module.d.ts +71 -0
- package/dist/esm/modules/a2a/a2a.module.d.ts.map +1 -0
- package/dist/esm/modules/a2a/a2a.module.js +191 -0
- package/dist/esm/modules/a2a/a2a.module.js.map +1 -0
- package/dist/esm/modules/a2a/a2a.tool.d.ts +13 -0
- package/dist/esm/modules/a2a/a2a.tool.d.ts.map +1 -0
- package/dist/esm/modules/a2a/a2a.tool.js +17 -0
- package/dist/esm/modules/a2a/a2a.tool.js.map +1 -0
- package/dist/esm/modules/fol/fol.module.d.ts +31 -0
- package/dist/esm/modules/fol/fol.module.d.ts.map +1 -0
- package/dist/esm/modules/fol/fol.module.js +176 -0
- package/dist/esm/modules/fol/fol.module.js.map +1 -0
- package/dist/esm/modules/fol/store/base.d.ts +9 -0
- package/dist/esm/modules/fol/store/base.d.ts.map +1 -0
- package/dist/esm/modules/fol/store/base.js +3 -0
- package/dist/esm/modules/fol/store/base.js.map +1 -0
- package/dist/esm/modules/fol/store/index.d.ts +3 -0
- package/dist/esm/modules/fol/store/index.d.ts.map +1 -0
- package/dist/esm/modules/fol/store/index.js +3 -0
- package/dist/esm/modules/fol/store/index.js.map +1 -0
- package/dist/esm/modules/fol/store/local.d.ts +25 -0
- package/dist/esm/modules/fol/store/local.d.ts.map +1 -0
- package/dist/esm/modules/fol/store/local.js +214 -0
- package/dist/esm/modules/fol/store/local.js.map +1 -0
- package/dist/esm/modules/index.d.ts +6 -0
- package/dist/esm/modules/index.d.ts.map +1 -0
- package/dist/esm/modules/index.js +6 -0
- package/dist/esm/modules/index.js.map +1 -0
- package/dist/esm/modules/mcp/mcp.module.d.ts +65 -0
- package/dist/esm/modules/mcp/mcp.module.d.ts.map +1 -0
- package/dist/esm/modules/mcp/mcp.module.js +114 -0
- package/dist/esm/modules/mcp/mcp.module.js.map +1 -0
- package/dist/esm/modules/mcp/mcp.tool.d.ts +13 -0
- package/dist/esm/modules/mcp/mcp.tool.d.ts.map +1 -0
- package/dist/esm/modules/mcp/mcp.tool.js +18 -0
- package/dist/esm/modules/mcp/mcp.tool.js.map +1 -0
- package/dist/esm/modules/memory/inmemory.d.ts +14 -0
- package/dist/esm/modules/memory/inmemory.d.ts.map +1 -0
- package/dist/esm/modules/memory/inmemory.js +23 -0
- package/dist/esm/modules/memory/inmemory.js.map +1 -0
- package/dist/esm/modules/memory/memory.module.d.ts +65 -0
- package/dist/esm/modules/memory/memory.module.d.ts.map +1 -0
- package/dist/esm/modules/memory/memory.module.js +45 -0
- package/dist/esm/modules/memory/memory.module.js.map +1 -0
- package/dist/esm/modules/models/gemini.d.ts +16 -0
- package/dist/esm/modules/models/gemini.d.ts.map +1 -0
- package/dist/esm/modules/models/gemini.js +104 -0
- package/dist/esm/modules/models/gemini.js.map +1 -0
- package/dist/esm/modules/models/model.module.d.ts +102 -0
- package/dist/esm/modules/models/model.module.d.ts.map +1 -0
- package/dist/esm/modules/models/model.module.js +75 -0
- package/dist/esm/modules/models/model.module.js.map +1 -0
- package/dist/esm/modules/models/openai.d.ts +16 -0
- package/dist/esm/modules/models/openai.d.ts.map +1 -0
- package/dist/esm/modules/models/openai.js +110 -0
- package/dist/esm/modules/models/openai.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/router/a2a/executor.d.ts +11 -0
- package/dist/esm/router/a2a/executor.d.ts.map +1 -0
- package/dist/esm/router/a2a/executor.js +92 -0
- package/dist/esm/router/a2a/executor.js.map +1 -0
- package/dist/esm/router/a2a/requestHandler.d.ts +9 -0
- package/dist/esm/router/a2a/requestHandler.d.ts.map +1 -0
- package/dist/esm/router/a2a/requestHandler.js +16 -0
- package/dist/esm/router/a2a/requestHandler.js.map +1 -0
- package/dist/esm/router/a2a/router.d.ts +12 -0
- package/dist/esm/router/a2a/router.d.ts.map +1 -0
- package/dist/esm/router/a2a/router.js +95 -0
- package/dist/esm/router/a2a/router.js.map +1 -0
- package/dist/esm/routes/a2a.routes.d.ts +12 -0
- package/dist/esm/routes/a2a.routes.d.ts.map +1 -0
- package/dist/esm/routes/a2a.routes.js +25 -0
- package/dist/esm/routes/a2a.routes.js.map +1 -0
- package/dist/esm/routes/api/models.routes.d.ts +4 -0
- package/dist/esm/routes/api/models.routes.d.ts.map +1 -0
- package/dist/esm/routes/api/models.routes.js +10 -0
- package/dist/esm/routes/api/models.routes.js.map +1 -0
- package/dist/esm/routes/api/sessions.routes.d.ts +4 -0
- package/dist/esm/routes/api/sessions.routes.d.ts.map +1 -0
- package/dist/esm/routes/api/sessions.routes.js +10 -0
- package/dist/esm/routes/api/sessions.routes.js.map +1 -0
- package/dist/esm/routes/api.routes.d.ts +4 -0
- package/dist/esm/routes/api.routes.d.ts.map +1 -0
- package/dist/esm/routes/api.routes.js +12 -0
- package/dist/esm/routes/api.routes.js.map +1 -0
- package/dist/esm/routes/index.d.ts +5 -0
- package/dist/esm/routes/index.d.ts.map +1 -0
- package/dist/esm/routes/index.js +5 -0
- package/dist/esm/routes/index.js.map +1 -0
- package/dist/esm/routes/query.routes.d.ts +4 -0
- package/dist/esm/routes/query.routes.d.ts.map +1 -0
- package/dist/esm/routes/query.routes.js +11 -0
- package/dist/esm/routes/query.routes.js.map +1 -0
- package/dist/esm/services/a2a.service.d.ts +15 -0
- package/dist/esm/services/a2a.service.d.ts.map +1 -0
- package/dist/esm/services/a2a.service.js +89 -0
- package/dist/esm/services/a2a.service.js.map +1 -0
- package/dist/esm/services/query.service.d.ts +57 -0
- package/dist/esm/services/query.service.d.ts.map +1 -0
- package/dist/esm/services/query.service.js +154 -0
- package/dist/esm/services/query.service.js.map +1 -0
- package/dist/esm/session/BaseSession.d.ts +21 -0
- package/dist/esm/session/BaseSession.d.ts.map +1 -0
- package/dist/esm/session/BaseSession.js +9 -0
- package/dist/esm/session/BaseSession.js.map +1 -0
- package/dist/esm/types/fol.d.ts +38 -0
- package/dist/esm/types/fol.d.ts.map +1 -0
- package/dist/esm/types/fol.js +2 -0
- package/dist/esm/types/fol.js.map +1 -0
- package/dist/esm/types/index.d.ts +44 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/mcp.d.ts +5 -0
- package/dist/esm/types/mcp.d.ts.map +1 -0
- package/dist/esm/types/mcp.js +2 -0
- package/dist/esm/types/mcp.js.map +1 -0
- package/dist/esm/types/memory.d.ts +73 -0
- package/dist/esm/types/memory.d.ts.map +1 -0
- package/dist/esm/types/memory.js +13 -0
- package/dist/esm/types/memory.js.map +1 -0
- package/dist/esm/types/tool.d.ts +87 -0
- package/dist/esm/types/tool.d.ts.map +1 -0
- package/dist/esm/types/tool.js +11 -0
- package/dist/esm/types/tool.js.map +1 -0
- package/dist/esm/utils/logger.d.ts +13 -0
- package/dist/esm/utils/logger.d.ts.map +1 -0
- package/dist/esm/utils/logger.js +32 -0
- package/dist/esm/utils/logger.js.map +1 -0
- package/package.json +63 -0
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*******************************************
|
|
3
|
+
* WARNING: FOR TESTING PURPOSES ONLY *
|
|
4
|
+
* DO NOT USE IN PRODUCTION *
|
|
5
|
+
*******************************************/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.InMemoryMemory = void 0;
|
|
8
|
+
const node_crypto_1 = require("node:crypto");
|
|
9
|
+
const memory_module_js_1 = require("./memory.module.js");
|
|
10
|
+
class InMemoryMemory extends memory_module_js_1.BaseMemory {
|
|
11
|
+
constructor() {
|
|
12
|
+
super();
|
|
13
|
+
this.sessionHistory = new Map();
|
|
14
|
+
}
|
|
15
|
+
async getSessionHistory(sessionId) {
|
|
16
|
+
return this.sessionHistory.get(sessionId) || { chats: {} };
|
|
17
|
+
}
|
|
18
|
+
async updateSessionHistory(sessionId, chat) {
|
|
19
|
+
const newChatId = (0, node_crypto_1.randomUUID)();
|
|
20
|
+
const history = await this.getSessionHistory(sessionId);
|
|
21
|
+
history.chats[newChatId] = chat;
|
|
22
|
+
this.sessionHistory.set(sessionId, history);
|
|
23
|
+
}
|
|
24
|
+
async storeQueryAndIntent(query, intent, sessionId) { }
|
|
25
|
+
}
|
|
26
|
+
exports.InMemoryMemory = InMemoryMemory;
|
|
27
|
+
//# sourceMappingURL=inmemory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inmemory.js","sourceRoot":"","sources":["../../../../src/modules/memory/inmemory.ts"],"names":[],"mappings":";AAAA;;;6CAG6C;;;AAE7C,6CAAyC;AAEzC,yDAAgD;AAEhD,MAAa,cAAe,SAAQ,6BAAU;IAG7C;QACC,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,cAAc,GAAG,IAAI,GAAG,EAAyB,CAAC;IACxD,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAAC,SAAiB;QAC/C,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IAC5D,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAChC,SAAiB,EACjB,IAAgB;QAEhB,MAAM,SAAS,GAAG,IAAA,wBAAU,GAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACxD,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7C,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAC/B,KAAa,EACb,MAAc,EACd,SAAiB,IACf,CAAC;CACJ;AA3BD,wCA2BC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import type { ChatObject, SessionObject } from "../../types/memory.js";
|
|
2
|
+
/**
|
|
3
|
+
* Abstract base class for memory storage implementations.
|
|
4
|
+
*
|
|
5
|
+
* Provides an interface for storing and retrieving conversation history
|
|
6
|
+
* and query-intent pairs. Implementations can use various backends
|
|
7
|
+
* such as in-memory storage, databases, or file systems.
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class BaseMemory {
|
|
10
|
+
/**
|
|
11
|
+
* Retrieves the conversation history for a specific session.
|
|
12
|
+
*
|
|
13
|
+
* @param sessionId - Unique identifier for the session
|
|
14
|
+
* @returns Promise resolving to the session's conversation history
|
|
15
|
+
*/
|
|
16
|
+
abstract getSessionHistory(sessionId: string): Promise<SessionObject>;
|
|
17
|
+
/**
|
|
18
|
+
* Adds a new chat message to the session history.
|
|
19
|
+
*
|
|
20
|
+
* @param sessionId - Unique identifier for the session
|
|
21
|
+
* @param chat - The chat object to add to the history
|
|
22
|
+
*/
|
|
23
|
+
abstract updateSessionHistory(sessionId: string, chat: ChatObject): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Stores a query-intent pair for analysis or training purposes.
|
|
26
|
+
*
|
|
27
|
+
* @param query - The user's input query
|
|
28
|
+
* @param intent - The detected intent for the query
|
|
29
|
+
* @param sessionId - Unique identifier for the session
|
|
30
|
+
*/
|
|
31
|
+
abstract storeQueryAndIntent(query: string, intent: string, sessionId: string): Promise<void>;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Module wrapper for memory storage implementations.
|
|
35
|
+
*
|
|
36
|
+
* Provides a consistent interface for accessing memory storage
|
|
37
|
+
* functionality throughout the application. Currently supports
|
|
38
|
+
* a single memory implementation but designed for future extensibility.
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* ```typescript
|
|
42
|
+
* const inMemoryStorage = new InMemoryStorage();
|
|
43
|
+
* const memoryModule = new MemoryModule(inMemoryStorage);
|
|
44
|
+
*
|
|
45
|
+
* const memory = memoryModule.getMemory();
|
|
46
|
+
* await memory.updateSessionHistory("session-123", chatMessage);
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare class MemoryModule {
|
|
50
|
+
/** The memory storage implementation */
|
|
51
|
+
private memory;
|
|
52
|
+
/**
|
|
53
|
+
* Creates a new MemoryModule with the specified storage implementation.
|
|
54
|
+
*
|
|
55
|
+
* @param memory - The memory storage implementation to use
|
|
56
|
+
*/
|
|
57
|
+
constructor(memory: BaseMemory);
|
|
58
|
+
/**
|
|
59
|
+
* Returns the current memory storage implementation.
|
|
60
|
+
*
|
|
61
|
+
* @returns The active memory storage instance
|
|
62
|
+
*/
|
|
63
|
+
getMemory(): BaseMemory;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=memory.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.module.d.ts","sourceRoot":"","sources":["../../../../src/modules/memory/memory.module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEnE;;;;;;GAMG;AACH,8BAAsB,UAAU;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IACrE;;;;;OAKG;IACH,QAAQ,CAAC,oBAAoB,CAC5B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,UAAU,GACd,OAAO,CAAC,IAAI,CAAC;IAChB;;;;;;OAMG;IACH,QAAQ,CAAC,mBAAmB,CAC3B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;CAChB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,YAAY;IACxB,wCAAwC;IACxC,OAAO,CAAC,MAAM,CAAa;IAE3B;;;;OAIG;gBACS,MAAM,EAAE,UAAU;IAI9B;;;;OAIG;IACI,SAAS;CAIhB"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MemoryModule = exports.BaseMemory = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Abstract base class for memory storage implementations.
|
|
6
|
+
*
|
|
7
|
+
* Provides an interface for storing and retrieving conversation history
|
|
8
|
+
* and query-intent pairs. Implementations can use various backends
|
|
9
|
+
* such as in-memory storage, databases, or file systems.
|
|
10
|
+
*/
|
|
11
|
+
class BaseMemory {
|
|
12
|
+
}
|
|
13
|
+
exports.BaseMemory = BaseMemory;
|
|
14
|
+
/**
|
|
15
|
+
* Module wrapper for memory storage implementations.
|
|
16
|
+
*
|
|
17
|
+
* Provides a consistent interface for accessing memory storage
|
|
18
|
+
* functionality throughout the application. Currently supports
|
|
19
|
+
* a single memory implementation but designed for future extensibility.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```typescript
|
|
23
|
+
* const inMemoryStorage = new InMemoryStorage();
|
|
24
|
+
* const memoryModule = new MemoryModule(inMemoryStorage);
|
|
25
|
+
*
|
|
26
|
+
* const memory = memoryModule.getMemory();
|
|
27
|
+
* await memory.updateSessionHistory("session-123", chatMessage);
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
class MemoryModule {
|
|
31
|
+
/**
|
|
32
|
+
* Creates a new MemoryModule with the specified storage implementation.
|
|
33
|
+
*
|
|
34
|
+
* @param memory - The memory storage implementation to use
|
|
35
|
+
*/
|
|
36
|
+
constructor(memory) {
|
|
37
|
+
this.memory = memory;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Returns the current memory storage implementation.
|
|
41
|
+
*
|
|
42
|
+
* @returns The active memory storage instance
|
|
43
|
+
*/
|
|
44
|
+
getMemory() {
|
|
45
|
+
// TODO: Support multi-memory for each type of memory?
|
|
46
|
+
return this.memory;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.MemoryModule = MemoryModule;
|
|
50
|
+
//# sourceMappingURL=memory.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memory.module.js","sourceRoot":"","sources":["../../../../src/modules/memory/memory.module.ts"],"names":[],"mappings":";;;AAEA;;;;;;GAMG;AACH,MAAsB,UAAU;CA8B/B;AA9BD,gCA8BC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAa,YAAY;IAIxB;;;;OAIG;IACH,YAAY,MAAkB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACI,SAAS;QACf,sDAAsD;QACtD,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;CACD;AAtBD,oCAsBC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type Content, type FunctionDeclaration } from "@google/genai";
|
|
2
|
+
import { type SessionObject } from "../../types/memory.js";
|
|
3
|
+
import type { FetchResponse, IAgentTool } from "../../types/tool.js";
|
|
4
|
+
import { BaseModel } from "./model.module.js";
|
|
5
|
+
export declare class GeminiModel extends BaseModel<Content, FunctionDeclaration> {
|
|
6
|
+
private client;
|
|
7
|
+
private modelName;
|
|
8
|
+
constructor(apiKey: string, modelName: string);
|
|
9
|
+
private getMessageRole;
|
|
10
|
+
generateMessages(sessionHistory: SessionObject, query: string, systemPrompt?: string): Content[];
|
|
11
|
+
appendMessages(messages: Content[], message: string): void;
|
|
12
|
+
fetch(messages: Content[]): Promise<FetchResponse>;
|
|
13
|
+
fetchWithContextMessage(messages: Content[], functions: FunctionDeclaration[]): Promise<FetchResponse>;
|
|
14
|
+
convertToolsToFunctions(tools: IAgentTool[]): FunctionDeclaration[];
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=gemini.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../../src/modules/models/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,OAAO,EAEZ,KAAK,mBAAmB,EAExB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EACX,aAAa,EAEb,UAAU,EAGV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,qBAAa,WAAY,SAAQ,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACvE,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,SAAS,CAAS;gBAEd,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;IAM7C,OAAO,CAAC,cAAc;IAYtB,gBAAgB,CACf,cAAc,EAAE,aAAa,EAC7B,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,GACnB,OAAO,EAAE;IAkBZ,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAOpD,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IASlD,uBAAuB,CAC5B,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE,mBAAmB,EAAE,GAC9B,OAAO,CAAC,aAAa,CAAC;IAiCzB,uBAAuB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,mBAAmB,EAAE;CAwBnE"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GeminiModel = void 0;
|
|
4
|
+
const genai_1 = require("@google/genai");
|
|
5
|
+
const memory_js_1 = require("../../types/memory.js");
|
|
6
|
+
const tool_js_1 = require("../../types/tool.js");
|
|
7
|
+
const model_module_js_1 = require("./model.module.js");
|
|
8
|
+
class GeminiModel extends model_module_js_1.BaseModel {
|
|
9
|
+
constructor(apiKey, modelName) {
|
|
10
|
+
super();
|
|
11
|
+
this.client = new genai_1.GoogleGenAI({ apiKey });
|
|
12
|
+
this.modelName = modelName;
|
|
13
|
+
}
|
|
14
|
+
getMessageRole(role) {
|
|
15
|
+
switch (role) {
|
|
16
|
+
case memory_js_1.ChatRole.USER:
|
|
17
|
+
return "user";
|
|
18
|
+
case memory_js_1.ChatRole.MODEL:
|
|
19
|
+
case memory_js_1.ChatRole.SYSTEM:
|
|
20
|
+
return "model";
|
|
21
|
+
default:
|
|
22
|
+
return "model"; /*FIXME*/
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
generateMessages(sessionHistory, query, systemPrompt) {
|
|
26
|
+
const messages = !systemPrompt
|
|
27
|
+
? []
|
|
28
|
+
: [{ role: "model", parts: [{ text: systemPrompt.trim() }] }];
|
|
29
|
+
const sessionContent = Object.keys(sessionHistory.chats).map((chatId) => {
|
|
30
|
+
const chat = sessionHistory.chats[chatId];
|
|
31
|
+
// TODO: check message.content.type
|
|
32
|
+
return {
|
|
33
|
+
role: this.getMessageRole(chat.role),
|
|
34
|
+
parts: [{ text: chat.content.parts[0] }],
|
|
35
|
+
};
|
|
36
|
+
});
|
|
37
|
+
const userContent = { role: "user", parts: [{ text: query }] };
|
|
38
|
+
return messages.concat(sessionContent).concat(userContent);
|
|
39
|
+
}
|
|
40
|
+
appendMessages(messages, message) {
|
|
41
|
+
messages.push({
|
|
42
|
+
role: "user",
|
|
43
|
+
parts: [{ text: message }],
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
async fetch(messages) {
|
|
47
|
+
const response = await this.client.models.generateContent({
|
|
48
|
+
model: this.modelName,
|
|
49
|
+
contents: messages,
|
|
50
|
+
});
|
|
51
|
+
return { content: response.text };
|
|
52
|
+
}
|
|
53
|
+
async fetchWithContextMessage(messages, functions) {
|
|
54
|
+
if (functions.length > 0) {
|
|
55
|
+
const response = await this.client.models.generateContent({
|
|
56
|
+
model: this.modelName,
|
|
57
|
+
contents: messages,
|
|
58
|
+
config: {
|
|
59
|
+
tools: [{ functionDeclarations: functions }],
|
|
60
|
+
},
|
|
61
|
+
});
|
|
62
|
+
const { text, functionCalls } = response;
|
|
63
|
+
const hasName = (value) => {
|
|
64
|
+
return value.name !== undefined;
|
|
65
|
+
};
|
|
66
|
+
const toolCalls = functionCalls
|
|
67
|
+
?.filter(hasName)
|
|
68
|
+
.map((value) => {
|
|
69
|
+
return {
|
|
70
|
+
name: value.name,
|
|
71
|
+
arguments: value.args,
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
return {
|
|
75
|
+
content: text,
|
|
76
|
+
toolCalls,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
return await this.fetch(messages);
|
|
80
|
+
}
|
|
81
|
+
convertToolsToFunctions(tools) {
|
|
82
|
+
const functions = [];
|
|
83
|
+
for (const tool of tools) {
|
|
84
|
+
if (!tool.enabled) {
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
if (tool.protocol === tool_js_1.TOOL_PROTOCOL_TYPE.MCP) {
|
|
88
|
+
const { mcpTool, id } = tool;
|
|
89
|
+
functions.push({
|
|
90
|
+
name: id,
|
|
91
|
+
description: mcpTool.description,
|
|
92
|
+
parametersJsonSchema: mcpTool.inputSchema,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
// PROTOCOL_TYPE.A2A
|
|
97
|
+
const { id, card } = tool;
|
|
98
|
+
functions.push({
|
|
99
|
+
name: id,
|
|
100
|
+
description: card.description,
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
return functions;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
exports.GeminiModel = GeminiModel;
|
|
108
|
+
//# sourceMappingURL=gemini.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../../src/modules/models/gemini.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { SessionObject } from "../../types/memory.js";
|
|
2
|
+
import type { FetchResponse, IAgentTool } from "../../types/tool.js";
|
|
3
|
+
/**
|
|
4
|
+
* Abstract base class for AI model implementations.
|
|
5
|
+
*
|
|
6
|
+
* Provides a common interface for different AI model providers (OpenAI, Gemini, etc.)
|
|
7
|
+
* to integrate with the AIN-ADK framework. Each model implementation must handle
|
|
8
|
+
* message formatting, tool conversion, and API communication.
|
|
9
|
+
*
|
|
10
|
+
* @typeParam MessageType - The message format used by the specific model API
|
|
11
|
+
* @typeParam FunctionType - The function/tool format used by the specific model API
|
|
12
|
+
*/
|
|
13
|
+
export declare abstract class BaseModel<MessageType, FunctionType> {
|
|
14
|
+
/**
|
|
15
|
+
* Generates an array of messages from session history and current query.
|
|
16
|
+
*
|
|
17
|
+
* @param sessionHistory - Previous conversation history
|
|
18
|
+
* @param query - Current user query
|
|
19
|
+
* @param systemPrompt - Optional system prompt to set context
|
|
20
|
+
* @returns Array of messages formatted for the specific model API
|
|
21
|
+
*/
|
|
22
|
+
abstract generateMessages(sessionHistory: SessionObject, query: string, systemPrompt?: string): MessageType[];
|
|
23
|
+
/**
|
|
24
|
+
* Appends a new message to the existing message array.
|
|
25
|
+
*
|
|
26
|
+
* @param messages - Existing message array to expand
|
|
27
|
+
* @param message - New message content to append
|
|
28
|
+
*/
|
|
29
|
+
abstract appendMessages(messages: MessageType[], message: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* Converts protocol-agnostic tools to model-specific function format.
|
|
32
|
+
*
|
|
33
|
+
* @param tools - Array of agent tools from MCP or A2A sources
|
|
34
|
+
* @returns Array of functions in the format required by the model API
|
|
35
|
+
*/
|
|
36
|
+
abstract convertToolsToFunctions(tools: IAgentTool[]): FunctionType[];
|
|
37
|
+
/**
|
|
38
|
+
* Fetches a response from the model API without tool support.
|
|
39
|
+
*
|
|
40
|
+
* @param messages - Array of messages to send to the model
|
|
41
|
+
* @returns Promise resolving to the model's response
|
|
42
|
+
*/
|
|
43
|
+
abstract fetch(messages: MessageType[]): Promise<FetchResponse>;
|
|
44
|
+
/**
|
|
45
|
+
* Fetches a response from the model API with tool/function support.
|
|
46
|
+
*
|
|
47
|
+
* @param messages - Array of messages to send to the model
|
|
48
|
+
* @param functions - Array of available functions/tools the model can call
|
|
49
|
+
* @returns Promise resolving to the model's response, possibly including tool calls
|
|
50
|
+
*/
|
|
51
|
+
abstract fetchWithContextMessage(messages: MessageType[], functions: FunctionType[]): Promise<FetchResponse>;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Module for managing multiple AI model implementations.
|
|
55
|
+
*
|
|
56
|
+
* Allows registration of multiple models and provides a unified interface
|
|
57
|
+
* for accessing them. Supports setting a default model for convenience.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* const modelModule = new ModelModule();
|
|
62
|
+
* modelModule.addModel("gpt-4", new OpenAIModel("gpt-4"), true);
|
|
63
|
+
* modelModule.addModel("gemini", new GeminiModel("gemini-pro"));
|
|
64
|
+
*
|
|
65
|
+
* const defaultModel = modelModule.getModel();
|
|
66
|
+
* const specificModel = modelModule.getModel("gemini");
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
export declare class ModelModule {
|
|
70
|
+
/** Registry of available models indexed by name */
|
|
71
|
+
private models;
|
|
72
|
+
/** Name of the default model to use when none specified */
|
|
73
|
+
private defaultModelName?;
|
|
74
|
+
/**
|
|
75
|
+
* Registers a new model with the module.
|
|
76
|
+
*
|
|
77
|
+
* @param name - Unique identifier for the model
|
|
78
|
+
* @param model - Model instance implementing BaseModel
|
|
79
|
+
* @param isDefault - Whether to set this as the default model
|
|
80
|
+
*/
|
|
81
|
+
addModel(name: string, model: BaseModel<unknown, unknown>, isDefault?: boolean): void;
|
|
82
|
+
/**
|
|
83
|
+
* Retrieves a model by name or returns the default model.
|
|
84
|
+
*
|
|
85
|
+
* @param name - Optional model name to retrieve
|
|
86
|
+
* @returns The requested model or default model if name not provided
|
|
87
|
+
* @throws Error if no default model is set and name is not provided
|
|
88
|
+
*/
|
|
89
|
+
getModel(name?: string): BaseModel<unknown, unknown>;
|
|
90
|
+
/**
|
|
91
|
+
* Returns information about all registered models.
|
|
92
|
+
*
|
|
93
|
+
* @returns Object containing all models and the default model name
|
|
94
|
+
*/
|
|
95
|
+
getModelList(): {
|
|
96
|
+
models: {
|
|
97
|
+
[name: string]: BaseModel<unknown, unknown>;
|
|
98
|
+
};
|
|
99
|
+
defaultModelName: string | undefined;
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=model.module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.module.d.ts","sourceRoot":"","sources":["../../../../src/modules/models/model.module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEjE;;;;;;;;;GASG;AACH,8BAAsB,SAAS,CAAC,WAAW,EAAE,YAAY;IACxD;;;;;;;OAOG;IACH,QAAQ,CAAC,gBAAgB,CACxB,cAAc,EAAE,aAAa,EAC7B,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,GACnB,WAAW,EAAE;IAEhB;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAEvE;;;;;OAKG;IACH,QAAQ,CAAC,uBAAuB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,YAAY,EAAE;IAErE;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAE/D;;;;;;OAMG;IACH,QAAQ,CAAC,uBAAuB,CAC/B,QAAQ,EAAE,WAAW,EAAE,EACvB,SAAS,EAAE,YAAY,EAAE,GACvB,OAAO,CAAC,aAAa,CAAC;CACzB;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,WAAW;IACvB,mDAAmD;IACnD,OAAO,CAAC,MAAM,CAAuD;IACrE,2DAA2D;IAC3D,OAAO,CAAC,gBAAgB,CAAC,CAAS;IAElC;;;;;;OAMG;IACI,QAAQ,CACd,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,EAClC,SAAS,CAAC,EAAE,OAAO;IAQpB;;;;;;OAMG;IACI,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAW3D;;;;OAIG;IACI,YAAY;;;;;;CAMnB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ModelModule = exports.BaseModel = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Abstract base class for AI model implementations.
|
|
6
|
+
*
|
|
7
|
+
* Provides a common interface for different AI model providers (OpenAI, Gemini, etc.)
|
|
8
|
+
* to integrate with the AIN-ADK framework. Each model implementation must handle
|
|
9
|
+
* message formatting, tool conversion, and API communication.
|
|
10
|
+
*
|
|
11
|
+
* @typeParam MessageType - The message format used by the specific model API
|
|
12
|
+
* @typeParam FunctionType - The function/tool format used by the specific model API
|
|
13
|
+
*/
|
|
14
|
+
class BaseModel {
|
|
15
|
+
}
|
|
16
|
+
exports.BaseModel = BaseModel;
|
|
17
|
+
/**
|
|
18
|
+
* Module for managing multiple AI model implementations.
|
|
19
|
+
*
|
|
20
|
+
* Allows registration of multiple models and provides a unified interface
|
|
21
|
+
* for accessing them. Supports setting a default model for convenience.
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const modelModule = new ModelModule();
|
|
26
|
+
* modelModule.addModel("gpt-4", new OpenAIModel("gpt-4"), true);
|
|
27
|
+
* modelModule.addModel("gemini", new GeminiModel("gemini-pro"));
|
|
28
|
+
*
|
|
29
|
+
* const defaultModel = modelModule.getModel();
|
|
30
|
+
* const specificModel = modelModule.getModel("gemini");
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
class ModelModule {
|
|
34
|
+
constructor() {
|
|
35
|
+
/** Registry of available models indexed by name */
|
|
36
|
+
this.models = {};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Registers a new model with the module.
|
|
40
|
+
*
|
|
41
|
+
* @param name - Unique identifier for the model
|
|
42
|
+
* @param model - Model instance implementing BaseModel
|
|
43
|
+
* @param isDefault - Whether to set this as the default model
|
|
44
|
+
*/
|
|
45
|
+
addModel(name, model, isDefault) {
|
|
46
|
+
this.models[name] = model;
|
|
47
|
+
if (isDefault || !this.defaultModelName) {
|
|
48
|
+
this.defaultModelName = name;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Retrieves a model by name or returns the default model.
|
|
53
|
+
*
|
|
54
|
+
* @param name - Optional model name to retrieve
|
|
55
|
+
* @returns The requested model or default model if name not provided
|
|
56
|
+
* @throws Error if no default model is set and name is not provided
|
|
57
|
+
*/
|
|
58
|
+
getModel(name) {
|
|
59
|
+
if (!this.defaultModelName) {
|
|
60
|
+
throw Error("No default model");
|
|
61
|
+
}
|
|
62
|
+
if (!name || !this.models[name]) {
|
|
63
|
+
return this.models[this.defaultModelName];
|
|
64
|
+
}
|
|
65
|
+
return this.models[name];
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Returns information about all registered models.
|
|
69
|
+
*
|
|
70
|
+
* @returns Object containing all models and the default model name
|
|
71
|
+
*/
|
|
72
|
+
getModelList() {
|
|
73
|
+
return {
|
|
74
|
+
models: this.models,
|
|
75
|
+
defaultModelName: this.defaultModelName,
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
exports.ModelModule = ModelModule;
|
|
80
|
+
//# sourceMappingURL=model.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.module.js","sourceRoot":"","sources":["../../../../src/modules/models/model.module.ts"],"names":[],"mappings":";;;AAGA;;;;;;;;;GASG;AACH,MAAsB,SAAS;CAkD9B;AAlDD,8BAkDC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAa,WAAW;IAAxB;QACC,mDAAmD;QAC3C,WAAM,GAAoD,EAAE,CAAC;IAmDtE,CAAC;IA/CA;;;;;;OAMG;IACI,QAAQ,CACd,IAAY,EACZ,KAAkC,EAClC,SAAmB;QAEnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC1B,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC9B,CAAC;IACF,CAAC;IAED;;;;;;OAMG;IACI,QAAQ,CAAC,IAAa;QAC5B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC5B,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACI,YAAY;QAClB,OAAO;YACN,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;SACvC,CAAC;IACH,CAAC;CACD;AArDD,kCAqDC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ChatCompletionMessageParam as CCMessageParam, ChatCompletionTool } from "openai/resources";
|
|
2
|
+
import { type SessionObject } from "../../types/memory.js";
|
|
3
|
+
import type { FetchResponse, IAgentTool } from "../../types/tool.js";
|
|
4
|
+
import { BaseModel } from "./model.module.js";
|
|
5
|
+
export declare class AzureOpenAI extends BaseModel<CCMessageParam, ChatCompletionTool> {
|
|
6
|
+
private client;
|
|
7
|
+
private modelName;
|
|
8
|
+
constructor(baseUrl: string, apiKey: string, apiVersion: string, modelName: string);
|
|
9
|
+
private getMessageRole;
|
|
10
|
+
generateMessages(sessionHistory: SessionObject, query: string, systemPrompt?: string): CCMessageParam[];
|
|
11
|
+
appendMessages(messages: CCMessageParam[], message: string): void;
|
|
12
|
+
fetch(messages: CCMessageParam[]): Promise<FetchResponse>;
|
|
13
|
+
fetchWithContextMessage(messages: CCMessageParam[], functions: ChatCompletionTool[]): Promise<FetchResponse>;
|
|
14
|
+
convertToolsToFunctions(tools: IAgentTool[]): ChatCompletionTool[];
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=openai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../../src/modules/models/openai.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,0BAA0B,IAAI,cAAc,EAE5C,kBAAkB,EAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAY,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EACX,aAAa,EAEb,UAAU,EAGV,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,qBAAa,WAAY,SAAQ,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC;IAC7E,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,SAAS,CAAS;gBAGzB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM;IAWlB,OAAO,CAAC,cAAc;IAYtB,gBAAgB,CACf,cAAc,EAAE,aAAa,EAC7B,KAAK,EAAE,MAAM,EACb,YAAY,CAAC,EAAE,MAAM,GACnB,cAAc,EAAE;IAiBnB,cAAc,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAO3D,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAWzD,uBAAuB,CAC5B,QAAQ,EAAE,cAAc,EAAE,EAC1B,SAAS,EAAE,kBAAkB,EAAE,GAC7B,OAAO,CAAC,aAAa,CAAC;IA6BzB,uBAAuB,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,kBAAkB,EAAE;CA8BlE"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AzureOpenAI = void 0;
|
|
4
|
+
const openai_1 = require("openai");
|
|
5
|
+
const memory_js_1 = require("../../types/memory.js");
|
|
6
|
+
const tool_js_1 = require("../../types/tool.js");
|
|
7
|
+
const model_module_js_1 = require("./model.module.js");
|
|
8
|
+
class AzureOpenAI extends model_module_js_1.BaseModel {
|
|
9
|
+
constructor(baseUrl, apiKey, apiVersion, modelName) {
|
|
10
|
+
super();
|
|
11
|
+
this.client = new openai_1.AzureOpenAI({
|
|
12
|
+
baseURL: baseUrl,
|
|
13
|
+
apiKey: apiKey,
|
|
14
|
+
apiVersion: apiVersion,
|
|
15
|
+
});
|
|
16
|
+
this.modelName = modelName;
|
|
17
|
+
}
|
|
18
|
+
getMessageRole(role) {
|
|
19
|
+
switch (role) {
|
|
20
|
+
case memory_js_1.ChatRole.USER:
|
|
21
|
+
return "user";
|
|
22
|
+
case memory_js_1.ChatRole.MODEL:
|
|
23
|
+
case memory_js_1.ChatRole.SYSTEM:
|
|
24
|
+
return "system";
|
|
25
|
+
default:
|
|
26
|
+
return "system"; /*FIXME*/
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
generateMessages(sessionHistory, query, systemPrompt) {
|
|
30
|
+
const messages = !systemPrompt
|
|
31
|
+
? []
|
|
32
|
+
: [{ role: "system", content: systemPrompt.trim() }];
|
|
33
|
+
const sessionContent = Object.keys(sessionHistory.chats).map((chatId) => {
|
|
34
|
+
const chat = sessionHistory.chats[chatId];
|
|
35
|
+
return {
|
|
36
|
+
role: this.getMessageRole(chat.role),
|
|
37
|
+
content: chat.content.parts[0],
|
|
38
|
+
};
|
|
39
|
+
});
|
|
40
|
+
const userContent = { role: "user", content: query };
|
|
41
|
+
return messages.concat(sessionContent).concat(userContent);
|
|
42
|
+
}
|
|
43
|
+
appendMessages(messages, message) {
|
|
44
|
+
messages.push({
|
|
45
|
+
role: "user",
|
|
46
|
+
content: message,
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
async fetch(messages) {
|
|
50
|
+
const response = await this.client.chat.completions.create({
|
|
51
|
+
model: this.modelName,
|
|
52
|
+
messages,
|
|
53
|
+
});
|
|
54
|
+
return {
|
|
55
|
+
content: response.choices[0].message.content || undefined,
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
async fetchWithContextMessage(messages, functions) {
|
|
59
|
+
if (functions.length > 0) {
|
|
60
|
+
const response = await this.client.chat.completions.create({
|
|
61
|
+
model: this.modelName,
|
|
62
|
+
messages,
|
|
63
|
+
tools: functions,
|
|
64
|
+
tool_choice: "auto",
|
|
65
|
+
});
|
|
66
|
+
const { content, tool_calls } = response.choices[0].message;
|
|
67
|
+
const toolCalls = tool_calls?.map((value) => {
|
|
68
|
+
return {
|
|
69
|
+
name: value.function.name,
|
|
70
|
+
// FIXME: value.function.arguments could not be a valid JSON
|
|
71
|
+
arguments: JSON.parse(value.function.arguments),
|
|
72
|
+
};
|
|
73
|
+
});
|
|
74
|
+
return {
|
|
75
|
+
content: content || undefined,
|
|
76
|
+
toolCalls,
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
return await this.fetch(messages);
|
|
80
|
+
}
|
|
81
|
+
convertToolsToFunctions(tools) {
|
|
82
|
+
const functions = [];
|
|
83
|
+
for (const tool of tools) {
|
|
84
|
+
if (!tool.enabled) {
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
if (tool.protocol === tool_js_1.TOOL_PROTOCOL_TYPE.MCP) {
|
|
88
|
+
const { mcpTool, id } = tool;
|
|
89
|
+
functions.push({
|
|
90
|
+
type: "function",
|
|
91
|
+
function: {
|
|
92
|
+
name: id,
|
|
93
|
+
description: mcpTool.description,
|
|
94
|
+
parameters: mcpTool.inputSchema,
|
|
95
|
+
},
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
// PROTOCOL_TYPE.A2A
|
|
100
|
+
const { id, card } = tool;
|
|
101
|
+
functions.push({
|
|
102
|
+
type: "function",
|
|
103
|
+
function: {
|
|
104
|
+
name: id,
|
|
105
|
+
description: card.description,
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return functions;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.AzureOpenAI = AzureOpenAI;
|
|
114
|
+
//# sourceMappingURL=openai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../../src/modules/models/openai.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type": "commonjs"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AgentExecutor, ExecutionEventBus, RequestContext } from "@a2a-js/sdk";
|
|
2
|
+
import type { IntentAnalyzer } from "../../intent/analyzer.js";
|
|
3
|
+
export declare class AINAgentExecutor implements AgentExecutor {
|
|
4
|
+
private intentAnalyzer;
|
|
5
|
+
private canceledTasks;
|
|
6
|
+
constructor(intentAnalyzer: IntentAnalyzer);
|
|
7
|
+
cancelTask: (taskId: string, _eventBus: ExecutionEventBus) => Promise<void>;
|
|
8
|
+
private createTaskStatusUpdateEvent;
|
|
9
|
+
execute(requestContext: RequestContext, eventBus: ExecutionEventBus): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../../src/router/a2a/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,aAAa,EACb,iBAAiB,EACjB,cAAc,EAEd,MAAM,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAG3D,qBAAa,gBAAiB,YAAW,aAAa;IACrD,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,aAAa,CAAkC;gBAE3C,cAAc,EAAE,cAAc;IAInC,UAAU,GAChB,QAAQ,MAAM,EACd,WAAW,iBAAiB,KAC1B,OAAO,CAAC,IAAI,CAAC,CAEd;IAEF,OAAO,CAAC,2BAA2B,CA0BjC;IAEI,OAAO,CACZ,cAAc,EAAE,cAAc,EAC9B,QAAQ,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC;CAwFhB"}
|