@llumiverse/drivers 0.23.0-dev.20251121 → 0.24.0-dev.202601221707

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 (229) hide show
  1. package/README.md +141 -218
  2. package/lib/cjs/azure/azure_foundry.js +46 -2
  3. package/lib/cjs/azure/azure_foundry.js.map +1 -1
  4. package/lib/cjs/bedrock/index.js +239 -19
  5. package/lib/cjs/bedrock/index.js.map +1 -1
  6. package/lib/cjs/groq/index.js +115 -85
  7. package/lib/cjs/groq/index.js.map +1 -1
  8. package/lib/cjs/index.js +1 -0
  9. package/lib/cjs/index.js.map +1 -1
  10. package/lib/cjs/openai/index.js +310 -114
  11. package/lib/cjs/openai/index.js.map +1 -1
  12. package/lib/cjs/openai/openai_compatible.js +62 -0
  13. package/lib/cjs/openai/openai_compatible.js.map +1 -0
  14. package/lib/cjs/openai/openai_format.js +32 -39
  15. package/lib/cjs/openai/openai_format.js.map +1 -1
  16. package/lib/cjs/vertexai/index.js +211 -5
  17. package/lib/cjs/vertexai/index.js.map +1 -1
  18. package/lib/cjs/vertexai/models/claude.js +201 -3
  19. package/lib/cjs/vertexai/models/claude.js.map +1 -1
  20. package/lib/cjs/vertexai/models/gemini.js +74 -25
  21. package/lib/cjs/vertexai/models/gemini.js.map +1 -1
  22. package/lib/cjs/vertexai/models/imagen.js +0 -3
  23. package/lib/cjs/vertexai/models/imagen.js.map +1 -1
  24. package/lib/cjs/xai/index.js +10 -16
  25. package/lib/cjs/xai/index.js.map +1 -1
  26. package/lib/esm/azure/azure_foundry.js +46 -2
  27. package/lib/esm/azure/azure_foundry.js.map +1 -1
  28. package/lib/esm/bedrock/index.js +239 -20
  29. package/lib/esm/bedrock/index.js.map +1 -1
  30. package/lib/esm/groq/index.js +115 -85
  31. package/lib/esm/groq/index.js.map +1 -1
  32. package/lib/esm/index.js +1 -0
  33. package/lib/esm/index.js.map +1 -1
  34. package/lib/esm/openai/index.js +311 -115
  35. package/lib/esm/openai/index.js.map +1 -1
  36. package/lib/esm/openai/openai_compatible.js +55 -0
  37. package/lib/esm/openai/openai_compatible.js.map +1 -0
  38. package/lib/esm/openai/openai_format.js +32 -39
  39. package/lib/esm/openai/openai_format.js.map +1 -1
  40. package/lib/esm/vertexai/index.js +212 -6
  41. package/lib/esm/vertexai/index.js.map +1 -1
  42. package/lib/esm/vertexai/models/claude.js +199 -3
  43. package/lib/esm/vertexai/models/claude.js.map +1 -1
  44. package/lib/esm/vertexai/models/gemini.js +75 -26
  45. package/lib/esm/vertexai/models/gemini.js.map +1 -1
  46. package/lib/esm/vertexai/models/imagen.js +1 -4
  47. package/lib/esm/vertexai/models/imagen.js.map +1 -1
  48. package/lib/esm/xai/index.js +10 -16
  49. package/lib/esm/xai/index.js.map +1 -1
  50. package/lib/types/azure/azure_foundry.d.ts +7 -5
  51. package/lib/types/azure/azure_foundry.d.ts.map +1 -1
  52. package/lib/types/bedrock/index.d.ts +22 -1
  53. package/lib/types/bedrock/index.d.ts.map +1 -1
  54. package/lib/types/groq/index.d.ts.map +1 -1
  55. package/lib/types/index.d.ts +1 -0
  56. package/lib/types/index.d.ts.map +1 -1
  57. package/lib/types/openai/index.d.ts +13 -7
  58. package/lib/types/openai/index.d.ts.map +1 -1
  59. package/lib/types/openai/openai_compatible.d.ts +26 -0
  60. package/lib/types/openai/openai_compatible.d.ts.map +1 -0
  61. package/lib/types/openai/openai_format.d.ts +4 -2
  62. package/lib/types/openai/openai_format.d.ts.map +1 -1
  63. package/lib/types/vertexai/index.d.ts +16 -0
  64. package/lib/types/vertexai/index.d.ts.map +1 -1
  65. package/lib/types/vertexai/models/claude.d.ts +20 -0
  66. package/lib/types/vertexai/models/claude.d.ts.map +1 -1
  67. package/lib/types/vertexai/models/gemini.d.ts +1 -1
  68. package/lib/types/vertexai/models/gemini.d.ts.map +1 -1
  69. package/lib/types/vertexai/models/imagen.d.ts.map +1 -1
  70. package/lib/types/xai/index.d.ts +2 -3
  71. package/lib/types/xai/index.d.ts.map +1 -1
  72. package/package.json +17 -17
  73. package/src/azure/azure_foundry.ts +56 -7
  74. package/src/bedrock/index.ts +301 -29
  75. package/src/groq/index.ts +120 -94
  76. package/src/index.ts +1 -0
  77. package/src/openai/index.ts +363 -136
  78. package/src/openai/openai_compatible.ts +74 -0
  79. package/src/openai/openai_format.ts +44 -54
  80. package/src/vertexai/index.ts +255 -6
  81. package/src/vertexai/models/claude.ts +233 -3
  82. package/src/vertexai/models/gemini.ts +95 -32
  83. package/src/vertexai/models/imagen.ts +1 -5
  84. package/src/xai/index.ts +10 -17
  85. package/lib/cjs/test/TestErrorCompletionStream.js +0 -20
  86. package/lib/cjs/test/TestErrorCompletionStream.js.map +0 -1
  87. package/lib/cjs/test/TestValidationErrorCompletionStream.js +0 -24
  88. package/lib/cjs/test/TestValidationErrorCompletionStream.js.map +0 -1
  89. package/lib/cjs/test/index.js +0 -109
  90. package/lib/cjs/test/index.js.map +0 -1
  91. package/lib/cjs/test/utils.js +0 -30
  92. package/lib/cjs/test/utils.js.map +0 -1
  93. package/lib/esm/src/adobe/firefly.js +0 -116
  94. package/lib/esm/src/adobe/firefly.js.map +0 -1
  95. package/lib/esm/src/azure/azure_foundry.js +0 -382
  96. package/lib/esm/src/azure/azure_foundry.js.map +0 -1
  97. package/lib/esm/src/bedrock/converse.js +0 -278
  98. package/lib/esm/src/bedrock/converse.js.map +0 -1
  99. package/lib/esm/src/bedrock/index.js +0 -962
  100. package/lib/esm/src/bedrock/index.js.map +0 -1
  101. package/lib/esm/src/bedrock/nova-image-payload.js +0 -203
  102. package/lib/esm/src/bedrock/nova-image-payload.js.map +0 -1
  103. package/lib/esm/src/bedrock/payloads.js +0 -2
  104. package/lib/esm/src/bedrock/payloads.js.map +0 -1
  105. package/lib/esm/src/bedrock/s3.js +0 -99
  106. package/lib/esm/src/bedrock/s3.js.map +0 -1
  107. package/lib/esm/src/bedrock/twelvelabs.js +0 -84
  108. package/lib/esm/src/bedrock/twelvelabs.js.map +0 -1
  109. package/lib/esm/src/groq/index.js +0 -286
  110. package/lib/esm/src/groq/index.js.map +0 -1
  111. package/lib/esm/src/huggingface_ie.js +0 -197
  112. package/lib/esm/src/huggingface_ie.js.map +0 -1
  113. package/lib/esm/src/index.js +0 -14
  114. package/lib/esm/src/index.js.map +0 -1
  115. package/lib/esm/src/mistral/index.js +0 -169
  116. package/lib/esm/src/mistral/index.js.map +0 -1
  117. package/lib/esm/src/mistral/types.js +0 -80
  118. package/lib/esm/src/mistral/types.js.map +0 -1
  119. package/lib/esm/src/openai/azure_openai.js +0 -68
  120. package/lib/esm/src/openai/azure_openai.js.map +0 -1
  121. package/lib/esm/src/openai/index.js +0 -464
  122. package/lib/esm/src/openai/index.js.map +0 -1
  123. package/lib/esm/src/openai/openai.js +0 -14
  124. package/lib/esm/src/openai/openai.js.map +0 -1
  125. package/lib/esm/src/openai/openai_format.js +0 -134
  126. package/lib/esm/src/openai/openai_format.js.map +0 -1
  127. package/lib/esm/src/replicate.js +0 -268
  128. package/lib/esm/src/replicate.js.map +0 -1
  129. package/lib/esm/src/test/TestErrorCompletionStream.js +0 -16
  130. package/lib/esm/src/test/TestErrorCompletionStream.js.map +0 -1
  131. package/lib/esm/src/test/TestValidationErrorCompletionStream.js +0 -20
  132. package/lib/esm/src/test/TestValidationErrorCompletionStream.js.map +0 -1
  133. package/lib/esm/src/test/index.js +0 -91
  134. package/lib/esm/src/test/index.js.map +0 -1
  135. package/lib/esm/src/test/utils.js +0 -25
  136. package/lib/esm/src/test/utils.js.map +0 -1
  137. package/lib/esm/src/test-driver/TestErrorCompletionStream.js +0 -16
  138. package/lib/esm/src/test-driver/TestErrorCompletionStream.js.map +0 -1
  139. package/lib/esm/src/test-driver/TestValidationErrorCompletionStream.js +0 -20
  140. package/lib/esm/src/test-driver/TestValidationErrorCompletionStream.js.map +0 -1
  141. package/lib/esm/src/test-driver/index.js +0 -91
  142. package/lib/esm/src/test-driver/index.js.map +0 -1
  143. package/lib/esm/src/test-driver/utils.js +0 -25
  144. package/lib/esm/src/test-driver/utils.js.map +0 -1
  145. package/lib/esm/src/togetherai/index.js +0 -122
  146. package/lib/esm/src/togetherai/index.js.map +0 -1
  147. package/lib/esm/src/togetherai/interfaces.js +0 -2
  148. package/lib/esm/src/togetherai/interfaces.js.map +0 -1
  149. package/lib/esm/src/vertexai/debug.js +0 -6
  150. package/lib/esm/src/vertexai/debug.js.map +0 -1
  151. package/lib/esm/src/vertexai/embeddings/embeddings-image.js +0 -24
  152. package/lib/esm/src/vertexai/embeddings/embeddings-image.js.map +0 -1
  153. package/lib/esm/src/vertexai/embeddings/embeddings-text.js +0 -20
  154. package/lib/esm/src/vertexai/embeddings/embeddings-text.js.map +0 -1
  155. package/lib/esm/src/vertexai/index.js +0 -383
  156. package/lib/esm/src/vertexai/index.js.map +0 -1
  157. package/lib/esm/src/vertexai/models/claude.js +0 -394
  158. package/lib/esm/src/vertexai/models/claude.js.map +0 -1
  159. package/lib/esm/src/vertexai/models/gemini.js +0 -817
  160. package/lib/esm/src/vertexai/models/gemini.js.map +0 -1
  161. package/lib/esm/src/vertexai/models/imagen.js +0 -302
  162. package/lib/esm/src/vertexai/models/imagen.js.map +0 -1
  163. package/lib/esm/src/vertexai/models/llama.js +0 -179
  164. package/lib/esm/src/vertexai/models/llama.js.map +0 -1
  165. package/lib/esm/src/vertexai/models.js +0 -32
  166. package/lib/esm/src/vertexai/models.js.map +0 -1
  167. package/lib/esm/src/watsonx/index.js +0 -157
  168. package/lib/esm/src/watsonx/index.js.map +0 -1
  169. package/lib/esm/src/watsonx/interfaces.js +0 -2
  170. package/lib/esm/src/watsonx/interfaces.js.map +0 -1
  171. package/lib/esm/src/xai/index.js +0 -64
  172. package/lib/esm/src/xai/index.js.map +0 -1
  173. package/lib/esm/test/TestErrorCompletionStream.js +0 -16
  174. package/lib/esm/test/TestErrorCompletionStream.js.map +0 -1
  175. package/lib/esm/test/TestValidationErrorCompletionStream.js +0 -20
  176. package/lib/esm/test/TestValidationErrorCompletionStream.js.map +0 -1
  177. package/lib/esm/test/index.js +0 -91
  178. package/lib/esm/test/index.js.map +0 -1
  179. package/lib/esm/test/utils.js +0 -25
  180. package/lib/esm/test/utils.js.map +0 -1
  181. package/lib/esm/tsconfig.tsbuildinfo +0 -1
  182. package/lib/types/src/adobe/firefly.d.ts +0 -29
  183. package/lib/types/src/azure/azure_foundry.d.ts +0 -49
  184. package/lib/types/src/bedrock/converse.d.ts +0 -8
  185. package/lib/types/src/bedrock/index.d.ts +0 -61
  186. package/lib/types/src/bedrock/nova-image-payload.d.ts +0 -73
  187. package/lib/types/src/bedrock/payloads.d.ts +0 -11
  188. package/lib/types/src/bedrock/s3.d.ts +0 -22
  189. package/lib/types/src/bedrock/twelvelabs.d.ts +0 -49
  190. package/lib/types/src/groq/index.d.ts +0 -26
  191. package/lib/types/src/huggingface_ie.d.ts +0 -34
  192. package/lib/types/src/index.d.ts +0 -13
  193. package/lib/types/src/mistral/index.d.ts +0 -24
  194. package/lib/types/src/mistral/types.d.ts +0 -131
  195. package/lib/types/src/openai/azure_openai.d.ts +0 -24
  196. package/lib/types/src/openai/index.d.ts +0 -24
  197. package/lib/types/src/openai/openai.d.ts +0 -14
  198. package/lib/types/src/openai/openai_format.d.ts +0 -18
  199. package/lib/types/src/replicate.d.ts +0 -47
  200. package/lib/types/src/test/TestErrorCompletionStream.d.ts +0 -8
  201. package/lib/types/src/test/TestValidationErrorCompletionStream.d.ts +0 -8
  202. package/lib/types/src/test/index.d.ts +0 -23
  203. package/lib/types/src/test/utils.d.ts +0 -4
  204. package/lib/types/src/test-driver/TestErrorCompletionStream.d.ts +0 -8
  205. package/lib/types/src/test-driver/TestValidationErrorCompletionStream.d.ts +0 -8
  206. package/lib/types/src/test-driver/index.d.ts +0 -23
  207. package/lib/types/src/test-driver/utils.d.ts +0 -4
  208. package/lib/types/src/togetherai/index.d.ts +0 -22
  209. package/lib/types/src/togetherai/interfaces.d.ts +0 -95
  210. package/lib/types/src/vertexai/debug.d.ts +0 -1
  211. package/lib/types/src/vertexai/embeddings/embeddings-image.d.ts +0 -10
  212. package/lib/types/src/vertexai/embeddings/embeddings-text.d.ts +0 -9
  213. package/lib/types/src/vertexai/index.d.ts +0 -52
  214. package/lib/types/src/vertexai/models/claude.d.ts +0 -19
  215. package/lib/types/src/vertexai/models/gemini.d.ts +0 -17
  216. package/lib/types/src/vertexai/models/imagen.d.ts +0 -74
  217. package/lib/types/src/vertexai/models/llama.d.ts +0 -19
  218. package/lib/types/src/vertexai/models.d.ts +0 -14
  219. package/lib/types/src/watsonx/index.d.ts +0 -26
  220. package/lib/types/src/watsonx/interfaces.d.ts +0 -64
  221. package/lib/types/src/xai/index.d.ts +0 -18
  222. package/lib/types/test/TestErrorCompletionStream.d.ts +0 -9
  223. package/lib/types/test/TestErrorCompletionStream.d.ts.map +0 -1
  224. package/lib/types/test/TestValidationErrorCompletionStream.d.ts +0 -9
  225. package/lib/types/test/TestValidationErrorCompletionStream.d.ts.map +0 -1
  226. package/lib/types/test/index.d.ts +0 -24
  227. package/lib/types/test/index.d.ts.map +0 -1
  228. package/lib/types/test/utils.d.ts +0 -5
  229. package/lib/types/test/utils.d.ts.map +0 -1
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.OpenAICompatibleDriver = void 0;
7
+ const core_1 = require("@llumiverse/core");
8
+ const openai_1 = __importDefault(require("openai"));
9
+ const index_js_1 = require("./index.js");
10
+ /**
11
+ * A generic driver for OpenAI-compatible APIs.
12
+ * This can be used with any service that implements the OpenAI API spec,
13
+ * such as xAI (Grok), LM Studio, Ollama, vLLM, LocalAI, etc.
14
+ */
15
+ class OpenAICompatibleDriver extends index_js_1.BaseOpenAIDriver {
16
+ service;
17
+ provider = core_1.Providers.openai_compatible;
18
+ constructor(opts) {
19
+ super(opts);
20
+ if (!opts.apiKey) {
21
+ throw new Error("apiKey is required");
22
+ }
23
+ if (!opts.endpoint) {
24
+ throw new Error("endpoint is required for OpenAI-compatible driver");
25
+ }
26
+ this.service = new openai_1.default({
27
+ apiKey: opts.apiKey,
28
+ baseURL: opts.endpoint,
29
+ });
30
+ }
31
+ async listModels() {
32
+ try {
33
+ const result = (await this.service.models.list()).data;
34
+ const models = result.map((m) => {
35
+ const modelCapability = (0, core_1.getModelCapabilities)(m.id, "openai");
36
+ let owner = m.owned_by;
37
+ if (owner === "system") {
38
+ owner = "unknown";
39
+ }
40
+ return {
41
+ id: m.id,
42
+ name: m.id,
43
+ provider: this.provider,
44
+ owner: owner,
45
+ type: core_1.ModelType.Text,
46
+ can_stream: true,
47
+ is_multimodal: false,
48
+ input_modalities: (0, core_1.modelModalitiesToArray)(modelCapability.input),
49
+ output_modalities: (0, core_1.modelModalitiesToArray)(modelCapability.output),
50
+ tool_support: modelCapability.tool_support,
51
+ };
52
+ }).sort((a, b) => a.id.localeCompare(b.id));
53
+ return models;
54
+ }
55
+ catch (error) {
56
+ this.logger.warn({ error }, "[OpenAICompatible] Failed to list models, returning empty list");
57
+ return [];
58
+ }
59
+ }
60
+ }
61
+ exports.OpenAICompatibleDriver = OpenAICompatibleDriver;
62
+ //# sourceMappingURL=openai_compatible.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai_compatible.js","sourceRoot":"","sources":["../../../src/openai/openai_compatible.ts"],"names":[],"mappings":";;;;;;AAAA,2CAA8H;AAC9H,oDAA4B;AAC5B,yCAA8C;AAe9C;;;;GAIG;AACH,MAAa,sBAAuB,SAAQ,2BAAgB;IACxD,OAAO,CAAS;IACP,QAAQ,GAAG,gBAAS,CAAC,iBAAiB,CAAC;IAEhD,YAAY,IAAmC;QAC3C,KAAK,CAAC,IAAI,CAAC,CAAC;QAEZ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,gBAAM,CAAC;YACtB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,OAAO,EAAE,IAAI,CAAC,QAAQ;SACzB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;YAEvD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC5B,MAAM,eAAe,GAAG,IAAA,2BAAoB,EAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAC7D,IAAI,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC;gBACvB,IAAI,KAAK,KAAK,QAAQ,EAAE,CAAC;oBACrB,KAAK,GAAG,SAAS,CAAC;gBACtB,CAAC;gBACD,OAAO;oBACH,EAAE,EAAE,CAAC,CAAC,EAAE;oBACR,IAAI,EAAE,CAAC,CAAC,EAAE;oBACV,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,KAAK,EAAE,KAAK;oBACZ,IAAI,EAAE,gBAAS,CAAC,IAAI;oBACpB,UAAU,EAAE,IAAI;oBAChB,aAAa,EAAE,KAAK;oBACpB,gBAAgB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,KAAK,CAAC;oBAC/D,iBAAiB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,MAAM,CAAC;oBACjE,YAAY,EAAE,eAAe,CAAC,YAAY;iBACnB,CAAC;YAChC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAE5C,OAAO,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,gEAAgE,CAAC,CAAC;YAC9F,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;CACJ;AAnDD,wDAmDC"}
@@ -44,51 +44,53 @@ async function formatOpenAILikeMultimodalPrompt(segments, opts) {
44
44
  const stream = await file.getStream();
45
45
  const data = await (0, core_1.readStreamAsBase64)(stream);
46
46
  parts.push({
47
- type: "image_url",
48
- image_url: {
49
- url: `data:${file.mime_type || "image/jpeg"};base64,${data}`,
50
- //detail: "auto" //This is modified just before execution to "low" | "high" | "auto"
51
- },
47
+ type: "input_image",
48
+ image_url: `data:${file.mime_type || "image/jpeg"};base64,${data}`,
49
+ detail: "auto",
52
50
  });
53
51
  }
