@xpert-ai/contracts 3.9.0-beta.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.
Files changed (157) hide show
  1. package/README.md +3 -0
  2. package/index.cjs.js +4945 -0
  3. package/index.d.ts +1 -0
  4. package/index.esm.js +4792 -0
  5. package/package.json +25 -0
  6. package/src/agent/ai-model.d.ts +9 -0
  7. package/src/agent/graph.d.ts +182 -0
  8. package/src/agent/index.d.ts +6 -0
  9. package/src/agent/interrupt.d.ts +51 -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/assistant-binding.model.d.ts +81 -0
  17. package/src/ai/chat-event.model.d.ts +8 -0
  18. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  19. package/src/ai/chat-message.model.d.ts +93 -0
  20. package/src/ai/chat.model.d.ts +191 -0
  21. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  22. package/src/ai/copilot-example.model.d.ts +19 -0
  23. package/src/ai/copilot-model.model.d.ts +30 -0
  24. package/src/ai/copilot-organization.model.d.ts +17 -0
  25. package/src/ai/copilot-provider.model.d.ts +31 -0
  26. package/src/ai/copilot-role.model.d.ts +43 -0
  27. package/src/ai/copilot-store.model.d.ts +29 -0
  28. package/src/ai/copilot-user.model.d.ts +27 -0
  29. package/src/ai/copilot.model.d.ts +36 -0
  30. package/src/ai/environment.model.d.ts +16 -0
  31. package/src/ai/feature.model.d.ts +10 -0
  32. package/src/ai/index.d.ts +84 -0
  33. package/src/ai/knowledge-doc-chunk.model.d.ts +61 -0
  34. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  35. package/src/ai/knowledge-doc.model.d.ts +222 -0
  36. package/src/ai/knowledge-pipeline.d.ts +107 -0
  37. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  38. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  39. package/src/ai/knowledgebase.model.d.ts +174 -0
  40. package/src/ai/message-content.utils.d.ts +58 -0
  41. package/src/ai/middleware.model.d.ts +24 -0
  42. package/src/ai/rag-web.d.ts +26 -0
  43. package/src/ai/rag.d.ts +24 -0
  44. package/src/ai/role-permissions.d.ts +13 -0
  45. package/src/ai/sandbox.d.ts +8 -0
  46. package/src/ai/skill.model.d.ts +241 -0
  47. package/src/ai/types.d.ts +77 -0
  48. package/src/ai/xpert-agent-execution.model.d.ts +105 -0
  49. package/src/ai/xpert-agent.model.d.ts +194 -0
  50. package/src/ai/xpert-chat.model.d.ts +66 -0
  51. package/src/ai/xpert-project.model.d.ts +89 -0
  52. package/src/ai/xpert-table.model.d.ts +84 -0
  53. package/src/ai/xpert-task.model.d.ts +26 -0
  54. package/src/ai/xpert-template.model.d.ts +47 -0
  55. package/src/ai/xpert-tool-mcp.model.d.ts +91 -0
  56. package/src/ai/xpert-tool.model.d.ts +154 -0
  57. package/src/ai/xpert-toolset.model.d.ts +200 -0
  58. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  59. package/src/ai/xpert-workflow.model.d.ts +445 -0
  60. package/src/ai/xpert-workspace.model.d.ts +37 -0
  61. package/src/ai/xpert.model.d.ts +513 -0
  62. package/src/ai/xpert.utils.d.ts +87 -0
  63. package/src/analytics/ai.d.ts +73 -0
  64. package/src/analytics/approval-policy.model.d.ts +30 -0
  65. package/src/analytics/business-area-user.model.d.ts +35 -0
  66. package/src/analytics/business-area.d.ts +17 -0
  67. package/src/analytics/certification.model.d.ts +11 -0
  68. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  69. package/src/analytics/chatbi-model.model.d.ts +18 -0
  70. package/src/analytics/collection.model.d.ts +6 -0
  71. package/src/analytics/comment.model.d.ts +10 -0
  72. package/src/analytics/data-source-type.d.ts +16 -0
  73. package/src/analytics/data-source.d.ts +62 -0
  74. package/src/analytics/favorite.d.ts +14 -0
  75. package/src/analytics/features.d.ts +19 -0
  76. package/src/analytics/feed-model.d.ts +13 -0
  77. package/src/analytics/gateway.d.ts +28 -0
  78. package/src/analytics/index.d.ts +38 -0
  79. package/src/analytics/indicator-app.d.ts +44 -0
  80. package/src/analytics/indicator-market.d.ts +4 -0
  81. package/src/analytics/indicator.d.ts +105 -0
  82. package/src/analytics/model-query-log.model.d.ts +41 -0
  83. package/src/analytics/model-query.d.ts +21 -0
  84. package/src/analytics/notification-destination.d.ts +10 -0
  85. package/src/analytics/permission-approval-user.model.d.ts +10 -0
  86. package/src/analytics/permission-approval.model.d.ts +47 -0
  87. package/src/analytics/project.model.d.ts +50 -0
  88. package/src/analytics/role-permissions.d.ts +25 -0
  89. package/src/analytics/schema.d.ts +262 -0
  90. package/src/analytics/screenshot.model.d.ts +24 -0
  91. package/src/analytics/semantic-model-entity.d.ts +38 -0
  92. package/src/analytics/semantic-model-member.d.ts +27 -0
  93. package/src/analytics/semantic-model.d.ts +183 -0
  94. package/src/analytics/story-point.d.ts +11 -0
  95. package/src/analytics/story-template.model.d.ts +28 -0
  96. package/src/analytics/story-widget.d.ts +12 -0
  97. package/src/analytics/story.d.ts +93 -0
  98. package/src/analytics/subscription.d.ts +38 -0
  99. package/src/analytics/visit.model.d.ts +34 -0
  100. package/src/analytics/webSocket.d.ts +48 -0
  101. package/src/api-key.model.d.ts +68 -0
  102. package/src/base-entity.model.d.ts +27 -0
  103. package/src/contact.model.d.ts +41 -0
  104. package/src/core.model.d.ts +97 -0
  105. package/src/country.model.d.ts +5 -0
  106. package/src/currency.model.d.ts +579 -0
  107. package/src/custom-smtp.model.d.ts +23 -0
  108. package/src/date-picker.model.d.ts +5 -0
  109. package/src/email-template.model.d.ts +39 -0
  110. package/src/email.model.d.ts +36 -0
  111. package/src/employee.model.d.ts +128 -0
  112. package/src/entity-with-members.model.d.ts +13 -0
  113. package/src/feature.model.d.ts +93 -0
  114. package/src/file-asset.model.d.ts +77 -0
  115. package/src/file-provider.d.ts +31 -0
  116. package/src/http-status.enum.d.ts +57 -0
  117. package/src/import-export.model.d.ts +36 -0
  118. package/src/index.d.ts +53 -0
  119. package/src/integration/dingtalk.d.ts +2 -0
  120. package/src/integration/firecrawl.d.ts +2 -0
  121. package/src/integration/github.d.ts +69 -0
  122. package/src/integration/index.d.ts +4 -0
  123. package/src/integration/lark.d.ts +5 -0
  124. package/src/integration/wecom.d.ts +2 -0
  125. package/src/integration.model.d.ts +92 -0
  126. package/src/invite.model.d.ts +125 -0
  127. package/src/language.model.d.ts +19 -0
  128. package/src/organization-contact.model.d.ts +72 -0
  129. package/src/organization-department.model.d.ts +20 -0
  130. package/src/organization-language.model.d.ts +18 -0
  131. package/src/organization-projects.model.d.ts +80 -0
  132. package/src/organization-team-employee-model.d.ts +12 -0
  133. package/src/organization-team-model.d.ts +19 -0
  134. package/src/organization.model.d.ts +238 -0
  135. package/src/password-reset.model.d.ts +18 -0
  136. package/src/plain-object.model.d.ts +13 -0
  137. package/src/plugin.d.ts +116 -0
  138. package/src/role-permission.model.d.ts +61 -0
  139. package/src/role.model.d.ts +25 -0
  140. package/src/schedule.d.ts +27 -0
  141. package/src/scope.model.d.ts +9 -0
  142. package/src/secret-token.model.d.ts +11 -0
  143. package/src/seed.model.d.ts +37 -0
  144. package/src/storage-file.model.d.ts +39 -0
  145. package/src/tag-entity.model.d.ts +20 -0
  146. package/src/tenant.model.d.ts +40 -0
  147. package/src/tools/index.d.ts +1 -0
  148. package/src/tools/sandbox.d.ts +5 -0
  149. package/src/translation.model.d.ts +26 -0
  150. package/src/types.d.ts +248 -0
  151. package/src/user-group.model.d.ts +7 -0
  152. package/src/user-me-context.model.d.ts +9 -0
  153. package/src/user-organization.model.d.ts +28 -0
  154. package/src/user.model.d.ts +131 -0
  155. package/src/view-extension/index.d.ts +1 -0
  156. package/src/view-extension/model.d.ts +183 -0
  157. package/src/visibility.model.d.ts +6 -0
