@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.
- package/lib/cjs/adobe/firefly.js +120 -0
- package/lib/cjs/adobe/firefly.js.map +1 -0
- package/lib/cjs/azure/azure_foundry.js +432 -0
- package/lib/cjs/azure/azure_foundry.js.map +1 -0
- package/lib/cjs/bedrock/converse.js +359 -0
- package/lib/cjs/bedrock/converse.js.map +1 -0
- package/lib/cjs/bedrock/index.js +1441 -0
- package/lib/cjs/bedrock/index.js.map +1 -0
- package/lib/cjs/bedrock/nova-image-payload.js +207 -0
- package/lib/cjs/bedrock/nova-image-payload.js.map +1 -0
- package/lib/cjs/bedrock/payloads.js +3 -0
- package/lib/cjs/bedrock/payloads.js.map +1 -0
- package/lib/cjs/bedrock/s3.js +107 -0
- package/lib/cjs/bedrock/s3.js.map +1 -0
- package/lib/cjs/bedrock/twelvelabs.js +87 -0
- package/lib/cjs/bedrock/twelvelabs.js.map +1 -0
- package/lib/cjs/groq/index.js +326 -0
- package/lib/cjs/groq/index.js.map +1 -0
- package/lib/cjs/huggingface_ie.js +201 -0
- package/lib/cjs/huggingface_ie.js.map +1 -0
- package/lib/cjs/index.js +31 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/mistral/index.js +176 -0
- package/lib/cjs/mistral/index.js.map +1 -0
- package/lib/cjs/mistral/types.js +83 -0
- package/lib/cjs/mistral/types.js.map +1 -0
- package/lib/cjs/openai/azure_openai.js +72 -0
- package/lib/cjs/openai/azure_openai.js.map +1 -0
- package/lib/cjs/openai/index.js +1100 -0
- package/lib/cjs/openai/index.js.map +1 -0
- package/lib/cjs/openai/openai.js +21 -0
- package/lib/cjs/openai/openai.js.map +1 -0
- package/lib/cjs/openai/openai_compatible.js +63 -0
- package/lib/cjs/openai/openai_compatible.js.map +1 -0
- package/lib/cjs/openai/openai_format.js +131 -0
- package/lib/cjs/openai/openai_format.js.map +1 -0
- package/lib/cjs/package.json +3 -0
- package/lib/cjs/replicate.js +275 -0
- package/lib/cjs/replicate.js.map +1 -0
- package/lib/cjs/test-driver/TestErrorCompletionStream.js +20 -0
- package/lib/cjs/test-driver/TestErrorCompletionStream.js.map +1 -0
- package/lib/cjs/test-driver/TestValidationErrorCompletionStream.js +24 -0
- package/lib/cjs/test-driver/TestValidationErrorCompletionStream.js.map +1 -0
- package/lib/cjs/test-driver/index.js +109 -0
- package/lib/cjs/test-driver/index.js.map +1 -0
- package/lib/cjs/test-driver/utils.js +30 -0
- package/lib/cjs/test-driver/utils.js.map +1 -0
- package/lib/cjs/togetherai/index.js +126 -0
- package/lib/cjs/togetherai/index.js.map +1 -0
- package/lib/cjs/togetherai/interfaces.js +3 -0
- package/lib/cjs/togetherai/interfaces.js.map +1 -0
- package/lib/cjs/vertexai/debug.js +12 -0
- package/lib/cjs/vertexai/debug.js.map +1 -0
- package/lib/cjs/vertexai/embeddings/embeddings-image.js +27 -0
- package/lib/cjs/vertexai/embeddings/embeddings-image.js.map +1 -0
- package/lib/cjs/vertexai/embeddings/embeddings-text.js +23 -0
- package/lib/cjs/vertexai/embeddings/embeddings-text.js.map +1 -0
- package/lib/cjs/vertexai/index.js +635 -0
- package/lib/cjs/vertexai/index.js.map +1 -0
- package/lib/cjs/vertexai/models/claude.js +842 -0
- package/lib/cjs/vertexai/models/claude.js.map +1 -0
- package/lib/cjs/vertexai/models/gemini.js +1110 -0
- package/lib/cjs/vertexai/models/gemini.js.map +1 -0
- package/lib/cjs/vertexai/models/imagen.js +303 -0
- package/lib/cjs/vertexai/models/imagen.js.map +1 -0
- package/lib/cjs/vertexai/models/llama.js +183 -0
- package/lib/cjs/vertexai/models/llama.js.map +1 -0
- package/lib/cjs/vertexai/models.js +35 -0
- package/lib/cjs/vertexai/models.js.map +1 -0
- package/lib/cjs/watsonx/index.js +161 -0
- package/lib/cjs/watsonx/index.js.map +1 -0
- package/lib/cjs/watsonx/interfaces.js +3 -0
- package/lib/cjs/watsonx/interfaces.js.map +1 -0
- package/lib/cjs/xai/index.js +65 -0
- package/lib/cjs/xai/index.js.map +1 -0
- package/lib/esm/adobe/firefly.js +116 -0
- package/lib/esm/adobe/firefly.js.map +1 -0
- package/lib/esm/azure/azure_foundry.js +426 -0
- package/lib/esm/azure/azure_foundry.js.map +1 -0
- package/lib/esm/bedrock/converse.js +352 -0
- package/lib/esm/bedrock/converse.js.map +1 -0
- package/lib/esm/bedrock/index.js +1434 -0
- package/lib/esm/bedrock/index.js.map +1 -0
- package/lib/esm/bedrock/nova-image-payload.js +203 -0
- package/lib/esm/bedrock/nova-image-payload.js.map +1 -0
- package/lib/esm/bedrock/payloads.js +2 -0
- package/lib/esm/bedrock/payloads.js.map +1 -0
- package/lib/esm/bedrock/s3.js +99 -0
- package/lib/esm/bedrock/s3.js.map +1 -0
- package/lib/esm/bedrock/twelvelabs.js +84 -0
- package/lib/esm/bedrock/twelvelabs.js.map +1 -0
- package/lib/esm/groq/index.js +319 -0
- package/lib/esm/groq/index.js.map +1 -0
- package/lib/esm/huggingface_ie.js +197 -0
- package/lib/esm/huggingface_ie.js.map +1 -0
- package/lib/esm/index.js +15 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/mistral/index.js +172 -0
- package/lib/esm/mistral/index.js.map +1 -0
- package/lib/esm/mistral/types.js +80 -0
- package/lib/esm/mistral/types.js.map +1 -0
- package/lib/esm/openai/azure_openai.js +68 -0
- package/lib/esm/openai/azure_openai.js.map +1 -0
- package/lib/esm/openai/index.js +1093 -0
- package/lib/esm/openai/index.js.map +1 -0
- package/lib/esm/openai/openai.js +14 -0
- package/lib/esm/openai/openai.js.map +1 -0
- package/lib/esm/openai/openai_compatible.js +56 -0
- package/lib/esm/openai/openai_compatible.js.map +1 -0
- package/lib/esm/openai/openai_format.js +127 -0
- package/lib/esm/openai/openai_format.js.map +1 -0
- package/lib/esm/replicate.js +268 -0
- package/lib/esm/replicate.js.map +1 -0
- package/lib/esm/test-driver/TestErrorCompletionStream.js +16 -0
- package/lib/esm/test-driver/TestErrorCompletionStream.js.map +1 -0
- package/lib/esm/test-driver/TestValidationErrorCompletionStream.js +20 -0
- package/lib/esm/test-driver/TestValidationErrorCompletionStream.js.map +1 -0
- package/lib/esm/test-driver/index.js +91 -0
- package/lib/esm/test-driver/index.js.map +1 -0
- package/lib/esm/test-driver/utils.js +25 -0
- package/lib/esm/test-driver/utils.js.map +1 -0
- package/lib/esm/togetherai/index.js +122 -0
- package/lib/esm/togetherai/index.js.map +1 -0
- package/lib/esm/togetherai/interfaces.js +2 -0
- package/lib/esm/togetherai/interfaces.js.map +1 -0
- package/lib/esm/vertexai/debug.js +6 -0
- package/lib/esm/vertexai/debug.js.map +1 -0
- package/lib/esm/vertexai/embeddings/embeddings-image.js +24 -0
- package/lib/esm/vertexai/embeddings/embeddings-image.js.map +1 -0
- package/lib/esm/vertexai/embeddings/embeddings-text.js +20 -0
- package/lib/esm/vertexai/embeddings/embeddings-text.js.map +1 -0
- package/lib/esm/vertexai/index.js +630 -0
- package/lib/esm/vertexai/index.js.map +1 -0
- package/lib/esm/vertexai/models/claude.js +833 -0
- package/lib/esm/vertexai/models/claude.js.map +1 -0
- package/lib/esm/vertexai/models/gemini.js +1104 -0
- package/lib/esm/vertexai/models/gemini.js.map +1 -0
- package/lib/esm/vertexai/models/imagen.js +299 -0
- package/lib/esm/vertexai/models/imagen.js.map +1 -0
- package/lib/esm/vertexai/models/llama.js +179 -0
- package/lib/esm/vertexai/models/llama.js.map +1 -0
- package/lib/esm/vertexai/models.js +32 -0
- package/lib/esm/vertexai/models.js.map +1 -0
- package/lib/esm/watsonx/index.js +157 -0
- package/lib/esm/watsonx/index.js.map +1 -0
- package/lib/esm/watsonx/interfaces.js +2 -0
- package/lib/esm/watsonx/interfaces.js.map +1 -0
- package/lib/esm/xai/index.js +58 -0
- package/lib/esm/xai/index.js.map +1 -0
- package/lib/types/adobe/firefly.d.ts +30 -0
- package/lib/types/adobe/firefly.d.ts.map +1 -0
- package/lib/types/azure/azure_foundry.d.ts +52 -0
- package/lib/types/azure/azure_foundry.d.ts.map +1 -0
- package/lib/types/bedrock/converse.d.ts +8 -0
- package/lib/types/bedrock/converse.d.ts.map +1 -0
- package/lib/types/bedrock/index.d.ts +135 -0
- package/lib/types/bedrock/index.d.ts.map +1 -0
- package/lib/types/bedrock/nova-image-payload.d.ts +74 -0
- package/lib/types/bedrock/nova-image-payload.d.ts.map +1 -0
- package/lib/types/bedrock/payloads.d.ts +12 -0
- package/lib/types/bedrock/payloads.d.ts.map +1 -0
- package/lib/types/bedrock/s3.d.ts +23 -0
- package/lib/types/bedrock/s3.d.ts.map +1 -0
- package/lib/types/bedrock/twelvelabs.d.ts +50 -0
- package/lib/types/bedrock/twelvelabs.d.ts.map +1 -0
- package/lib/types/groq/index.d.ts +27 -0
- package/lib/types/groq/index.d.ts.map +1 -0
- package/lib/types/huggingface_ie.d.ts +35 -0
- package/lib/types/huggingface_ie.d.ts.map +1 -0
- package/lib/types/index.d.ts +15 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/mistral/index.d.ts +25 -0
- package/lib/types/mistral/index.d.ts.map +1 -0
- package/lib/types/mistral/types.d.ts +127 -0
- package/lib/types/mistral/types.d.ts.map +1 -0
- package/lib/types/openai/azure_openai.d.ts +25 -0
- package/lib/types/openai/azure_openai.d.ts.map +1 -0
- package/lib/types/openai/index.d.ts +126 -0
- package/lib/types/openai/index.d.ts.map +1 -0
- package/lib/types/openai/openai.d.ts +15 -0
- package/lib/types/openai/openai.d.ts.map +1 -0
- package/lib/types/openai/openai_compatible.d.ts +31 -0
- package/lib/types/openai/openai_compatible.d.ts.map +1 -0
- package/lib/types/openai/openai_format.d.ts +21 -0
- package/lib/types/openai/openai_format.d.ts.map +1 -0
- package/lib/types/replicate.d.ts +48 -0
- package/lib/types/replicate.d.ts.map +1 -0
- package/lib/types/test-driver/TestErrorCompletionStream.d.ts +9 -0
- package/lib/types/test-driver/TestErrorCompletionStream.d.ts.map +1 -0
- package/lib/types/test-driver/TestValidationErrorCompletionStream.d.ts +9 -0
- package/lib/types/test-driver/TestValidationErrorCompletionStream.d.ts.map +1 -0
- package/lib/types/test-driver/index.d.ts +24 -0
- package/lib/types/test-driver/index.d.ts.map +1 -0
- package/lib/types/test-driver/utils.d.ts +5 -0
- package/lib/types/test-driver/utils.d.ts.map +1 -0
- package/lib/types/togetherai/index.d.ts +23 -0
- package/lib/types/togetherai/index.d.ts.map +1 -0
- package/lib/types/togetherai/interfaces.d.ts +96 -0
- package/lib/types/togetherai/interfaces.d.ts.map +1 -0
- package/lib/types/vertexai/debug.d.ts +2 -0
- package/lib/types/vertexai/debug.d.ts.map +1 -0
- package/lib/types/vertexai/embeddings/embeddings-image.d.ts +11 -0
- package/lib/types/vertexai/embeddings/embeddings-image.d.ts.map +1 -0
- package/lib/types/vertexai/embeddings/embeddings-text.d.ts +10 -0
- package/lib/types/vertexai/embeddings/embeddings-text.d.ts.map +1 -0
- package/lib/types/vertexai/index.d.ts +79 -0
- package/lib/types/vertexai/index.d.ts.map +1 -0
- package/lib/types/vertexai/models/claude.d.ts +103 -0
- package/lib/types/vertexai/models/claude.d.ts.map +1 -0
- package/lib/types/vertexai/models/gemini.d.ts +78 -0
- package/lib/types/vertexai/models/gemini.d.ts.map +1 -0
- package/lib/types/vertexai/models/imagen.d.ts +75 -0
- package/lib/types/vertexai/models/imagen.d.ts.map +1 -0
- package/lib/types/vertexai/models/llama.d.ts +20 -0
- package/lib/types/vertexai/models/llama.d.ts.map +1 -0
- package/lib/types/vertexai/models.d.ts +20 -0
- package/lib/types/vertexai/models.d.ts.map +1 -0
- package/lib/types/watsonx/index.d.ts +27 -0
- package/lib/types/watsonx/index.d.ts.map +1 -0
- package/lib/types/watsonx/interfaces.d.ts +65 -0
- package/lib/types/watsonx/interfaces.d.ts.map +1 -0
- package/lib/types/xai/index.d.ts +18 -0
- package/lib/types/xai/index.d.ts.map +1 -0
- package/package.json +18 -18
- package/src/bedrock/converse.ts +85 -10
- package/src/bedrock/error-handling.test.ts +352 -0
- package/src/bedrock/index.ts +293 -16
- package/src/groq/index.ts +9 -4
- package/src/mistral/index.ts +25 -22
- package/src/mistral/types.ts +0 -5
- package/src/openai/error-handling.test.ts +567 -0
- package/src/openai/index.ts +513 -33
- package/src/openai/openai_compatible.ts +7 -0
- package/src/openai/openai_format.ts +1 -1
- package/src/vertexai/index.ts +61 -13
- package/src/vertexai/models/claude-error-handling.test.ts +432 -0
- package/src/vertexai/models/claude.ts +287 -10
- package/src/vertexai/models/gemini-error-handling.test.ts +353 -0
- package/src/vertexai/models/gemini.ts +329 -52
- 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 @@
|
|
|
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":"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"}
|
|
@@ -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"}
|