54
52
  }
55
53
  if (msg.content) {
56
54
  parts.push({
55
+ type: "input_text",
57
56
  text: msg.content,
58
- type: "text"
59
57
  });
60
58
  }
61
59
  if (msg.role === common_1.PromptRole.system) {
62
60
  // For system messages, filter to only text parts
63
- const textParts = parts.filter((part) => part.type === 'text');
61
+ const textParts = parts.filter((part) => part.type === 'input_text');
62
+ const textContent = textParts.length === 1 && !msg.files ? textParts[0].text : textParts;
64
63
  const systemMsg = {
65
64
  role: "system",
66
- content: textParts.length === 1 && !msg.files ? textParts[0].text : textParts
65
+ content: textContent,
67
66
  };
68
67
  system.push(systemMsg);
69
68
  if (opts.useToolForFormatting && opts.schema) {
70
69
  system.forEach(s => {
71
- if (typeof s.content === 'string') {
72
- s.content = "TOOL: " + s.content;
73
- }
74
- else if (Array.isArray(s.content)) {
75
- s.content.forEach((c) => {
76
- if (c.type === "text")
77
- c.text = "TOOL: " + c.text;
78
- });
70
+ if (s.role === 'system') {
71
+ const sysMsg = s;
72
+ if (typeof sysMsg.content === 'string') {
73
+ sysMsg.content = "TOOL: " + sysMsg.content;
74
+ }
75
+ else if (Array.isArray(sysMsg.content)) {
76
+ sysMsg.content.forEach((c) => {
77
+ if (c.type === "input_text")
78
+ c.text = "TOOL: " + c.text;
79
+ });
80
+ }
79
81
  }
80
82
  });
81
83
  }
82
84
  }
83
85
  else if (msg.role === common_1.PromptRole.safety) {
84
- const textParts = parts.filter((part) => part.type === 'text');
86
+ const textParts = parts.filter((part) => part.type === 'input_text');
85
87
  const safetyMsg = {
86
88
  role: "system",
87
- content: textParts
89
+ content: textParts,
88
90
  };
89
91
  if (Array.isArray(safetyMsg.content)) {
90
92
  safetyMsg.content.forEach((c) => {
91
- if (c.type === "text")
93
+ if (c.type === "input_text")
92
94
  c.text = "DO NOT IGNORE - IMPORTANT: " + c.text;
93
95
  });
94
96
  }
@@ -98,35 +100,26 @@ async function formatOpenAILikeMultimodalPrompt(segments, opts) {
98
100
  if (!msg.tool_use_id) {
99
101
  throw new Error("Tool use id is required for tool messages");
100
102
  }
101
- const toolMsg = {
102
- role: "tool",
103
- tool_call_id: msg.tool_use_id,
104
- content: msg.content || ""
103
+ const toolOutputMsg = {
104
+ type: "function_call_output",
105
+ call_id: msg.tool_use_id,
106
+ output: msg.content || ""
105
107
  };
106
- others.push(toolMsg);
108
+ others.push(toolOutputMsg);
107
109
  }
108
110
  else if (msg.role !== common_1.PromptRole.negative && msg.role !== common_1.PromptRole.mask) {
109
- if (msg.role === 'assistant') {
110
- const assistantMsg = {
111
- role: 'assistant',
112
- content: parts
113
- };
114
- others.push(assistantMsg);
115
- }
116
- else {
117
- const userMsg = {
118
- role: 'user',
119
- content: parts
120
- };
121
- others.push(userMsg);
122
- }
111
+ const inputMsg = {
112
+ role: msg.role === 'assistant' ? 'assistant' : 'user',
113
+ content: parts,
114
+ };
115
+ others.push(inputMsg);
123
116
  }
124
117
  }
125
118
  if (opts.result_schema && !opts.useToolForFormatting) {
126
119
  const schemaMsg = {
127
120
  role: "system",
128
121
  content: [{
129
- type: "text",
122
+ type: "input_text",
130
123
  text: "IMPORTANT: only answer using JSON, and respecting the schema included below, between the <response_schema> tags. " + `<response_schema>${JSON.stringify(opts.result_schema)}</response_schema>`
131
124
  }]
132
125
  };
@@ -1 +1 @@
1
- {"version":3,"file":"openai_format.js","sourceRoot":"","sources":["../../../src/openai/openai_format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openai_format.js","sourceRoot":"","sources":["../../../src/openai/openai_format.ts"],"names":[],"mappings":"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"}
@@ -116,7 +116,7 @@ class VertexAIDriver extends core_1.AbstractDriver {
116
116
  timeout: 20 * 60 * 10000, // Set to 20 minutes, 10 minute default, setting this disables long request error: https://github.com/anthropics/anthropic-sdk-typescript?#long-requests
117
117
  region: mappedRegion,
118
118
  projectId: this.options.project,
119
- authClient,
119
+ authClient: authClient,
120
120
  });
121
121
  }
122
122
  //Lazy initialization for default region
@@ -125,7 +125,7 @@ class VertexAIDriver extends core_1.AbstractDriver {
125
125
  timeout: 20 * 60 * 10000, // Set to 20 minutes, 10 minute default, setting this disables long request error: https://github.com/anthropics/anthropic-sdk-typescript?#long-requests
126
126
  region: mappedRegion,
127
127
  projectId: this.options.project,
128
- authClient,
128
+ authClient: authClient,
129
129
  });
130
130
  }
