@llumiverse/drivers 1.0.0-dev.20260202.145450Z → 1.0.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 (240) hide show
  1. package/lib/cjs/adobe/firefly.js +120 -0
  2. package/lib/cjs/adobe/firefly.js.map +1 -0
  3. package/lib/cjs/azure/azure_foundry.js +432 -0
  4. package/lib/cjs/azure/azure_foundry.js.map +1 -0
  5. package/lib/cjs/bedrock/converse.js +359 -0
  6. package/lib/cjs/bedrock/converse.js.map +1 -0
  7. package/lib/cjs/bedrock/index.js +1441 -0
  8. package/lib/cjs/bedrock/index.js.map +1 -0
  9. package/lib/cjs/bedrock/nova-image-payload.js +207 -0
  10. package/lib/cjs/bedrock/nova-image-payload.js.map +1 -0
  11. package/lib/cjs/bedrock/payloads.js +3 -0
  12. package/lib/cjs/bedrock/payloads.js.map +1 -0
  13. package/lib/cjs/bedrock/s3.js +107 -0
  14. package/lib/cjs/bedrock/s3.js.map +1 -0
  15. package/lib/cjs/bedrock/twelvelabs.js +87 -0
  16. package/lib/cjs/bedrock/twelvelabs.js.map +1 -0
  17. package/lib/cjs/groq/index.js +326 -0
  18. package/lib/cjs/groq/index.js.map +1 -0
  19. package/lib/cjs/huggingface_ie.js +201 -0
  20. package/lib/cjs/huggingface_ie.js.map +1 -0
  21. package/lib/cjs/index.js +31 -0
  22. package/lib/cjs/index.js.map +1 -0
  23. package/lib/cjs/mistral/index.js +176 -0
  24. package/lib/cjs/mistral/index.js.map +1 -0
  25. package/lib/cjs/mistral/types.js +83 -0
  26. package/lib/cjs/mistral/types.js.map +1 -0
  27. package/lib/cjs/openai/azure_openai.js +72 -0
  28. package/lib/cjs/openai/azure_openai.js.map +1 -0
  29. package/lib/cjs/openai/index.js +1100 -0
  30. package/lib/cjs/openai/index.js.map +1 -0
  31. package/lib/cjs/openai/openai.js +21 -0
  32. package/lib/cjs/openai/openai.js.map +1 -0
  33. package/lib/cjs/openai/openai_compatible.js +63 -0
  34. package/lib/cjs/openai/openai_compatible.js.map +1 -0
  35. package/lib/cjs/openai/openai_format.js +131 -0
  36. package/lib/cjs/openai/openai_format.js.map +1 -0
  37. package/lib/cjs/package.json +3 -0
  38. package/lib/cjs/replicate.js +275 -0
  39. package/lib/cjs/replicate.js.map +1 -0
  40. package/lib/cjs/test-driver/TestErrorCompletionStream.js +20 -0
  41. package/lib/cjs/test-driver/TestErrorCompletionStream.js.map +1 -0
  42. package/lib/cjs/test-driver/TestValidationErrorCompletionStream.js +24 -0
  43. package/lib/cjs/test-driver/TestValidationErrorCompletionStream.js.map +1 -0
  44. package/lib/cjs/test-driver/index.js +109 -0
  45. package/lib/cjs/test-driver/index.js.map +1 -0
  46. package/lib/cjs/test-driver/utils.js +30 -0
  47. package/lib/cjs/test-driver/utils.js.map +1 -0
  48. package/lib/cjs/togetherai/index.js +126 -0
  49. package/lib/cjs/togetherai/index.js.map +1 -0
  50. package/lib/cjs/togetherai/interfaces.js +3 -0
  51. package/lib/cjs/togetherai/interfaces.js.map +1 -0
  52. package/lib/cjs/vertexai/debug.js +12 -0
  53. package/lib/cjs/vertexai/debug.js.map +1 -0
  54. package/lib/cjs/vertexai/embeddings/embeddings-image.js +27 -0
  55. package/lib/cjs/vertexai/embeddings/embeddings-image.js.map +1 -0
  56. package/lib/cjs/vertexai/embeddings/embeddings-text.js +23 -0
  57. package/lib/cjs/vertexai/embeddings/embeddings-text.js.map +1 -0
  58. package/lib/cjs/vertexai/index.js +635 -0
  59. package/lib/cjs/vertexai/index.js.map +1 -0
  60. package/lib/cjs/vertexai/models/claude.js +842 -0
  61. package/lib/cjs/vertexai/models/claude.js.map +1 -0
  62. package/lib/cjs/vertexai/models/gemini.js +1110 -0
  63. package/lib/cjs/vertexai/models/gemini.js.map +1 -0
  64. package/lib/cjs/vertexai/models/imagen.js +303 -0
  65. package/lib/cjs/vertexai/models/imagen.js.map +1 -0
  66. package/lib/cjs/vertexai/models/llama.js +183 -0
  67. package/lib/cjs/vertexai/models/llama.js.map +1 -0
  68. package/lib/cjs/vertexai/models.js +35 -0
  69. package/lib/cjs/vertexai/models.js.map +1 -0
  70. package/lib/cjs/watsonx/index.js +161 -0
  71. package/lib/cjs/watsonx/index.js.map +1 -0
  72. package/lib/cjs/watsonx/interfaces.js +3 -0
  73. package/lib/cjs/watsonx/interfaces.js.map +1 -0
  74. package/lib/cjs/xai/index.js +65 -0
  75. package/lib/cjs/xai/index.js.map +1 -0
  76. package/lib/esm/adobe/firefly.js +116 -0
  77. package/lib/esm/adobe/firefly.js.map +1 -0
  78. package/lib/esm/azure/azure_foundry.js +426 -0
  79. package/lib/esm/azure/azure_foundry.js.map +1 -0
  80. package/lib/esm/bedrock/converse.js +352 -0
  81. package/lib/esm/bedrock/converse.js.map +1 -0
  82. package/lib/esm/bedrock/index.js +1434 -0
  83. package/lib/esm/bedrock/index.js.map +1 -0
  84. package/lib/esm/bedrock/nova-image-payload.js +203 -0
  85. package/lib/esm/bedrock/nova-image-payload.js.map +1 -0
  86. package/lib/esm/bedrock/payloads.js +2 -0
  87. package/lib/esm/bedrock/payloads.js.map +1 -0
  88. package/lib/esm/bedrock/s3.js +99 -0
  89. package/lib/esm/bedrock/s3.js.map +1 -0
  90. package/lib/esm/bedrock/twelvelabs.js +84 -0
  91. package/lib/esm/bedrock/twelvelabs.js.map +1 -0
  92. package/lib/esm/groq/index.js +319 -0
  93. package/lib/esm/groq/index.js.map +1 -0
  94. package/lib/esm/huggingface_ie.js +197 -0
  95. package/lib/esm/huggingface_ie.js.map +1 -0
  96. package/lib/esm/index.js +15 -0
  97. package/lib/esm/index.js.map +1 -0
  98. package/lib/esm/mistral/index.js +172 -0
  99. package/lib/esm/mistral/index.js.map +1 -0
  100. package/lib/esm/mistral/types.js +80 -0
  101. package/lib/esm/mistral/types.js.map +1 -0
  102. package/lib/esm/openai/azure_openai.js +68 -0
  103. package/lib/esm/openai/azure_openai.js.map +1 -0
  104. package/lib/esm/openai/index.js +1093 -0
  105. package/lib/esm/openai/index.js.map +1 -0
  106. package/lib/esm/openai/openai.js +14 -0
  107. package/lib/esm/openai/openai.js.map +1 -0
  108. package/lib/esm/openai/openai_compatible.js +56 -0
  109. package/lib/esm/openai/openai_compatible.js.map +1 -0
  110. package/lib/esm/openai/openai_format.js +127 -0
  111. package/lib/esm/openai/openai_format.js.map +1 -0
  112. package/lib/esm/replicate.js +268 -0
  113. package/lib/esm/replicate.js.map +1 -0
  114. package/lib/esm/test-driver/TestErrorCompletionStream.js +16 -0
  115. package/lib/esm/test-driver/TestErrorCompletionStream.js.map +1 -0
  116. package/lib/esm/test-driver/TestValidationErrorCompletionStream.js +20 -0
  117. package/lib/esm/test-driver/TestValidationErrorCompletionStream.js.map +1 -0
  118. package/lib/esm/test-driver/index.js +91 -0
  119. package/lib/esm/test-driver/index.js.map +1 -0
  120. package/lib/esm/test-driver/utils.js +25 -0
  121. package/lib/esm/test-driver/utils.js.map +1 -0
  122. package/lib/esm/togetherai/index.js +122 -0
  123. package/lib/esm/togetherai/index.js.map +1 -0
  124. package/lib/esm/togetherai/interfaces.js +2 -0
  125. package/lib/esm/togetherai/interfaces.js.map +1 -0
  126. package/lib/esm/vertexai/debug.js +6 -0
  127. package/lib/esm/vertexai/debug.js.map +1 -0
  128. package/lib/esm/vertexai/embeddings/embeddings-image.js +24 -0
  129. package/lib/esm/vertexai/embeddings/embeddings-image.js.map +1 -0
  130. package/lib/esm/vertexai/embeddings/embeddings-text.js +20 -0
  131. package/lib/esm/vertexai/embeddings/embeddings-text.js.map +1 -0
  132. package/lib/esm/vertexai/index.js +630 -0
  133. package/lib/esm/vertexai/index.js.map +1 -0
  134. package/lib/esm/vertexai/models/claude.js +833 -0
  135. package/lib/esm/vertexai/models/claude.js.map +1 -0
  136. package/lib/esm/vertexai/models/gemini.js +1104 -0
  137. package/lib/esm/vertexai/models/gemini.js.map +1 -0
  138. package/lib/esm/vertexai/models/imagen.js +299 -0
  139. package/lib/esm/vertexai/models/imagen.js.map +1 -0
  140. package/lib/esm/vertexai/models/llama.js +179 -0
  141. package/lib/esm/vertexai/models/llama.js.map +1 -0
  142. package/lib/esm/vertexai/models.js +32 -0
  143. package/lib/esm/vertexai/models.js.map +1 -0
  144. package/lib/esm/watsonx/index.js +157 -0
  145. package/lib/esm/watsonx/index.js.map +1 -0
  146. package/lib/esm/watsonx/interfaces.js +2 -0
  147. package/lib/esm/watsonx/interfaces.js.map +1 -0
  148. package/lib/esm/xai/index.js +58 -0
  149. package/lib/esm/xai/index.js.map +1 -0
  150. package/lib/types/adobe/firefly.d.ts +30 -0
  151. package/lib/types/adobe/firefly.d.ts.map +1 -0
  152. package/lib/types/azure/azure_foundry.d.ts +52 -0
  153. package/lib/types/azure/azure_foundry.d.ts.map +1 -0
  154. package/lib/types/bedrock/converse.d.ts +8 -0
  155. package/lib/types/bedrock/converse.d.ts.map +1 -0
  156. package/lib/types/bedrock/index.d.ts +135 -0
  157. package/lib/types/bedrock/index.d.ts.map +1 -0
  158. package/lib/types/bedrock/nova-image-payload.d.ts +74 -0
  159. package/lib/types/bedrock/nova-image-payload.d.ts.map +1 -0
  160. package/lib/types/bedrock/payloads.d.ts +12 -0
  161. package/lib/types/bedrock/payloads.d.ts.map +1 -0
  162. package/lib/types/bedrock/s3.d.ts +23 -0
  163. package/lib/types/bedrock/s3.d.ts.map +1 -0
  164. package/lib/types/bedrock/twelvelabs.d.ts +50 -0
  165. package/lib/types/bedrock/twelvelabs.d.ts.map +1 -0
  166. package/lib/types/groq/index.d.ts +27 -0
  167. package/lib/types/groq/index.d.ts.map +1 -0
  168. package/lib/types/huggingface_ie.d.ts +35 -0
  169. package/lib/types/huggingface_ie.d.ts.map +1 -0
  170. package/lib/types/index.d.ts +15 -0
  171. package/lib/types/index.d.ts.map +1 -0
  172. package/lib/types/mistral/index.d.ts +25 -0
  173. package/lib/types/mistral/index.d.ts.map +1 -0
  174. package/lib/types/mistral/types.d.ts +127 -0
  175. package/lib/types/mistral/types.d.ts.map +1 -0
  176. package/lib/types/openai/azure_openai.d.ts +25 -0
  177. package/lib/types/openai/azure_openai.d.ts.map +1 -0
  178. package/lib/types/openai/index.d.ts +126 -0
  179. package/lib/types/openai/index.d.ts.map +1 -0
  180. package/lib/types/openai/openai.d.ts +15 -0
  181. package/lib/types/openai/openai.d.ts.map +1 -0
  182. package/lib/types/openai/openai_compatible.d.ts +31 -0
  183. package/lib/types/openai/openai_compatible.d.ts.map +1 -0
  184. package/lib/types/openai/openai_format.d.ts +21 -0
  185. package/lib/types/openai/openai_format.d.ts.map +1 -0
  186. package/lib/types/replicate.d.ts +48 -0
  187. package/lib/types/replicate.d.ts.map +1 -0
  188. package/lib/types/test-driver/TestErrorCompletionStream.d.ts +9 -0
  189. package/lib/types/test-driver/TestErrorCompletionStream.d.ts.map +1 -0
  190. package/lib/types/test-driver/TestValidationErrorCompletionStream.d.ts +9 -0
  191. package/lib/types/test-driver/TestValidationErrorCompletionStream.d.ts.map +1 -0
  192. package/lib/types/test-driver/index.d.ts +24 -0
  193. package/lib/types/test-driver/index.d.ts.map +1 -0
  194. package/lib/types/test-driver/utils.d.ts +5 -0
  195. package/lib/types/test-driver/utils.d.ts.map +1 -0
  196. package/lib/types/togetherai/index.d.ts +23 -0
  197. package/lib/types/togetherai/index.d.ts.map +1 -0
  198. package/lib/types/togetherai/interfaces.d.ts +96 -0
  199. package/lib/types/togetherai/interfaces.d.ts.map +1 -0
  200. package/lib/types/vertexai/debug.d.ts +2 -0
  201. package/lib/types/vertexai/debug.d.ts.map +1 -0
  202. package/lib/types/vertexai/embeddings/embeddings-image.d.ts +11 -0
  203. package/lib/types/vertexai/embeddings/embeddings-image.d.ts.map +1 -0
  204. package/lib/types/vertexai/embeddings/embeddings-text.d.ts +10 -0
  205. package/lib/types/vertexai/embeddings/embeddings-text.d.ts.map +1 -0
  206. package/lib/types/vertexai/index.d.ts +79 -0
  207. package/lib/types/vertexai/index.d.ts.map +1 -0
  208. package/lib/types/vertexai/models/claude.d.ts +103 -0
  209. package/lib/types/vertexai/models/claude.d.ts.map +1 -0
  210. package/lib/types/vertexai/models/gemini.d.ts +78 -0
  211. package/lib/types/vertexai/models/gemini.d.ts.map +1 -0
  212. package/lib/types/vertexai/models/imagen.d.ts +75 -0
  213. package/lib/types/vertexai/models/imagen.d.ts.map +1 -0
  214. package/lib/types/vertexai/models/llama.d.ts +20 -0
  215. package/lib/types/vertexai/models/llama.d.ts.map +1 -0
  216. package/lib/types/vertexai/models.d.ts +20 -0
  217. package/lib/types/vertexai/models.d.ts.map +1 -0
  218. package/lib/types/watsonx/index.d.ts +27 -0
  219. package/lib/types/watsonx/index.d.ts.map +1 -0
  220. package/lib/types/watsonx/interfaces.d.ts +65 -0
  221. package/lib/types/watsonx/interfaces.d.ts.map +1 -0
  222. package/lib/types/xai/index.d.ts +18 -0
  223. package/lib/types/xai/index.d.ts.map +1 -0
  224. package/package.json +18 -18
  225. package/src/bedrock/converse.ts +85 -10
  226. package/src/bedrock/error-handling.test.ts +352 -0
  227. package/src/bedrock/index.ts +293 -16
  228. package/src/groq/index.ts +9 -4
  229. package/src/mistral/index.ts +25 -22
  230. package/src/mistral/types.ts +0 -5
  231. package/src/openai/error-handling.test.ts +567 -0
  232. package/src/openai/index.ts +513 -33
  233. package/src/openai/openai_compatible.ts +7 -0
  234. package/src/openai/openai_format.ts +1 -1
  235. package/src/vertexai/index.ts +61 -13
  236. package/src/vertexai/models/claude-error-handling.test.ts +432 -0
  237. package/src/vertexai/models/claude.ts +287 -10
  238. package/src/vertexai/models/gemini-error-handling.test.ts +353 -0
  239. package/src/vertexai/models/gemini.ts +329 -52
  240. package/src/vertexai/models.ts +7 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestValidationErrorCompletionStream.d.ts","sourceRoot":"","sources":["../../../src/test-driver/TestValidationErrorCompletionStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIxG,qBAAa,mCAAoC,YAAW,gBAAgB,CAAC,aAAa,EAAE,CAAC;IAItE,QAAQ,EAAE,aAAa,EAAE;IACjC,OAAO,EAAE,gBAAgB;IAHpC,UAAU,EAAE,iBAAiB,CAAC,aAAa,EAAE,CAAC,GAAG,SAAS,CAAC;gBAExC,QAAQ,EAAE,aAAa,EAAE,EACjC,OAAO,EAAE,gBAAgB;IAE7B,CAAC,MAAM,CAAC,aAAa,CAAC;CAShC"}
