@vertesia/client 0.54.0 → 0.56.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 (216) hide show
  1. package/lib/cjs/AccountApi.js +84 -0
  2. package/lib/cjs/AccountApi.js.map +1 -0
  3. package/lib/cjs/AccountsApi.js +16 -0
  4. package/lib/cjs/AccountsApi.js.map +1 -0
  5. package/lib/cjs/AnalyticsApi.js +13 -0
  6. package/lib/cjs/AnalyticsApi.js.map +1 -0
  7. package/lib/cjs/ApiKeysApi.js +63 -0
  8. package/lib/cjs/ApiKeysApi.js.map +1 -0
  9. package/lib/cjs/CommandsApi.js +19 -0
  10. package/lib/cjs/CommandsApi.js.map +1 -0
  11. package/lib/cjs/EnvironmentsApi.js +58 -0
  12. package/lib/cjs/EnvironmentsApi.js.map +1 -0
  13. package/lib/cjs/IamApi.js +51 -0
  14. package/lib/cjs/IamApi.js.map +1 -0
  15. package/lib/cjs/InteractionBase.js +44 -0
  16. package/lib/cjs/InteractionBase.js.map +1 -0
  17. package/lib/cjs/InteractionsApi.js +209 -0
  18. package/lib/cjs/InteractionsApi.js.map +1 -0
  19. package/lib/cjs/PluginsApi.js +27 -0
  20. package/lib/cjs/PluginsApi.js.map +1 -0
  21. package/lib/cjs/ProjectsApi.js +54 -0
  22. package/lib/cjs/ProjectsApi.js.map +1 -0
  23. package/lib/cjs/PromptsApi.js +133 -0
  24. package/lib/cjs/PromptsApi.js.map +1 -0
  25. package/lib/cjs/RefsApi.js +14 -0
  26. package/lib/cjs/RefsApi.js.map +1 -0
  27. package/lib/cjs/RunsApi.js +105 -0
  28. package/lib/cjs/RunsApi.js.map +1 -0
  29. package/lib/cjs/StreamSource.js +17 -0
  30. package/lib/cjs/StreamSource.js.map +1 -0
  31. package/lib/cjs/TrainingApi.js +54 -0
  32. package/lib/cjs/TrainingApi.js.map +1 -0
  33. package/lib/cjs/UsersApi.js +13 -0
  34. package/lib/cjs/UsersApi.js.map +1 -0
  35. package/lib/cjs/client.js +218 -0
  36. package/lib/cjs/client.js.map +1 -0
  37. package/lib/cjs/execute.js +152 -0
  38. package/lib/cjs/execute.js.map +1 -0
  39. package/lib/cjs/index.js +21 -0
  40. package/lib/cjs/index.js.map +1 -0
  41. package/lib/cjs/nodejs/NodeStreamSource.js +45 -0
  42. package/lib/cjs/nodejs/NodeStreamSource.js.map +1 -0
  43. package/lib/cjs/nodejs/index.js +18 -0
  44. package/lib/cjs/nodejs/index.js.map +1 -0
  45. package/lib/cjs/package.json +3 -0
  46. package/lib/cjs/store/AgentsApi.js +16 -0
  47. package/lib/cjs/store/AgentsApi.js.map +1 -0
  48. package/lib/cjs/store/AnalyzeDocApi.js +56 -0
  49. package/lib/cjs/store/AnalyzeDocApi.js.map +1 -0
  50. package/lib/cjs/store/CollectionsApi.js +77 -0
  51. package/lib/cjs/store/CollectionsApi.js.map +1 -0
  52. package/lib/cjs/store/CommandsApi.js +17 -0
  53. package/lib/cjs/store/CommandsApi.js.map +1 -0
  54. package/lib/cjs/store/EmbeddingsApi.js +29 -0
  55. package/lib/cjs/store/EmbeddingsApi.js.map +1 -0
  56. package/lib/cjs/store/FilesApi.js +128 -0
  57. package/lib/cjs/store/FilesApi.js.map +1 -0
  58. package/lib/cjs/store/ObjectsApi.js +254 -0
  59. package/lib/cjs/store/ObjectsApi.js.map +1 -0
  60. package/lib/cjs/store/TypesApi.js +57 -0
  61. package/lib/cjs/store/TypesApi.js.map +1 -0
  62. package/lib/cjs/store/WorkflowsApi.js +179 -0
  63. package/lib/cjs/store/WorkflowsApi.js.map +1 -0
  64. package/lib/cjs/store/client.js +55 -0
  65. package/lib/cjs/store/client.js.map +1 -0
  66. package/lib/cjs/store/errors.js +11 -0
  67. package/lib/cjs/store/errors.js.map +1 -0
  68. package/lib/cjs/store/index.js +22 -0
  69. package/lib/cjs/store/index.js.map +1 -0
  70. package/lib/esm/AccountApi.js +81 -0
  71. package/lib/esm/AccountApi.js.map +1 -0
  72. package/lib/esm/AccountsApi.js +13 -0
  73. package/lib/esm/AccountsApi.js.map +1 -0
  74. package/lib/esm/AnalyticsApi.js +10 -0
  75. package/lib/esm/AnalyticsApi.js.map +1 -0
  76. package/lib/esm/ApiKeysApi.js +59 -0
  77. package/lib/esm/ApiKeysApi.js.map +1 -0
  78. package/lib/esm/CommandsApi.js +16 -0
  79. package/lib/esm/CommandsApi.js.map +1 -0
  80. package/lib/esm/EnvironmentsApi.js +55 -0
  81. package/lib/esm/EnvironmentsApi.js.map +1 -0
  82. package/lib/esm/IamApi.js +45 -0
  83. package/lib/esm/IamApi.js.map +1 -0
  84. package/lib/esm/InteractionBase.js +40 -0
  85. package/lib/esm/InteractionBase.js.map +1 -0
  86. package/lib/esm/InteractionsApi.js +206 -0
  87. package/lib/esm/InteractionsApi.js.map +1 -0
  88. package/lib/esm/PluginsApi.js +24 -0
  89. package/lib/esm/PluginsApi.js.map +1 -0
  90. package/lib/esm/ProjectsApi.js +51 -0
  91. package/lib/esm/ProjectsApi.js.map +1 -0
  92. package/lib/esm/PromptsApi.js +130 -0
  93. package/lib/esm/PromptsApi.js.map +1 -0
  94. package/lib/esm/RefsApi.js +10 -0
  95. package/lib/esm/RefsApi.js.map +1 -0
  96. package/lib/esm/RunsApi.js +101 -0
  97. package/lib/esm/RunsApi.js.map +1 -0
  98. package/lib/esm/StreamSource.js +13 -0
  99. package/lib/esm/StreamSource.js.map +1 -0
  100. package/lib/esm/TrainingApi.js +51 -0
  101. package/lib/esm/TrainingApi.js.map +1 -0
  102. package/lib/esm/UsersApi.js +10 -0
  103. package/lib/esm/UsersApi.js.map +1 -0
  104. package/lib/esm/client.js +211 -0
  105. package/lib/esm/client.js.map +1 -0
  106. package/lib/esm/execute.js +113 -0
  107. package/lib/esm/execute.js.map +1 -0
  108. package/lib/esm/index.js +5 -0
  109. package/lib/esm/index.js.map +1 -0
  110. package/lib/esm/nodejs/NodeStreamSource.js +41 -0
  111. package/lib/esm/nodejs/NodeStreamSource.js.map +1 -0
  112. package/lib/esm/nodejs/index.js +2 -0
  113. package/lib/esm/nodejs/index.js.map +1 -0
  114. package/lib/esm/store/AgentsApi.js +12 -0
  115. package/lib/esm/store/AgentsApi.js.map +1 -0
  116. package/lib/esm/store/AnalyzeDocApi.js +52 -0
  117. package/lib/esm/store/AnalyzeDocApi.js.map +1 -0
  118. package/lib/esm/store/CollectionsApi.js +73 -0
  119. package/lib/esm/store/CollectionsApi.js.map +1 -0
  120. package/lib/esm/store/CommandsApi.js +13 -0
  121. package/lib/esm/store/CommandsApi.js.map +1 -0
  122. package/lib/esm/store/EmbeddingsApi.js +25 -0
  123. package/lib/esm/store/EmbeddingsApi.js.map +1 -0
  124. package/lib/esm/store/FilesApi.js +123 -0
  125. package/lib/esm/store/FilesApi.js.map +1 -0
  126. package/lib/esm/store/ObjectsApi.js +250 -0
  127. package/lib/esm/store/ObjectsApi.js.map +1 -0
  128. package/lib/esm/store/TypesApi.js +53 -0
  129. package/lib/esm/store/TypesApi.js.map +1 -0
  130. package/lib/esm/store/WorkflowsApi.js +173 -0
  131. package/lib/esm/store/WorkflowsApi.js.map +1 -0
  132. package/lib/esm/store/client.js +51 -0
  133. package/lib/esm/store/client.js.map +1 -0
  134. package/lib/esm/store/errors.js +7 -0
  135. package/lib/esm/store/errors.js.map +1 -0
  136. package/lib/esm/store/index.js +6 -0
  137. package/lib/esm/store/index.js.map +1 -0
  138. package/lib/tsconfig.tsbuildinfo +1 -0
  139. package/lib/types/AccountApi.d.ts +58 -0
  140. package/lib/types/AccountApi.d.ts.map +1 -0
  141. package/lib/types/AccountsApi.d.ts +7 -0
  142. package/lib/types/AccountsApi.d.ts.map +1 -0
  143. package/lib/types/AnalyticsApi.d.ts +6 -0
  144. package/lib/types/AnalyticsApi.d.ts.map +1 -0
  145. package/lib/types/ApiKeysApi.d.ts +42 -0
  146. package/lib/types/ApiKeysApi.d.ts.map +1 -0
  147. package/lib/types/CommandsApi.d.ts +10 -0
  148. package/lib/types/CommandsApi.d.ts.map +1 -0
  149. package/lib/types/EnvironmentsApi.d.ts +30 -0
  150. package/lib/types/EnvironmentsApi.d.ts.map +1 -0
  151. package/lib/types/IamApi.d.ts +39 -0
  152. package/lib/types/IamApi.d.ts.map +1 -0
  153. package/lib/types/InteractionBase.d.ts +22 -0
  154. package/lib/types/InteractionBase.d.ts.map +1 -0
  155. package/lib/types/InteractionsApi.d.ts +150 -0
  156. package/lib/types/InteractionsApi.d.ts.map +1 -0
  157. package/lib/types/PluginsApi.d.ts +12 -0
  158. package/lib/types/PluginsApi.d.ts.map +1 -0
  159. package/lib/types/ProjectsApi.d.ts +21 -0
  160. package/lib/types/ProjectsApi.d.ts.map +1 -0
  161. package/lib/types/PromptsApi.d.ts +106 -0
  162. package/lib/types/PromptsApi.d.ts.map +1 -0
  163. package/lib/types/RefsApi.d.ts +6 -0
  164. package/lib/types/RefsApi.d.ts.map +1 -0
  165. package/lib/types/RunsApi.d.ts +77 -0
  166. package/lib/types/RunsApi.d.ts.map +1 -0
  167. package/lib/types/StreamSource.d.ts +7 -0
  168. package/lib/types/StreamSource.d.ts.map +1 -0
  169. package/lib/types/TrainingApi.d.ts +27 -0
  170. package/lib/types/TrainingApi.d.ts.map +1 -0
  171. package/lib/types/UsersApi.d.ts +6 -0
  172. package/lib/types/UsersApi.d.ts.map +1 -0
  173. package/lib/types/client.d.ts +103 -0
  174. package/lib/types/client.d.ts.map +1 -0
  175. package/lib/types/execute.d.ts +36 -0
  176. package/lib/types/execute.d.ts.map +1 -0
  177. package/lib/types/index.d.ts +7 -0
  178. package/lib/types/index.d.ts.map +1 -0
  179. package/lib/types/nodejs/NodeStreamSource.d.ts +9 -0
  180. package/lib/types/nodejs/NodeStreamSource.d.ts.map +1 -0
  181. package/lib/types/nodejs/index.d.ts +1 -0
  182. package/lib/types/nodejs/index.d.ts.map +1 -0
  183. package/lib/types/store/AgentsApi.d.ts +6 -0
  184. package/lib/types/store/AgentsApi.d.ts.map +1 -0
  185. package/lib/types/store/AnalyzeDocApi.d.ts +17 -0
  186. package/lib/types/store/AnalyzeDocApi.d.ts.map +1 -0
  187. package/lib/types/store/CollectionsApi.d.ts +37 -0
  188. package/lib/types/store/CollectionsApi.d.ts.map +1 -0
  189. package/lib/types/store/CommandsApi.d.ts +10 -0
  190. package/lib/types/store/CommandsApi.d.ts.map +1 -0
  191. package/lib/types/store/EmbeddingsApi.d.ts +12 -0
  192. package/lib/types/store/EmbeddingsApi.d.ts.map +1 -0
  193. package/lib/types/store/FilesApi.d.ts +41 -0
  194. package/lib/types/store/FilesApi.d.ts.map +1 -0
  195. package/lib/types/store/ObjectsApi.d.ts +113 -0
  196. package/lib/types/store/ObjectsApi.d.ts.map +1 -0
  197. package/lib/types/store/TypesApi.d.ts +23 -0
  198. package/lib/types/store/TypesApi.d.ts.map +1 -0
  199. package/lib/types/store/WorkflowsApi.d.ts +47 -0
  200. package/lib/types/store/WorkflowsApi.d.ts.map +1 -0
  201. package/lib/types/store/client.d.ts +29 -0
  202. package/lib/types/store/client.d.ts.map +1 -0
  203. package/lib/types/store/errors.d.ts +4 -0
  204. package/lib/types/store/errors.d.ts.map +1 -0
  205. package/lib/types/store/index.d.ts +5 -0
  206. package/lib/types/store/index.d.ts.map +1 -0
  207. package/lib/vertesia-client.js +2 -0
  208. package/lib/vertesia-client.js.map +1 -0
  209. package/package.json +10 -5
  210. package/src/EnvironmentsApi.ts +1 -1
  211. package/src/PluginsApi.ts +7 -5
  212. package/src/ProjectsApi.ts +2 -2
  213. package/src/RunsApi.ts +1 -1
  214. package/src/TrainingApi.ts +1 -1
  215. package/src/store/ObjectsApi.ts +7 -1
  216. package/src/store/WorkflowsApi.ts +73 -68