@@ -0,0 +1,10 @@
1
+ export declare enum AiFeatureEnum {
2
+ FEATURE_COPILOT = "FEATURE_COPILOT",
3
+ FEATURE_COPILOT_KNOWLEDGEBASE = "FEATURE_COPILOT_KNOWLEDGEBASE",
4
+ FEATURE_COPILOT_CHAT = "FEATURE_COPILOT_CHAT",
5
+ FEATURE_XPERT = "FEATURE_XPERT",
6
+ FEATURE_XPERT_CHATBI = "FEATURE_XPERT_CHATBI",
7
+ FEATURE_XPERT_CLAWXPERT = "FEATURE_XPERT_CLAWXPERT",
8
+ FEATURE_XPERT_CODEXPERT = "FEATURE_XPERT_CODEXPERT",
9
+ FEATURE_XPERT_DEEP_RESEARCH = "FEATURE_XPERT_DEEP_RESEARCH"
10
+ }
@@ -0,0 +1,84 @@
1
+ export declare const STATE_VARIABLE_HUMAN = "human";
2
+ export declare enum ChatMessageTypeEnum {
3
+ MESSAGE = "message",
4
+ EVENT = "event"
5
+ }
6
+ export declare enum ChatMessageEventTypeEnum {
7
+ ON_CONVERSATION_START = "on_conversation_start",
8
+ ON_CONVERSATION_END = "on_conversation_end",
9
+ ON_MESSAGE_START = "on_message_start",
10
+ ON_MESSAGE_END = "on_message_end",
11
+ ON_TOOL_START = "on_tool_start",
12
+ ON_TOOL_END = "on_tool_end",
13
+ ON_TOOL_ERROR = "on_tool_error",
14
+ ON_TOOL_MESSAGE = "on_tool_message",
15
+ ON_AGENT_START = "on_agent_start",
16
+ ON_AGENT_END = "on_agent_end",
17
+ ON_RETRIEVER_START = "on_retriever_start",
18
+ ON_RETRIEVER_END = "on_retriever_end",
19
+ ON_RETRIEVER_ERROR = "on_retriever_error",
20
+ ON_INTERRUPT = "on_interrupt",
21
+ ON_ERROR = "on_error",
22
+ ON_CHAT_EVENT = "on_chat_event",
23
+ ON_CLIENT_EFFECT = "on_client_effect"
24
+ }
25
+ export declare enum ChatMessageStepCategory {
26
+ List = "list",
27
+ WebSearch = "web_search",
28
+ Files = "files",
29
+ File = "file",
30
+ Program = "program",
31
+ Iframe = "iframe",
32
+ Memory = "memory",
33
+ Tasks = "tasks",
34
+ Knowledges = "knowledges"
35
+ }
36
+ export type * from '@xpert-ai/chatkit-types';
37
+ export type { TChatRequest } from './xpert-chat.model';
38
+ export * from './assistant-binding.model';
39
+ export * from './ai-model.model';
40
+ export * from './ai.model';
41
+ export * from './chat-event.model';
42
+ export * from './chat.model';
43
+ export * from './chat-message.model';
44
+ export * from './chat-message-feedback.model';
45
+ export * from './copilot-checkpoint.model';
46
+ export * from './copilot-example.model';
47
+ export * from './copilot-model.model';
48
+ export * from './copilot-organization.model';
49
+ export * from './copilot-provider.model';
50
+ export * from './copilot-store.model';
51
+ export * from './copilot-user.model';
52
+ export * from './copilot.model';
53
+ export * from './feature.model';
54
+ export * from './rag';
55
+ export * from './rag-web';
56
+ export * from './knowledgebase.model';
57
+ export * from './knowledge-doc.model';
58
+ export * from './knowledge-doc-page.model';
59
+ export * from './role-permissions';
60
+ export * from './xpert-agent-execution.model';
61
+ export * from './xpert-agent.model';
62
+ export * from './xpert-chat.model';
63
+ export * from './xpert-tool.model';
64
+ export * from './xpert-toolset.model';
65
+ export * from './xpert-workspace.model';
66
+ export * from './xpert-table.model';
67
+ export * from './xpert.model';
68
+ export * from './xpert.utils';
69
+ export * from './types';
70
+ export * from './xpert-template.model';
71
+ export * from './xpert-task.model';
72
+ export * from './xpert-workflow.model';
73
+ export * from './xpert-workflow-task.prompt';
74
+ export * from './xpert-tool-mcp.model';
75
+ export * from './xpert-project.model';
76
+ export * from './environment.model';
77
+ export * from './knowledgebase-task.model';
78
+ export * from './knowledge-pipeline';
79
+ export * from './knowledge-retrieval-log.model';
80
+ export * from './knowledge-doc-chunk.model';
81
+ export * from './skill.model';
82
+ export * from './middleware.model';
83
+ export * from './sandbox';
84
+ export * from './message-content.utils';
@@ -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
+ }