@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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metad/contracts",
3
- "version": "3.6.7",
3
+ "version": "3.7.0",
4
4
  "license": "AGPL-3.0",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,4 +1,4 @@
1
- export enum AiModelTypeEnum {
1
+ export declare enum AiModelTypeEnum {
2
2
  LLM = "llm",
3
3
  TEXT_EMBEDDING = "text-embedding",
4
4
  RERANK = "rerank",
@@ -6,4 +6,4 @@ export enum AiModelTypeEnum {
6
6
  MODERATION = "moderation",
7
7
  TTS = "tts",
8
8
  TEXT2IMG = "text2img"
9
- }
9
+ }
@@ -0,0 +1,151 @@
1
+ import { BaseMessage } from '@langchain/core/messages';
2
+ import { RunnableConfig } from '@langchain/core/runnables';
3
+ import { Subscriber } from 'rxjs';
4
+ import { TWorkflowVarGroup } from '../ai/xpert-workflow.model';
5
+ import { TMessageContentComplex } from '../ai/chat-message.model';
6
+ import { I18nObject } from '../types';
7
+ import { TXpertGraph, TXpertTeamNode } from '../ai/xpert.model';
8
+ /**
9
+ * @deprecated can use getCurrentTaskInput instead?
10
+ */
11
+ export declare const CONTEXT_VARIABLE_CURRENTSTATE = "currentState";
12
+ export declare const STATE_VARIABLE_SYS = "sys";
13
+ export declare const STATE_VARIABLE_HUMAN = "human";
14
+ export declare const GRAPH_NODE_SUMMARIZE_CONVERSATION = "summarize_conversation";
15
+ export declare const GRAPH_NODE_TITLE_CONVERSATION = "title_conversation";
16
+ export declare const STATE_VARIABLE_FILES = "files";
17
+ export declare const STATE_VARIABLE_INPUT = "input";
18
+ export declare const STATE_SYS_VOLUME = "volume";
19
+ export declare const STATE_SYS_WORKSPACE_PATH = "workspace_path";
20
+ export declare const STATE_SYS_WORKSPACE_URL = "workspace_url";
21
+ export declare const STATE_VARIABLE_TITLE_CHANNEL: string;
22
+ export type TMessageChannel = {
23
+ system: string;
24
+ messages: BaseMessage[];
25
+ summary?: string;
26
+ error?: string | null;
27
+ };
28
+ export type TAgentRunnableConfigurable = {
29
+ /**
30
+ * Thread id
31
+ */
32
+ thread_id: string;
33
+ checkpoint_ns: string;
34
+ checkpoint_id: string;
35
+ tool_call_id?: string;
36
+ tenantId: string;
37
+ organizationId: string;
38
+ language: string;
39
+ userId: string;
40
+ /**
41
+ * Xpert project id
42
+ */
43
+ projectId?: string;
44
+ xpertId?: string;
45
+ agentKey: string;
46
+ xpertName?: string;
47
+ toolName?: string;
48
+ subscriber: Subscriber<any>;
49
+ /**
50
+ * Execution id of agent workflow node
51
+ */
52
+ executionId: string;
53
+ signal?: AbortSignal;
54
+ };
55
+ export type TToolCall = {
56
+ id?: string;
57
+ name: string;
58
+ type?: 'tool_call';
59
+ args: Record<string, any>;
60
+ };
61
+ /**
62
+ *
63
+ * Example:
64
+ *
65
+ * ```typescript
66
+ * const result = interrupt<TInterruptMessage<{ name: string }>, { projectId: string }>({
67
+ * category: 'BI',
68
+ * type: 'switch_project',
69
+ * title: {
70
+ * en_US: 'Switch project',
71
+ * zh_Hans: '切换项目'
72
+ * },
73
+ * message: {
74
+ * en_US: 'Please select a project or create a new one',
75
+ * zh_Hans: '请选择或创建一个新的项目'
76
+ * },
77
+ * data: { name: '' }
78
+ * })
79
+ * ```
80
+ */
81
+ export type TInterruptMessage<T = unknown> = {
82
+ /**
83
+ * Major categories of interrupt components
84
+ */
85
+ category: 'BI';
86
+ /**
87
+ * The specific type of interactive component
88
+ */
89
+ type: string;
90
+ /**
91
+ * Title of the interrupt component
92
+ */
93
+ title: string | I18nObject;
94
+ /**
95
+ * Message content of the interrupt component
96
+ */
97
+ message: string | I18nObject;
98
+ /**
99
+ * Additional data
100
+ */
101
+ data?: T;
102
+ };
103
+ export type TInterruptCommand = {
104
+ resume?: any;
105
+ update?: any;
106
+ toolCalls?: TToolCall[];
107
+ agentKey?: string;
108
+ };
109
+ export declare function channelName(name: string): string;
110
+ export declare function messageContentText(content: string | TMessageContentComplex): any;
111
+ export declare function getWorkspaceFromRunnable(configurable: TAgentRunnableConfigurable): {
112
+ type?: 'project' | 'conversation';
113
+ id?: string;
114
+ };
115
+ export declare function getToolCallFromConfig(config: any): TToolCall;
116
+ export declare function getToolCallIdFromConfig(config: any): string;
117
+ /**
118
+ * Compute long-term memory namespace:
119
+ * 1. When a user talks to a digital expert individually, use `ExpertId` + `UserId` to store memory
120
+ * 2. When talking to a digital expert in a project, all users and digital experts share `ProjectId` to store memory
121
+ *
122
+ * @param config
123
+ * @returns
124
+ */
125
+ export declare function getStoreNamespace(config: RunnableConfig): string[];
126
+ export declare function configurableStoreNamespace(configurable: Partial<TAgentRunnableConfigurable>): string[];
127
+ /**
128
+ * Set value into variable of state.
129
+ *
130
+ * @param state
131
+ * @param varName
132
+ * @param value
133
+ * @returns
134
+ */
135
+ export declare function setStateVariable(state: Record<string, any>, varName: string, value: any): Record<string, any>;
136
+ /**
137
+ * Get agent variable group from graph.
138
+ *
139
+ * @param key
140
+ * @param graph
141
+ * @returns
142
+ */
143
+ export declare function getAgentVarGroup(key: string, graph: TXpertGraph): TWorkflowVarGroup;
144
+ /**
145
+ * Get swarm partners of agent in team
146
+ *
147
+ * @param graph
148
+ * @param agentKey
149
+ */
150
+ export declare function getSwarmPartners(graph: TXpertGraph, agentKey: string, partners: string[], leaderKey?: string): string[];
151
+ export declare function getWorkflowTriggers(graph: TXpertGraph, from: string): TXpertTeamNode[];
@@ -0,0 +1,5 @@
1
+ export * from './ai-model';
2
+ export * from './token';
3
+ export * from './graph';
4
+ export * from './utils';
5
+ export * from './variables';
@@ -0,0 +1,21 @@
1
+ export type TTokenUsage = {
2
+ promptTokens: number;
3
+ completionTokens: number;
4
+ totalTokens: number;
5
+ };
6
+ export interface IModelUsage {
7
+ totalTokens: number;
8
+ totalPrice: number;
9
+ currency: string;
10
+ latency: number;
11
+ }
12
+ export interface ILLMUsage extends IModelUsage {
13
+ promptTokens: number;
14
+ promptUnitPrice: number;
15
+ promptPriceUnit: number;
16
+ promptPrice: number;
17
+ completionTokens: number;
18
+ completionUnitPrice: number;
19
+ completionPriceUnit: number;
20
+ completionPrice: number;
21
+ }
@@ -0,0 +1,19 @@
1
+ import { TXpertGraph } from '../ai/xpert.model';
2
+ import { DeepPartial } from '../types';
3
+ /**
4
+ * Channels of all upstream and downstream nodes relative to the starting point startKey.
5
+ *
6
+ * @param graph
7
+ * @param startKey
8
+ */
9
+ export declare function allChannels(graph: TXpertGraph, startKey: string): string[];
10
+ export declare function findStartNodes(graph: DeepPartial<TXpertGraph>, key: string): string[];
11
+ /**
12
+ * Keep the content in the same graph as the key node (including the node, its connected nodes, and the 'edge' type connections between them)
13
+ *
14
+ * @param graph
15
+ * @param key
16
+ * @returns
17
+ */
18
+ export declare function getCurrentGraph(graph: TXpertGraph, key: string): TXpertGraph;
19
+ export declare function shortTitle(input: string): string;
@@ -0,0 +1,16 @@
1
+ import { TWorkflowVarGroup } from "../ai/xpert-workflow.model";
2
+ import { TXpertParameter } from "../ai/xpert.model";
3
+ /**
4
+ *
5
+ * Returns the variable schema for a given variable name.
6
+ * The variable name can be in the format of 'groupName.variableName' or just 'variableName'.
7
+ *
8
+ * @param variables
9
+ * @param variable
10
+ * @returns
11
+ */
12
+ export declare function getVariableSchema(variables: TWorkflowVarGroup[], variable: string): {
13
+ group: TWorkflowVarGroup;
14
+ variable: import("../ai/xpert.model").TStateVariable;
15
+ };
16
+ export declare const FILE_VARIABLES: TXpertParameter[];
@@ -0,0 +1,198 @@
1
+ import { AiModelTypeEnum } from '../agent/';
2
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
3
+ import { I18nObject } from '../types';
4
+ import { ICopilot } from './copilot.model';
5
+ export interface IAiModel extends IBasePerTenantAndOrganizationEntityModel {
6
+ /**
7
+ * Model name
8
+ */
9
+ name: string;
10
+ /**
11
+ * Model display name
12
+ */
13
+ label: string;
14
+ /**
15
+ * Model type
16
+ */
17
+ modelType: string;
18
+ /**
19
+ * Model features
20
+ */
21
+ features: string[];
22
+ /**
23
+ * Model properties
24
+ */
25
+ modelProperties: Record<string, any>;
26
+ /**
27
+ * Parameter rules
28
+ */
29
+ parameterRules: Record<string, any>[];
30
+ /**
31
+ * Pricing information
32
+ */
33
+ pricing: {
34
+ input: string;
35
+ output: string;
36
+ unit: string;
37
+ currency: string;
38
+ };
39
+ /**
40
+ * Deprecated
41
+ */
42
+ deprecated: boolean;
43
+ }
44
+ export declare enum ProviderType {
45
+ CUSTOM = "custom",
46
+ SYSTEM = "system"
47
+ }
48
+ export interface ICopilotWithProvider extends ICopilot {
49
+ providerWithModels: Partial<IAiProviderEntity>;
50
+ }
51
+ export interface IAiProviderEntity {
52
+ provider: string;
53
+ label: I18nObject;
54
+ description: I18nObject;
55
+ icon_small: I18nObject;
56
+ icon_large: I18nObject;
57
+ background: string;
58
+ help: ProviderHelpInfo;
59
+ supported_model_types: AiModelTypeEnum[];
60
+ configurate_methods: ConfigurateMethod[];
61
+ model_credential_schema: ModelCredentialSchema;
62
+ provider_credential_schema: ProviderCredentialSchema;
63
+ models: ProviderModel[];
64
+ /**
65
+ * Not yet implemented, your contribution is needed
66
+ */
67
+ not_implemented?: boolean;
68
+ }
69
+ export interface ProviderHelpInfo {
70
+ title: I18nObject;
71
+ url: I18nObject;
72
+ }
73
+ export interface ProviderModel {
74
+ model: string;
75
+ label: I18nObject;
76
+ model_type: AiModelTypeEnum;
77
+ features?: ModelFeature[];
78
+ fetch_from: FetchFrom;
79
+ model_properties: Partial<Record<ModelPropertyKey, any>>;
80
+ deprecated?: boolean;
81
+ modelConfig?: any;
82
+ }
83
+ export interface ProviderCredentialSchema {
84
+ credential_form_schemas: CredentialFormSchema[];
85
+ }
86
+ /**
87
+ * @todo Use JSON Schema to implement
88
+ */
89
+ export declare enum CredentialFormTypeEnum {
90
+ TEXT_INPUT = "text-input",
91
+ SECRET_INPUT = "secret-input",
92
+ SELECT = "select",
93
+ RADIO = "radio"
94
+ }
95
+ export interface CredentialFormSchema {
96
+ variable: string;
97
+ label: I18nObject;
98
+ type: CredentialFormTypeEnum | ParameterType;
99
+ required: boolean;
100
+ default?: number | string | boolean;
101
+ options?: {
102
+ label: I18nObject;
103
+ value: number | string | boolean;
104
+ show_on?: FormShowOnObject[];
105
+ }[];
106
+ placeholder: I18nObject;
107
+ max_length?: number;
108
+ show_on?: FormShowOnObject[];
109
+ }
110
+ export interface FormShowOnObject {
111
+ variable: string;
112
+ value: string;
113
+ }
114
+ export declare enum FetchFrom {
115
+ PREDEFINED_MODEL = "predefined-model",
116
+ CUSTOMIZABLE_MODEL = "customizable-model"
117
+ }
118
+ export declare enum ModelFeature {
119
+ TOOL_CALL = "tool-call",
120
+ MULTI_TOOL_CALL = "multi-tool-call",
121
+ AGENT_THOUGHT = "agent-thought",
122
+ VISION = "vision",
123
+ STREAM_TOOL_CALL = "stream-tool-call",
124
+ VIDEO = "video",
125
+ STRUCTURED_OUTPUT = "structured-output"
126
+ }
127
+ export declare enum ModelPropertyKey {
128
+ MODE = "mode",
129
+ CONTEXT_SIZE = "context_size",
130
+ MAX_CHUNKS = "max_chunks",
131
+ FILE_UPLOAD_LIMIT = "file_upload_limit",
132
+ SUPPORTED_FILE_EXTENSIONS = "supported_file_extensions",
133
+ MAX_CHARACTERS_PER_CHUNK = "max_characters_per_chunk",
134
+ DEFAULT_VOICE = "default_voice",
135
+ VOICES = "voices",
136
+ WORD_LIMIT = "word_limit",
137
+ AUDIO_TYPE = "audio_type",
138
+ MAX_WORKERS = "max_workers"
139
+ }
140
+ export declare enum ConfigurateMethod {
141
+ PREDEFINED_MODEL = "predefined-model",
142
+ CUSTOMIZABLE_MODEL = "customizable-model"
143
+ }
144
+ /**
145
+ * @todo Use JSON Schema to implement
146
+ */
147
+ export declare enum ParameterType {
148
+ FLOAT = "float",
149
+ INT = "int",
150
+ STRING = "string",
151
+ BOOLEAN = "boolean",
152
+ TEXT = "text"
153
+ }
154
+ /**
155
+ * @todo Use JSON Schema to implement
156
+ */
157
+ export interface ParameterRule {
158
+ name?: string;
159
+ useTemplate?: string;
160
+ label: I18nObject;
161
+ type: ParameterType;
162
+ help?: I18nObject;
163
+ required?: boolean;
164
+ default?: any;
165
+ min?: number;
166
+ max?: number;
167
+ precision?: number;
168
+ options?: string[];
169
+ }
170
+ export interface PriceConfig {
171
+ input: number;
172
+ output?: number;
173
+ unit: number;
174
+ currency: string;
175
+ }
176
+ export interface AIModelEntity extends ProviderModel {
177
+ parameter_rules?: ParameterRule[];
178
+ pricing?: PriceConfig;
179
+ }
180
+ export interface FieldModelSchema {
181
+ label: I18nObject;
182
+ placeholder?: I18nObject;
183
+ }
184
+ export interface ModelCredentialSchema {
185
+ model: FieldModelSchema;
186
+ credential_form_schemas: CredentialFormSchema[];
187
+ }
188
+ export declare const AI_MODEL_TYPE_VARIABLE = "__model_type";
189
+ export declare enum PriceType {
190
+ INPUT = "input",
191
+ OUTPUT = "output"
192
+ }
193
+ export interface PriceInfo {
194
+ unitPrice: number;
195
+ unit: number;
196
+ totalAmount: number;
197
+ currency: string;
198
+ }
@@ -0,0 +1,43 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ export interface IAiProvider extends IBasePerTenantAndOrganizationEntityModel {
3
+ /**
4
+ * 供应商标识,如 'openai'
5
+ */
6
+ name: string;
7
+ /**
8
+ * 供应商展示名称
9
+ */
10
+ label: string;
11
+ /**
12
+ * 供应商描述
13
+ */
14
+ description: string;
15
+ /**
16
+ * 供应商小图标
17
+ */
18
+ iconSmall: string;
19
+ /**
20
+ * 供应商大图标
21
+ */
22
+ iconLarge: string;
23
+ /**
24
+ * 背景颜色
25
+ */
26
+ background: string;
27
+ /**
28
+ * 帮助信息标题
29
+ */
30
+ helpTitle: string;
31
+ /**
32
+ * 帮助信息URL
33
+ */
34
+ helpUrl: string;
35
+ /**
36
+ * 支持的模型类型
37
+ */
38
+ supportedModelTypes: string[];
39
+ /**
40
+ * 配置方式
41
+ */
42
+ configurateMethods: string[];
43
+ }
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Business roles for AI copilot (commands or contexts)
3
+ */
4
+ export declare enum AiBusinessRole {
5
+ FinanceBP = "finance_bp",
6
+ SupplyChainExpert = "supply_chain_expert"
7
+ }
8
+ /**
9
+ * Providers for LLMs
10
+ *
11
+ * - https://js.langchain.com/docs/integrations/chat/
12
+ */
13
+ export declare enum AiProvider {
14
+ /**
15
+ * - https://js.langchain.com/docs/integrations/chat/openai/
16
+ */
17
+ OpenAI = "openai",
18
+ /**
19
+ * - https://js.langchain.com/docs/integrations/chat/openai/
20
+ */
21
+ Azure = "azure",
22
+ /**
23
+ * - https://ollama.com/
24
+ * - https://js.langchain.com/docs/integrations/chat/ollama/
25
+ */
26
+ Ollama = "ollama",
27
+ /**
28
+ * - https://www.deepseek.com/zh
29
+ * - https://js.langchain.com/docs/integrations/chat/openai/
30
+ */
31
+ DeepSeek = "deepseek",
32
+ /**
33
+ * - https://docs.anthropic.com/en/home
34
+ * - https://js.langchain.com/docs/integrations/chat/anthropic/
35
+ */
36
+ Anthropic = "anthropic",
37
+ /**
38
+ * - https://www.aliyun.com/product/bailian
39
+ * - https://js.langchain.com/docs/integrations/chat/alibaba_tongyi/
40
+ */
41
+ AlibabaTongyi = "alibaba_tongyi",
42
+ /**
43
+ * - https://open.bigmodel.cn/
44
+ * - https://js.langchain.com/docs/integrations/chat/openai/
45
+ */
46
+ Zhipu = "zhipu",
47
+ /**
48
+ * - https://qianfan.cloud.baidu.com/
49
+ * - https://js.langchain.com/docs/integrations/chat/baidu_qianfan/
50
+ */
51
+ BaiduQianfan = "baidu_qianfan",
52
+ /**
53
+ * - https://www.together.ai/
54
+ * - https://js.langchain.com/docs/integrations/chat/togetherai/
55
+ */
56
+ Together = "together",
57
+ /**
58
+ * - https://platform.moonshot.cn/console
59
+ * - https://js.langchain.com/docs/integrations/chat/openai/
60
+ */
61
+ Moonshot = "moonshot",
62
+ /**
63
+ * - https://groq.com/
64
+ * - https://js.langchain.com/docs/integrations/chat/openai/
65
+ */
66
+ Groq = "groq",
67
+ /**
68
+ * - https://mistral.ai/
69
+ *
70
+ */
71
+ Mistral = "mistral",
72
+ /**
73
+ * - https://cohere.com/
74
+ */
75
+ Cohere = "cohere"
76
+ }
77
+ export declare enum AiProtocol {
78
+ OpenAI = "openai",
79
+ Others = "others"
80
+ }
81
+ export declare const OpenAIEmbeddingsProviders: AiProvider[];
82
+ export declare const OllamaEmbeddingsProviders: AiProvider[];
@@ -0,0 +1,24 @@
1
+ import { IBasePerTenantAndOrganizationEntityModel } from '../base-entity.model';
2
+ import { IChatMessage } from './chat-message.model';
3
+ import { IChatConversation } from './chat.model';
4
+ export declare enum ChatMessageFeedbackRatingEnum {
5
+ LIKE = "like",
6
+ DISLIKE = "dislike"
7
+ }
8
+ /**
9
+ *
10
+ */
11
+ export interface IChatMessageFeedback extends IBasePerTenantAndOrganizationEntityModel {
12
+ rating: ChatMessageFeedbackRatingEnum;
13
+ content?: string;
14
+ /**
15
+ * Chat conversation
16
+ */
17
+ conversation?: IChatConversation;
18
+ conversationId?: string | null;
19
+ /**
20
+ * Chat conversation message
21
+ */
22
+ message?: IChatMessage;
23
+ messageId?: string | null;
24
+ }