@@ -0,0 +1,130 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ export default class PromptsApi extends ApiTopic {
3
+ constructor(parent) {
4
+ super(parent, "/api/v1/prompts");
5
+ }
6
+ /**
7
+ * Get the list of all prompt templates
8
+ * @param payload query payload to filter search
9
+ * @returns PromptTemplateRef[]
10
+ **/
11
+ list(payload = {}) {
12
+ const query = payload.query || {};
13
+ return this.get("/", {
14
+ query: {
15
+ ...query
16
+ }
17
+ });
18
+ }
19
+ /**
20
+ * Get the list of all prompt facets
21
+ * @param payload query payload to filter facet search
22
+ * @returns ComputePromptFacetsResponse[]
23
+ **/
24
+ computeFacets(query) {
25
+ return this.post("/facets", {
26
+ payload: query
27
+ });
28
+ }
29
+ /**
30
+ * Create a new prompt template
31
+ * @param payload PromptTemplateCreatePayload
32
+ * @returns PromptTemplate
33
+ * @throws ApiError
34
+ * @throws 400 if payload is invalid
35
+ * @throws 500 if creation fails
36
+ **/
37
+ create(payload) {
38
+ return this.post('/', {
39
+ payload
40
+ });
41
+ }
42
+ /**
43
+ * Retrieve an existing prompt template
44
+ * @param id of the prompt template to retrieve
45
+ * @returns PromptTemplate
46
+ **/
47
+ retrieve(id) {
48
+ return this.get(`/${id}`);
49
+ }
50
+ /**
51
+ * Update an existing prompt template
52
+ * @param id of the prompt template to update
53
+ * @param payload PromptTemplateCreatePayload
54
+ * @returns PromptTemplate
55
+ * @throws ApiError
56
+ * @throws 400 if payload is invalid
57
+ * @throws 500 if update fails
58
+ * @throws 404 if not found
59
+ **/
60
+ update(id, payload) {
61
+ return this.put(`/${id}`, {
62
+ payload
63
+ });
64
+ }
65
+ /**
66
+ * Delete an existing prompt template
67
+ * @param id of the prompt template to delete
68
+ * @returns void
69
+ */
70
+ delete(id) {
71
+ return this.del(`/${id}`);
72
+ }
73
+ /**
74
+ * Fork an existing prompt template
75
+ * @param id of the prompt template to fork
76
+ * @param payload PromptTemplateForkPayload
77
+ * @returns Forked PromptTemplate
78
+ */
79
+ fork(id, payload) {
80
+ return this.post(`/${id}/fork`, {
81
+ payload
82
+ });
83
+ }
84
+ /**
85
+ * Render a prompt template
86
+ * @param id of the prompt template to render
87
+ * @param payload that will be passed to the prompt template to generate the prompts
88
+ * @returns PromptTemplate
89
+ * @throws ApiError
90
+ * @throws 404 if not found
91
+ * @throws 400 if payload is invalid
92
+ * @throws 500 if render fails
93
+ **/
94
+ render(id, payload) {
95
+ return this.post(`/${id}/render`, {
96
+ payload
97
+ });
98
+ }
99
+ /**
100
+ * Get options for a field
101
+ * @param field name to get options for
102
+ * @returns string[]
103
+ */
104
+ options(field) {
105
+ return this.get(`/options/${field}`);
106
+ }
107
+ /**
108
+ * List the versions of the prompt template. Returns an empty array if no versions are found
109
+ * @param id
110
+ * @returns the versions list or an empty array if no versions are found
111
+ */
112
+ listVersions(id) {
113
+ return this.get(`/${id}/versions`);
114
+ }
115
+ /**
116
+ * Retrieve list of interactions that use the prompt template
117
+ */
118
+ listInteractions(id) {
119
+ return this.get(`/${id}/interactions`);
120
+ }
121
+ /**
122
+ * List the forks of the prompt. Returns an empty array if no forks are found
123
+ * @param id of the prompt to search forks
124
+ * @returns the versions list or an empty array if no forks are found
125
+ */
126
+ listForks(id) {
127
+ return this.get(`/${id}/forks`);
128
+ }
129
+ }
130
+ //# sourceMappingURL=PromptsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PromptsApi.js","sourceRoot":"","sources":["../../src/PromptsApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAOlE,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,QAAQ;IAC5C,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;IACpC,CAAC;IAED;;;;QAII;IACJ,IAAI,CAAC,UAA+B,EAAE;QAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAuB,CAAC;QAEvD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;YACjB,KAAK,EAAE;gBACH,GAAG,KAAK;aACX;SACJ,CAAC,CAAC;IACP,CAAC;IAED;;;;QAII;IACJ,aAAa,CAAC,KAAgC;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACxB,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;QAOI;IACJ,MAAM,CAAC,OAAoC;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;QAII;IACJ,QAAQ,CAAC,EAAU;QACf,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;;;QASI;IACJ,MAAM,CAAC,EAAU,EAAE,OAAoC;QACnD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE;YACtB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,EAAU;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,EAAU,EAAE,OAAkC;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE;YAC5B,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;QASI;IACJ,MAAM,CAAC,EAAU,EAAE,OAAW;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE;YAC9B,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,KAAa;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,KAAK,EAAE,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,EAAU;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACvC,CAAC;IAGD;;OAEG;IACH,gBAAgB,CAAC,EAAU;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAC3C,CAAC;IAED;;;;OAIG;IACH,SAAS,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;CAEJ"}
@@ -0,0 +1,10 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ export class RefsApi extends ApiTopic {
3
+ constructor(parent) {
4
+ super(parent, "/api/v1/refs");
5
+ }
6
+ resolve(refs) {
7
+ return this.post('/resolve', { payload: { refs } });
8
+ }
9
+ }
10
+ //# sourceMappingURL=RefsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RefsApi.js","sourceRoot":"","sources":["../../src/RefsApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAA;AAGjE,MAAM,OAAO,OAAQ,SAAQ,QAAQ;IAEjC,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACjC,CAAC;IAGD,OAAO,CAAC,IAAqB;QAEzB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;IAEvD,CAAC;CAEJ"}
@@ -0,0 +1,101 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ export class RunsApi extends ApiTopic {
3
+ constructor(parent) {
4
+ super(parent, "/api/v1/runs");
5
+ }
6
+ /**
7
+ * Get the list of all runs
8
+ * @param project optional project id to filter by
9
+ * @param interaction optional interaction id to filter by
10
+ * @returns InteractionResult[]
11
+ **/
12
+ list({ limit, offset, filters }) {
13
+ const query = {
14
+ limit,
15
+ offset,
16
+ ...filters,
17
+ };
18
+ return this.get("/", { query: query });
19
+ }
20
+ find(payload) {
21
+ return this.post("/find", {
22
+ payload,
23
+ });
24
+ }
25
+ /**
26
+ * Get a run by id
27
+ *
28
+ * @param id
29
+ * @returns InteractionResult
30
+ **/
31
+ retrieve(id) {
32
+ return this.get("/" + id);
33
+ }
34
+ /**
35
+ * Get filter options for a field
36
+ * return FilterOption[]
37
+ */
38
+ filterOptions(field, filters) {
39
+ const query = {
40
+ ...filters,
41
+ };
42
+ return this.get(`/filter-options/${field}`, { query });
43
+ }
44
+ create(payload) {
45
+ const sessionTags = this.client.sessionTags;
46
+ if (sessionTags) {
47
+ let tags = Array.isArray(sessionTags) ? sessionTags : [sessionTags];
48
+ if (Array.isArray(payload.tags)) {
49
+ tags = tags.concat(payload.tags);
50
+ }
51
+ else if (payload.tags) {
52
+ tags = tags.concat([payload.tags]);
53
+ }
54
+ payload = { ...payload, tags };
55
+ }
56
+ return this.post("/", {
57
+ payload,
58
+ });
59
+ }
60
+ /**
61
+ * Send tool results and continues the conversation
62
+ * @param payload
63
+ * @returns
64
+ */
65
+ sendToolResults(payload) {
66
+ return this.post(`/tool-results`, {
67
+ payload,
68
+ });
69
+ }
70
+ /**
71
+ *
72
+ * @param payload
73
+ * @returns
74
+ */
75
+ sendUserMessage(payload) {
76
+ return this.post(`/user-message`, {
77
+ payload,
78
+ });
79
+ }
80
+ createCheckpoint(payload) {
81
+ return this.post(`/checkpoint`, {
82
+ payload,
83
+ });
84
+ }
85
+ /**
86
+ * Get the list of all runs facets
87
+ * @param payload query payload to filter facet search
88
+ * @returns ComputeRunFacetsResponse[]
89
+ **/
90
+ computeFacets(query) {
91
+ return this.post("/facets", {
92
+ payload: query,
93
+ });
94
+ }
95
+ search(payload) {
96
+ return this.post("/search", {
97
+ payload,
98
+ });
99
+ }
100
+ }
101
+ //# sourceMappingURL=RunsApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RunsApi.js","sourceRoot":"","sources":["../../src/RunsApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAgClE,MAAM,OAAO,OAAQ,SAAQ,QAAQ;IACjC,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAClC,CAAC;IAED;;;;;QAKI;IACJ,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAA0B;QACnD,MAAM,KAAK,GAAG;YACV,KAAK;YACL,MAAM;YACN,GAAG,OAAO;SACb,CAAC;QAEF,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,CAAC,OAAoB;QACrB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACtB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;;QAKI;IACJ,QAAQ,CAAmB,EAAU;QACjC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,KAAa,EAAE,OAA0B;QACnD,MAAM,KAAK,GAAG;YACV,GAAG,OAAO;SACb,CAAC;QACF,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,CAAC,OAAyB;QAC5B,MAAM,WAAW,GAAI,IAAI,CAAC,MAAyB,CAAC,WAAW,CAAC;QAChE,IAAI,WAAW,EAAE,CAAC;YACd,IAAI,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;YACpE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;iBAAM,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACtB,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;YACvC,CAAC;YACD,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YAClB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,OAA2B;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAC9B,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,OAA2B;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YAC9B,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED,gBAAgB,CAAC,OAAsC;QACnD,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YAC5B,OAAO;SACV,CAAC,CAAC;IACP,CAAC;IAED;;;;QAII;IACJ,aAAa,CAAC,KAA6B;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACxB,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;IACP,CAAC;IAED,MAAM,CAAC,OAAyB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;YACxB,OAAO;SACV,CAAC,CAAC;IACP,CAAC;CACJ"}
@@ -0,0 +1,13 @@
1
+ export class StreamSource {
2
+ stream;
3
+ name;
4
+ type;
5
+ id;
6
+ constructor(stream, name, type, id) {
7
+ this.stream = stream;
8
+ this.name = name;
9
+ this.type = type;
10
+ this.id = id;
11
+ }
12
+ }
13
+ //# sourceMappingURL=StreamSource.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StreamSource.js","sourceRoot":"","sources":["../../src/StreamSource.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,YAAY;IACF;IAA+B;IAAqB;IAAsB;IAA7F,YAAmB,MAAsB,EAAS,IAAY,EAAS,IAAa,EAAS,EAAW;QAArF,WAAM,GAAN,MAAM,CAAgB;QAAS,SAAI,GAAJ,IAAI,CAAQ;QAAS,SAAI,GAAJ,IAAI,CAAS;QAAS,OAAE,GAAF,EAAE,CAAS;IAAI,CAAC;CAChH"}
@@ -0,0 +1,51 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ export default class TrainingApi extends ApiTopic {
3
+ constructor(parent) {
4
+ super(parent, "/api/v1/training");
5
+ }
6
+ listSessions(query = {}) {
7
+ return this.get('/', { query: query });
8
+ }
9
+ listSessionNames(query = {}) {
10
+ return this.get('/names', { query: query });
11
+ }
12
+ createSession(payload) {
13
+ return this.post('/', { payload });
14
+ }
15
+ getSession(sessionId) {
16
+ return this.get('/' + sessionId);
17
+ }
18
+ addToSession(sessionId, runs) {
19
+ return this.post('/' + sessionId + '/add', { payload: { runs } });
20
+ }
21
+ listSessionRuns(sessionId, limit = 100, offset = 0) {
22
+ return this.get('/' + sessionId + '/runs', { query: { limit, offset } });
23
+ }
24
+ buildSession(sessionId) {
25
+ return this.post('/' + sessionId + '/build');
26
+ }
27
+ getDataUrl(sessionId) {
28
+ return this.get('/' + sessionId + '/url');
29
+ }
30
+ getDataUploadUrl(sessionId, isResumable = false) {
31
+ return this.get('/' + sessionId + '/upload-url', isResumable ? { query: { resumable: 'true' } } : {});
32
+ }
33
+ startTraining(sessionId) {
34
+ return this.post('/' + sessionId + '/start');
35
+ }
36
+ cancelTraining(sessionId) {
37
+ return this.post('/' + sessionId + '/cancel');
38
+ }
39
+ getTrainingJob(jobId) {
40
+ return this.get(`/job/${jobId}`);
41
+ }
42
+ getAndSyncTrainingJob(jobId) {
43
+ return this.get(`/job/${jobId}`, {
44
+ query: { sync: 'true' }
45
+ });
46
+ }
47
+ setDataset(sessionId, name = "default") {
48
+ return this.post('/' + sessionId + '/dataset', { payload: { dataset: name } });
49
+ }
50
+ }
51
+ //# sourceMappingURL=TrainingApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrainingApi.js","sourceRoot":"","sources":["../../src/TrainingApi.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAGlE,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,QAAQ;IAE7C,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAA;IACrC,CAAC;IAED,YAAY,CAAC,QAAmC,EAAE;QAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAY,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,gBAAgB,CAAC,QAAmC,EAAE;QAClD,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,KAAY,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,aAAa,CAAC,OAAqC;QAC/C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;IACtC,CAAC;IAED,UAAU,CAAC,SAAiB;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,SAAS,CAAC,CAAA;IACpC,CAAC;IAED,YAAY,CAAC,SAAiB,EAAE,IAAc;QAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,GAAG,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;IACrE,CAAC;IAED,eAAe,CAAC,SAAiB,EAAE,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,CAAC;QACtD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,SAAS,GAAG,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,YAAY,CAAC,SAAiB;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,SAAiB;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,SAAS,GAAG,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,gBAAgB,CAAC,SAAiB,EAAE,WAAW,GAAG,KAAK;QACnD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,SAAS,GAAG,aAAa,EAC3C,WAAW,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,aAAa,CAAC,SAAiB;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,cAAc,CAAC,SAAiB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;IAClD,CAAC;IAED,cAAc,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,qBAAqB,CAAC,KAAa;QAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,EAAE,EAAE;YAC7B,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC1B,CAAC,CAAC;IACP,CAAC;IAED,UAAU,CAAC,SAAiB,EAAE,OAAe,SAAS;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,SAAS,GAAG,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;IAClF,CAAC;CAEJ"}
@@ -0,0 +1,10 @@
1
+ import { ApiTopic } from "@vertesia/api-fetch-client";
2
+ export default class UsersApi extends ApiTopic {
3
+ constructor(parent) {
4
+ super(parent, "/api/v1/users");
5
+ }
6
+ retrieve(userId) {
7
+ return this.get('/' + userId);
8
+ }
9
+ }
10
+ //# sourceMappingURL=UsersApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UsersApi.js","sourceRoot":"","sources":["../../src/UsersApi.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAc,MAAM,4BAA4B,CAAC;AAKlE,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,QAAQ;IAE1C,YAAY,MAAkB;QAC1B,KAAK,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;IAClC,CAAC;IAED,QAAQ,CAAC,MAAc;QACnB,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;IAClC,CAAC;CAGJ"}
@@ -0,0 +1,211 @@
1
+ import { AbstractFetchClient } from "@vertesia/api-fetch-client";
2
+ import AccountApi from "./AccountApi.js";
3
+ import AccountsApi from "./AccountsApi.js";
4
+ import AnalyticsApi from "./AnalyticsApi.js";
5
+ import { ApiKeysApi } from "./ApiKeysApi.js";
6
+ import CommandsApi from "./CommandsApi.js";
7
+ import EnvironmentsApi from "./EnvironmentsApi.js";
8
+ import { IamApi } from "./IamApi.js";
9
+ import InteractionsApi from "./InteractionsApi.js";
10
+ import ProjectsApi from "./ProjectsApi.js";
11
+ import PromptsApi from "./PromptsApi.js";
12
+ import { RefsApi } from "./RefsApi.js";
13
+ import { RunsApi } from "./RunsApi.js";
14
+ import { ZenoClient } from "./store/client.js";
15
+ import TrainingApi from "./TrainingApi.js";
16
+ import UsersApi from "./UsersApi.js";
17
+ import PluginsApi from "./PluginsApi.js";
18
+ /**
19
+ * 1 min threshold constant in ms
20
+ */
21
+ const EXPIRATION_THRESHOLD = 60000;
22
+ export class VertesiaClient extends AbstractFetchClient {
23
+ /**
24
+ * The JWT token linked to the API KEY (sk or pk)
25
+ */
26
+ _jwt = null;
27
+ /**
28
+ * The store client
29
+ */
30
+ store;
31
+ /**
32
+ * The session name will be sent when executing an interaction as a tag
33
+ */
34
+ sessionTags;
35
+ constructor(opts = {
36
+ site: 'api.vertesia.io',
37
+ }) {
38
+ let studioServerUrl;
39
+ let zenoServerUrl;
40
+ if (opts.serverUrl) {
41
+ studioServerUrl = opts.serverUrl;
42
+ }
43
+ else if (opts.site) {
44
+ studioServerUrl = `https://${opts.site}`;
45
+ }
46
+ else {
47
+ throw new Error("Parameter 'site' or 'serverUrl' is required for VertesiaClient");
48
+ }
49
+ if (opts.storeUrl) {
50
+ zenoServerUrl = opts.storeUrl;
51
+ }
52
+ else if (opts.site) {
53
+ zenoServerUrl = `https://${opts.site}`;
54
+ }
55
+ else {
56
+ throw new Error("Parameter 'site' or 'storeUrl' is required for VertesiaClient");
57
+ }
58
+ super(studioServerUrl);
59
+ this.store = new ZenoClient({
60
+ serverUrl: zenoServerUrl,
61
+ apikey: opts.apikey,
62
+ onRequest: opts.onRequest,
63
+ onResponse: opts.onResponse
64
+ });
65
+ if (opts.apikey) {
66
+ this.withApiKey(opts.apikey);
67
+ }
68
+ if (opts.projectId) {
69
+ this.headers["x-project-id"] = opts.projectId;
70
+ }
71
+ this.onRequest = opts.onRequest;
72
+ this.onResponse = opts.onResponse;
73
+ this.sessionTags = opts.sessionTags;
74
+ }
75
+ /**
76
+ * Overwrite to keep store and composable clients synchronized on the auth callback
77
+ * @param authCb
78
+ * @returns
79
+ */
80
+ withAuthCallback(authCb) {
81
+ this.store.withAuthCallback(authCb);
82
+ return super.withAuthCallback(authCb);
83
+ }
84
+ async withApiKey(apiKey) {
85
+ return this.withAuthCallback(apiKey ? async () => {
86
+ if (!isApiKey(apiKey)) {
87
+ return `Bearer ${apiKey}`;
88
+ }
89
+ if (isTokenExpired(this._jwt)) {
90
+ const jwt = await this.getAuthToken(apiKey);
91
+ this._jwt = jwt.token;
92
+ }
93
+ return `Bearer ${this._jwt}`;
94
+ } : undefined);
95
+ }
96
+ async getRawJWT() {
97
+ if (!this._jwt && this._auth) {
98
+ const auth = await this._auth();
99
+ if (!this._jwt) { // the _jwt may be set by the auth callback
100
+ this._jwt = auth.trim().split(' ')[1]; // remove Bearer prefix
101
+ }
102
+ }
103
+ return this._jwt || null;
104
+ }
105
+ async getDecodedJWT() {
106
+ const jwt = await this.getRawJWT();
107
+ return jwt ? decodeJWT(jwt) : null;
108
+ }
109
+ /**
110
+ * Alias for store.workflows
111
+ */
112
+ get workflows() {
113
+ return this.store.workflows;
114
+ }
115
+ /**
116
+ * Alias for store.objects
117
+ */
118
+ get objects() {
119
+ return this.store.objects;
120
+ }
121
+ get files() {
122
+ return this.store.files;
123
+ }
124
+ /**
125
+ * Alias for store.types
126
+ */
127
+ get types() {
128
+ return this.store.types;
129
+ }
130
+ get storeUrl() {
131
+ return this.store.baseUrl;
132
+ }
133
+ set project(projectId) {
134
+ if (projectId) {
135
+ this.headers["x-project-id"] = projectId;
136
+ }
137
+ else {
138
+ delete this.headers["x-project-id"];
139
+ }
140
+ }
141
+ get project() {
142
+ return this.headers["x-project-id"] || null;
143
+ }
144
+ /**
145
+ *
146
+ * Generate a token for use with other Composable's services
147
+ *
148
+ * @param accountId: selected account to generate the token for
149
+ * @returns AuthTokenResponse
150
+ */
151
+ async getAuthToken(token, accountId) {
152
+ const query = {
153
+ accountId,
154
+ token
155
+ };
156
+ return this.get('/auth/token', { query: query, headers: { "authorization": undefined } });
157
+ }
158
+ projects = new ProjectsApi(this);
159
+ environments = new EnvironmentsApi(this);
160
+ interactions = new InteractionsApi(this);
161
+ prompts = new PromptsApi(this);
162
+ runs = new RunsApi(this);
163
+ account = new AccountApi(this);
164
+ accounts = new AccountsApi(this);
165
+ apikeys = new ApiKeysApi(this);
166
+ analytics = new AnalyticsApi(this);
167
+ training = new TrainingApi(this);
168
+ users = new UsersApi(this);
169
+ iam = new IamApi(this);
170
+ refs = new RefsApi(this);
171
+ commands = new CommandsApi(this);
172
+ plugins = new PluginsApi(this);
173
+ }
174
+ function isApiKey(apiKey) {
175
+ return (apiKey.startsWith('pk-') || apiKey.startsWith('sk-'));
176
+ }
177
+ function isTokenExpired(token) {
178
+ if (!token) {
179
+ return true;
180
+ }
181
+ const decoded = decodeJWT(token);
182
+ const exp = decoded.exp;
183
+ const currentTime = Date.now();
184
+ return (currentTime <= exp * 1000 - EXPIRATION_THRESHOLD);
185
+ }
186
+ function decodeJWT(jwt) {
187
+ const payloadBase64 = jwt.split('.')[1];
188
+ const decodedJson = base64UrlDecode(payloadBase64);
189
+ return JSON.parse(decodedJson);
190
+ }
191
+ function base64UrlDecode(input) {
192
+ // Convert base64url to base64
193
+ const base64 = input.replace(/-/g, '+').replace(/_/g, '/')
194
+ // Pad with '=' to make length a multiple of 4
195
+ .padEnd(Math.ceil(input.length / 4) * 4, '=');
196
+ if (typeof Buffer !== 'undefined') {
197
+ // Node.js
198
+ return Buffer.from(base64, 'base64').toString('utf-8');
199
+ }
200
+ else if (typeof atob !== 'undefined' && typeof TextDecoder !== 'undefined') {
201
+ // Browser
202
+ const binary = atob(base64);
203
+ const bytes = Uint8Array.from(binary, c => c.charCodeAt(0));
204
+ // decode to utf8
205
+ return new TextDecoder().decode(bytes);
206
+ }
207
+ else {
208
+ throw new Error('No base64 decoder available');
209
+ }
210
+ }
211
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}