@metad/contracts 3.6.7 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. package/README.md +2 -2
  2. package/index.cjs.d.ts +1 -0
  3. package/index.cjs.js +4029 -5
  4. package/index.esm.d.ts +1 -0
  5. package/index.esm.js +3909 -0
  6. package/package.json +1 -1
  7. package/src/agent/{ai-model.ts → ai-model.d.ts} +2 -2
  8. package/src/agent/graph.d.ts +151 -0
  9. package/src/agent/index.d.ts +5 -0
  10. package/src/agent/token.d.ts +21 -0
  11. package/src/agent/utils.d.ts +19 -0
  12. package/src/agent/variables.d.ts +16 -0
  13. package/src/ai/ai-model.model.d.ts +198 -0
  14. package/src/ai/ai-provider.model.d.ts +43 -0
  15. package/src/ai/ai.model.d.ts +82 -0
  16. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  17. package/src/ai/chat-message.model.d.ts +222 -0
  18. package/src/ai/chat.model.d.ts +189 -0
  19. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  20. package/src/ai/copilot-example.model.d.ts +19 -0
  21. package/src/ai/copilot-model.model.d.ts +26 -0
  22. package/src/ai/copilot-organization.model.d.ts +17 -0
  23. package/src/ai/copilot-provider.model.d.ts +31 -0
  24. package/src/ai/copilot-role.model.d.ts +43 -0
  25. package/src/ai/copilot-store.model.d.ts +29 -0
  26. package/src/ai/copilot-user.model.d.ts +20 -0
  27. package/src/ai/copilot.model.d.ts +36 -0
  28. package/src/ai/{environment.model.ts → environment.model.d.ts} +10 -12
  29. package/src/ai/feature.model.d.ts +6 -0
  30. package/src/ai/index.d.ts +42 -0
  31. package/src/ai/knowledge-doc-chunk.model.d.ts +61 -0
  32. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  33. package/src/ai/knowledge-doc.model.d.ts +222 -0
  34. package/src/ai/knowledge-pipeline.d.ts +107 -0
  35. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  36. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  37. package/src/ai/knowledgebase.model.d.ts +174 -0
  38. package/src/ai/middleware.model.d.ts +18 -0
  39. package/src/ai/rag-web.d.ts +26 -0
  40. package/src/ai/rag.d.ts +24 -0
  41. package/src/ai/role-permissions.d.ts +13 -0
  42. package/src/ai/skill.model.d.ts +181 -0
  43. package/src/ai/types.d.ts +71 -0
  44. package/src/ai/xpert-agent-execution.model.d.ts +96 -0
  45. package/src/ai/xpert-agent.model.d.ts +204 -0
  46. package/src/ai/xpert-project.model.d.ts +86 -0
  47. package/src/ai/xpert-table.model.d.ts +84 -0
  48. package/src/ai/xpert-task.model.d.ts +26 -0
  49. package/src/ai/xpert-template.model.d.ts +47 -0
  50. package/src/ai/xpert-tool-mcp.model.d.ts +72 -0
  51. package/src/ai/xpert-tool.model.d.ts +154 -0
  52. package/src/ai/xpert-toolset.model.d.ts +200 -0
  53. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  54. package/src/ai/xpert-workflow.model.d.ts +401 -0
  55. package/src/ai/xpert-workspace.model.d.ts +32 -0
  56. package/src/ai/xpert.model.d.ts +551 -0
  57. package/src/ai/xpert.utils.d.ts +77 -0
  58. package/src/analytics/ai.d.ts +73 -0
  59. package/src/analytics/approval-policy.model.d.ts +30 -0
  60. package/src/analytics/business-area-user.model.d.ts +35 -0
  61. package/src/analytics/business-area.d.ts +17 -0
  62. package/src/analytics/certification.model.d.ts +11 -0
  63. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  64. package/src/analytics/chatbi-model.model.d.ts +18 -0
  65. package/src/analytics/collection.model.d.ts +6 -0
  66. package/src/analytics/comment.model.d.ts +10 -0
  67. package/src/analytics/data-source-type.d.ts +16 -0
  68. package/src/analytics/data-source.d.ts +62 -0
  69. package/src/analytics/favorite.d.ts +14 -0
  70. package/src/analytics/features.d.ts +19 -0
  71. package/src/analytics/feed-model.d.ts +13 -0
  72. package/src/analytics/gateway.d.ts +28 -0
  73. package/src/analytics/index.d.ts +38 -0
  74. package/src/analytics/indicator-app.d.ts +44 -0
  75. package/src/analytics/{indicator-market.ts → indicator-market.d.ts} +2 -6
  76. package/src/analytics/indicator.d.ts +105 -0
  77. package/src/analytics/model-query-log.model.d.ts +41 -0
  78. package/src/analytics/model-query.d.ts +21 -0
  79. package/src/analytics/{notification-destination.ts → notification-destination.d.ts} +5 -9
  80. package/src/analytics/{permission-approval-user.model.ts → permission-approval-user.model.d.ts} +8 -10
  81. package/src/analytics/permission-approval.model.d.ts +47 -0
  82. package/src/analytics/project.model.d.ts +50 -0
  83. package/src/analytics/role-permissions.d.ts +25 -0
  84. package/src/analytics/schema.d.ts +262 -0
  85. package/src/analytics/screenshot.model.d.ts +25 -0
  86. package/src/analytics/semantic-model-entity.d.ts +38 -0
  87. package/src/analytics/semantic-model-member.d.ts +27 -0
  88. package/src/analytics/semantic-model.d.ts +183 -0
  89. package/src/analytics/{story-point.ts → story-point.d.ts} +6 -11
  90. package/src/analytics/story-template.model.d.ts +28 -0
  91. package/src/analytics/story-widget.d.ts +12 -0
  92. package/src/analytics/story.d.ts +93 -0
  93. package/src/analytics/subscription.d.ts +38 -0
  94. package/src/analytics/visit.model.d.ts +34 -0
  95. package/src/analytics/webSocket.d.ts +48 -0
  96. package/src/api-key.model.d.ts +10 -0
  97. package/src/base-entity.model.d.ts +27 -0
  98. package/src/contact.model.d.ts +41 -0
  99. package/src/core.model.d.ts +97 -0
  100. package/src/{country.model.ts → country.model.d.ts} +2 -3
  101. package/src/currency.model.d.ts +579 -0
  102. package/src/{custom-smtp.model.ts → custom-smtp.model.d.ts} +17 -21
  103. package/src/date-picker.model.d.ts +5 -0
  104. package/src/email-template.model.d.ts +39 -0
  105. package/src/email.model.d.ts +36 -0
  106. package/src/employee.model.d.ts +128 -0
  107. package/src/entity-with-members.model.d.ts +13 -0
  108. package/src/feature.model.d.ts +93 -0
  109. package/src/file-provider.d.ts +33 -0
  110. package/src/help-center-article.model.d.ts +0 -0
  111. package/src/help-center.model.d.ts +0 -0
  112. package/src/http-status.enum.d.ts +57 -0
  113. package/src/import-export.model.d.ts +36 -0
  114. package/src/index.d.ts +48 -0
  115. package/src/integration/dify.d.ts +0 -0
  116. package/src/integration/dingtalk.d.ts +2 -0
  117. package/src/integration/fastgpt.d.ts +0 -0
  118. package/src/integration/firecrawl.d.ts +2 -0
  119. package/src/integration/github.d.ts +69 -0
  120. package/src/integration/index.d.ts +4 -0
  121. package/src/integration/lark.d.ts +11 -0
  122. package/src/integration/wecom.d.ts +2 -0
  123. package/src/integration.model.d.ts +90 -0
  124. package/src/invite.model.d.ts +123 -0
  125. package/src/language.model.d.ts +19 -0
  126. package/src/organization-contact.model.d.ts +73 -0
  127. package/src/{organization-department.model.ts → organization-department.model.d.ts} +10 -16
  128. package/src/organization-language.model.d.ts +18 -0
  129. package/src/organization-projects.model.d.ts +80 -0
  130. package/src/organization-team-employee-model.d.ts +12 -0
  131. package/src/organization-team-model.d.ts +19 -0
  132. package/src/organization.model.d.ts +239 -0
  133. package/src/{password-reset.model.ts → password-reset.model.d.ts} +10 -14
  134. package/src/{plain-object.model.ts → plain-object.model.d.ts} +1 -1
  135. package/src/plugin.d.ts +13 -0
  136. package/src/role-permission.model.d.ts +61 -0
  137. package/src/role.model.d.ts +26 -0
  138. package/src/schedule.d.ts +27 -0
  139. package/src/secret-token.model.d.ts +11 -0
  140. package/src/seed.model.d.ts +37 -0
  141. package/src/storage-file.model.d.ts +40 -0
  142. package/src/tag-entity.model.d.ts +20 -0
  143. package/src/tenant.model.d.ts +40 -0
  144. package/src/tools/index.d.ts +1 -0
  145. package/src/tools/sandbox.d.ts +5 -0
  146. package/src/translation.model.d.ts +26 -0
  147. package/src/types.d.ts +245 -0
  148. package/src/user-organization.model.d.ts +24 -0
  149. package/src/user.model.d.ts +131 -0
  150. package/src/visibility.model.d.ts +6 -0
  151. package/.babelrc +0 -5
  152. package/.eslintrc.json +0 -18
  153. package/babel.config.json +0 -1
  154. package/jest.config.ts +0 -16
  155. package/project.json +0 -53
  156. package/src/agent/graph.ts +0 -275
  157. package/src/agent/index.ts +0 -5
  158. package/src/agent/token.ts +0 -23
  159. package/src/agent/utils.spec.ts +0 -283
  160. package/src/agent/utils.ts +0 -122
  161. package/src/agent/variables.ts +0 -66
  162. package/src/ai/ai-model.model.ts +0 -232
  163. package/src/ai/ai-provider.model.ts +0 -53
  164. package/src/ai/ai.model.ts +0 -87
  165. package/src/ai/chat-message-feedback.model.ts +0 -31
  166. package/src/ai/chat-message.model.ts +0 -277
  167. package/src/ai/chat.model.ts +0 -207
  168. package/src/ai/copilot-checkpoint.model.ts +0 -25
  169. package/src/ai/copilot-example.model.ts +0 -23
  170. package/src/ai/copilot-model.model.ts +0 -31
  171. package/src/ai/copilot-organization.model.ts +0 -21
  172. package/src/ai/copilot-provider.model.ts +0 -46
  173. package/src/ai/copilot-role.model.ts +0 -48
  174. package/src/ai/copilot-store.model.ts +0 -34
  175. package/src/ai/copilot-user.model.ts +0 -24
  176. package/src/ai/copilot.model.ts +0 -47
  177. package/src/ai/feature.model.ts +0 -6
  178. package/src/ai/index.ts +0 -40
  179. package/src/ai/knowledge-doc-chunk.model.ts +0 -123
  180. package/src/ai/knowledge-doc-chunk.spec.ts +0 -47
  181. package/src/ai/knowledge-doc-page.model.ts +0 -20
  182. package/src/ai/knowledge-doc.model.ts +0 -364
  183. package/src/ai/knowledge-pipeline.ts +0 -138
  184. package/src/ai/knowledge-retrieval-log.model.ts +0 -19
  185. package/src/ai/knowledgebase-task.model.ts +0 -46
  186. package/src/ai/knowledgebase.model.ts +0 -205
  187. package/src/ai/rag-web.ts +0 -54
  188. package/src/ai/rag.ts +0 -24
  189. package/src/ai/role-permissions.ts +0 -13
  190. package/src/ai/types.ts +0 -83
  191. package/src/ai/xpert-agent-execution.model.ts +0 -115
  192. package/src/ai/xpert-agent.model.ts +0 -264
  193. package/src/ai/xpert-project.model.ts +0 -103
  194. package/src/ai/xpert-table.model.ts +0 -100
  195. package/src/ai/xpert-task.model.ts +0 -32
  196. package/src/ai/xpert-template.model.ts +0 -53
  197. package/src/ai/xpert-tool-mcp.model.ts +0 -77
  198. package/src/ai/xpert-tool.model.ts +0 -216
  199. package/src/ai/xpert-toolset.model.ts +0 -220
  200. package/src/ai/xpert-workflow-task.prompt.ts +0 -71
  201. package/src/ai/xpert-workflow.model.ts +0 -502
  202. package/src/ai/xpert-workspace.model.ts +0 -42
  203. package/src/ai/xpert.model.ts +0 -637
  204. package/src/ai/xpert.utils.ts +0 -214
  205. package/src/analytics/ai.ts +0 -79
  206. package/src/analytics/approval-policy.model.ts +0 -40
  207. package/src/analytics/business-area-user.model.ts +0 -43
  208. package/src/analytics/business-area.ts +0 -20
  209. package/src/analytics/certification.model.ts +0 -12
  210. package/src/analytics/chatbi-conversation.model.ts +0 -16
  211. package/src/analytics/chatbi-model.model.ts +0 -22
  212. package/src/analytics/collection.model.ts +0 -8
  213. package/src/analytics/comment.model.ts +0 -14
  214. package/src/analytics/data-source-type.ts +0 -19
  215. package/src/analytics/data-source.ts +0 -72
  216. package/src/analytics/favorite.ts +0 -18
  217. package/src/analytics/features.ts +0 -19
  218. package/src/analytics/feed-model.ts +0 -15
  219. package/src/analytics/gateway.ts +0 -31
  220. package/src/analytics/index.ts +0 -39
  221. package/src/analytics/indicator-app.ts +0 -49
  222. package/src/analytics/indicator.ts +0 -143
  223. package/src/analytics/model-query-log.model.ts +0 -45
  224. package/src/analytics/model-query.ts +0 -22
  225. package/src/analytics/permission-approval.model.ts +0 -58
  226. package/src/analytics/project.model.ts +0 -56
  227. package/src/analytics/role-permissions.ts +0 -36
  228. package/src/analytics/schema.ts +0 -300
  229. package/src/analytics/screenshot.model.ts +0 -28
  230. package/src/analytics/semantic-model-entity.ts +0 -50
  231. package/src/analytics/semantic-model-member.ts +0 -49
  232. package/src/analytics/semantic-model.ts +0 -237
  233. package/src/analytics/story-template.model.ts +0 -34
  234. package/src/analytics/story-widget.ts +0 -15
  235. package/src/analytics/story.ts +0 -109
  236. package/src/analytics/subscription.ts +0 -43
  237. package/src/analytics/visit.model.ts +0 -39
  238. package/src/analytics/webSocket.ts +0 -53
  239. package/src/api-key.model.ts +0 -11
  240. package/src/base-entity.model.ts +0 -34
  241. package/src/contact.model.ts +0 -45
  242. package/src/core.model.ts +0 -103
  243. package/src/currency.model.ts +0 -582
  244. package/src/date-picker.model.ts +0 -5
  245. package/src/email-template.model.ts +0 -50
  246. package/src/email.model.ts +0 -46
  247. package/src/employee.model.ts +0 -199
  248. package/src/entity-with-members.model.ts +0 -16
  249. package/src/feature.model.ts +0 -108
  250. package/src/file-provider.ts +0 -37
  251. package/src/help-center-article.model.ts +0 -35
  252. package/src/help-center.model.ts +0 -33
  253. package/src/http-status.enum.ts +0 -58
  254. package/src/import-export.model.ts +0 -42
  255. package/src/index.ts +0 -60
  256. package/src/integration/dify.ts +0 -31
  257. package/src/integration/dingtalk.ts +0 -16
  258. package/src/integration/fastgpt.ts +0 -32
  259. package/src/integration/firecrawl.ts +0 -46
  260. package/src/integration/github.ts +0 -149
  261. package/src/integration/index.ts +0 -15
  262. package/src/integration/lark.ts +0 -79
  263. package/src/integration/wecom.ts +0 -16
  264. package/src/integration.model.ts +0 -119
  265. package/src/invite.model.ts +0 -144
  266. package/src/language.model.ts +0 -22
  267. package/src/organization-contact.model.ts +0 -84
  268. package/src/organization-language.model.ts +0 -24
  269. package/src/organization-projects.model.ts +0 -99
  270. package/src/organization-team-employee-model.ts +0 -14
  271. package/src/organization-team-model.ts +0 -25
  272. package/src/organization.model.ts +0 -266
  273. package/src/plugin.ts +0 -15
  274. package/src/role-permission.model.ts +0 -123
  275. package/src/role.model.ts +0 -31
  276. package/src/schedule.ts +0 -71
  277. package/src/secret-token.model.ts +0 -15
  278. package/src/seed.model.ts +0 -50
  279. package/src/storage-file.model.ts +0 -46
  280. package/src/tag-entity.model.ts +0 -23
  281. package/src/tenant.model.ts +0 -52
  282. package/src/tools/index.ts +0 -1
  283. package/src/tools/sandbox.ts +0 -5
  284. package/src/translation.model.ts +0 -37
  285. package/src/types.ts +0 -277
  286. package/src/user-organization.model.ts +0 -31
  287. package/src/user.model.ts +0 -151
  288. package/src/visibility.model.ts +0 -6
  289. package/tsconfig.json +0 -22
  290. package/tsconfig.lib.json +0 -10
  291. package/tsconfig.spec.json +0 -9
