@metad/contracts 3.6.1 → 3.6.2

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 (286) hide show
  1. package/index.cjs.d.ts +1 -0
  2. package/index.cjs.js +4233 -5
  3. package/index.esm.d.ts +1 -0
  4. package/index.esm.js +4129 -0
  5. package/package.json +9 -2
  6. package/src/agent/{ai-model.ts → ai-model.d.ts} +2 -2
  7. package/src/agent/graph.d.ts +148 -0
  8. package/src/agent/index.d.ts +5 -0
  9. package/src/agent/token.d.ts +21 -0
  10. package/src/agent/utils.d.ts +19 -0
  11. package/src/agent/variables.d.ts +14 -0
  12. package/src/ai/ai-model.model.d.ts +198 -0
  13. package/src/ai/ai-provider.model.d.ts +43 -0
  14. package/src/ai/ai.model.d.ts +82 -0
  15. package/src/ai/chat-message-feedback.model.d.ts +24 -0
  16. package/src/ai/chat-message.model.d.ts +222 -0
  17. package/src/ai/chat.model.d.ts +189 -0
  18. package/src/ai/copilot-checkpoint.model.d.ts +23 -0
  19. package/src/ai/copilot-example.model.d.ts +19 -0
  20. package/src/ai/copilot-model.model.d.ts +26 -0
  21. package/src/ai/copilot-organization.model.d.ts +17 -0
  22. package/src/ai/copilot-provider.model.d.ts +31 -0
  23. package/src/ai/copilot-role.model.d.ts +43 -0
  24. package/src/ai/copilot-store.model.d.ts +29 -0
  25. package/src/ai/copilot-user.model.d.ts +20 -0
  26. package/src/ai/copilot.model.d.ts +36 -0
  27. package/src/ai/{environment.model.ts → environment.model.d.ts} +10 -12
  28. package/src/ai/feature.model.d.ts +6 -0
  29. package/src/ai/index.d.ts +39 -0
  30. package/src/ai/knowledge-doc-chunk.model.d.ts +60 -0
  31. package/src/ai/knowledge-doc-page.model.d.ts +15 -0
  32. package/src/ai/knowledge-doc.model.d.ts +192 -0
  33. package/src/ai/knowledge-pipeline.d.ts +107 -0
  34. package/src/ai/knowledge-retrieval-log.model.d.ts +10 -0
  35. package/src/ai/knowledgebase-task.model.d.ts +39 -0
  36. package/src/ai/knowledgebase.model.d.ts +162 -0
  37. package/src/ai/rag-web.d.ts +26 -0
  38. package/src/ai/rag.d.ts +24 -0
  39. package/src/ai/role-permissions.d.ts +13 -0
  40. package/src/ai/types.d.ts +39 -0
  41. package/src/ai/xpert-agent-execution.model.d.ts +96 -0
  42. package/src/ai/xpert-agent.model.d.ts +192 -0
  43. package/src/ai/xpert-project.model.d.ts +86 -0
  44. package/src/ai/xpert-task.model.d.ts +26 -0
  45. package/src/ai/xpert-template.model.d.ts +47 -0
  46. package/src/ai/xpert-tool-mcp.model.d.ts +67 -0
  47. package/src/ai/xpert-tool.model.d.ts +147 -0
  48. package/src/ai/xpert-toolset.model.d.ts +200 -0
  49. package/src/ai/xpert-workflow-task.prompt.d.ts +2 -0
  50. package/src/ai/xpert-workflow.model.d.ts +366 -0
  51. package/src/ai/xpert-workspace.model.d.ts +32 -0
  52. package/src/ai/xpert.model.d.ts +529 -0
  53. package/src/ai/xpert.utils.d.ts +80 -0
  54. package/src/analytics/ai.d.ts +73 -0
  55. package/src/analytics/approval-policy.model.d.ts +30 -0
  56. package/src/analytics/business-area-user.model.d.ts +35 -0
  57. package/src/analytics/business-area.d.ts +17 -0
  58. package/src/analytics/certification.model.d.ts +11 -0
  59. package/src/analytics/chatbi-conversation.model.d.ts +15 -0
  60. package/src/analytics/chatbi-model.model.d.ts +18 -0
  61. package/src/analytics/collection.model.d.ts +6 -0
  62. package/src/analytics/comment.model.d.ts +10 -0
  63. package/src/analytics/data-source-type.d.ts +16 -0
  64. package/src/analytics/data-source.d.ts +62 -0
  65. package/src/analytics/favorite.d.ts +14 -0
  66. package/src/analytics/features.d.ts +19 -0
  67. package/src/analytics/feed-model.d.ts +13 -0
  68. package/src/analytics/gateway.d.ts +27 -0
  69. package/src/analytics/index.d.ts +38 -0
  70. package/src/analytics/indicator-app.d.ts +44 -0
  71. package/src/analytics/{indicator-market.ts → indicator-market.d.ts} +2 -6
  72. package/src/analytics/indicator.d.ts +106 -0
  73. package/src/analytics/model-query-log.model.d.ts +41 -0
  74. package/src/analytics/model-query.d.ts +21 -0
  75. package/src/analytics/{notification-destination.ts → notification-destination.d.ts} +5 -9
  76. package/src/analytics/{permission-approval-user.model.ts → permission-approval-user.model.d.ts} +8 -10
  77. package/src/analytics/permission-approval.model.d.ts +47 -0
  78. package/src/analytics/project.model.d.ts +50 -0
  79. package/src/analytics/role-permissions.d.ts +25 -0
  80. package/src/analytics/schema.d.ts +262 -0
  81. package/src/analytics/screenshot.model.d.ts +25 -0
  82. package/src/analytics/semantic-model-entity.d.ts +37 -0
  83. package/src/analytics/semantic-model-member.d.ts +24 -0
  84. package/src/analytics/semantic-model.d.ts +175 -0
  85. package/src/analytics/{story-point.ts → story-point.d.ts} +6 -11
  86. package/src/analytics/story-template.model.d.ts +28 -0
  87. package/src/analytics/story-widget.d.ts +12 -0
  88. package/src/analytics/story.d.ts +93 -0
  89. package/src/analytics/subscription.d.ts +38 -0
  90. package/src/analytics/visit.model.d.ts +34 -0
  91. package/src/analytics/webSocket.d.ts +48 -0
  92. package/src/api-key.model.d.ts +10 -0
  93. package/src/base-entity.model.d.ts +27 -0
  94. package/src/contact.model.d.ts +41 -0
  95. package/src/core.model.d.ts +97 -0
  96. package/src/{country.model.ts → country.model.d.ts} +2 -3
  97. package/src/currency.model.d.ts +579 -0
  98. package/src/{custom-smtp.model.ts → custom-smtp.model.d.ts} +17 -21
  99. package/src/date-picker.model.d.ts +5 -0
  100. package/src/email-template.model.d.ts +39 -0
  101. package/src/email.model.d.ts +36 -0
  102. package/src/employee.model.d.ts +128 -0
  103. package/src/entity-with-members.model.d.ts +13 -0
  104. package/src/feature.model.d.ts +93 -0
  105. package/src/file-provider.d.ts +33 -0
  106. package/src/help-center-article.model.d.ts +0 -0
  107. package/src/help-center.model.d.ts +0 -0
  108. package/src/http-status.enum.d.ts +57 -0
  109. package/src/import-export.model.d.ts +36 -0
  110. package/src/index.d.ts +48 -0
  111. package/src/integration/dify.d.ts +0 -0
  112. package/src/integration/dingtalk.d.ts +2 -0
  113. package/src/integration/fastgpt.d.ts +0 -0
  114. package/src/integration/firecrawl.d.ts +2 -0
  115. package/src/integration/github.d.ts +69 -0
  116. package/src/integration/index.d.ts +4 -0
  117. package/src/integration/lark.d.ts +11 -0
  118. package/src/integration/wecom.d.ts +2 -0
  119. package/src/integration.model.d.ts +90 -0
  120. package/src/invite.model.d.ts +123 -0
  121. package/src/language.model.d.ts +19 -0
  122. package/src/organization-contact.model.d.ts +73 -0
  123. package/src/{organization-department.model.ts → organization-department.model.d.ts} +10 -16
  124. package/src/organization-language.model.d.ts +18 -0
  125. package/src/organization-projects.model.d.ts +80 -0
  126. package/src/organization-team-employee-model.d.ts +12 -0
  127. package/src/organization-team-model.d.ts +19 -0
  128. package/src/organization.model.d.ts +239 -0
  129. package/src/{password-reset.model.ts → password-reset.model.d.ts} +10 -14
  130. package/src/{plain-object.model.ts → plain-object.model.d.ts} +1 -1
  131. package/src/plugin.d.ts +13 -0
  132. package/src/role-permission.model.d.ts +61 -0
  133. package/src/role.model.d.ts +26 -0
  134. package/src/schedule.d.ts +27 -0
  135. package/src/secret-token.model.d.ts +11 -0
  136. package/src/seed.model.d.ts +37 -0
  137. package/src/storage-file.model.d.ts +40 -0
  138. package/src/tag-entity.model.d.ts +20 -0
  139. package/src/tenant.model.d.ts +40 -0
  140. package/src/tools/index.d.ts +1 -0
  141. package/src/tools/sandbox.d.ts +5 -0
  142. package/src/translation.model.d.ts +26 -0
  143. package/src/types.d.ts +241 -0
  144. package/src/user-organization.model.d.ts +24 -0
  145. package/src/user.model.d.ts +131 -0
  146. package/src/visibility.model.d.ts +6 -0
  147. package/.babelrc +0 -5
  148. package/.eslintrc.json +0 -18
  149. package/babel.config.json +0 -1
  150. package/jest.config.ts +0 -16
  151. package/project.json +0 -53
  152. package/src/agent/graph.ts +0 -272
  153. package/src/agent/index.ts +0 -5
  154. package/src/agent/token.ts +0 -23
  155. package/src/agent/utils.spec.ts +0 -283
  156. package/src/agent/utils.ts +0 -122
  157. package/src/agent/variables.ts +0 -21
  158. package/src/ai/ai-model.model.ts +0 -228
  159. package/src/ai/ai-provider.model.ts +0 -53
  160. package/src/ai/ai.model.ts +0 -87
  161. package/src/ai/chat-message-feedback.model.ts +0 -31
  162. package/src/ai/chat-message.model.ts +0 -277
  163. package/src/ai/chat.model.ts +0 -207
  164. package/src/ai/copilot-checkpoint.model.ts +0 -25
  165. package/src/ai/copilot-example.model.ts +0 -23
  166. package/src/ai/copilot-model.model.ts +0 -31
  167. package/src/ai/copilot-organization.model.ts +0 -21
  168. package/src/ai/copilot-provider.model.ts +0 -46
  169. package/src/ai/copilot-role.model.ts +0 -48
  170. package/src/ai/copilot-store.model.ts +0 -34
  171. package/src/ai/copilot-user.model.ts +0 -24
  172. package/src/ai/copilot.model.ts +0 -47
  173. package/src/ai/feature.model.ts +0 -6
  174. package/src/ai/index.ts +0 -39
  175. package/src/ai/knowledge-doc-chunk.model.ts +0 -120
  176. package/src/ai/knowledge-doc-chunk.spec.ts +0 -47
  177. package/src/ai/knowledge-doc-page.model.ts +0 -20
  178. package/src/ai/knowledge-doc.model.ts +0 -252
  179. package/src/ai/knowledge-pipeline.ts +0 -138
  180. package/src/ai/knowledge-retrieval-log.model.ts +0 -19
  181. package/src/ai/knowledgebase-task.model.ts +0 -46
  182. package/src/ai/knowledgebase.model.ts +0 -190
  183. package/src/ai/rag-web.ts +0 -54
  184. package/src/ai/rag.ts +0 -24
  185. package/src/ai/role-permissions.ts +0 -13
  186. package/src/ai/types.ts +0 -83
  187. package/src/ai/xpert-agent-execution.model.ts +0 -115
  188. package/src/ai/xpert-agent.model.ts +0 -258
  189. package/src/ai/xpert-project.model.ts +0 -103
  190. package/src/ai/xpert-task.model.ts +0 -32
  191. package/src/ai/xpert-template.model.ts +0 -53
  192. package/src/ai/xpert-tool-mcp.model.ts +0 -72
  193. package/src/ai/xpert-tool.model.ts +0 -211
  194. package/src/ai/xpert-toolset.model.ts +0 -220
  195. package/src/ai/xpert-workflow-task.prompt.ts +0 -71
  196. package/src/ai/xpert-workflow.model.ts +0 -449
  197. package/src/ai/xpert-workspace.model.ts +0 -42
  198. package/src/ai/xpert.model.ts +0 -613
  199. package/src/ai/xpert.utils.ts +0 -214
  200. package/src/analytics/ai.ts +0 -79
  201. package/src/analytics/approval-policy.model.ts +0 -40
  202. package/src/analytics/business-area-user.model.ts +0 -43
  203. package/src/analytics/business-area.ts +0 -20
  204. package/src/analytics/certification.model.ts +0 -12
  205. package/src/analytics/chatbi-conversation.model.ts +0 -16
  206. package/src/analytics/chatbi-model.model.ts +0 -22
  207. package/src/analytics/collection.model.ts +0 -8
  208. package/src/analytics/comment.model.ts +0 -14
  209. package/src/analytics/data-source-type.ts +0 -19
  210. package/src/analytics/data-source.ts +0 -72
  211. package/src/analytics/favorite.ts +0 -18
  212. package/src/analytics/features.ts +0 -19
  213. package/src/analytics/feed-model.ts +0 -15
  214. package/src/analytics/gateway.ts +0 -30
  215. package/src/analytics/index.ts +0 -39
  216. package/src/analytics/indicator-app.ts +0 -49
  217. package/src/analytics/indicator.ts +0 -127
  218. package/src/analytics/model-query-log.model.ts +0 -45
  219. package/src/analytics/model-query.ts +0 -22
  220. package/src/analytics/permission-approval.model.ts +0 -58
  221. package/src/analytics/project.model.ts +0 -56
  222. package/src/analytics/role-permissions.ts +0 -36
  223. package/src/analytics/schema.ts +0 -300
  224. package/src/analytics/screenshot.model.ts +0 -28
  225. package/src/analytics/semantic-model-entity.ts +0 -49
  226. package/src/analytics/semantic-model-member.ts +0 -45
  227. package/src/analytics/semantic-model.ts +0 -227
  228. package/src/analytics/story-template.model.ts +0 -34
  229. package/src/analytics/story-widget.ts +0 -15
  230. package/src/analytics/story.ts +0 -109
  231. package/src/analytics/subscription.ts +0 -43
  232. package/src/analytics/visit.model.ts +0 -39
  233. package/src/analytics/webSocket.ts +0 -53
  234. package/src/api-key.model.ts +0 -11
  235. package/src/base-entity.model.ts +0 -34
  236. package/src/contact.model.ts +0 -45
  237. package/src/core.model.ts +0 -103
  238. package/src/currency.model.ts +0 -582
  239. package/src/date-picker.model.ts +0 -5
  240. package/src/email-template.model.ts +0 -50
  241. package/src/email.model.ts +0 -46
  242. package/src/employee.model.ts +0 -199
  243. package/src/entity-with-members.model.ts +0 -16
  244. package/src/feature.model.ts +0 -108
  245. package/src/file-provider.ts +0 -37
  246. package/src/help-center-article.model.ts +0 -35
  247. package/src/help-center.model.ts +0 -33
  248. package/src/http-status.enum.ts +0 -58
  249. package/src/import-export.model.ts +0 -42
  250. package/src/index.ts +0 -60
  251. package/src/integration/dify.ts +0 -31
  252. package/src/integration/dingtalk.ts +0 -16
  253. package/src/integration/fastgpt.ts +0 -32
  254. package/src/integration/firecrawl.ts +0 -46
  255. package/src/integration/github.ts +0 -149
  256. package/src/integration/index.ts +0 -15
  257. package/src/integration/lark.ts +0 -79
  258. package/src/integration/wecom.ts +0 -16
  259. package/src/integration.model.ts +0 -119
  260. package/src/invite.model.ts +0 -144
  261. package/src/language.model.ts +0 -22
  262. package/src/organization-contact.model.ts +0 -84
  263. package/src/organization-language.model.ts +0 -24
  264. package/src/organization-projects.model.ts +0 -99
  265. package/src/organization-team-employee-model.ts +0 -14
  266. package/src/organization-team-model.ts +0 -25
  267. package/src/organization.model.ts +0 -266
  268. package/src/plugin.ts +0 -15
  269. package/src/role-permission.model.ts +0 -123
  270. package/src/role.model.ts +0 -31
  271. package/src/schedule.ts +0 -71
  272. package/src/secret-token.model.ts +0 -15
  273. package/src/seed.model.ts +0 -50
  274. package/src/storage-file.model.ts +0 -46
  275. package/src/tag-entity.model.ts +0 -23
  276. package/src/tenant.model.ts +0 -52
  277. package/src/tools/index.ts +0 -1
  278. package/src/tools/sandbox.ts +0 -5
  279. package/src/translation.model.ts +0 -37
  280. package/src/types.ts +0 -277
  281. package/src/user-organization.model.ts +0 -31
  282. package/src/user.model.ts +0 -151
  283. package/src/visibility.model.ts +0 -6
  284. package/tsconfig.json +0 -22
  285. package/tsconfig.lib.json +0 -10
  286. package/tsconfig.spec.json +0 -9
