@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,50 @@
|
|
|
1
|
+
import { ExecutionOptions } from "@llumiverse/core";
|
|
2
|
+
import { PromptSegment } from "@llumiverse/core";
|
|
3
|
+
export interface TwelvelabsPegasusRequest {
|
|
4
|
+
inputPrompt: string;
|
|
5
|
+
temperature?: number;
|
|
6
|
+
responseFormat?: {
|
|
7
|
+
type: "json_schema";
|
|
8
|
+
json_schema: {
|
|
9
|
+
name: string;
|
|
10
|
+
schema: any;
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
mediaSource: {
|
|
14
|
+
base64String?: string;
|
|
15
|
+
s3Location?: {
|
|
16
|
+
uri: string;
|
|
17
|
+
bucketOwner?: string;
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
maxOutputTokens?: number;
|
|
21
|
+
}
|
|
22
|
+
export interface TwelvelabsPegasusResponse {
|
|
23
|
+
message: string;
|
|
24
|
+
finishReason: "stop" | "length";
|
|
25
|
+
}
|
|
26
|
+
export interface TwelvelabsMarengoRequest {
|
|
27
|
+
inputType: "text" | "image" | "video" | "audio";
|
|
28
|
+
inputText?: string;
|
|
29
|
+
textTruncate?: "start" | "end";
|
|
30
|
+
mediaSource?: {
|
|
31
|
+
base64String?: string;
|
|
32
|
+
s3Location?: {
|
|
33
|
+
uri: string;
|
|
34
|
+
bucketOwner?: string;
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
embeddingOption?: "visual-text" | "visual-image" | "audio";
|
|
38
|
+
startSec?: number;
|
|
39
|
+
lengthSec?: number;
|
|
40
|
+
useFixedLengthSec?: boolean;
|
|
41
|
+
minClipSec?: number;
|
|
42
|
+
}
|
|
43
|
+
export interface TwelvelabsMarengoResponse {
|
|
44
|
+
embedding: number[];
|
|
45
|
+
embeddingOption: "visual-text" | "visual-image" | "audio";
|
|
46
|
+
startSec: number;
|
|
47
|
+
endSec: number;
|
|
48
|
+
}
|
|
49
|
+
export declare function formatTwelvelabsPegasusPrompt(segments: PromptSegment[], options: ExecutionOptions): Promise<TwelvelabsPegasusRequest>;
|
|
50
|
+
//# sourceMappingURL=twelvelabs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"twelvelabs.d.ts","sourceRoot":"","sources":["../../../src/bedrock/twelvelabs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,gBAAgB,EAAsB,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAE,aAAa,EAAc,MAAM,kBAAkB,CAAC;AAG7D,MAAM,WAAW,wBAAwB;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE;QACb,IAAI,EAAE,aAAa,CAAC;QACpB,WAAW,EAAE;YACT,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,GAAG,CAAC;SACf,CAAC;KACL,CAAC;IACF,WAAW,EAAE;QACT,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE;YACT,GAAG,EAAE,MAAM,CAAC;YACZ,WAAW,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;KACL,CAAC;IACF,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,GAAG,QAAQ,CAAC;CACnC;AAGD,MAAM,WAAW,wBAAwB;IACrC,SAAS,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IAC/B,WAAW,CAAC,EAAE;QACV,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE;YACT,GAAG,EAAE,MAAM,CAAC;YACZ,WAAW,CAAC,EAAE,MAAM,CAAC;SACxB,CAAC;KACL,CAAC;IACF,eAAe,CAAC,EAAE,aAAa,GAAG,cAAc,GAAG,OAAO,CAAC;IAC3D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,yBAAyB;IACtC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,eAAe,EAAE,aAAa,GAAG,cAAc,GAAG,OAAO,CAAC;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAClB;AAGD,wBAAsB,6BAA6B,CAC/C,QAAQ,EAAE,aAAa,EAAE,EACzB,OAAO,EAAE,gBAAgB,GAC1B,OAAO,CAAC,wBAAwB,CAAC,CA0FnC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { AIModel, AbstractDriver, Completion, CompletionChunkObject, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, PromptSegment } from "@llumiverse/core";
|
|
2
|
+
import Groq from "groq-sdk";
|
|
3
|
+
import type { ChatCompletionMessageParam } from "groq-sdk/resources/chat/completions";
|
|
4
|
+
interface GroqDriverOptions extends DriverOptions {
|
|
5
|
+
apiKey: string;
|
|
6
|
+
endpoint_url?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class GroqDriver extends AbstractDriver<GroqDriverOptions, ChatCompletionMessageParam[]> {
|
|
9
|
+
static PROVIDER: string;
|
|
10
|
+
provider: string;
|
|
11
|
+
apiKey: string;
|
|
12
|
+
client: Groq;
|
|
13
|
+
endpointUrl?: string;
|
|
14
|
+
constructor(options: GroqDriverOptions);
|
|
15
|
+
getResponseFormat(_options: ExecutionOptions): undefined;
|
|
16
|
+
protected formatPrompt(segments: PromptSegment[], opts: ExecutionOptions): Promise<ChatCompletionMessageParam[]>;
|
|
17
|
+
private getToolDefinitions;
|
|
18
|
+
private extractToolUse;
|
|
19
|
+
private sanitizeMessagesForGroq;
|
|
20
|
+
requestTextCompletion(messages: ChatCompletionMessageParam[], options: ExecutionOptions): Promise<Completion>;
|
|
21
|
+
requestTextCompletionStream(messages: ChatCompletionMessageParam[], options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
|
|
22
|
+
listModels(): Promise<AIModel<string>[]>;
|
|
23
|
+
validateConnection(): Promise<boolean>;
|
|
24
|
+
generateEmbeddings({}: EmbeddingsOptions): Promise<EmbeddingsResult>;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/groq/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,qBAAqB,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAgD,MAAM,kBAAkB,CAAC;AAIjO,OAAO,IAAI,MAAM,UAAU,CAAC;AAE5B,OAAO,KAAK,EAAE,0BAA0B,EAAsB,MAAM,qCAAqC,CAAC;AAM1G,UAAU,iBAAkB,SAAQ,aAAa;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,UAAW,SAAQ,cAAc,CAAC,iBAAiB,EAAE,0BAA0B,EAAE,CAAC;IAC3F,MAAM,CAAC,QAAQ,SAAU;IACzB,QAAQ,SAAuB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,IAAI,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;gBAET,OAAO,EAAE,iBAAiB;IAkBtC,iBAAiB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,SAAS;cAWxC,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,0BAA0B,EAAE,CAAC;IAWtH,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,cAAc;IAYtB,OAAO,CAAC,uBAAuB;IAiBzB,qBAAqB,CAAC,QAAQ,EAAE,0BAA0B,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAwD7G,2BAA2B,CAAC,QAAQ,EAAE,0BAA0B,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAiD7I,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAuB9C,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC,kBAAkB,CAAC,EAAG,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAI9E"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { InferenceClient } from "@huggingface/inference";
|
|
2
|
+
import { AIModel, AbstractDriver, CompletionChunkObject, DriverOptions, EmbeddingsResult, ExecutionOptions } from "@llumiverse/core";
|
|
3
|
+
import { FetchClient } from "@vertesia/api-fetch-client";
|
|
4
|
+
export interface HuggingFaceIEDriverOptions extends DriverOptions {
|
|
5
|
+
apiKey: string;
|
|
6
|
+
endpoint_url: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class HuggingFaceIEDriver extends AbstractDriver<HuggingFaceIEDriverOptions, string> {
|
|
9
|
+
static PROVIDER: string;
|
|
10
|
+
provider: string;
|
|
11
|
+
service: FetchClient;
|
|
12
|
+
_executor?: InferenceClient;
|
|
13
|
+
constructor(options: HuggingFaceIEDriverOptions);
|
|
14
|
+
getModelURLEndpoint(modelId: string): Promise<{
|
|
15
|
+
url: string;
|
|
16
|
+
status: string;
|
|
17
|
+
}>;
|
|
18
|
+
getExecutor(model: string): Promise<InferenceClient>;
|
|
19
|
+
requestTextCompletionStream(prompt: string, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
|
|
20
|
+
requestTextCompletion(prompt: string, options: ExecutionOptions): Promise<{
|
|
21
|
+
result: {
|
|
22
|
+
type: "text";
|
|
23
|
+
value: string;
|
|
24
|
+
}[];
|
|
25
|
+
finish_reason: string;
|
|
26
|
+
token_usage: {
|
|
27
|
+
result: number | undefined;
|
|
28
|
+
};
|
|
29
|
+
original_response: import("@huggingface/inference").TextGenerationOutput | undefined;
|
|
30
|
+
}>;
|
|
31
|
+
listModels(): Promise<AIModel[]>;
|
|
32
|
+
validateConnection(): Promise<boolean>;
|
|
33
|
+
generateEmbeddings(): Promise<EmbeddingsResult>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=huggingface_ie.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"huggingface_ie.d.ts","sourceRoot":"","sources":["../../src/huggingface_ie.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,eAAe,EAElB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACH,OAAO,EAEP,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAEnB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,MAAM,WAAW,0BAA2B,SAAQ,aAAa;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,mBAAoB,SAAQ,cAAc,CAAC,0BAA0B,EAAE,MAAM,CAAC;IACvF,MAAM,CAAC,QAAQ,SAAoB;IACnC,QAAQ,SAAgC;IACxC,OAAO,EAAE,WAAW,CAAC;IACrB,SAAS,CAAC,EAAE,eAAe,CAAC;gBAGxB,OAAO,EAAE,0BAA0B;IAUjC,mBAAmB,CACrB,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;KAAE,CAAC;IAQtC,WAAW,CAAC,KAAK,EAAE,MAAM;IAoBzB,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB;IAgCrE,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB;;;;;;;;;;;IAgC/D,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAgBhC,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAStC,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,CAAC;CAIxD"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from "./azure/azure_foundry.js";
|
|
2
|
+
export * from "./bedrock/index.js";
|
|
3
|
+
export * from "./groq/index.js";
|
|
4
|
+
export * from "./huggingface_ie.js";
|
|
5
|
+
export * from "./mistral/index.js";
|
|
6
|
+
export * from "./openai/azure_openai.js";
|
|
7
|
+
export * from "./openai/openai.js";
|
|
8
|
+
export * from "./openai/openai_compatible.js";
|
|
9
|
+
export * from "./replicate.js";
|
|
10
|
+
export * from "./test-driver/index.js";
|
|
11
|
+
export * from "./togetherai/index.js";
|
|
12
|
+
export * from "./vertexai/index.js";
|
|
13
|
+
export * from "./watsonx/index.js";
|
|
14
|
+
export * from "./xai/index.js";
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AIModel, AbstractDriver, Completion, CompletionChunkObject, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, PromptSegment } from "@llumiverse/core";
|
|
2
|
+
import { OpenAITextMessage } from "../openai/openai_format.js";
|
|
3
|
+
import { FetchClient } from "@vertesia/api-fetch-client";
|
|
4
|
+
import { ResponseFormat } from "./types.js";
|
|
5
|
+
interface MistralAIDriverOptions extends DriverOptions {
|
|
6
|
+
apiKey: string;
|
|
7
|
+
endpoint_url?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare class MistralAIDriver extends AbstractDriver<MistralAIDriverOptions, OpenAITextMessage[]> {
|
|
10
|
+
static PROVIDER: string;
|
|
11
|
+
provider: string;
|
|
12
|
+
apiKey: string;
|
|
13
|
+
client: FetchClient;
|
|
14
|
+
endpointUrl?: string;
|
|
15
|
+
constructor(options: MistralAIDriverOptions);
|
|
16
|
+
getResponseFormat: (_options: ExecutionOptions) => ResponseFormat | undefined;
|
|
17
|
+
protected formatPrompt(segments: PromptSegment[], opts: ExecutionOptions): Promise<OpenAITextMessage[]>;
|
|
18
|
+
requestTextCompletion(messages: OpenAITextMessage[], options: ExecutionOptions): Promise<Completion>;
|
|
19
|
+
requestTextCompletionStream(messages: OpenAITextMessage[], options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
|
|
20
|
+
listModels(): Promise<AIModel<string>[]>;
|
|
21
|
+
validateConnection(): Promise<boolean>;
|
|
22
|
+
generateEmbeddings({ text, model }: EmbeddingsOptions): Promise<EmbeddingsResult>;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mistral/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,qBAAqB,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAuB,MAAM,kBAAkB,CAAC;AAGxM,OAAO,EAA8B,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAuE,cAAc,EAAE,MAAM,YAAY,CAAC;AAOjH,UAAU,sBAAuB,SAAQ,aAAa;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,eAAgB,SAAQ,cAAc,CAAC,sBAAsB,EAAE,iBAAiB,EAAE,CAAC;IAC5F,MAAM,CAAC,QAAQ,SAAe;IAE9B,QAAQ,SAA4B;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;gBAET,OAAO,EAAE,sBAAsB;IAS3C,iBAAiB,GAAI,UAAU,gBAAgB,KAAG,cAAc,GAAG,SAAS,CAgB3E;cAEe,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAYvG,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAkCpG,2BAA2B,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IAuCpI,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAgB9C,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAIhC,kBAAkB,CAAC,EAAE,IAAI,EAAE,KAAuB,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAe5G"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
export interface ModelPermission {
|
|
2
|
+
id: string;
|
|
3
|
+
object: 'model_permission';
|
|
4
|
+
created: number;
|
|
5
|
+
allow_create_engine: boolean;
|
|
6
|
+
allow_sampling: boolean;
|
|
7
|
+
allow_logprobs: boolean;
|
|
8
|
+
allow_search_indices: boolean;
|
|
9
|
+
allow_view: boolean;
|
|
10
|
+
allow_fine_tuning: boolean;
|
|
11
|
+
organization: string;
|
|
12
|
+
group: string | null;
|
|
13
|
+
is_blocking: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface Model {
|
|
16
|
+
id: string;
|
|
17
|
+
object: 'model';
|
|
18
|
+
created: number;
|
|
19
|
+
owned_by: string;
|
|
20
|
+
root: string | null;
|
|
21
|
+
parent: string | null;
|
|
22
|
+
permission: ModelPermission[];
|
|
23
|
+
}
|
|
24
|
+
export interface ListModelsResponse {
|
|
25
|
+
object: 'list';
|
|
26
|
+
data: Model[];
|
|
27
|
+
}
|
|
28
|
+
export interface Function {
|
|
29
|
+
name: string;
|
|
30
|
+
description: string;
|
|
31
|
+
parameters: object;
|
|
32
|
+
}
|
|
33
|
+
export declare enum ToolType {
|
|
34
|
+
function = "function"
|
|
35
|
+
}
|
|
36
|
+
export interface FunctionCall {
|
|
37
|
+
name: string;
|
|
38
|
+
arguments: string;
|
|
39
|
+
}
|
|
40
|
+
export interface ToolCalls {
|
|
41
|
+
id: 'null';
|
|
42
|
+
type: ToolType;
|
|
43
|
+
function: FunctionCall;
|
|
44
|
+
}
|
|
45
|
+
export declare enum ResponseFormats {
|
|
46
|
+
text = "text",
|
|
47
|
+
json_object = "json_object"
|
|
48
|
+
}
|
|
49
|
+
export declare enum ToolChoice {
|
|
50
|
+
auto = "auto",
|
|
51
|
+
any = "any",
|
|
52
|
+
none = "none"
|
|
53
|
+
}
|
|
54
|
+
export interface ResponseFormat {
|
|
55
|
+
type: ResponseFormats;
|
|
56
|
+
}
|
|
57
|
+
export interface TokenUsage {
|
|
58
|
+
prompt_tokens: number;
|
|
59
|
+
completion_tokens: number;
|
|
60
|
+
total_tokens: number;
|
|
61
|
+
}
|
|
62
|
+
export interface ChatCompletionResponseChoice {
|
|
63
|
+
index: number;
|
|
64
|
+
message: {
|
|
65
|
+
role: string;
|
|
66
|
+
content: string;
|
|
67
|
+
};
|
|
68
|
+
finish_reason: string;
|
|
69
|
+
}
|
|
70
|
+
export interface ChatCompletionResponseChunkChoice {
|
|
71
|
+
index: number;
|
|
72
|
+
delta: {
|
|
73
|
+
role?: string;
|
|
74
|
+
content?: string;
|
|
75
|
+
tool_calls?: ToolCalls[];
|
|
76
|
+
};
|
|
77
|
+
finish_reason: string;
|
|
78
|
+
}
|
|
79
|
+
export interface ChatCompletionResponse {
|
|
80
|
+
id: string;
|
|
81
|
+
object: 'chat.completion';
|
|
82
|
+
created: number;
|
|
83
|
+
model: string;
|
|
84
|
+
choices: ChatCompletionResponseChoice[];
|
|
85
|
+
usage: TokenUsage;
|
|
86
|
+
}
|
|
87
|
+
export interface ChatCompletionResponseChunk {
|
|
88
|
+
id: string;
|
|
89
|
+
object: 'chat.completion.chunk';
|
|
90
|
+
created: number;
|
|
91
|
+
model: string;
|
|
92
|
+
choices: ChatCompletionResponseChunkChoice[];
|
|
93
|
+
}
|
|
94
|
+
export interface Embedding {
|
|
95
|
+
id: string;
|
|
96
|
+
object: 'embedding';
|
|
97
|
+
embedding: number[];
|
|
98
|
+
}
|
|
99
|
+
export interface EmbeddingResponse {
|
|
100
|
+
id: string;
|
|
101
|
+
object: 'list';
|
|
102
|
+
data: Embedding[];
|
|
103
|
+
model: string;
|
|
104
|
+
usage: TokenUsage;
|
|
105
|
+
}
|
|
106
|
+
export interface CompletionRequestParams {
|
|
107
|
+
model: string;
|
|
108
|
+
messages: Array<{
|
|
109
|
+
role: string;
|
|
110
|
+
name?: string;
|
|
111
|
+
content: string | string[];
|
|
112
|
+
tool_calls?: ToolCalls[];
|
|
113
|
+
}>;
|
|
114
|
+
tools?: Array<{
|
|
115
|
+
type: string;
|
|
116
|
+
function: Function;
|
|
117
|
+
}>;
|
|
118
|
+
temperature?: number;
|
|
119
|
+
maxTokens?: number;
|
|
120
|
+
topP?: number;
|
|
121
|
+
randomSeed?: number;
|
|
122
|
+
stream?: boolean;
|
|
123
|
+
toolChoice?: ToolChoice;
|
|
124
|
+
responseFormat?: ResponseFormat;
|
|
125
|
+
stopSequences?: string[];
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/mistral/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AIModel, DriverOptions, Providers } from "@llumiverse/core";
|
|
2
|
+
import OpenAI, { AzureOpenAI } from "openai";
|
|
3
|
+
import { BaseOpenAIDriver } from "./index.js";
|
|
4
|
+
export interface AzureOpenAIDriverOptions extends DriverOptions {
|
|
5
|
+
/**
|
|
6
|
+
* The credentials to use to access Azure OpenAI
|
|
7
|
+
*/
|
|
8
|
+
azureADTokenProvider?: any;
|
|
9
|
+
apiKey?: string;
|
|
10
|
+
endpoint?: string;
|
|
11
|
+
apiVersion?: string;
|
|
12
|
+
deployment?: string;
|
|
13
|
+
}
|
|
14
|
+
export declare class AzureOpenAIDriver extends BaseOpenAIDriver {
|
|
15
|
+
service: AzureOpenAI;
|
|
16
|
+
readonly provider = Providers.azure_openai;
|
|
17
|
+
constructor(serviceOrOpts: AzureOpenAI | AzureOpenAIDriverOptions);
|
|
18
|
+
/**
|
|
19
|
+
* Get default authentication for Azure Cognitive Services API
|
|
20
|
+
*/
|
|
21
|
+
getDefaultCognitiveServicesAuth(): () => Promise<string>;
|
|
22
|
+
listModels(): Promise<AIModel[]>;
|
|
23
|
+
_listModels(_filter?: (m: OpenAI.Models.Model) => boolean): Promise<AIModel[]>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=azure_openai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"azure_openai.d.ts","sourceRoot":"","sources":["../../../src/openai/azure_openai.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAgD,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACnH,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,wBAAyB,SAAQ,aAAa;IAE3D;;OAEG;IACH,oBAAoB,CAAC,EAAE,GAAG,CAAC;IAE3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,UAAU,CAAC,EAAE,MAAM,CAAC;CAEvB;AAED,qBAAa,iBAAkB,SAAQ,gBAAgB;IAGnD,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,CAAC,QAAQ,0BAA0B;gBAG/B,aAAa,EAAE,WAAW,GAAG,wBAAwB;IAqBjE;;OAEG;IACH,+BAA+B;IAMzB,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAIhC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;CA4BvF"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { AIModel, AbstractDriver, Completion, CompletionChunkObject, DataSource, DriverOptions, EmbeddingsOptions, EmbeddingsResult, ExecutionOptions, LlumiverseError, LlumiverseErrorContext, Providers, ToolUse, TrainingJob, TrainingOptions, TrainingPromptOptions } from "@llumiverse/core";
|
|
2
|
+
import OpenAI, { AzureOpenAI } from "openai";
|
|
3
|
+
type ResponseInputItem = OpenAI.Responses.ResponseInputItem;
|
|
4
|
+
export interface BaseOpenAIDriverOptions extends DriverOptions {
|
|
5
|
+
}
|
|
6
|
+
export declare abstract class BaseOpenAIDriver extends AbstractDriver<BaseOpenAIDriverOptions, ResponseInputItem[]> {
|
|
7
|
+
abstract provider: Providers.openai | Providers.azure_openai | Providers.xai | Providers.azure_foundry | Providers.openai_compatible;
|
|
8
|
+
abstract service: OpenAI | AzureOpenAI;
|
|
9
|
+
constructor(opts: BaseOpenAIDriverOptions);
|
|
10
|
+
extractDataFromResponse(_options: ExecutionOptions, result: OpenAI.Responses.Response): Completion;
|
|
11
|
+
requestTextCompletionStream(prompt: ResponseInputItem[], options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
|
|
12
|
+
requestTextCompletion(prompt: ResponseInputItem[], options: ExecutionOptions): Promise<Completion>;
|
|
13
|
+
protected canStream(_options: ExecutionOptions): Promise<boolean>;
|
|
14
|
+
/**
|
|
15
|
+
* Build conversation context after streaming completion.
|
|
16
|
+
* Reconstructs the assistant message from accumulated results and applies stripping.
|
|
17
|
+
*/
|
|
18
|
+
buildStreamingConversation(prompt: ResponseInputItem[], result: unknown[], toolUse: unknown[] | undefined, options: ExecutionOptions): ResponseInputItem[] | undefined;
|
|
19
|
+
createTrainingPrompt(options: TrainingPromptOptions): Promise<string>;
|
|
20
|
+
startTraining(dataset: DataSource, options: TrainingOptions): Promise<TrainingJob>;
|
|
21
|
+
cancelTraining(jobId: string): Promise<TrainingJob>;
|
|
22
|
+
getTrainingJob(jobId: string): Promise<TrainingJob>;
|
|
23
|
+
validateConnection(): Promise<boolean>;
|
|
24
|
+
listTrainableModels(): Promise<AIModel<string>[]>;
|
|
25
|
+
listModels(): Promise<AIModel[]>;
|
|
26
|
+
_listModels(filter?: (m: OpenAI.Models.Model) => boolean): Promise<AIModel[]>;
|
|
27
|
+
generateEmbeddings({ text, image, model }: EmbeddingsOptions): Promise<EmbeddingsResult>;
|
|
28
|
+
imageModels: string[];
|
|
29
|
+
/**
|
|
30
|
+
* Determine if a model is specifically an image generation model (not conversational image model)
|
|
31
|
+
*/
|
|
32
|
+
isImageModel(model: string): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Request image generation from standalone Images API
|
|
35
|
+
* Supports: DALL-E 2, DALL-E 3, GPT-image models (for edit/variation)
|
|
36
|
+
*/
|
|
37
|
+
requestImageGeneration(prompt: ResponseInputItem[], options: ExecutionOptions): Promise<Completion>;
|
|
38
|
+
/**
|
|
39
|
+
* Format OpenAI API errors into LlumiverseError with proper status codes and retryability.
|
|
40
|
+
*
|
|
41
|
+
* OpenAI API errors have a specific structure:
|
|
42
|
+
* - APIError.status: HTTP status code (400, 401, 403, 404, 409, 422, 429, 500+)
|
|
43
|
+
* - APIError.error: Error object with type, message, param, code
|
|
44
|
+
* - APIError.requestID: Request ID for support
|
|
45
|
+
* - APIError.code: Error code (e.g., 'invalid_api_key', 'rate_limit_exceeded')
|
|
46
|
+
* - APIError.param: Parameter that caused the error (optional)
|
|
47
|
+
* - APIError.type: Error type (optional)
|
|
48
|
+
*
|
|
49
|
+
* Common error types:
|
|
50
|
+
* - BadRequestError (400): Invalid request parameters
|
|
51
|
+
* - AuthenticationError (401): Invalid API key
|
|
52
|
+
* - PermissionDeniedError (403): Insufficient permissions
|
|
53
|
+
* - NotFoundError (404): Resource not found
|
|
54
|
+
* - ConflictError (409): Resource conflict
|
|
55
|
+
* - UnprocessableEntityError (422): Validation error
|
|
56
|
+
* - RateLimitError (429): Rate limit exceeded
|
|
57
|
+
* - InternalServerError (500+): Server-side errors
|
|
58
|
+
* - APIConnectionError: Connection issues (no status code)
|
|
59
|
+
* - APIConnectionTimeoutError: Request timeout (no status code)
|
|
60
|
+
* - LengthFinishReasonError: Response truncated due to length
|
|
61
|
+
* - ContentFilterFinishReasonError: Content filtered
|
|
62
|
+
*
|
|
63
|
+
* This implementation works for:
|
|
64
|
+
* - OpenAI API
|
|
65
|
+
* - Azure OpenAI
|
|
66
|
+
* - xAI (uses OpenAI-compatible API)
|
|
67
|
+
* - Azure Foundry (OpenAI-compatible)
|
|
68
|
+
* - Other OpenAI-compatible APIs
|
|
69
|
+
*
|
|
70
|
+
* @see https://platform.openai.com/docs/guides/error-codes
|
|
71
|
+
*/
|
|
72
|
+
formatLlumiverseError(error: unknown, context: LlumiverseErrorContext): LlumiverseError;
|
|
73
|
+
/**
|
|
74
|
+
* Type guard to check if error is an OpenAI API error or OpenAI-specific error.
|
|
75
|
+
*/
|
|
76
|
+
private isOpenAIApiError;
|
|
77
|
+
/**
|
|
78
|
+
* Determine if an OpenAI API error is retryable.
|
|
79
|
+
*
|
|
80
|
+
* Retryable errors:
|
|
81
|
+
* - RateLimitError (429): Rate limit exceeded, retry with backoff
|
|
82
|
+
* - InternalServerError (500+): Server-side errors
|
|
83
|
+
* - APIConnectionTimeoutError: Request timeout
|
|
84
|
+
* - Error codes: 'timeout', 'server_error', 'service_unavailable'
|
|
85
|
+
* - Status codes: 408, 429, 502, 503, 504, 529, 5xx
|
|
86
|
+
*
|
|
87
|
+
* Non-retryable errors:
|
|
88
|
+
* - BadRequestError (400): Invalid request parameters
|
|
89
|
+
* - AuthenticationError (401): Invalid API key
|
|
90
|
+
* - PermissionDeniedError (403): Insufficient permissions
|
|
91
|
+
* - NotFoundError (404): Resource not found
|
|
92
|
+
* - ConflictError (409): Resource conflict
|
|
93
|
+
* - UnprocessableEntityError (422): Validation error
|
|
94
|
+
* - LengthFinishReasonError: Length limit reached
|
|
95
|
+
* - ContentFilterFinishReasonError: Content filtered
|
|
96
|
+
* - Error codes: 'invalid_api_key', 'invalid_request_error', 'model_not_found'
|
|
97
|
+
* - Other 4xx client errors
|
|
98
|
+
*
|
|
99
|
+
* @param error - The error object
|
|
100
|
+
* @param httpStatusCode - The HTTP status code if available
|
|
101
|
+
* @param errorCode - The error code if available
|
|
102
|
+
* @param errorType - The error type if available
|
|
103
|
+
* @returns True if retryable, false if not retryable, undefined if unknown
|
|
104
|
+
*/
|
|
105
|
+
private isOpenAIErrorRetryable;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Converts function_call and function_call_output items to text messages in OpenAI conversation.
|
|
109
|
+
* Preserves tool call information while removing structured items that require
|
|
110
|
+
* tools to be defined in the API request.
|
|
111
|
+
*/
|
|
112
|
+
export declare function convertOpenAIFunctionItemsToText(items: ResponseInputItem[]): ResponseInputItem[];
|
|
113
|
+
export declare function collectTools(output?: OpenAI.Responses.ResponseOutputItem[]): ToolUse[] | undefined;
|
|
114
|
+
/**
|
|
115
|
+
* Fix orphaned function_call items in the OpenAI Responses API conversation.
|
|
116
|
+
*
|
|
117
|
+
* When an agent is stopped mid-tool-execution, the conversation may contain
|
|
118
|
+
* function_call items without matching function_call_output items. The OpenAI
|
|
119
|
+
* Responses API requires every function_call to have a matching function_call_output.
|
|
120
|
+
*
|
|
121
|
+
* This function detects such cases and injects synthetic function_call_output items
|
|
122
|
+
* indicating the tools were interrupted, allowing the conversation to continue.
|
|
123
|
+
*/
|
|
124
|
+
export declare function fixOrphanedToolUse(items: ResponseInputItem[]): ResponseInputItem[];
|
|
125
|
+
export {};
|
|
126
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/openai/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DriverOptions, Providers } from "@llumiverse/core";
|
|
2
|
+
import OpenAI from "openai";
|
|
3
|
+
import { BaseOpenAIDriver } from "./index.js";
|
|
4
|
+
export interface OpenAIDriverOptions extends DriverOptions {
|
|
5
|
+
/**
|
|
6
|
+
* The OpenAI api key
|
|
7
|
+
*/
|
|
8
|
+
apiKey?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare class OpenAIDriver extends BaseOpenAIDriver {
|
|
11
|
+
service: OpenAI;
|
|
12
|
+
readonly provider = Providers.openai;
|
|
13
|
+
constructor(opts: OpenAIDriverOptions);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=openai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/openai/openai.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IAEtD;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CAEnB;AAKD,qBAAa,YAAa,SAAQ,gBAAgB;IAE9C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,QAAQ,oBAAoB;gBAEzB,IAAI,EAAE,mBAAmB;CAMxC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { AIModel, DriverOptions, Providers } from "@llumiverse/core";
|
|
2
|
+
import OpenAI from "openai";
|
|
3
|
+
import { BaseOpenAIDriver } from "./index.js";
|
|
4
|
+
export interface OpenAICompatibleDriverOptions extends DriverOptions {
|
|
5
|
+
/**
|
|
6
|
+
* The API key for the OpenAI-compatible service
|
|
7
|
+
*/
|
|
8
|
+
apiKey: string;
|
|
9
|
+
/**
|
|
10
|
+
* The base URL of the OpenAI-compatible API endpoint
|
|
11
|
+
* Example: https://api.example.com/v1
|
|
12
|
+
*/
|
|
13
|
+
endpoint: string;
|
|
14
|
+
/**
|
|
15
|
+
* Custom headers to include in every request.
|
|
16
|
+
* Useful for Apigee proxies or custom auth schemes.
|
|
17
|
+
*/
|
|
18
|
+
default_headers?: Record<string, string>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* A generic driver for OpenAI-compatible APIs.
|
|
22
|
+
* This can be used with any service that implements the OpenAI API spec,
|
|
23
|
+
* such as xAI (Grok), LM Studio, Ollama, vLLM, LocalAI, etc.
|
|
24
|
+
*/
|
|
25
|
+
export declare class OpenAICompatibleDriver extends BaseOpenAIDriver {
|
|
26
|
+
service: OpenAI;
|
|
27
|
+
readonly provider = Providers.openai_compatible;
|
|
28
|
+
constructor(opts: OpenAICompatibleDriverOptions);
|
|
29
|
+
listModels(): Promise<AIModel[]>;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=openai_compatible.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai_compatible.d.ts","sourceRoot":"","sources":["../../../src/openai/openai_compatible.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,aAAa,EAAa,SAAS,EAAgD,MAAM,kBAAkB,CAAC;AAC9H,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,WAAW,6BAA8B,SAAQ,aAAa;IAChE;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5C;AAED;;;;GAIG;AACH,qBAAa,sBAAuB,SAAQ,gBAAgB;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,QAAQ,+BAA+B;gBAEpC,IAAI,EAAE,6BAA6B;IAkBzC,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;CA8BzC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { PromptOptions, PromptSegment } from "@llumiverse/common";
|
|
2
|
+
import type OpenAI from "openai";
|
|
3
|
+
type ResponseInputItem = OpenAI.Responses.ResponseInputItem;
|
|
4
|
+
export interface OpenAITextMessage {
|
|
5
|
+
content: string;
|
|
6
|
+
role: 'system' | 'user' | 'assistant' | 'developer';
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* OpenAI text only prompts
|
|
10
|
+
* @param segments
|
|
11
|
+
* @returns
|
|
12
|
+
*/
|
|
13
|
+
export declare function formatOpenAILikeTextPrompt(segments: PromptSegment[]): OpenAITextMessage[];
|
|
14
|
+
export declare function formatOpenAILikeMultimodalPrompt(segments: PromptSegment[], opts: PromptOptions & OpenAIPromptFormatterOptions): Promise<ResponseInputItem[]>;
|
|
15
|
+
export interface OpenAIPromptFormatterOptions {
|
|
16
|
+
multimodal?: boolean;
|
|
17
|
+
useToolForFormatting?: boolean;
|
|
18
|
+
schema?: object;
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
21
|
+
//# sourceMappingURL=openai_format.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openai_format.d.ts","sourceRoot":"","sources":["../../../src/openai/openai_format.ts"],"names":[],"mappings":"AAGA,OAAO,EAAc,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAGjC,KAAK,iBAAiB,GAAG,MAAM,CAAC,SAAS,CAAC,iBAAiB,CAAC;AAI5D,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC;CACvD;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,iBAAiB,EAAE,CAoBzF;AAGD,wBAAsB,gCAAgC,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,aAAa,GAAG,4BAA4B,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAuGlK;AAED,MAAM,WAAW,4BAA4B;IACzC,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { AIModel, AbstractDriver, Completion, CompletionChunkObject, DataSource, DriverOptions, EmbeddingsResult, ExecutionOptions, ModelSearchPayload, TrainingJob, TrainingOptions } from "@llumiverse/core";
|
|
2
|
+
import Replicate, { Prediction } from "replicate";
|
|
3
|
+
export interface ReplicateDriverOptions extends DriverOptions {
|
|
4
|
+
apiKey: string;
|
|
5
|
+
}
|
|
6
|
+
export declare class ReplicateDriver extends AbstractDriver<DriverOptions, string> {
|
|
7
|
+
static PROVIDER: string;
|
|
8
|
+
provider: string;
|
|
9
|
+
service: Replicate;
|
|
10
|
+
static parseModelId(modelId: string): {
|
|
11
|
+
owner: string;
|
|
12
|
+
model: string;
|
|
13
|
+
version: string;
|
|
14
|
+
};
|
|
15
|
+
constructor(options: ReplicateDriverOptions);
|
|
16
|
+
extractDataFromResponse(response: Prediction): Completion;
|
|
17
|
+
requestTextCompletionStream(prompt: string, options: ExecutionOptions): Promise<AsyncIterable<CompletionChunkObject>>;
|
|
18
|
+
requestTextCompletion(prompt: string, options: ExecutionOptions): Promise<{
|
|
19
|
+
result: {
|
|
20
|
+
type: "text";
|
|
21
|
+
value: string;
|
|
22
|
+
}[];
|
|
23
|
+
original_response: Prediction | undefined;
|
|
24
|
+
}>;
|
|
25
|
+
startTraining(dataset: DataSource, options: TrainingOptions): Promise<TrainingJob>;
|
|
26
|
+
/**
|
|
27
|
+
* This method is not returning a consistent TrainingJob like the one returned by startTraining
|
|
28
|
+
* Instead of returning the full model name `owner/model:version` it returns only the version `version
|
|
29
|
+
* @param jobId
|
|
30
|
+
* @returns
|
|
31
|
+
*/
|
|
32
|
+
cancelTraining(jobId: string): Promise<TrainingJob>;
|
|
33
|
+
/**
|
|
34
|
+
* This method is not returning a consistent TrainingJob like the one returned by startTraining
|
|
35
|
+
* Instead of returning the full model name `owner/model:version` it returns only the version `version
|
|
36
|
+
* @param jobId
|
|
37
|
+
* @returns
|
|
38
|
+
*/
|
|
39
|
+
getTrainingJob(jobId: string): Promise<TrainingJob>;
|
|
40
|
+
validateConnection(): Promise<boolean>;
|
|
41
|
+
_listTrainableModels(): Promise<AIModel[]>;
|
|
42
|
+
listTrainableModels(): Promise<AIModel[]>;
|
|
43
|
+
listModels(params?: ModelSearchPayload): Promise<AIModel[]>;
|
|
44
|
+
listModelVersions(owner: string, model: string): Promise<AIModel[]>;
|
|
45
|
+
searchModels(params: ModelSearchPayload): Promise<AIModel[]>;
|
|
46
|
+
generateEmbeddings(): Promise<EmbeddingsResult>;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=replicate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"replicate.d.ts","sourceRoot":"","sources":["../../src/replicate.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,cAAc,EACd,UAAU,EACV,qBAAqB,EACrB,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAElB,WAAW,EAEX,eAAe,EAClB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,SAAS,EAAE,EAAE,UAAU,EAAY,MAAM,WAAW,CAAC;AAe5D,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IACzD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,eAAgB,SAAQ,cAAc,CAAC,aAAa,EAAE,MAAM,CAAC;IACtE,MAAM,CAAC,QAAQ,SAAe;IAC9B,QAAQ,SAA4B;IACpC,OAAO,EAAE,SAAS,CAAC;IAEnB,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM;;;;;gBAWvB,OAAO,EAAE,sBAAsB;IAO3C,uBAAuB,CAAC,QAAQ,EAAE,UAAU,GAAG,UAAU;IAOnD,2BAA2B,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;IA6CrH,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB;;;;;;;IAkC/D,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAcxF;;;;;OAKG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKzD;;;;;OAKG;IACG,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAOnD,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAStC,oBAAoB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAoB1C,mBAAmB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAQzC,UAAU,CAAC,MAAM,GAAE,kBAAiC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAYzE,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IA8BnE,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAuB5D,kBAAkB,IAAI,OAAO,CAAC,gBAAgB,CAAC;CAIxD"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CompletionStream, ExecutionOptions, ExecutionResponse, PromptSegment } from "@llumiverse/core";
|
|
2
|
+
export declare class TestErrorCompletionStream implements CompletionStream<PromptSegment[]> {
|
|
3
|
+
segments: PromptSegment[];
|
|
4
|
+
options: ExecutionOptions;
|
|
5
|
+
completion: ExecutionResponse<PromptSegment[]> | undefined;
|
|
6
|
+
constructor(segments: PromptSegment[], options: ExecutionOptions);
|
|
7
|
+
[Symbol.asyncIterator](): AsyncGenerator<string, void, unknown>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=TestErrorCompletionStream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestErrorCompletionStream.d.ts","sourceRoot":"","sources":["../../../src/test-driver/TestErrorCompletionStream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGxG,qBAAa,yBAA0B,YAAW,gBAAgB,CAAC,aAAa,EAAE,CAAC;IAI5D,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;CAKhC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CompletionStream, ExecutionOptions, ExecutionResponse, PromptSegment } from "@llumiverse/core";
|
|
2
|
+
export declare class TestValidationErrorCompletionStream implements CompletionStream<PromptSegment[]> {
|
|
3
|
+
segments: PromptSegment[];
|
|
4
|
+
options: ExecutionOptions;
|
|
5
|
+
completion: ExecutionResponse<PromptSegment[]> | undefined;
|
|
6
|
+
constructor(segments: PromptSegment[], options: ExecutionOptions);
|
|
7
|
+
[Symbol.asyncIterator](): AsyncGenerator<"Started TestValidationError.\n" | "chunk1\n" | "chunk2\n", void, unknown>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=TestValidationErrorCompletionStream.d.ts.map
|