@@ -0,0 +1,42 @@
1
+ export * from './ai-model.model';
2
+ export * from './ai.model';
3
+ export * from './chat.model';
4
+ export * from './chat-message.model';
5
+ export * from './chat-message-feedback.model';
6
+ export * from './copilot-checkpoint.model';
7
+ export * from './copilot-example.model';
8
+ export * from './copilot-model.model';
9
+ export * from './copilot-organization.model';
10
+ export * from './copilot-provider.model';
11
+ export * from './copilot-store.model';
12
+ export * from './copilot-user.model';
13
+ export * from './copilot.model';
14
+ export * from './feature.model';
15
+ export * from './rag';
16
+ export * from './rag-web';
17
+ export * from './knowledgebase.model';
18
+ export * from './knowledge-doc.model';
19
+ export * from './knowledge-doc-page.model';
20
+ export * from './role-permissions';
21
+ export * from './xpert-agent-execution.model';
22
+ export * from './xpert-agent.model';
23
+ export * from './xpert-tool.model';
24
+ export * from './xpert-toolset.model';
25
+ export * from './xpert-workspace.model';
26
+ export * from './xpert-table.model';
27
+ export * from './xpert.model';
28
+ export * from './xpert.utils';
29
+ export * from './types';
30
+ export * from './xpert-template.model';
31
+ export * from './xpert-task.model';
32
+ export * from './xpert-workflow.model';
33
+ export * from './xpert-workflow-task.prompt';
34
+ export * from './xpert-tool-mcp.model';
35
+ export * from './xpert-project.model';
36
+ export * from './environment.model';
37
+ export * from './knowledgebase-task.model';
38
+ export * from './knowledge-pipeline';
39
+ export * from './knowledge-retrieval-log.model';
40
+ export * from './knowledge-doc-chunk.model';
41
+ export * from './skill.model';
42
+ export * from './middleware.model';
@@ -0,0 +1,61 @@
1
+ import { DocumentInterface } from '@langchain/core/documents';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { IKnowledgeDocument } from './knowledge-doc.model';
4
+ import { IKnowledgebase } from './knowledgebase.model';
5
+ export type TDocumentAsset = {
6
+ type: 'image' | 'video' | 'audio' | 'file';
7
+ url: string;
8
+ filePath: string;
9
+ };
10
+ export interface IDocChunkMetadata {
11
+ chunkId: string;
12
+ parentId?: string | null;
13
+ children?: DocumentInterface<IDocChunkMetadata>[];
14
+ knowledgeId?: string;
15
+ chunkIndex?: number;
16
+ enabled?: boolean;
17
+ /**
18
+ * Default to 'text'. Indicates the original media type of the chunk.
19
+ * @default text
20
+ */
21
+ mediaType?: 'text' | 'image' | 'video' | 'audio';
22
+ /**
23
+ * Associated assets like images, videos, etc.
24
+ */
25
+ assets?: TDocumentAsset[];
26
+ /**
27
+ * Whether the chunk is represented as a vector in the vector store
28
+ */
29
+ isVector?: boolean;
30
+ score?: number;
31
+ relevanceScore?: number;
32
+ tokens?: number;
33
+ [key: string]: any;
34
+ }
35
+ /**
36
+ * Segmented chunk of a knowledge document
37
+ */
38
+ export interface IKnowledgeDocumentChunk<Metadata extends IDocChunkMetadata = any> extends DocumentInterface<Metadata>, IBasePerTenantAndOrganizationEntityModel {
39
+ documentId?: string;
40
+ document?: IKnowledgeDocument;
41
+ knowledgebaseId?: string;
42
+ knowledgebase?: IKnowledgebase;
43
+ parent?: IKnowledgeDocumentChunk<Metadata>;
44
+ children?: IKnowledgeDocumentChunk<Metadata>[];
45
+ }
46
+ /**
47
+ * Build a hierarchical tree structure from a flat list of DocumentInterface objects,
48
+ * and
49
+ *
50
+ * @template Metadata - Type of metadata, defaults to IDocChunkMetadata
51
+ * @param documents - A flat array of DocumentInterface objects
52
+ * @returns the hierarchical tree (root-level DocumentInterface[])
53
+ */
54
+ export declare function buildChunkTree<Metadata extends IDocChunkMetadata = IDocChunkMetadata>(documents: DocumentInterface<Metadata>[]): DocumentInterface<Metadata>[];
55
+ /**
56
+ * Find all leaf nodes (nodes without children).
57
+ *
58
+ * @param roots
59
+ * @returns
60
+ */
61
+ export declare function collectTreeLeaves(roots: IKnowledgeDocumentChunk[]): IKnowledgeDocumentChunk<any>[];
@@ -0,0 +1,15 @@
1
+ import { Document } from '@langchain/core/documents';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { IKnowledgeDocument } from './knowledge-doc.model';
4
+ import { DocumentMetadata, IKnowledgebase } from './knowledgebase.model';
5
+ /**
6
+ * Segmented page of a knowledge document
7
+ */
8
+ export interface IKnowledgeDocumentPage<Metadata extends DocumentMetadata = DocumentMetadata> extends Document, IBasePerTenantAndOrganizationEntityModel {
9
+ documentId?: string;
10
+ document?: IKnowledgeDocument;
11
+ knowledgebaseId?: string;
12
+ knowledgebase?: IKnowledgebase;
13
+ metadata: Metadata;
14
+ pageContent: string;
15
+ }
@@ -0,0 +1,222 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IIntegration } from '../integration.model';
3
+ import { IStorageFile } from '../storage-file.model';
4
+ import { IKnowledgeDocumentPage } from './knowledge-doc-page.model';
5
+ import { IKnowledgebaseTask } from './knowledgebase-task.model';
6
+ import { IKnowledgebase, KBMetadataFieldDef } from './knowledgebase.model';
7
+ import { TRagWebOptions } from './rag-web';
8
+ import { IKnowledgeDocumentChunk } from './knowledge-doc-chunk.model';
9
+ import { DocumentSourceProviderCategoryEnum } from './knowledge-pipeline';
10
+ import { TCopilotModel } from './copilot-model.model';
11
+ import { I18nObject } from '../types';
12
+ export type DocumentParserConfig = {
13
+ pages?: number[][];
14
+ replaceWhitespace?: boolean;
15
+ removeSensitive?: boolean;
16
+ textSplitterType?: string;
17
+ textSplitter?: {
18
+ [key: string]: unknown;
19
+ };
20
+ transformerType?: string;
21
+ transformerIntegration?: string;
22
+ transformer?: {
23
+ [key: string]: unknown;
24
+ };
25
+ imageUnderstandingType?: string;
26
+ imageUnderstandingIntegration?: string;
27
+ imageUnderstanding?: {
28
+ [key: string]: unknown;
29
+ };
30
+ imageUnderstandingModel?: TCopilotModel;
31
+ };
32
+ export type DocumentTextParserConfig = DocumentParserConfig & {
33
+ delimiter?: string;
34
+ chunkSize?: number | null;
35
+ chunkOverlap?: number | null;
36
+ };
37
+ export type DocumentSheetParserConfig = DocumentParserConfig & {
38
+ fields?: string[];
39
+ indexedFields?: string[];
40
+ };
41
+ /**
42
+ * Import Type:
43
+ * - file: local file
44
+ * - web: web document
45
+ * ...
46
+ */
47
+ export declare enum DocumentTypeEnum {
48
+ /**
49
+ * Folder, parent of other documents
50
+ */
51
+ FOLDER = "folder",
52
+ /**
53
+ * Local files
54
+ * @deprecated use DocumentSourceProviderCategoryEnum local file type instead
55
+ */
56
+ FILE = "file"
57
+ }
58
+ export declare const KDocumentSourceType: {
59
+ FOLDER: DocumentTypeEnum.FOLDER;
60
+ FILE: DocumentTypeEnum.FILE;
61
+ LocalFile: DocumentSourceProviderCategoryEnum.LocalFile;
62
+ FileSystem: DocumentSourceProviderCategoryEnum.FileSystem;
63
+ OnlineDocument: DocumentSourceProviderCategoryEnum.OnlineDocument;
64
+ WebCrawl: DocumentSourceProviderCategoryEnum.WebCrawl;
65
+ Database: DocumentSourceProviderCategoryEnum.Database;
66
+ };
67
+ /**
68
+ * Document type category, determine how to process the document.
69
+ */
70
+ export declare enum KBDocumentCategoryEnum {
71
+ Text = "text",
72
+ Image = "image",
73
+ Audio = "audio",
74
+ Video = "video",
75
+ Sheet = "sheet",
76
+ Other = "other"
77
+ }
78
+ export declare enum KBDocumentStatusEnum {
79
+ WAITING = "waiting",
80
+ VALIDATE = "validate",
81
+ RUNNING = "running",
82
+ TRANSFORMED = "transformed",
83
+ SPLITTED = "splitted",
84
+ UNDERSTOOD = "understood",
85
+ EMBEDDING = "embedding",
86
+ CANCEL = "cancel",
87
+ FINISH = "finish",
88
+ ERROR = "error"
89
+ }
90
+ export type TDocumentWebOptions = TRagWebOptions & {};
91
+ export type TDocSourceConfig = {
92
+ key?: string;
93
+ };
94
+ export type TKnowledgeDocument = {
95
+ disabled?: boolean;
96
+ knowledgebaseId?: string;
97
+ /**
98
+ * @deprecated use fileUrl instead
99
+ */
100
+ storageFileId?: string;
101
+ /**
102
+ * @deprecated use fileUrl instead
103
+ */
104
+ storageFile?: IStorageFile;
105
+ /**
106
+ * thumbnail base64 string
107
+ */
108
+ thumbnail?: string;
109
+ /**
110
+ * default parser ID
111
+ * @deprecated unused
112
+ */
113
+ parserId: string;
114
+ parserConfig: DocumentTextParserConfig;
115
+ /**
116
+ * where dose this document come from
117
+ */
118
+ sourceType?: DocumentSourceProviderCategoryEnum | DocumentTypeEnum;
119
+ sourceConfig?: TDocSourceConfig;
120
+ /**
121
+ * document type category
122
+ */
123
+ category?: KBDocumentCategoryEnum | null;
124
+ /**
125
+ * Local file extension or Web doc provider
126
+ */
127
+ type: string;
128
+ /**
129
+ * file name or web url
130
+ */
131
+ name: string;
132
+ /**
133
+ * where does it store
134
+ */
135
+ filePath: string;
136
+ fileUrl?: string;
137
+ /**
138
+ * Folder path in server for this document file.
139
+ * Init it in creating document entity.
140
+ */
141
+ folder?: string;
142
+ size?: string;
143
+ mimeType?: string;
144
+ tokenNum?: number | null;
145
+ chunkNum?: number | null;
146
+ progress?: number | null;
147
+ /**
148
+ * process message
149
+ */
150
+ processMsg?: string | null;
151
+ processBeginAt?: Date | null;
152
+ processDuation?: number | null;
153
+ /**
154
+ * is it validate (0: wasted,1: validate)
155
+ */
156
+ status?: KBDocumentStatusEnum;
157
+ /**
158
+ * The background job id
159
+ */
160
+ jobId?: string;
161
+ options?: TDocumentWebOptions;
162
+ integrationId?: string;
163
+ integration?: IIntegration;
164
+ /**
165
+ * @deprecated use chunks instead
166
+ */
167
+ pages?: IKnowledgeDocumentPage[];
168
+ chunks?: IKnowledgeDocumentChunk[];
169
+ tasks?: IKnowledgebaseTask[];
170
+ };
171
+ /**
172
+ * Document, include file, web pages, folder, virtual, etc.
173
+ */
174
+ export interface IKnowledgeDocument<T extends KnowledgeDocumentMetadata = KnowledgeDocumentMetadata> extends TKnowledgeDocument, IBasePerTenantAndOrganizationEntityModel {
175
+ parent?: IKnowledgeDocument | null;
176
+ children?: IKnowledgeDocument[];
177
+ knowledgebase?: IKnowledgebase;
178
+ draft?: TKnowledgeDocument;
179
+ metadata?: T;
180
+ }
181
+ /**
182
+ * System built-in standard document Metadata structure
183
+ */
184
+ export interface StandardDocumentMetadata {
185
+ originalFileName?: string;
186
+ originalFileSize?: string | null;
187
+ uploadTime?: string;
188
+ lastUpdatedTime?: string;
189
+ source?: string;
190
+ segmentRule?: string;
191
+ segmentLength?: number;
192
+ averageSegmentLength?: string;
193
+ segmentCount?: number;
194
+ recallRate?: string;
195
+ embedTime?: string;
196
+ embedCost?: string | null;
197
+ tokens?: number;
198
+ }
199
+ export interface KnowledgeDocumentMetadata extends StandardDocumentMetadata {
200
+ [key: string]: any;
201
+ }
202
+ export interface IKnowledgeDocumentCreateInput extends IKnowledgeDocument, IBasePerTenantAndOrganizationEntityModel {
203
+ }
204
+ export interface IKnowledgeDocumentUpdateInput extends Partial<IKnowledgeDocumentCreateInput> {
205
+ id?: string;
206
+ }
207
+ export interface IKnowledgeDocumentFindInput extends IBasePerTenantAndOrganizationEntityModel, IKnowledgeDocument {
208
+ }
209
+ export declare function isDocumentSheet(type: string): boolean;
210
+ export declare function isImageType(type: string): boolean;
211
+ export declare function isVideoType(type: string): boolean;
212
+ export declare function isAudioType(type: string): boolean;
213
+ export declare function classificateDocumentCategory(entity: Partial<IKnowledgeDocument>): KBDocumentCategoryEnum;
214
+ /**
215
+ * System standard Metadata field definition constants
216
+ * It can be used for rendering, validation, sorting, displaying descriptions, etc.
217
+ */
218
+ export declare const STANDARD_METADATA_FIELDS: {
219
+ group: I18nObject;
220
+ fields: KBMetadataFieldDef[];
221
+ }[];
222
+ export type StandardMetadataFieldKey = typeof STANDARD_METADATA_FIELDS[number]['fields'][number]['key'];
@@ -0,0 +1,107 @@
1
+ import { I18nObject, IconDefinition } from '../types';
2
+ import { ICopilotModel } from './copilot-model.model';
3
+ import { KnowledgeStructureEnum } from './knowledgebase.model';
4
+ import { IWorkflowNode, WorkflowNodeTypeEnum } from './xpert-workflow.model';
5
+ import { TXpertParameter } from './xpert.model';
6
+ export interface IDocumentNodeProvider {
7
+ name: string;
8
+ label: I18nObject;
9
+ icon?: IconDefinition;
10
+ description?: I18nObject;
11
+ helpUrl?: string;
12
+ configSchema: any;
13
+ }
14
+ /**
15
+ * Category of document source provider
16
+ */
17
+ export declare enum DocumentSourceProviderCategoryEnum {
18
+ /**
19
+ * Local files uploaded directly to the system
20
+ */
21
+ LocalFile = "local-file",
22
+ /**
23
+ * Remote file systems, e.g. S3, FTP, etc.
24
+ */
25
+ FileSystem = "file-system",
26
+ /**
27
+ * Online documents, e.g. public URLs, Google Docs, etc.
28
+ */
29
+ OnlineDocument = "online-document",
30
+ /**
31
+ * Web crawling from public websites
32
+ */
33
+ WebCrawl = "web-crawl",
34
+ /**
35
+ * Database connections, e.g. MySQL, PostgreSQL, etc.
36
+ * @deprecated Planning
37
+ */
38
+ Database = "database"
39
+ }
40
+ export interface IDocumentSourceProvider extends IDocumentNodeProvider {
41
+ category: DocumentSourceProviderCategoryEnum;
42
+ }
43
+ export interface IDocumentProcessorProvider extends IDocumentNodeProvider {
44
+ }
45
+ export interface IDocumentChunkerProvider extends IDocumentNodeProvider {
46
+ }
47
+ export interface IDocumentUnderstandingProvider extends IDocumentNodeProvider {
48
+ }
49
+ /**
50
+ * Knowledge Pipeline Source Node
51
+ */
52
+ export interface IWFNSource<T = any> extends IWorkflowNode {
53
+ type: WorkflowNodeTypeEnum.SOURCE;
54
+ provider: string;
55
+ parameters?: TXpertParameter[];
56
+ config: T;
57
+ integrationId?: string;
58
+ }
59
+ export interface IWFNProcessor extends IWorkflowNode {
60
+ type: WorkflowNodeTypeEnum.PROCESSOR;
61
+ provider: string;
62
+ config: any;
63
+ input: string;
64
+ integrationId?: string;
65
+ }
66
+ export interface IWFNChunker extends IWorkflowNode {
67
+ type: WorkflowNodeTypeEnum.CHUNKER;
68
+ provider: string;
69
+ config: any;
70
+ input: string;
71
+ }
72
+ export interface IWFNUnderstanding extends IWorkflowNode {
73
+ type: WorkflowNodeTypeEnum.UNDERSTANDING;
74
+ provider: string;
75
+ config: any;
76
+ input: string;
77
+ visionModel?: ICopilotModel;
78
+ }
79
+ export interface IWFNKnowledgeBase extends IWorkflowNode {
80
+ type: WorkflowNodeTypeEnum.KNOWLEDGE_BASE;
81
+ /**
82
+ * @deprecated
83
+ */
84
+ structure?: KnowledgeStructureEnum;
85
+ /**
86
+ * Documents input variables
87
+ */
88
+ inputs?: string[];
89
+ /**
90
+ * Embedding model
91
+ */
92
+ copilotModel?: ICopilotModel;
93
+ /**
94
+ * (optional) Rerank model
95
+ */
96
+ rerankModel?: ICopilotModel;
97
+ /**
98
+ * (optional) Vision model
99
+ */
100
+ visionModel?: ICopilotModel;
101
+ documents?: string[];
102
+ }
103
+ export declare function genPipelineSourceKey(): string;
104
+ export declare function genPipelineProcessorKey(): string;
105
+ export declare function genPipelineChunkerKey(): string;
106
+ export declare function genPipelineUnderstandingKey(): string;
107
+ export declare function genPipelineKnowledgeBaseKey(): string;
@@ -0,0 +1,10 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from "../base-entity.model";
2
+ import { IKnowledgebase } from "./knowledgebase.model";
3
+ export interface IKnowledgeRetrievalLog extends IBasePerTenantAndOrganizationEntityModel {
4
+ query: string;
5
+ source: string;
6
+ hitCount: number;
7
+ requestId: string;
8
+ knowledgebaseId?: string;
9
+ knowledgebase?: IKnowledgebase;
10
+ }
@@ -0,0 +1,39 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IChatConversation } from './chat.model';
3
+ import { IKnowledgeDocument } from './knowledge-doc.model';
4
+ import { IKnowledgebase } from './knowledgebase.model';
5
+ import { IXpertAgentExecution } from './xpert-agent-execution.model';
6
+ /**
7
+ * Task executions of a knowledgebase
8
+ */
9
+ export interface IKnowledgebaseTask extends IBasePerTenantAndOrganizationEntityModel {
10
+ knowledgebaseId?: string;
11
+ knowledgebase?: IKnowledgebase;
12
+ conversationId?: string;
13
+ conversation?: IChatConversation;
14
+ executionId?: string;
15
+ execution?: IXpertAgentExecution;
16
+ taskType: string;
17
+ status?: 'pending' | 'running' | 'success' | 'failed' | 'cancelled';
18
+ steps: TaskStep[];
19
+ error?: string;
20
+ /**
21
+ * Temporary content: Documents not actually processed in the task yet
22
+ */
23
+ context?: {
24
+ documents?: Partial<IKnowledgeDocument>[];
25
+ };
26
+ /**
27
+ * Many to Many of documents in task
28
+ */
29
+ documents?: IKnowledgeDocument[];
30
+ }
31
+ export interface TaskStep {
32
+ name: string;
33
+ status: 'pending' | 'running' | 'success' | 'failed';
34
+ progress: number;
35
+ log?: string;
36
+ error_message?: string;
37
+ started_at?: Date;
38
+ finished_at?: Date;
39
+ }
@@ -0,0 +1,174 @@
1
+ import { ICopilotModel } from './copilot-model.model';
2
+ import { I18nObject, TAvatar } from '../types';
3
+ import { IBasePerWorkspaceEntityModel } from './xpert-workspace.model';
4
+ import { IKnowledgeDocument } from './knowledge-doc.model';
5
+ import { IXpert } from './xpert.model';
6
+ import { IIntegration } from '../integration.model';
7
+ import { IDocChunkMetadata } from './knowledge-doc-chunk.model';
8
+ /**
9
+ * Non-internal types should remain the same as IntegrationEnum.
10
+ */
11
+ export declare enum KnowledgeProviderEnum {
12
+ Internal = "internal"
13
+ }
14
+ export declare enum KnowledgebaseTypeEnum {
15
+ Standard = "standard",
16
+ External = "external"
17
+ }
18
+ export declare enum KnowledgeStructureEnum {
19
+ General = "general",
20
+ ParentChild = "parent-child",
21
+ QA = "qa"
22
+ }
23
+ export type KnowledgebaseParserConfig = {
24
+ pages?: number[][];
25
+ embeddingBatchSize?: number;
26
+ chunkSize: number | null;
27
+ chunkOverlap: number | null;
28
+ delimiter: string | null;
29
+ };
30
+ /**
31
+ * Type of rag knowledgebase
32
+ */
33
+ export type TKnowledgebase = {
34
+ /**
35
+ * KB name
36
+ */
37
+ name: string;
38
+ /**
39
+ * Type of KB
40
+ */
41
+ type: KnowledgebaseTypeEnum;
42
+ /**
43
+ * English | Chinese
44
+ */
45
+ language?: 'Chinese' | 'English' | null;
46
+ /**
47
+ * Avatar object
48
+ */
49
+ avatar?: TAvatar;
50
+ /**
51
+ * KB description
52
+ */
53
+ description?: string;
54
+ /**
55
+ * Public in tenant or in organization or private
56
+ * @default private
57
+ */
58
+ permission?: KnowledgebasePermission;
59
+ /**
60
+ * Copilot model for knowledgebase
61
+ */
62
+ copilotModel?: ICopilotModel;
63
+ copilotModelId?: string;
64
+ rerankModel?: ICopilotModel;
65
+ rerankModelId?: string;
66
+ visionModel?: ICopilotModel;
67
+ visionModelId?: string;
68
+ documentNum?: number | null;
69
+ tokenNum?: number | null;
70
+ chunkNum?: number | null;
71
+ /**
72
+ *@deprecated use `recall`
73
+ */
74
+ similarityThreshold?: number;
75
+ vectorSimilarityWeight?: number;
76
+ /**
77
+ * @deprecated
78
+ * default parser ID
79
+ */
80
+ parserId?: string;
81
+ parserConfig?: KnowledgebaseParserConfig;
82
+ /**
83
+ * Index structure determines how the knowledge base organizes and indexes your document content.
84
+ * @deprecated
85
+ */
86
+ structure?: KnowledgeStructureEnum;
87
+ /**
88
+ * Recall params for kb chunks
89
+ */
90
+ recall?: TKBRecallParams;
91
+ status?: string;
92
+ /**
93
+ * Metadata custom field definition array
94
+ */
95
+ metadataSchema?: KBMetadataFieldDef[];
96
+ /**
97
+ * API service enabled
98
+ */
99
+ apiEnabled?: boolean;
100
+ documents?: IKnowledgeDocument[];
101
+ integrationId?: string;
102
+ extKnowledgebaseId?: string;
103
+ pipelineId?: string;
104
+ };
105
+ /**
106
+ * Knowledgebase Entity
107
+ */
108
+ export interface IKnowledgebase extends TKnowledgebase, IBasePerWorkspaceEntityModel {
109
+ xperts?: IXpert[];
110
+ integration?: IIntegration;
111
+ pipeline?: IXpert;
112
+ }
113
+ /**
114
+ * Knowledgebase permission levels
115
+ */
116
+ export declare enum KnowledgebasePermission {
117
+ /**
118
+ * Only visible to you
119
+ * @default
120
+ */
121
+ Private = "private",
122
+ /**
123
+ * Visible to all members in the organization
124
+ */
125
+ Organization = "organization",
126
+ /**
127
+ * Visible to all members in the tenant
128
+ */
129
+ Public = "public"
130
+ }
131
+ /**
132
+ * Recall parameters
133
+ */
134
+ export type TKBRecallParams = {
135
+ /**
136
+ * Top K of result chunks
137
+ */
138
+ topK?: number;
139
+ /**
140
+ * At least the similarity threshold
141
+ */
142
+ score?: number;
143
+ /**
144
+ * Weight in EnsembleRetriever
145
+ */
146
+ weight?: number;
147
+ };
148
+ export type DocumentMetadata = IDocChunkMetadata & {
149
+ score?: number;
150
+ relevanceScore?: number;
151
+ } & Record<string, any>;
152
+ export type MetadataFieldType = 'string' | 'number' | 'boolean' | 'enum' | 'datetime' | 'string[]' | 'number[]' | 'object';
153
+ export type KBMetadataFieldDef = {
154
+ key: string;
155
+ label?: I18nObject;
156
+ type: MetadataFieldType;
157
+ enumValues?: string[];
158
+ description?: string;
159
+ };
160
+ /**
161
+ * Channel name for knowledgebase pipeline
162
+ */
163
+ export declare const KnowledgebaseChannel: string;
164
+ /**
165
+ * Task ID of a knowledgebase run
166
+ */
167
+ export declare const KnowledgeTask = "task_id";
168
+ /**
169
+ * Specify the data source to run
170
+ */
171
+ export declare const KNOWLEDGE_SOURCES_NAME = "sources";
172
+ export declare const KNOWLEDGE_DOCUMENTS_NAME = "documents";
173
+ export declare const KNOWLEDGE_FOLDER_ID_NAME = "folder_id";
174
+ export declare const KNOWLEDGE_STAGE_NAME = "stage";
@@ -0,0 +1,18 @@
1
+ import { IWorkflowNode, WorkflowNodeTypeEnum } from "./xpert-workflow.model";
2
+ import { I18nObject, IconDefinition } from "../types";
3
+ import { TXpertGraph, TXpertTeamNode } from "./xpert.model";
4
+ import { JsonSchemaObjectType } from "./types";
5
+ export interface IWFNMiddleware extends IWorkflowNode {
6
+ type: WorkflowNodeTypeEnum.MIDDLEWARE;
7
+ provider: string;
8
+ options?: Record<string, any>;
9
+ }
10
+ export declare function genXpertMiddlewareKey(): string;
11
+ export type TAgentMiddlewareMeta = {
12
+ name: string;
13
+ label: I18nObject;
14
+ icon?: IconDefinition;
15
+ description?: I18nObject;
16
+ configSchema?: JsonSchemaObjectType;
17
+ };
18
+ export declare function getAgentMiddlewareNodes(graph: TXpertGraph, agentKey: string): TXpertTeamNode[];