@@ -0,0 +1,24 @@
1
+ import { AIModel, CompletionStream, Driver, EmbeddingsResult, ExecutionOptions, ExecutionResponse, PromptSegment, TrainingJob } from "@llumiverse/core";
2
+ export * from "./TestErrorCompletionStream.js";
3
+ export * from "./TestValidationErrorCompletionStream.js";
4
+ export declare enum TestDriverModels {
5
+ executionError = "execution-error",
6
+ validationError = "validation-error"
7
+ }
8
+ export declare class TestDriver implements Driver<PromptSegment[]> {
9
+ provider: string;
10
+ createTrainingPrompt(): Promise<string>;
11
+ startTraining(): Promise<TrainingJob>;
12
+ cancelTraining(): Promise<TrainingJob>;
13
+ getTrainingJob(_jobId: string): Promise<TrainingJob>;
14
+ createPrompt(segments: PromptSegment[], _opts: ExecutionOptions): Promise<PromptSegment[]>;
15
+ execute(segments: PromptSegment[], options: ExecutionOptions): Promise<ExecutionResponse<PromptSegment[]>>;
16
+ stream(segments: PromptSegment[], options: ExecutionOptions): Promise<CompletionStream<PromptSegment[]>>;
17
+ listTrainableModels(): Promise<AIModel<string>[]>;
18
+ listModels(): Promise<AIModel<string>[]>;
19
+ validateConnection(): Promise<boolean>;
20
+ generateEmbeddings(): Promise<EmbeddingsResult>;
21
+ executeError(segments: PromptSegment[], _options: ExecutionOptions): Promise<ExecutionResponse<PromptSegment[]>>;
22
+ executeValidationError(segments: PromptSegment[], _options: ExecutionOptions): Promise<ExecutionResponse<PromptSegment[]>>;
23
+ }
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/test-driver/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAiB,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAa,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAKlL,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0CAA0C,CAAC;AAEzD,oBAAY,gBAAgB;IACxB,cAAc,oBAAoB;IAClC,eAAe,qBAAqB;CACvC;AAED,qBAAa,UAAW,YAAW,MAAM,CAAC,aAAa,EAAE,CAAC;IACtD,QAAQ,SAAU;IAElB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIvC,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC;IAIrC,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAItC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAI9C,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAIhG,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC;IAUpG,MAAM,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC;IAWxG,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAIjD,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAsB9C,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAGtC,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAKzC,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC;IAKhH,sBAAsB,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAAC;CAKnI"}
@@ -0,0 +1,5 @@
1
+ import { ExecutionResponse, PromptSegment } from "@llumiverse/core";
2
+ export declare function throwError(message: string, prompt: PromptSegment[]): never;
3
+ export declare function createValidationErrorCompletion(segments: PromptSegment[]): ExecutionResponse<PromptSegment[]>;
4
+ export declare function sleep(ms: number): Promise<unknown>;
5
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/test-driver/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEpE,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,KAAK,CAI1E;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,aAAa,EAAE,GAchE,iBAAiB,CAAC,aAAa,EAAE,CAAC,CAC1C;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B"}
@@ -0,0 +1,23 @@
1
+ import { AIModel, AbstractDriver, Completion, CompletionChunkObject, DriverOptions, EmbeddingsResult, ExecutionOptions } from "@llumiverse/core";
2
+ import { FetchClient } from "@vertesia/api-fetch-client";
3
+ interface TogetherAIDriverOptions extends DriverOptions {
4
+ apiKey: string;
5
+ }
6
+ export declare class TogetherAIDriver extends AbstractDriver<TogetherAIDriverOptions, string> {
7
+ static PROVIDER: string;
8
+ provider: string;
9
+ apiKey: string;
10
+ fetchClient: FetchClient;
11
+ constructor(options: TogetherAIDriverOptions);
12
+ getResponseFormat: (options: ExecutionOptions) => {
13
+ type: string;
14
+ schema: any;
15
+ } | undefined;
16
+ requestTextCompletion(prompt: string, options: ExecutionOptions): Promise<Completion>;
17
+ requestTextCompletionStream(prompt: string, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
18
+ listModels(): Promise<AIModel<string>[]>;
19
+ validateConnection(): Promise<boolean>;
20
+ generateEmbeddings(): Promise<EmbeddingsResult>;
21
+ }
22
+ export {};
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/togetherai/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,qBAAqB,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAuB,MAAM,kBAAkB,CAAC;AAEtK,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAGzD,UAAU,uBAAwB,SAAQ,aAAa;IACnD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,gBAAiB,SAAQ,cAAc,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACjF,MAAM,CAAC,QAAQ,SAAgB;IAC/B,QAAQ,SAA6B;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,WAAW,CAAC;gBAEb,OAAO,EAAE,uBAAuB;IAQ5C,iBAAiB,GAAI,SAAS,gBAAgB,KAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,GAAG,CAAA;KAAE,GAAG,SAAS,CAMzF;IAEK,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA0CrF,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IA4CrH,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAiB9C,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAGtC,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,CAAC;CAIlD"}
@@ -0,0 +1,96 @@
1
+ interface ModelInstanceConfig {
2
+ appearsIn: any[];
3
+ order: number;
4
+ }
5
+ interface Config {
6
+ stop: string[];
7
+ prompt_format: string;
8
+ chat_template: string;
9
+ }
10
+ interface Pricing {
11
+ input: number;
12
+ output: number;
13
+ hourly: number;
14
+ }
15
+ interface Instance {
16
+ av_zone: string;
17
+ cluster: string;
18
+ }
19
+ interface Ask {
20
+ [key: string]: number;
21
+ }
22
+ interface Gpu {
23
+ [key: string]: number;
24
+ }
25
+ interface Price {
26
+ base: number;
27
+ fine_tune: number;
28
+ hourly: number;
29
+ input: number;
30
+ output: number;
31
+ }
32
+ interface Stat {
33
+ av_zone: string;
34
+ cluster: string;
35
+ capacity: number;
36
+ qps: number;
37
+ throughput_in: number;
38
+ throughput_out: number;
39
+ error_rate: number;
40
+ retry_rate: number;
41
+ }
42
+ interface Depth {
43
+ num_asks: number;
44
+ num_bids: number;
45
+ num_running: number;
46
+ asks: Ask;
47
+ asks_updated: string;
48
+ gpus: Gpu;
49
+ qps: number;
50
+ permit_required: boolean;
51
+ price: Price;
52
+ throughput_in: number;
53
+ throughput_out: number;
54
+ stats: Stat[];
55
+ }
56
+ export interface TogetherModelInfo {
57
+ modelInstanceConfig: ModelInstanceConfig;
58
+ _id: string;
59
+ name: string;
60
+ display_name: string;
61
+ display_type: string;
62
+ description: string;
63
+ license: string;
64
+ creator_organization: string;
65
+ hardware_label: string;
66
+ num_parameters: number;
67
+ show_in_playground: boolean;
68
+ isFeaturedModel: boolean;
69
+ context_length: number;
70
+ config: Config;
71
+ pricing: Pricing;
72
+ created_at: string;
73
+ update_at: string;
74
+ instances: Instance[];
75
+ access: string;
76
+ link: string;
77
+ descriptionLink: string;
78
+ depth: Depth;
79
+ }
80
+ export interface TextCompletion {
81
+ id: string;
82
+ choices: {
83
+ text: string;
84
+ finish_reason: string;
85
+ }[];
86
+ usage: {
87
+ prompt_tokens: number;
88
+ completion_tokens: number;
89
+ total_tokens: number;
90
+ };
91
+ created: number;
92
+ model: string;
93
+ object: string;
94
+ }
95
+ export {};
96
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/togetherai/interfaces.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function logObject(prefix: string, obj: any): void;
2
+ //# sourceMappingURL=debug.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debug.d.ts","sourceRoot":"","sources":["../../../src/vertexai/debug.ts"],"names":[],"mappings":"AAEA,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,QAGjD"}
@@ -0,0 +1,11 @@
1
+ import { EmbeddingsOptions, EmbeddingsResult } from '@llumiverse/core';
2
+ import { VertexAIDriver } from '../index.js';
3
+ export interface ImageEmbeddingsOptions {
4
+ model?: string;
5
+ image?: {
6
+ bytesBase64Encoded?: string;
7
+ };
8
+ text: string;
9
+ }
10
+ export declare function getEmbeddingsForImages(driver: VertexAIDriver, options: EmbeddingsOptions): Promise<EmbeddingsResult>;
11
+ //# sourceMappingURL=embeddings-image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddings-image.d.ts","sourceRoot":"","sources":["../../../../src/vertexai/embeddings/embeddings-image.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,sBAAsB;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE;QAAC,kBAAkB,CAAC,EAAE,MAAM,CAAA;KAAC,CAAC;IACtC,IAAI,EAAE,MAAM,CAAC;CAChB;AAiBD,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA0B1H"}
@@ -0,0 +1,10 @@
1
+ import { EmbeddingsResult } from '@llumiverse/core';
2
+ import { VertexAIDriver } from '../index.js';
3
+ export interface TextEmbeddingsOptions {
4
+ model?: string;
5
+ task_type?: "RETRIEVAL_QUERY" | "RETRIEVAL_DOCUMENT" | "SEMANTIC_SIMILARITY" | "CLASSIFICATION" | "CLUSTERING";
6
+ title?: string;
7
+ content: string;
8
+ }
9
+ export declare function getEmbeddingsForText(driver: VertexAIDriver, options: TextEmbeddingsOptions): Promise<EmbeddingsResult>;
10
+ //# sourceMappingURL=embeddings-text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddings-text.d.ts","sourceRoot":"","sources":["../../../../src/vertexai/embeddings/embeddings-text.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,WAAW,qBAAqB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,iBAAiB,GAAG,oBAAoB,GAAG,qBAAqB,GAAG,gBAAgB,GAAG,YAAY,CAAC;IAC/G,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAA;CAClB;AAsBD,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAsB5H"}
@@ -0,0 +1,79 @@
1
+ import { AnthropicVertex } from "@anthropic-ai/vertex-sdk";
2
+ import { PredictionServiceClient, v1beta1 } from "@google-cloud/aiplatform";
3
+ import { Content, GoogleGenAI, Model } from "@google/genai";
4
+ import { AIModel, AbstractDriver, Completion, CompletionChunkObject, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, LlumiverseError, LlumiverseErrorContext, ModelSearchPayload, PromptSegment } from "@llumiverse/core";
5
+ import { FetchClient } from "@vertesia/api-fetch-client";
6
+ import { GoogleAuth, GoogleAuthOptions } from "google-auth-library";
7
+ import { ImagenPrompt } from "./models/imagen.js";
8
+ export interface VertexAIDriverOptions extends DriverOptions {
9
+ project: string;
10
+ region: string;
11
+ googleAuthOptions?: GoogleAuthOptions;
12
+ }
13
+ export interface GenerateContentPrompt {
14
+ contents: Content[];
15
+ system?: Content;
16
+ }
17
+ export type VertexAIPrompt = ImagenPrompt | GenerateContentPrompt;
18
+ export declare function trimModelName(model: string): string;
19
+ export declare class VertexAIDriver extends AbstractDriver<VertexAIDriverOptions, VertexAIPrompt> {
20
+ static PROVIDER: string;
21
+ provider: string;
22
+ aiplatform: v1beta1.ModelServiceClient | undefined;
23
+ anthropicClient: AnthropicVertex | undefined;
24
+ fetchClient: FetchClient | undefined;
25
+ googleGenAI: GoogleGenAI | undefined;
26
+ llamaClient: FetchClient & {
27
+ region?: string;
28
+ } | undefined;
29
+ modelGarden: v1beta1.ModelGardenServiceClient | undefined;
30
+ imagenClient: PredictionServiceClient | undefined;
31
+ googleAuth: GoogleAuth<any>;
32
+ private authClientPromise;
33
+ constructor(options: VertexAIDriverOptions);
34
+ private getAuthClient;
35
+ getGoogleGenAIClient(region?: string): GoogleGenAI;
36
+ getFetchClient(): FetchClient;
37
+ getLLamaClient(region?: string): FetchClient;
38
+ getAnthropicClient(region?: string): Promise<AnthropicVertex>;
39
+ getAIPlatformClient(): Promise<v1beta1.ModelServiceClient>;
40
+ getModelGardenClient(): Promise<v1beta1.ModelGardenServiceClient>;
41
+ getImagenClient(): Promise<PredictionServiceClient>;
42
+ validateResult(result: Completion, options: ExecutionOptions): void;
43
+ protected canStream(options: ExecutionOptions): Promise<boolean>;
44
+ protected isImageModel(model: string): boolean;
45
+ createPrompt(segments: PromptSegment[], options: ExecutionOptions): Promise<VertexAIPrompt>;
46
+ requestTextCompletion(prompt: VertexAIPrompt, options: ExecutionOptions): Promise<Completion>;
47
+ requestTextCompletionStream(prompt: VertexAIPrompt, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
48
+ /**
49
+ * Build conversation context after streaming completion.
50
+ * Reconstructs the assistant message from accumulated results and applies stripping.
51
+ * Handles both Gemini (Content[]) and Claude (ClaudePrompt) formats.
52
+ */
53
+ buildStreamingConversation(prompt: VertexAIPrompt, result: unknown[], toolUse: unknown[] | undefined, options: ExecutionOptions): Content[] | unknown | undefined;
54
+ /**
55
+ * Build conversation for Claude streaming.
56
+ * Creates assistant message with tool_use blocks in Claude's ContentBlock format.
57
+ */
58
+ private buildClaudeStreamingConversation;
59
+ requestImageGeneration(_prompt: ImagenPrompt, _options: ExecutionOptions): Promise<Completion>;
60
+ getGenAIModelsArray(client: GoogleGenAI): Promise<Model[]>;
61
+ listModels(_params?: ModelSearchPayload): Promise<AIModel<string>[]>;
62
+ validateConnection(): Promise<boolean>;
63
+ generateEmbeddings(options: EmbeddingsOptions): Promise<EmbeddingsResult>;
64
+ /**
65
+ * Cleanup Google Cloud clients when the driver is evicted from the cache.
66
+ */
67
+ destroy(): void;
68
+ /**
69
+ * Format VertexAI errors by routing to model-specific error handlers.
70
+ * Each model definition (Gemini, Claude, Llama) can provide custom error parsing
71
+ * based on their specific SDK error structures.
72
+ *
73
+ * @param error - The error from the VertexAI/model SDK
74
+ * @param context - Context about where the error occurred
75
+ * @returns A standardized LlumiverseError
76
+ */
77
+ formatLlumiverseError(error: unknown, context: LlumiverseErrorContext): LlumiverseError;
78
+ }
79
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vertexai/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EACH,OAAO,EACP,cAAc,EACd,UAAU,EACV,qBAAqB,EAErB,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EAQhB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAc,UAAU,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAKhF,OAAO,EAAyB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEzE,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;CACzC;AAED,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CACpB;AAGD,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,qBAAqB,CAAC;AAElE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,UAG1C;AAED,qBAAa,cAAe,SAAQ,cAAc,CAAC,qBAAqB,EAAE,cAAc,CAAC;IACrF,MAAM,CAAC,QAAQ,SAAc;IAC7B,QAAQ,SAA2B;IAEnC,UAAU,EAAE,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IACnD,eAAe,EAAE,eAAe,GAAG,SAAS,CAAC;IAC7C,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,WAAW,EAAE,WAAW,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IAC3D,WAAW,EAAE,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC;IAC1D,YAAY,EAAE,uBAAuB,GAAG,SAAS,CAAC;IAElD,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,CAAC,iBAAiB,CAAkC;gBAE/C,OAAO,EAAE,qBAAqB;YAe5B,aAAa;IAOpB,oBAAoB,CAAC,MAAM,GAAE,MAA4B,GAAG,WAAW;IA0BvE,cAAc,IAAI,WAAW;IAc7B,cAAc,CAAC,MAAM,GAAE,MAAsB,GAAG,WAAW;IAiBrD,kBAAkB,CAAC,MAAM,GAAE,MAA4B,GAAG,OAAO,CAAC,eAAe,CAAC;IAkClF,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC;IAa1D,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC;IAajE,eAAe,IAAI,OAAO,CAAC,uBAAuB,CAAC;IAchE,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB;IAY5D,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;IAOhE,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAIvC,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC;IAO5F,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAG7F,2BAA2B,CAC7B,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAIhD;;;;OAIG;IACH,0BAA0B,CACtB,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,EAAE,OAAO,EAAE,GAAG,SAAS,EAC9B,OAAO,EAAE,gBAAgB,GAC1B,OAAO,EAAE,GAAG,OAAO,GAAG,SAAS;IAmGlC;;;OAGG;IACH,OAAO,CAAC,gCAAgC;IA6FlC,sBAAsB,CACxB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,gBAAgB,GAC3B,OAAO,CAAC,UAAU,CAAC;IAMhB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAS1D,UAAU,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAkN1E,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC,kBAAkB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAc/E;;OAEG;IACH,OAAO,IAAI,IAAI;IAMf;;;;;;;;OAQG;IACI,qBAAqB,CACxB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,sBAAsB,GAChC,eAAe;CAiBrB"}
@@ -0,0 +1,103 @@
1
+ import { ContentBlock, MessageParam, TextBlockParam } from "@anthropic-ai/sdk/resources/index.js";
2
+ import { AIModel, Completion, CompletionChunkObject, ExecutionOptions, LlumiverseError, LlumiverseErrorContext, PromptSegment, ToolUse } from "@llumiverse/core";
3
+ import { VertexAIDriver } from "../index.js";
4
+ import { ModelDefinition } from "../models.js";
5
+ export declare const ANTHROPIC_REGIONS: Record<string, string>;
6
+ export declare const NON_GLOBAL_ANTHROPIC_MODELS: string[];
7
+ interface ClaudePrompt {
8
+ messages: MessageParam[];
9
+ system?: TextBlockParam[];
10
+ }
11
+ export declare function collectTools(content: ContentBlock[]): ToolUse[] | undefined;
12
+ export declare class ClaudeModelDefinition implements ModelDefinition<ClaudePrompt> {
13
+ model: AIModel;
14
+ constructor(modelId: string);
15
+ createPrompt(_driver: VertexAIDriver, segments: PromptSegment[], options: ExecutionOptions): Promise<ClaudePrompt>;
16
+ requestTextCompletion(driver: VertexAIDriver, prompt: ClaudePrompt, options: ExecutionOptions): Promise<Completion>;
17
+ requestTextCompletionStream(driver: VertexAIDriver, prompt: ClaudePrompt, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
18
+ /**
19
+ * Format Anthropic API errors into LlumiverseError with proper status codes and retryability.
20
+ *
21
+ * Anthropic API errors have a specific structure:
22
+ * - APIError.status: HTTP status code (400, 401, 403, 404, 409, 422, 429, 500+)
23
+ * - APIError.error: Nested error object with type and message
24
+ * - APIError.requestID: Request ID for support (can be null)
25
+ *
26
+ * Common error types:
27
+ * - BadRequestError (400): Invalid request parameters
28
+ * - AuthenticationError (401): Authentication required
29
+ * - PermissionDeniedError (403): Insufficient permissions
30
+ * - NotFoundError (404): Resource not found
31
+ * - ConflictError (409): Resource conflict
32
+ * - UnprocessableEntityError (422): Validation error
33
+ * - RateLimitError (429): Rate limit exceeded
34
+ * - InternalServerError (500+): Server-side errors
35
+ * - APIConnectionError: Connection issues (no status code)
36
+ * - APIConnectionTimeoutError: Request timeout (no status code)
37
+ *
38
+ * @see https://docs.anthropic.com/en/api/errors
39
+ */
40
+ formatLlumiverseError(_driver: VertexAIDriver, error: unknown, context: LlumiverseErrorContext): LlumiverseError;
41
+ /**
42
+ * Type guard to check if error is an Anthropic API error.
43
+ */
44
+ private isAnthropicApiError;
45
+ /**
46
+ * Determine if an Anthropic API error is retryable.
47
+ *
48
+ * Retryable errors:
49
+ * - RateLimitError (429): Rate limit exceeded, retry with backoff
50
+ * - InternalServerError (500+): Server-side errors
51
+ * - APIConnectionTimeoutError: Request timeout
52
+ * - 408 (Request Timeout): Request timeout
53
+ * - 529 (Overloaded): Service overloaded
54
+ *
55
+ * Non-retryable errors:
56
+ * - BadRequestError (400): Invalid request parameters
57
+ * - AuthenticationError (401): Authentication failure
58
+ * - PermissionDeniedError (403): Insufficient permissions
59
+ * - NotFoundError (404): Resource not found
60
+ * - ConflictError (409): Resource conflict
61
+ * - UnprocessableEntityError (422): Validation error
62
+ * - Other 4xx client errors
63
+ * - invalid_request_error: Invalid request structure
64
+ *
65
+ * @param error - The error object
66
+ * @param httpStatusCode - The HTTP status code if available
67
+ * @param errorType - The nested error type if available
68
+ * @returns True if retryable, false if not retryable, undefined if unknown
69
+ */
70
+ private isClaudeErrorRetryable;
71
+ }
72
+ /**
73
+ * Merge consecutive user messages in the conversation.
74
+ * This is required because Anthropic's API expects all tool_result blocks
75
+ * from a single assistant turn to be in one user message.
76
+ * When multiple tool results are added as separate user messages,
77
+ * we need to merge them before sending to the API.
78
+ */
79
+ export declare function mergeConsecutiveUserMessages(messages: MessageParam[]): MessageParam[];
80
+ /**
81
+ * Fix orphaned tool_use blocks in the conversation.
82
+ * @exported for testing
83
+ *
84
+ * When an agent is stopped mid-tool-execution, the assistant message contains tool_use blocks
85
+ * but no corresponding tool_result was added. The Anthropic API requires that every tool_use
86
+ * must be followed by a tool_result in the next user message.
87
+ *
88
+ * This function detects such cases and injects synthetic tool_result blocks indicating
89
+ * the tools were interrupted, allowing the conversation to continue.
90
+ */
91
+ export declare function fixOrphanedToolUse(messages: MessageParam[]): MessageParam[];
92
+ /**
93
+ * Checks whether any Claude message contains tool_use or tool_result content blocks.
94
+ */
95
+ export declare function claudeMessagesContainToolBlocks(messages: MessageParam[]): boolean;
96
+ /**
97
+ * Converts tool_use and tool_result blocks to text in Claude messages.
98
+ * Preserves tool call information while removing structured blocks that
99
+ * require tools to be defined in the API request.
100
+ */
101
+ export declare function convertClaudeToolBlocksToText(messages: MessageParam[]): MessageParam[];
102
+ export {};
103
+ //# sourceMappingURL=claude.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../../../src/vertexai/models/claude.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,YAAY,EAAmE,YAAY,EAAE,cAAc,EAAwB,MAAM,sCAAsC,CAAC;AAGzL,OAAO,EACH,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,gBAAgB,EAK5D,eAAe,EAAE,sBAAsB,EAE3B,aAAa,EAGzB,OAAO,EAGV,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAIpD,CAAA;AAED,eAAO,MAAM,2BAA2B,UAGvC,CAAC;AAEF,UAAU,YAAY;IAClB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;CAC7B;AAWD,wBAAgB,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO,EAAE,GAAG,SAAS,CAc3E;AA8FD,qBAAa,qBAAsB,YAAW,eAAe,CAAC,YAAY,CAAC;IAEvE,KAAK,EAAE,OAAO,CAAA;gBAEF,OAAO,EAAE,MAAM;IAUrB,YAAY,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC;IAuGlH,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA4DnH,2BAA2B,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAiIzJ;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,qBAAqB,CACjB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,sBAAsB,GAChC,eAAe;IA8DlB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAQ3B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,OAAO,CAAC,sBAAsB;CAuCjC;AAYD;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA6CrF;AA6DD;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA2E3E;AAgED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,OAAO,CAUjF;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CA8CtF"}
@@ -0,0 +1,78 @@
1
+ import { Content, GenerateContentResponseUsageMetadata } from "@google/genai";
2
+ import { AIModel, Completion, CompletionChunkObject, ExecutionOptions, ExecutionTokenUsage, LlumiverseError, LlumiverseErrorContext, PromptSegment } from "@llumiverse/core";
3
+ import { GenerateContentPrompt, VertexAIDriver } from "../index.js";
4
+ import { ModelDefinition } from "../models.js";
5
+ export declare function mergeConsecutiveRole(contents: Content[] | undefined): Content[];
6
+ export declare class GeminiModelDefinition implements ModelDefinition<GenerateContentPrompt> {
7
+ model: AIModel;
8
+ constructor(modelId: string);
9
+ preValidationProcessing(result: Completion, options: ExecutionOptions): {
10
+ result: Completion;
11
+ options: ExecutionOptions;
12
+ };
13
+ createPrompt(_driver: VertexAIDriver, segments: PromptSegment[], options: ExecutionOptions): Promise<GenerateContentPrompt>;
14
+ usageMetadataToTokenUsage(usageMetadata: GenerateContentResponseUsageMetadata | undefined): ExecutionTokenUsage;
15
+ requestTextCompletion(driver: VertexAIDriver, prompt: GenerateContentPrompt, options: ExecutionOptions): Promise<Completion>;
16
+ requestTextCompletionStream(driver: VertexAIDriver, prompt: GenerateContentPrompt, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
17
+ /**
18
+ * Format Google API errors into LlumiverseError with proper status codes and retryability.
19
+ *
20
+ * Google API errors follow AIP-193 standard:
21
+ * - ApiError.status: HTTP status code
22
+ * - ApiError.message: Error message
23
+ *
24
+ * Common error codes:
25
+ * - 400 (INVALID_ARGUMENT): Invalid request parameters
26
+ * - 401 (UNAUTHENTICATED): Authentication required
27
+ * - 403 (PERMISSION_DENIED): Insufficient permissions
28
+ * - 404 (NOT_FOUND): Resource not found
29
+ * - 429 (RESOURCE_EXHAUSTED): Rate limit/quota exceeded
30
+ * - 500 (INTERNAL): Internal server error
31
+ * - 503 (UNAVAILABLE): Service temporarily unavailable
32
+ * - 504 (DEADLINE_EXCEEDED): Request timeout
33
+ *
34
+ * @see https://google.aip.dev/193
35
+ * @see https://docs.cloud.google.com/vertex-ai/generative-ai/docs/model-reference/api-errors
36
+ */
37
+ formatLlumiverseError(_driver: VertexAIDriver, error: unknown, context: LlumiverseErrorContext): LlumiverseError;
38
+ /**
39
+ * Type guard to check if error is a Google API error.
40
+ */
41
+ private isGoogleApiError;
42
+ /**
43
+ * Determine if a Google API error is retryable based on HTTP status code.
44
+ *
45
+ * Retryable errors (per Google AIP-194):
46
+ * - 408 (REQUEST_TIMEOUT): Request timeout
47
+ * - 429 (RESOURCE_EXHAUSTED): Rate limit exceeded, quota exhausted
48
+ * - 500 (INTERNAL): Internal server error
49
+ * - 502 (BAD_GATEWAY): Bad gateway
50
+ * - 503 (UNAVAILABLE): Service temporarily unavailable
51
+ * - 504 (DEADLINE_EXCEEDED): Gateway timeout
52
+ *
53
+ * Non-retryable errors:
54
+ * - 400 (INVALID_ARGUMENT): Invalid request parameters
55
+ * - 401 (UNAUTHENTICATED): Authentication required
56
+ * - 403 (PERMISSION_DENIED): Insufficient permissions
57
+ * - 404 (NOT_FOUND): Resource not found
58
+ * - 409 (CONFLICT): Resource conflict
59
+ * - Other 4xx client errors
60
+ *
61
+ * @param httpStatusCode - The HTTP status code from the API error
62
+ * @returns True if retryable, false if not retryable, undefined if unknown
63
+ */
64
+ private isGeminiErrorRetryable;
65
+ /**
66
+ * Extract error type name from error message.
67
+ * Google errors often include the error type in the message.
68
+ * Examples: "INVALID_ARGUMENT", "RESOURCE_EXHAUSTED", "PERMISSION_DENIED"
69
+ */
70
+ private extractErrorName;
71
+ }
72
+ /**
73
+ * Converts functionCall and functionResponse parts to text parts in Gemini Content[].
74
+ * Preserves tool call information while removing structured parts that require
75
+ * tools/toolConfig to be defined in the API request.
76
+ */
77
+ export declare function convertGeminiFunctionPartsToText(contents: Content[]): Content[];
78
+ //# sourceMappingURL=gemini.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../../src/vertexai/models/gemini.ts"],"names":[],"mappings":"AACA,OAAO,EACH,OAAO,EACP,oCAAoC,EAMvC,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAoB,gBAAgB,EAC9E,mBAAmB,EAKK,eAAe,EAAE,sBAAsB,EAC/D,aAAa,EAOhB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AA4e/C,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,GAAG,OAAO,EAAE,CA2B/E;AAgED,qBAAa,qBAAsB,YAAW,eAAe,CAAC,qBAAqB,CAAC;IAEhF,KAAK,EAAE,OAAO,CAAA;gBAEF,OAAO,EAAE,MAAM;IAU3B,uBAAuB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAG;QAAE,MAAM,EAAE,UAAU,CAAC;QAAC,OAAO,EAAE,gBAAgB,CAAA;KAAE;IAyBnH,YAAY,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IA+HjI,yBAAyB,CAAC,aAAa,EAAE,oCAAoC,GAAG,SAAS,GAAG,mBAAmB;IA0BzG,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA8G5H,2BAA2B,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAiFlK;;;;;;;;;;;;;;;;;;;OAmBG;IACH,qBAAqB,CACjB,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,sBAAsB,GAChC,eAAe;IAwClB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAUxB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;CAkB3B;AAGD;;;;GAIG;AACH,wBAAgB,gCAAgC,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,CAsB/E"}
@@ -0,0 +1,75 @@
1
+ import { AIModel, Completion, ExecutionOptions, PromptSegment } from "@llumiverse/core";
2
+ import { VertexAIDriver } from "../index.js";
3
+ interface ImagenBaseReference {
4
+ referenceType: "REFERENCE_TYPE_RAW" | "REFERENCE_TYPE_MASK" | "REFERENCE_TYPE_SUBJECT" | "REFERENCE_TYPE_CONTROL" | "REFERENCE_TYPE_STYLE";
5
+ referenceId: number;
6
+ referenceImage: {
7
+ bytesBase64Encoded: string;
8
+ };
9
+ }
10
+ export declare enum ImagenTaskType {
11
+ TEXT_IMAGE = "TEXT_IMAGE",
12
+ EDIT_MODE_INPAINT_REMOVAL = "EDIT_MODE_INPAINT_REMOVAL",
13
+ EDIT_MODE_INPAINT_INSERTION = "EDIT_MODE_INPAINT_INSERTION",
14
+ EDIT_MODE_BGSWAP = "EDIT_MODE_BGSWAP",
15
+ EDIT_MODE_OUTPAINT = "EDIT_MODE_OUTPAINT",
16
+ CUSTOMIZATION_SUBJECT = "CUSTOMIZATION_SUBJECT",
17
+ CUSTOMIZATION_STYLE = "CUSTOMIZATION_STYLE",
18
+ CUSTOMIZATION_CONTROLLED = "CUSTOMIZATION_CONTROLLED",
19
+ CUSTOMIZATION_INSTRUCT = "CUSTOMIZATION_INSTRUCT"
20
+ }
21
+ export declare enum ImagenMaskMode {
22
+ MASK_MODE_USER_PROVIDED = "MASK_MODE_USER_PROVIDED",
23
+ MASK_MODE_BACKGROUND = "MASK_MODE_BACKGROUND",
24
+ MASK_MODE_FOREGROUND = "MASK_MODE_FOREGROUND",
25
+ MASK_MODE_SEMANTIC = "MASK_MODE_SEMANTIC"
26
+ }
27
+ interface ImagenReferenceRaw extends ImagenBaseReference {
28
+ referenceType: "REFERENCE_TYPE_RAW";
29
+ }
30
+ interface ImagenReferenceMask extends Omit<ImagenBaseReference, "referenceImage"> {
31
+ referenceType: "REFERENCE_TYPE_MASK";
32
+ maskImageConfig: {
33
+ maskMode?: ImagenMaskMode;
34
+ maskClasses?: number[];
35
+ dilation?: number;
36
+ };
37
+ referenceImage?: {
38
+ bytesBase64Encoded: string;
39
+ };
40
+ }
41
+ interface ImagenReferenceSubject extends ImagenBaseReference {
42
+ referenceType: "REFERENCE_TYPE_SUBJECT";
43
+ subjectImageConfig: {
44
+ subjectDescription: string;
45
+ subjectType: "SUBJECT_TYPE_PERSON" | "SUBJECT_TYPE_ANIMAL" | "SUBJECT_TYPE_PRODUCT" | "SUBJECT_TYPE_DEFAULT";
46
+ };
47
+ }
48
+ interface ImagenReferenceControl extends ImagenBaseReference {
49
+ referenceType: "REFERENCE_TYPE_CONTROL";
50
+ controlImageConfig: {
51
+ controlType: "CONTROL_TYPE_FACE_MESH" | "CONTROL_TYPE_CANNY" | "CONTROL_TYPE_SCRIBBLE";
52
+ enableControlImageComputation?: boolean;
53
+ };
54
+ }
55
+ interface ImagenReferenceStyle extends ImagenBaseReference {
56
+ referenceType: "REFERENCE_TYPE_STYLE";
57
+ styleImageConfig: {
58
+ styleDescription?: string;
59
+ };
60
+ }
61
+ type ImagenMessage = ImagenReferenceRaw | ImagenReferenceMask | ImagenReferenceSubject | ImagenReferenceControl | ImagenReferenceStyle;
62
+ export interface ImagenPrompt {
63
+ prompt: string;
64
+ referenceImages?: ImagenMessage[];
65
+ subjectDescription?: string;
66
+ negativePrompt?: string;
67
+ }
68
+ export declare class ImagenModelDefinition {
69
+ model: AIModel;
70
+ constructor(modelId: string);
71
+ createPrompt(_driver: VertexAIDriver, segments: PromptSegment[], options: ExecutionOptions): Promise<ImagenPrompt>;
72
+ requestImageGeneration(driver: VertexAIDriver, prompt: ImagenPrompt, options: ExecutionOptions): Promise<Completion>;
73
+ }
74
+ export {};
75
+ //# sourceMappingURL=imagen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imagen.d.ts","sourceRoot":"","sources":["../../../../src/vertexai/models/imagen.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EAAE,UAAU,EAAE,gBAAgB,EACd,aAAa,EACvC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAK7C,UAAU,mBAAmB;IACzB,aAAa,EAAE,oBAAoB,GAAG,qBAAqB,GAAG,wBAAwB,GACtF,wBAAwB,GAAG,sBAAsB,CAAC;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE;QACZ,kBAAkB,EAAE,MAAM,CAAC;KAC9B,CAAA;CACJ;AAED,oBAAY,cAAc;IACtB,UAAU,eAAe;IACzB,yBAAyB,8BAA8B;IACvD,2BAA2B,gCAAgC;IAC3D,gBAAgB,qBAAqB;IACrC,kBAAkB,uBAAuB;IACzC,qBAAqB,0BAA0B;IAC/C,mBAAmB,wBAAwB;IAC3C,wBAAwB,6BAA6B;IACrD,sBAAsB,2BAA2B;CACpD;AAED,oBAAY,cAAc;IACtB,uBAAuB,4BAA4B;IACnD,oBAAoB,yBAAyB;IAC7C,oBAAoB,yBAAyB;IAC7C,kBAAkB,uBAAuB;CAC5C;AAED,UAAU,kBAAmB,SAAQ,mBAAmB;IACpD,aAAa,EAAE,oBAAoB,CAAC;CACvC;AAED,UAAU,mBAAoB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,gBAAgB,CAAC;IAC7E,aAAa,EAAE,qBAAqB,CAAC;IACrC,eAAe,EAAE;QACb,QAAQ,CAAC,EAAE,cAAc,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,CAAA;IACD,cAAc,CAAC,EAAE;QACb,kBAAkB,EAAE,MAAM,CAAC;KAC9B,CAAA;CACJ;AAED,UAAU,sBAAuB,SAAQ,mBAAmB;IACxD,aAAa,EAAE,wBAAwB,CAAC;IACxC,kBAAkB,EAAE;QAChB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,WAAW,EAAE,qBAAqB,GAAG,qBAAqB,GAAG,sBAAsB,GAAG,sBAAsB,CAAC;KAChH,CAAA;CACJ;AAED,UAAU,sBAAuB,SAAQ,mBAAmB;IACxD,aAAa,EAAE,wBAAwB,CAAC;IACxC,kBAAkB,EAAE;QAChB,WAAW,EAAE,wBAAwB,GAAG,oBAAoB,GAAG,uBAAuB,CAAC;QACvF,6BAA6B,CAAC,EAAE,OAAO,CAAC;KAC3C,CAAA;CACJ;AAED,UAAU,oBAAqB,SAAQ,mBAAmB;IACtD,aAAa,EAAE,sBAAsB,CAAC;IACtC,gBAAgB,EAAE;QACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAA;CACJ;AAED,KAAK,aAAa,GAAG,kBAAkB,GAAG,mBAAmB,GAAG,sBAAsB,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;AAEvI,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,aAAa,EAAE,CAAC;IAClC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAkED,qBAAa,qBAAqB;IAE9B,KAAK,EAAE,OAAO,CAAA;gBAEF,OAAO,EAAE,MAAM;IAUrB,YAAY,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC;IAiKlH,sBAAsB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;CA8D7H"}
@@ -0,0 +1,20 @@
1
+ import { AIModel, Completion, CompletionChunkObject, ExecutionOptions, PromptOptions, PromptSegment } from "@llumiverse/core";
2
+ import { VertexAIDriver } from "../index.js";
3
+ import { ModelDefinition } from "../models.js";
4
+ interface LLamaMessage {
5
+ role: string;
6
+ content: string;
7
+ }
8
+ interface LLamaPrompt {
9
+ messages: LLamaMessage[];
10
+ }
11
+ export declare class LLamaModelDefinition implements ModelDefinition<LLamaPrompt> {
12
+ model: AIModel;
13
+ constructor(modelId: string);
14
+ getLlamaModelRegion(modelName: string): string;
15
+ createPrompt(_driver: VertexAIDriver, segments: PromptSegment[], options: PromptOptions): Promise<LLamaPrompt>;
16
+ requestTextCompletion(driver: VertexAIDriver, prompt: LLamaPrompt, options: ExecutionOptions): Promise<Completion>;
17
+ requestTextCompletionStream(driver: VertexAIDriver, prompt: LLamaPrompt, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
18
+ }
19
+ export {};
20
+ //# sourceMappingURL=llama.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"llama.d.ts","sourceRoot":"","sources":["../../../../src/vertexai/models/llama.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,gBAAgB,EAC5D,aAAa,EAAc,aAAa,EAE3C,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG/C,UAAU,YAAY;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,WAAW;IACjB,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC5B;AAqED,qBAAa,oBAAqB,YAAW,eAAe,CAAC,WAAW,CAAC;IAErE,KAAK,EAAE,OAAO,CAAA;gBAEF,OAAO,EAAE,MAAM;IAW3B,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IASxC,YAAY,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC;IAwC9G,qBAAqB,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IA2DlH,2BAA2B,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;CAqD3J"}
@@ -0,0 +1,20 @@
1
+ import { AIModel, Completion, CompletionChunkObject, ExecutionOptions, LlumiverseError, LlumiverseErrorContext, PromptSegment } from "@llumiverse/core";
2
+ import { VertexAIDriver } from "./index.js";
3
+ export interface ModelDefinition<PromptT = any> {
4
+ model: AIModel;
5
+ versions?: string[];
6
+ createPrompt: (driver: VertexAIDriver, segments: PromptSegment[], options: ExecutionOptions) => Promise<PromptT>;
7
+ requestTextCompletion: (driver: VertexAIDriver, prompt: PromptT, options: ExecutionOptions) => Promise<Completion>;
8
+ requestTextCompletionStream: (driver: VertexAIDriver, prompt: PromptT, options: ExecutionOptions) => Promise<AsyncIterable<CompletionChunkObject>>;
9
+ preValidationProcessing?(result: Completion, options: ExecutionOptions): {
10
+ result: Completion;
11
+ options: ExecutionOptions;
12
+ };
13
+ /**
14
+ * Format provider-specific errors into standardized LlumiverseError.
15
+ * Optional - if not provided, VertexAIDriver will use default error handling.
16
+ */
17
+ formatLlumiverseError?(driver: VertexAIDriver, error: unknown, context: LlumiverseErrorContext): LlumiverseError;
18
+ }
19
+ export declare function getModelDefinition(model: string): ModelDefinition;
20
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../src/vertexai/models.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACxJ,OAAO,EAAE,cAAc,EAAiB,MAAM,YAAY,CAAC;AAK3D,MAAM,WAAW,eAAe,CAAC,OAAO,GAAG,GAAG;IAC1C,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,YAAY,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjH,qBAAqB,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IACnH,2BAA2B,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,gBAAgB,KAAK,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACnJ,uBAAuB,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,GAAG;QAAE,MAAM,EAAE,UAAU,CAAC;QAAC,OAAO,EAAE,gBAAgB,CAAA;KAAE,CAAC;IAC3H;;;OAGG;IACH,qBAAqB,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,sBAAsB,GAAG,eAAe,CAAC;CACpH;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,eAAe,CA2BjE"}