131
131
  return this.anthropicClient;
@@ -178,13 +178,16 @@ class VertexAIDriver extends core_1.AbstractDriver {
178
178
  super.validateResult(result, options);
179
179
  }
180
180
  canStream(options) {
181
- if (options.output_modality == core_1.Modalities.image) {
181
+ if (this.isImageModel(options.model)) {
182
182
  return Promise.resolve(false);
183
183
  }
184
184
  return Promise.resolve((0, models_js_1.getModelDefinition)(options.model).model.can_stream === true);
185
185
  }
186
+ isImageModel(model) {
187
+ return model.includes("imagen");
188
+ }
186
189
  createPrompt(segments, options) {
187
- if (options.model.includes("imagen")) {
190
+ if (this.isImageModel(options.model)) {
188
191
  return new imagen_js_1.ImagenModelDefinition(options.model).createPrompt(this, segments, options);
189
192
  }
190
193
  return (0, models_js_1.getModelDefinition)(options.model).createPrompt(this, segments, options);
@@ -195,6 +198,163 @@ class VertexAIDriver extends core_1.AbstractDriver {
195
198
  async requestTextCompletionStream(prompt, options) {
196
199
  return (0, models_js_1.getModelDefinition)(options.model).requestTextCompletionStream(this, prompt, options);
197
200
  }
201
+ /**
202
+ * Build conversation context after streaming completion.
203
+ * Reconstructs the assistant message from accumulated results and applies stripping.
204
+ * Handles both Gemini (Content[]) and Claude (ClaudePrompt) formats.
205
+ */
206
+ buildStreamingConversation(prompt, result, toolUse, options) {
207
+ // Handle Claude-style prompts (has 'messages' array)
208
+ if ('messages' in prompt && Array.isArray(prompt.messages)) {
209
+ return this.buildClaudeStreamingConversation(prompt, result, toolUse, options);
210
+ }
211
+ // Only handle Gemini-style prompts with contents array
212
+ if (!('contents' in prompt) || !Array.isArray(prompt.contents)) {
213
+ return undefined;
214
+ }
215
+ const completionResults = result;
216
+ // Convert accumulated results to text content for assistant message
217
+ const textContent = completionResults
218
+ .map(r => {
219
+ switch (r.type) {
220
+ case 'text':
221
+ return r.value;
222
+ case 'json':
223
+ return typeof r.value === 'string' ? r.value : JSON.stringify(r.value);
224
+ case 'image':
225
+ // Skip images in conversation - they're in the result
226
+ return '';
227
+ default:
228
+ return String(r.value || '');
229
+ }
230
+ })
231
+ .join('');
232
+ // Build parts array for assistant message
233
+ const parts = [];
234
+ if (textContent) {
235
+ parts.push({ text: textContent });
236
+ }
237
+ // Add function calls if present (Gemini format)
238
+ if (toolUse && toolUse.length > 0) {
239
+ for (const tool of toolUse) {
240
+ const functionCallPart = {
241
+ functionCall: {
242
+ name: tool.tool_name,
243
+ args: tool.tool_input,
244
+ }
245
+ };
246
+ // Include thought_signature for Gemini thinking models (2.5+/3.0+)
247
+ // This must be preserved in the conversation for subsequent API calls
248
+ if (tool.thought_signature) {
249
+ functionCallPart.thoughtSignature = tool.thought_signature;
250
+ }
251
+ parts.push(functionCallPart);
252
+ }
253
+ }
254
+ // Unwrap array if wrapped, otherwise treat as array
255
+ const unwrapped = (0, core_1.unwrapConversationArray)(options.conversation);
256
+ const existingConversation = unwrapped ?? (options.conversation || []);
257
+ // Combine existing conversation + prompt contents
258
+ let conversation = [
259
+ ...existingConversation,
260
+ ...prompt.contents,
261
+ ];
262
+ // Only add assistant message if there's actual content
263
+ // (Empty text parts can cause API errors)
264
+ if (parts.length > 0) {
265
+ conversation.push({
266
+ role: 'model',
267
+ parts: parts
268
+ });
269
+ }
270
+ // Increment turn counter
271
+ conversation = (0, core_1.incrementConversationTurn)(conversation);
272
+ // Apply stripping based on options
273
+ const currentTurn = (0, core_1.getConversationMeta)(conversation).turnNumber;
274
+ const stripOptions = {
275
+ keepForTurns: options.stripImagesAfterTurns ?? Infinity,
276
+ currentTurn,
277
+ textMaxTokens: options.stripTextMaxTokens
278
+ };
279
+ let processedConversation = (0, core_1.stripBase64ImagesFromConversation)(conversation, stripOptions);
280
+ processedConversation = (0, core_1.truncateLargeTextInConversation)(processedConversation, stripOptions);
281
+ return processedConversation;
282
+ }
283
+ /**
284
+ * Build conversation for Claude streaming.
285
+ * Creates assistant message with tool_use blocks in Claude's ContentBlock format.
286
+ */
287
+ buildClaudeStreamingConversation(prompt, result, toolUse, options) {
288
+ const completionResults = result;
289
+ // Convert accumulated results to text content
290
+ const textContent = completionResults
291
+ .map(r => {
292
+ switch (r.type) {
293
+ case 'text':
294
+ return r.value;
295
+ case 'json':
296
+ return typeof r.value === 'string' ? r.value : JSON.stringify(r.value);
297
+ case 'image':
298
+ return '';
299
+ default:
300
+ return String(r.value || '');
301
+ }
302
+ })
303
+ .join('');
304
+ // Build Claude-style ContentBlock array for assistant message
305
+ const content = [];
306
+ // Add text block if there's text content
307
+ if (textContent) {
308
+ content.push({
309
+ type: 'text',
310
+ text: textContent
311
+ });
312
+ }
313
+ // Add tool_use blocks in Claude format
314
+ if (toolUse && toolUse.length > 0) {
315
+ for (const tool of toolUse) {
316
+ content.push({
317
+ type: 'tool_use',
318
+ id: tool.id,
319
+ name: tool.tool_name,
320
+ input: tool.tool_input ?? {}
321
+ });
322
+ }
323
+ }
324
+ // Get existing conversation or start fresh
325
+ const existingMessages = options.conversation?.messages ?? [];
326
+ const existingSystem = options.conversation?.system ?? prompt.system;
327
+ // Build the new messages array
328
+ const newMessages = [
329
+ ...existingMessages,
330
+ ...prompt.messages,
331
+ ];
332
+ // Only add assistant message if there's actual content
333
+ // (Claude API rejects empty text content blocks)
334
+ if (content.length > 0) {
335
+ newMessages.push({
336
+ role: 'assistant',
337
+ content: content
338
+ });
339
+ }
340
+ // Build the new conversation in ClaudePrompt format
341
+ const conversation = {
342
+ messages: newMessages,
343
+ system: existingSystem
344
+ };
345
+ // Increment turn counter
346
+ const withTurn = (0, core_1.incrementConversationTurn)(conversation);
347
+ // Apply stripping based on options
348
+ const currentTurn = (0, core_1.getConversationMeta)(withTurn).turnNumber;
349
+ const stripOptions = {
350
+ keepForTurns: options.stripImagesAfterTurns ?? Infinity,
351
+ currentTurn,
352
+ textMaxTokens: options.stripTextMaxTokens
353
+ };
354
+ let processedConversation = (0, core_1.stripBase64ImagesFromConversation)(withTurn, stripOptions);
355
+ processedConversation = (0, core_1.truncateLargeTextInConversation)(processedConversation, stripOptions);
356
+ return processedConversation;
357
+ }
198
358
  async requestImageGeneration(_prompt, _options) {
199
359
  const splits = _options.model.split("/");
200
360
  const modelName = trimModelName(splits[splits.length - 1]);
@@ -238,7 +398,7 @@ class VertexAIDriver extends core_1.AbstractDriver {
238
398
  //Used to exclude retired models that are still in the listing API but not available for use.
239
399
  //Or models we do not support yet
240
400
  const unsupportedModelsByPublisher = {
241
- google: ["gemini-pro", "gemini-ultra", "imagen-product-recontext-preview", "embedding"],
401
+ google: ["gemini-pro", "gemini-ultra", "imagen-product-recontext-preview", "embedding", "gemini-live-2.5-flash-preview-native-audio", "computer-use-preview"],
242
402
  anthropic: [],
243
403
  meta: [],
244
404
  };
@@ -309,6 +469,44 @@ class VertexAIDriver extends core_1.AbstractDriver {
309
469
  tool_support: modelCapability.tool_support,
310
470
  };
311
471
  }));
472
+ // Create global google gemini models for Gemini 2.5 and later, if missing from GenAI listing
473
+ if (publisher === 'google') {
474
+ const globalGeminiModels = response.filter((model) => {
475
+ const modelName = model.name ?? "";
476
+ if (retiredModels.some(retiredModel => modelName.includes(retiredModel))) {
477
+ return false;
478
+ }
479
+ if (modelFamily.some(family => modelName.includes(family))) {
480
+ const versionMatch = modelName.match(/gemini-(\d+(?:\.\d+)?)/);
481
+ if (versionMatch) {
482
+ const version = parseFloat(versionMatch[1]);
483
+ if (version >= 2.5) {
484
+ // Check if already present
485
+ const shortName = modelName.split('/').pop();
486
+ const globalName = "Global " + shortName;
487
+ if (models.some(m => m.name === globalName)) {
488
+ return false;
489
+ }
490
+ return true;
491
+ }
492
+ }
493
+ return false;
494
+ }
495
+ return false;
496
+ }).map(model => {
497
+ const modelCapability = (0, core_1.getModelCapabilities)(model.name ?? '', "vertexai");
498
+ return {
499
+ id: "locations/global/" + model.name,
500
+ name: "Global " + model.name?.split('/').pop(),
501
+ provider: 'vertexai',
502
+ owner: publisher,
503
+ input_modalities: (0, core_1.modelModalitiesToArray)(modelCapability.input),
504
+ output_modalities: (0, core_1.modelModalitiesToArray)(modelCapability.output),
505
+ tool_support: modelCapability.tool_support,
506
+ };
507
+ });
508
+ models = models.concat(globalGeminiModels);
509
+ }
312
510
  // Create global anthropic models for those not in NON_GLOBAL_ANTHROPIC_MODELS
313
511
  if (publisher === 'anthropic') {
314
512
  const globalAnthropicModels = response.filter((model) => {
@@ -375,6 +573,14 @@ class VertexAIDriver extends core_1.AbstractDriver {
375
573
  };
376
574
  return (0, embeddings_text_js_1.getEmbeddingsForText)(this, text_options);
377
575
  }
576
+ /**
577
+ * Cleanup Google Cloud clients when the driver is evicted from the cache.
578
+ */
579
+ destroy() {
580
+ this.aiplatform?.close();
581
+ this.modelGarden?.close();
582
+ this.imagenClient?.close();
583
+ }
378
584
  }
379
585
  exports.VertexAIDriver = VertexAIDriver;
380
586
  //'us-central1-aiplatform.googleapis.com',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/vertexai/index.ts"],"names":[],"mappings":";;;AAwCA,sCAGC;AA3CD,yDAA2D;AAC3D,yDAA4E;AAC5E,yCAA4D;AAC5D,2CAc0B;AAC1B,iEAAyD;AACzD,6DAAgF;AAChF,0EAA0E;AAC1E,wEAA8F;AAC9F,2CAAiD;AACjD,kDAAoF;AACpF,kDAAyE;AAgBzE,SAAgB,aAAa,CAAC,KAAa;IACvC,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAClD,CAAC;AAED,MAAa,cAAe,SAAQ,qBAAqD;IACrF,MAAM,CAAC,QAAQ,GAAG,UAAU,CAAC;IAC7B,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC;IAEnC,UAAU,CAAyC;IACnD,eAAe,CAA8B;IAC7C,WAAW,CAA0B;IACrC,WAAW,CAA0B;IACrC,WAAW,CAAgD;IAC3D,WAAW,CAA+C;IAC1D,YAAY,CAAsC;IAElD,UAAU,CAAkB;IACpB,iBAAiB,CAAkC;IAE3D,YAAY,OAA8B;QACtC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACjC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAA;QAC5B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;QAE9B,IAAI,CAAC,UAAU,GAAG,IAAI,gCAAU,CAAC,OAAO,CAAC,iBAAiB,CAAoB,CAAC;QAC/E,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;IACvC,CAAC;IAEO,KAAK,CAAC,aAAa;QACvB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;QACzD,CAAC;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAClC,CAAC;IAEM,oBAAoB,CAAC,SAAiB,IAAI,CAAC,OAAO,CAAC,MAAM;QAC5D,qBAAqB;QACrB,IAAI,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACjC,yCAAyC;YACzC,OAAO,IAAI,mBAAW,CAAC;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC7B,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,IAAI;gBACd,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI;oBACjD,MAAM,EAAE,CAAC,gDAAgD,CAAC;iBAC7D;aACJ,CAAC,CAAC;QACP,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,IAAI,CAAC,WAAW,GAAG,IAAI,mBAAW,CAAC;gBAC/B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC7B,QAAQ,EAAE,MAAM;gBAChB,QAAQ,EAAE,IAAI;gBACd,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,iBAAiB,IAAI;oBACjD,MAAM,EAAE,CAAC,gDAAgD,CAAC;iBAC7D;aACJ,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEM,cAAc;QACjB,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;gBACjC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC3B,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;aAChC,CAAC,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;gBAC3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;gBACrD,OAAO,UAAU,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEM,cAAc,CAAC,SAAiB,aAAa;QAChD,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,MAAM,EAAE,CAAC;YAC7D,IAAI,CAAC,WAAW,GAAG,iBAAiB,CAAC;gBACjC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC7B,UAAU,EAAE,SAAS;aACxB,CAAC,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;gBAC3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;gBACrD,OAAO,UAAU,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;YACH,8CAA8C;YAC9C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;QACxC,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,SAAiB,IAAI,CAAC,OAAO,CAAC,MAAM;QAChE,uFAAuF;QACvF,MAAM,eAAe,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,YAAY,GAAG,6BAAiB,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC;QAE/D,MAAM,mBAAmB,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACjE,MAAM,mBAAmB,GAAG,6BAAiB,CAAC,mBAAmB,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAE1F,0EAA0E;QAC1E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAE9C,kFAAkF;QAClF,IAAI,YAAY,KAAK,mBAAmB,EAAE,CAAC;YACvC,OAAO,IAAI,4BAAe,CAAC;gBACvB,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,wJAAwJ;gBAClL,MAAM,EAAE,YAAY;gBACpB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC/B,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QAED,wCAAwC;QACxC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,IAAI,4BAAe,CAAC;gBACvC,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,KAAK,EAAE,wJAAwJ;gBAClL,MAAM,EAAE,YAAY;gBACpB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC/B,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAEM,KAAK,CAAC,mBAAmB;QAC5B,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9C,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAO,CAAC,kBAAkB,CAAC;gBAC7C,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC/B,WAAW,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,aAAa,EAAE;gBACtD,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,oBAAoB;QAC7B,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACpB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAO,CAAC,wBAAwB,CAAC;gBACpD,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC/B,WAAW,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,aAAa,EAAE;gBACtD,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,eAAe;QACxB,qBAAqB;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACrB,iEAAiE;YACjE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9C,IAAI,CAAC,YAAY,GAAG,IAAI,oCAAuB,CAAC;gBAC5C,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;gBAC/B,WAAW,EAAE,eAAe,aAAa,EAAE;gBAC3C,UAAU;aACb,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,cAAc,CAAC,MAAkB,EAAE,OAAyB;QACxD,qDAAqD;QACrD,MAAM,QAAQ,GAAG,IAAA,8BAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,OAAO,QAAQ,CAAC,uBAAuB,KAAK,UAAU,EAAE,CAAC;YACzD,MAAM,SAAS,GAAG,QAAQ,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACpE,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;YAC1B,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QAChC,CAAC;QAED,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAES,SAAS,CAAC,OAAyB;QACzC,IAAI,OAAO,CAAC,eAAe,IAAI,iBAAU,CAAC,KAAK,EAAE,CAAC;YAC9C,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,OAAO,CAAC,OAAO,CAAC,IAAA,8BAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;IACxF,CAAC;IAEM,YAAY,CAAC,QAAyB,EAAE,OAAyB;QACpE,IAAI,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,iCAAqB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC1F,CAAC;QACD,OAAO,IAAA,8BAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACnF,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,MAAsB,EAAE,OAAyB;QACzE,OAAO,IAAA,8BAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC1F,CAAC;IACD,KAAK,CAAC,2BAA2B,CAC7B,MAAsB,EACtB,OAAyB;QAEzB,OAAO,IAAA,8BAAkB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAChG,CAAC;IAED,KAAK,CAAC,sBAAsB,CACxB,OAAqB,EACrB,QAA0B;QAE1B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3D,OAAO,IAAI,iCAAqB,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAChG,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,MAAmB;QACzC,MAAM,MAAM,GAAY,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzC,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAA4B;QACzC,cAAc;QACd,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACtD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACpD,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAE9D,IAAI,MAAM,GAAsB,EAAE,CAAC;QAEnC,mDAAmD;QACnD,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QACnD,0FAA0F;QAC1F,MAAM,eAAe,GAAG,EAAE,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;QAChG,gEAAgE;QAChE,qFAAqF;QACrF,MAAM,gBAAgB,GAAG;YACrB,MAAM,EAAE;gBACJ,8BAA8B;aACjC;YACD,SAAS,EAAE,EAAE;YACb,IAAI,EAAE;gBACF,yCAAyC;gBACzC,qCAAqC;gBACrC,6BAA6B;gBAC7B,oCAAoC;gBACpC,8BAA8B;gBAC9B,6BAA6B;gBAC7B,4BAA4B;aAC/B;SACJ,CAAA;QAED,6FAA6F;QAC7F,iCAAiC;QACjC,MAAM,4BAA4B,GAAG;YACjC,MAAM,EAAE,CAAC,YAAY,EAAE,cAAc,EAAE,kCAAkC,EAAE,WAAW,CAAC;YACvF,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,EAAE;SACX,CAAC;QAEF,yCAAyC;QACzC,MAAM,iBAAiB,GAAG,UAAU,CAAC,UAAU,CAAC;YAC5C,MAAM,EAAE,YAAY,IAAI,CAAC,OAAO,CAAC,OAAO,cAAc,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;SAC9E,CAAC,CAAC;QACH,MAAM,iBAAiB,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YACzD,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,WAAW,CAAC,mBAAmB,CAAC;gBACrD,MAAM,EAAE,cAAc,SAAS,EAAE;gBACjC,OAAO,EAAE,MAAM;gBACf,eAAe,EAAE,IAAI;aACxB,CAAC,CAAC;YACH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;QACxE,6BAA6B;QAC7B,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAClF,iBAAiB;YACjB,mBAAmB;YACnB,GAAG,iBAAiB;SACvB,CAAC,CAAC;QAEH,qDAAqD;QACrD,MAAM,CAAC,QAAQ,CAAC,GAAG,gBAAgB,CAAC;QACpC,MAAM,GAAG,MAAM,CAAC,MAAM,CAClB,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACrB,EAAE,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE;YACtC,IAAI,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;YAC7B,QAAQ,EAAE,UAAU;SACvB,CAAC,CAAC,CACN,CAAC;QAEF,0CAA0C;QAC1C,MAAM,GAAG,MAAM,CAAC,MAAM,CAClB,kBAAkB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7B,MAAM,eAAe,GAAG,IAAA,2BAAoB,EAAC,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;YAC3E,OAAO;gBACH,EAAE,EAAE,mBAAmB,GAAG,KAAK,CAAC,IAAI;gBACpC,IAAI,EAAE,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;gBAC9C,QAAQ,EAAE,UAAU;gBACpB,KAAK,EAAE,QAAQ;gBACf,gBAAgB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,KAAK,CAAC;gBAC/D,iBAAiB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,MAAM,CAAC;gBACjE,YAAY,EAAE,eAAe,CAAC,YAAY;aAC7C,CAAC;QACN,CAAC,CAAC,CACL,CAAC;QAEF,2BAA2B;QAC3B,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACpC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;YACvC,MAAM,WAAW,GAAG,eAAe,CAAC,SAAyC,CAAC,CAAC;YAC/E,MAAM,aAAa,GAAG,4BAA4B,CAAC,SAAsD,CAAC,CAAC;YAE3G,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;gBAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;gBACnC,yBAAyB;gBACzB,IAAI,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;oBACvE,OAAO,KAAK,CAAC;gBACjB,CAAC;gBACD,6DAA6D;gBAC7D,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;oBACzD,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,OAAO,KAAK,CAAC;YACjB,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBACX,MAAM,eAAe,GAAG,IAAA,2BAAoB,EAAC,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;gBAC3E,OAAO;oBACH,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;oBACpB,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE;oBACxC,QAAQ,EAAE,UAAU;oBACpB,KAAK,EAAE,SAAS;oBAChB,gBAAgB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,KAAK,CAAC;oBAC/D,iBAAiB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,MAAM,CAAC;oBACjE,YAAY,EAAE,eAAe,CAAC,YAAY;iBACnB,CAAC;YAChC,CAAC,CAAC,CAAC,CAAC;YAEJ,8EAA8E;YAC9E,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;gBAC5B,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;oBACpD,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBACnC,IAAI,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;wBACvE,OAAO,KAAK,CAAC;oBACjB,CAAC;oBACD,IAAI,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;wBACzD,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;4BACnC,OAAO,IAAI,CAAC;wBAChB,CAAC;wBACD,OAAO,CAAC,uCAA2B,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;oBACnG,CAAC;oBACD,OAAO,KAAK,CAAC;gBACjB,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;oBACX,MAAM,eAAe,GAAG,IAAA,2BAAoB,EAAC,KAAK,CAAC,IAAI,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;oBAC3E,OAAO;wBACH,EAAE,EAAE,mBAAmB,GAAG,KAAK,CAAC,IAAI;wBACpC,IAAI,EAAE,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;wBAC9C,QAAQ,EAAE,UAAU;wBACpB,KAAK,EAAE,SAAS;wBAChB,gBAAgB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,KAAK,CAAC;wBAC/D,iBAAiB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,MAAM,CAAC;wBACjE,YAAY,EAAE,eAAe,CAAC,YAAY;qBACnB,CAAC;gBAChC,CAAC,CAAC,CAAC;gBAEH,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAClD,CAAC;YAED,oDAAoD;YACpD,KAAK,MAAM,eAAe,IAAI,gBAAgB,CAAC,SAA0C,CAAC,EAAE,CAAC;gBACzF,MAAM,kBAAkB,GAAG,cAAc,SAAS,WAAW,eAAe,EAAE,CAAC;gBAC/E,MAAM,eAAe,GAAG,IAAA,2BAAoB,EAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAC1E,MAAM,CAAC,IAAI,CAAC;oBACR,EAAE,EAAE,kBAAkB;oBACtB,IAAI,EAAE,eAAe;oBACrB,QAAQ,EAAE,UAAU;oBACpB,KAAK,EAAE,SAAS;oBAChB,gBAAgB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,KAAK,CAAC;oBAC/D,iBAAiB,EAAE,IAAA,6BAAsB,EAAC,eAAe,CAAC,MAAM,CAAC;oBACjE,YAAY,EAAE,eAAe,CAAC,YAAY;iBACnB,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;QAED,mBAAmB;QACnB,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;aAC1D,GAAG,CAAC,EAAE,CAAC,EAAE;YACN,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,EAAqB,CAAC;QAClE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEhD,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,kBAAkB;QACd,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAA0B;QAC/C,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACzD,IAAI,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChC,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;YAChG,CAAC;YACD,OAAO,IAAA,4CAAsB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,YAAY,GAA0B;YACxC,OAAO,EAAE,OAAO,CAAC,IAAI,IAAI,EAAE;YAC3B,KAAK,EAAE,OAAO,CAAC,KAAK;SACvB,CAAC;QACF,OAAO,IAAA,yCAAoB,EAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACpD,CAAC;;AAxZL,wCAyZC;AAED,0CAA0C;AAC1C,MAAM,aAAa,GAAG,2BAA2B,CAAC;AAClD,SAAS,iBAAiB,CAAC,EACvB,MAAM,EACN,OAAO,EACP,WAAW,EACX,UAAU,GAAG,IAAI,GAMpB;IACG,MAAM,kBAAkB,GAAG,WAAW,IAAI,GAAG,MAAM,IAAI,aAAa,EAAE,CAAC;IACvE,OAAO,IAAI,8BAAW,CAClB,WAAW,kBAAkB,IAAI,UAAU,aAAa,OAAO,cAAc,MAAM,EAAE,CACxF,CAAC,WAAW,CAAC;QACV,cAAc,EAAE,kBAAkB;KACrC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/vertexai/index.ts"],"names":[],"mappings":"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"}