package/package.json CHANGED
@@ -1,10 +1,17 @@
1
1
  {
2
2
  "name": "@metad/contracts",
3
- "version": "3.6.1",
3
+ "version": "3.6.2",
4
4
  "license": "AGPL-3.0",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/xpert-ai/xpert.git"
8
+ },
9
+ "bugs": {
10
+ "url": "https://github.com/xpert-ai/xpert/issues"
11
+ },
5
12
  "scripts": {
6
13
  "docs": "yarn typedoc --out ./.docs"
7
14
  },
8
15
  "module": "./index.esm.js",
9
16
  "main": "./index.cjs.js"
10
- }
17
+ }
@@ -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,148 @@
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_VARIABLE_TITLE_CHANNEL: string;
19
+ export type TMessageChannel = {
20
+ system: string;
21
+ messages: BaseMessage[];
22
+ summary?: string;
23
+ error?: string | null;
24
+ };
25
+ export type TAgentRunnableConfigurable = {
26
+ /**
27
+ * Thread id
28
+ */
29
+ thread_id: string;
30
+ checkpoint_ns: string;
31
+ checkpoint_id: string;
32
+ tool_call_id?: string;
33
+ tenantId: string;
34
+ organizationId: string;
35
+ language: string;
36
+ userId: string;
37
+ /**
38
+ * Xpert project id
39
+ */
40
+ projectId?: string;
41
+ xpertId?: string;
42
+ agentKey: string;
43
+ xpertName?: string;
44
+ toolName?: string;
45
+ subscriber: Subscriber<any>;
46
+ /**
47
+ * Execution id of agent workflow node
48
+ */
49
+ executionId: string;
50
+ signal?: AbortSignal;
51
+ };
52
+ export type TToolCall = {
53
+ id?: string;
54
+ name: string;
55
+ type?: 'tool_call';
56
+ args: Record<string, any>;
57
+ };
58
+ /**
59
+ *
60
+ * Example:
61
+ *
62
+ * ```typescript
63
+ * const result = interrupt<TInterruptMessage<{ name: string }>, { projectId: string }>({
64
+ * category: 'BI',
65
+ * type: 'switch_project',
66
+ * title: {
67
+ * en_US: 'Switch project',
68
+ * zh_Hans: '切换项目'
69
+ * },
70
+ * message: {
71
+ * en_US: 'Please select a project or create a new one',
72
+ * zh_Hans: '请选择或创建一个新的项目'
73
+ * },
74
+ * data: { name: '' }
75
+ * })
76
+ * ```
77
+ */
78
+ export type TInterruptMessage<T = unknown> = {
79
+ /**
80
+ * Major categories of interrupt components
81
+ */
82
+ category: 'BI';
83
+ /**
84
+ * The specific type of interactive component
85
+ */
86
+ type: string;
87
+ /**
88
+ * Title of the interrupt component
89
+ */
90
+ title: string | I18nObject;
91
+ /**
92
+ * Message content of the interrupt component
93
+ */
94
+ message: string | I18nObject;
95
+ /**
96
+ * Additional data
97
+ */
98
+ data?: T;
99
+ };
100
+ export type TInterruptCommand = {
101
+ resume?: any;
102
+ update?: any;
103
+ toolCalls?: TToolCall[];
104
+ agentKey?: string;
105
+ };
106
+ export declare function channelName(name: string): string;
107
+ export declare function messageContentText(content: string | TMessageContentComplex): any;
108
+ export declare function getWorkspaceFromRunnable(configurable: TAgentRunnableConfigurable): {
109
+ type?: 'project' | 'conversation';
110
+ id?: string;
111
+ };
112
+ export declare function getToolCallFromConfig(config: any): TToolCall;
113
+ export declare function getToolCallIdFromConfig(config: any): string;
114
+ /**
115
+ * Compute long-term memory namespace:
116
+ * 1. When a user talks to a digital expert individually, use `ExpertId` + `UserId` to store memory
117
+ * 2. When talking to a digital expert in a project, all users and digital experts share `ProjectId` to store memory
118
+ *
119
+ * @param config
120
+ * @returns
121
+ */
122
+ export declare function getStoreNamespace(config: RunnableConfig): string[];
123
+ export declare function configurableStoreNamespace(configurable: Partial<TAgentRunnableConfigurable>): string[];
124
+ /**
125
+ * Set value into variable of state.
126
+ *
127
+ * @param state
128
+ * @param varName
129
+ * @param value
130
+ * @returns
131
+ */
132
+ export declare function setStateVariable(state: Record<string, any>, varName: string, value: any): Record<string, any>;
133
+ /**
134
+ * Get agent variable group from graph.
135
+ *
136
+ * @param key
137
+ * @param graph
138
+ * @returns
139
+ */
140
+ export declare function getAgentVarGroup(key: string, graph: TXpertGraph): TWorkflowVarGroup;
141
+ /**
142
+ * Get swarm partners of agent in team
143
+ *
144
+ * @param graph
145
+ * @param agentKey
146
+ */
147
+ export declare function getSwarmPartners(graph: TXpertGraph, agentKey: string, partners: string[], leaderKey?: string): string[];
148
+ 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,14 @@
1
+ import { TWorkflowVarGroup } from "../ai";
2
+ /**
3
+ *
4
+ * Returns the variable schema for a given variable name.
5
+ * The variable name can be in the format of 'groupName.variableName' or just 'variableName'.
6
+ *
7
+ * @param variables
8
+ * @param variable
9
+ * @returns
10
+ */
11
+ export declare function getVariableSchema(variables: TWorkflowVarGroup[], variable: string): {
12
+ group: TWorkflowVarGroup;
13
+ variable: import("../ai").TStateVariable;
14
+ };
@@ -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
+ }