@llumiverse/drivers 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. package/lib/cjs/bedrock/index.js +338 -0
  2. package/lib/cjs/bedrock/index.js.map +1 -0
  3. package/lib/cjs/bedrock/s3.js +61 -0
  4. package/lib/cjs/bedrock/s3.js.map +1 -0
  5. package/lib/cjs/huggingface_ie.js +181 -0
  6. package/lib/cjs/huggingface_ie.js.map +1 -0
  7. package/lib/cjs/index.js +24 -0
  8. package/lib/cjs/index.js.map +1 -0
  9. package/lib/cjs/openai.js +205 -0
  10. package/lib/cjs/openai.js.map +1 -0
  11. package/lib/cjs/package.json +3 -0
  12. package/lib/cjs/replicate.js +290 -0
  13. package/lib/cjs/replicate.js.map +1 -0
  14. package/lib/cjs/test/TestErrorCompletionStream.js +20 -0
  15. package/lib/cjs/test/TestErrorCompletionStream.js.map +1 -0
  16. package/lib/cjs/test/TestValidationErrorCompletionStream.js +24 -0
  17. package/lib/cjs/test/TestValidationErrorCompletionStream.js.map +1 -0
  18. package/lib/cjs/test/index.js +109 -0
  19. package/lib/cjs/test/index.js.map +1 -0
  20. package/lib/cjs/test/utils.js +31 -0
  21. package/lib/cjs/test/utils.js.map +1 -0
  22. package/lib/cjs/togetherai/index.js +92 -0
  23. package/lib/cjs/togetherai/index.js.map +1 -0
  24. package/lib/cjs/togetherai/interfaces.js +3 -0
  25. package/lib/cjs/togetherai/interfaces.js.map +1 -0
  26. package/lib/cjs/vertexai/debug.js +13 -0
  27. package/lib/cjs/vertexai/debug.js.map +1 -0
  28. package/lib/cjs/vertexai/index.js +80 -0
  29. package/lib/cjs/vertexai/index.js.map +1 -0
  30. package/lib/cjs/vertexai/models/codey-chat.js +65 -0
  31. package/lib/cjs/vertexai/models/codey-chat.js.map +1 -0
  32. package/lib/cjs/vertexai/models/codey-text.js +35 -0
  33. package/lib/cjs/vertexai/models/codey-text.js.map +1 -0
  34. package/lib/cjs/vertexai/models/gemini.js +140 -0
  35. package/lib/cjs/vertexai/models/gemini.js.map +1 -0
  36. package/lib/cjs/vertexai/models/palm-model-base.js +65 -0
  37. package/lib/cjs/vertexai/models/palm-model-base.js.map +1 -0
  38. package/lib/cjs/vertexai/models/palm2-chat.js +65 -0
  39. package/lib/cjs/vertexai/models/palm2-chat.js.map +1 -0
  40. package/lib/cjs/vertexai/models/palm2-text.js +35 -0
  41. package/lib/cjs/vertexai/models/palm2-text.js.map +1 -0
  42. package/lib/cjs/vertexai/models.js +93 -0
  43. package/lib/cjs/vertexai/models.js.map +1 -0
  44. package/lib/cjs/vertexai/utils/prompts.js +52 -0
  45. package/lib/cjs/vertexai/utils/prompts.js.map +1 -0
  46. package/lib/cjs/vertexai/utils/tensor.js +87 -0
  47. package/lib/cjs/vertexai/utils/tensor.js.map +1 -0
  48. package/lib/esm/bedrock/index.js +331 -0
  49. package/lib/esm/bedrock/index.js.map +1 -0
  50. package/lib/esm/bedrock/s3.js +53 -0
  51. package/lib/esm/bedrock/s3.js.map +1 -0
  52. package/lib/esm/huggingface_ie.js +177 -0
  53. package/lib/esm/huggingface_ie.js.map +1 -0
  54. package/lib/esm/index.js +8 -0
  55. package/lib/esm/index.js.map +1 -0
  56. package/lib/esm/openai.js +198 -0
  57. package/lib/esm/openai.js.map +1 -0
  58. package/lib/esm/replicate.js +283 -0
  59. package/lib/esm/replicate.js.map +1 -0
  60. package/lib/esm/test/TestErrorCompletionStream.js +16 -0
  61. package/lib/esm/test/TestErrorCompletionStream.js.map +1 -0
  62. package/lib/esm/test/TestValidationErrorCompletionStream.js +20 -0
  63. package/lib/esm/test/TestValidationErrorCompletionStream.js.map +1 -0
  64. package/lib/esm/test/index.js +91 -0
  65. package/lib/esm/test/index.js.map +1 -0
  66. package/lib/esm/test/utils.js +25 -0
  67. package/lib/esm/test/utils.js.map +1 -0
  68. package/lib/esm/togetherai/index.js +88 -0
  69. package/lib/esm/togetherai/index.js.map +1 -0
  70. package/lib/esm/togetherai/interfaces.js +2 -0
  71. package/lib/esm/togetherai/interfaces.js.map +1 -0
  72. package/lib/esm/vertexai/debug.js +6 -0
  73. package/lib/esm/vertexai/debug.js.map +1 -0
  74. package/lib/esm/vertexai/index.js +76 -0
  75. package/lib/esm/vertexai/index.js.map +1 -0
  76. package/lib/esm/vertexai/models/codey-chat.js +61 -0
  77. package/lib/esm/vertexai/models/codey-chat.js.map +1 -0
  78. package/lib/esm/vertexai/models/codey-text.js +31 -0
  79. package/lib/esm/vertexai/models/codey-text.js.map +1 -0
  80. package/lib/esm/vertexai/models/gemini.js +136 -0
  81. package/lib/esm/vertexai/models/gemini.js.map +1 -0
  82. package/lib/esm/vertexai/models/palm-model-base.js +61 -0
  83. package/lib/esm/vertexai/models/palm-model-base.js.map +1 -0
  84. package/lib/esm/vertexai/models/palm2-chat.js +61 -0
  85. package/lib/esm/vertexai/models/palm2-chat.js.map +1 -0
  86. package/lib/esm/vertexai/models/palm2-text.js +31 -0
  87. package/lib/esm/vertexai/models/palm2-text.js.map +1 -0
  88. package/lib/esm/vertexai/models.js +87 -0
  89. package/lib/esm/vertexai/models.js.map +1 -0
  90. package/lib/esm/vertexai/utils/prompts.js +47 -0
  91. package/lib/esm/vertexai/utils/prompts.js.map +1 -0
  92. package/lib/esm/vertexai/utils/tensor.js +82 -0
  93. package/lib/esm/vertexai/utils/tensor.js.map +1 -0
  94. package/lib/types/bedrock/index.d.ts +88 -0
  95. package/lib/types/bedrock/index.d.ts.map +1 -0
  96. package/lib/types/bedrock/s3.d.ts +20 -0
  97. package/lib/types/bedrock/s3.d.ts.map +1 -0
  98. package/lib/types/huggingface_ie.d.ts +36 -0
  99. package/lib/types/huggingface_ie.d.ts.map +1 -0
  100. package/lib/types/index.d.ts +8 -0
  101. package/lib/types/index.d.ts.map +1 -0
  102. package/lib/types/openai.d.ts +36 -0
  103. package/lib/types/openai.d.ts.map +1 -0
  104. package/lib/types/replicate.d.ts +52 -0
  105. package/lib/types/replicate.d.ts.map +1 -0
  106. package/lib/types/test/TestErrorCompletionStream.d.ts +9 -0
  107. package/lib/types/test/TestErrorCompletionStream.d.ts.map +1 -0
  108. package/lib/types/test/TestValidationErrorCompletionStream.d.ts +9 -0
  109. package/lib/types/test/TestValidationErrorCompletionStream.d.ts.map +1 -0
  110. package/lib/types/test/index.d.ts +27 -0
  111. package/lib/types/test/index.d.ts.map +1 -0
  112. package/lib/types/test/utils.d.ts +5 -0
  113. package/lib/types/test/utils.d.ts.map +1 -0
  114. package/lib/types/togetherai/index.d.ts +23 -0
  115. package/lib/types/togetherai/index.d.ts.map +1 -0
  116. package/lib/types/togetherai/interfaces.d.ts +81 -0
  117. package/lib/types/togetherai/interfaces.d.ts.map +1 -0
  118. package/lib/types/vertexai/debug.d.ts +2 -0
  119. package/lib/types/vertexai/debug.d.ts.map +1 -0
  120. package/lib/types/vertexai/index.d.ts +26 -0
  121. package/lib/types/vertexai/index.d.ts.map +1 -0
  122. package/lib/types/vertexai/models/codey-chat.d.ts +51 -0
  123. package/lib/types/vertexai/models/codey-chat.d.ts.map +1 -0
  124. package/lib/types/vertexai/models/codey-text.d.ts +39 -0
  125. package/lib/types/vertexai/models/codey-text.d.ts.map +1 -0
  126. package/lib/types/vertexai/models/gemini.d.ts +11 -0
  127. package/lib/types/vertexai/models/gemini.d.ts.map +1 -0
  128. package/lib/types/vertexai/models/palm-model-base.d.ts +47 -0
  129. package/lib/types/vertexai/models/palm-model-base.d.ts.map +1 -0
  130. package/lib/types/vertexai/models/palm2-chat.d.ts +61 -0
  131. package/lib/types/vertexai/models/palm2-chat.d.ts.map +1 -0
  132. package/lib/types/vertexai/models/palm2-text.d.ts +39 -0
  133. package/lib/types/vertexai/models/palm2-text.d.ts.map +1 -0
  134. package/lib/types/vertexai/models.d.ts +14 -0
  135. package/lib/types/vertexai/models.d.ts.map +1 -0
  136. package/lib/types/vertexai/utils/prompts.d.ts +20 -0
  137. package/lib/types/vertexai/utils/prompts.d.ts.map +1 -0
  138. package/lib/types/vertexai/utils/tensor.d.ts +6 -0
  139. package/lib/types/vertexai/utils/tensor.d.ts.map +1 -0
  140. package/package.json +72 -0
  141. package/src/bedrock/index.ts +456 -0
  142. package/src/bedrock/s3.ts +62 -0
  143. package/src/huggingface_ie.ts +269 -0
  144. package/src/index.ts +7 -0
  145. package/src/openai.ts +254 -0
  146. package/src/replicate.ts +333 -0
  147. package/src/test/TestErrorCompletionStream.ts +17 -0
  148. package/src/test/TestValidationErrorCompletionStream.ts +21 -0
  149. package/src/test/index.ts +102 -0
  150. package/src/test/utils.ts +28 -0
  151. package/src/togetherai/index.ts +105 -0
  152. package/src/togetherai/interfaces.ts +88 -0
  153. package/src/vertexai/README.md +257 -0
  154. package/src/vertexai/debug.ts +6 -0
  155. package/src/vertexai/index.ts +99 -0
  156. package/src/vertexai/models/codey-chat.ts +115 -0
  157. package/src/vertexai/models/codey-text.ts +69 -0
  158. package/src/vertexai/models/gemini.ts +152 -0
  159. package/src/vertexai/models/palm-model-base.ts +122 -0
  160. package/src/vertexai/models/palm2-chat.ts +119 -0
  161. package/src/vertexai/models/palm2-text.ts +69 -0
  162. package/src/vertexai/models.ts +104 -0
  163. package/src/vertexai/utils/prompts.ts +66 -0
  164. package/src/vertexai/utils/tensor.ts +82 -0
@@ -0,0 +1,87 @@
1
+ import { ModelType } from "@llumiverse/core";
2
+ import { GeminiModelDefinition } from "./models/gemini.js";
3
+ import { Palm2TextDefinition } from "./models/palm2-text.js";
4
+ import { Palm2ChatDefinition } from "./models/palm2-chat.js";
5
+ import { CodeyChatDefinition } from "./models/codey-chat.js";
6
+ import { CodeyTextDefinition } from "./models/codey-text.js";
7
+ const Models = {
8
+ "gemini-pro": new GeminiModelDefinition(),
9
+ "text-bison": new Palm2TextDefinition(),
10
+ "chat-bison": new Palm2ChatDefinition(),
11
+ "code-bison": new CodeyTextDefinition(),
12
+ "codechat-bison": new CodeyChatDefinition(),
13
+ };
14
+ export function getModelName(model) {
15
+ const i = model.lastIndexOf('@');
16
+ return i > -1 ? model.substring(0, i) : model;
17
+ }
18
+ export function getModelDefinition(model) {
19
+ const def = Models[getModelName(model)];
20
+ if (!def) {
21
+ throw new Error(`Unknown model ${model}`);
22
+ }
23
+ return def;
24
+ }
25
+ export function getAIModels() {
26
+ return Object.values(Models).map(m => m.model);
27
+ }
28
+ // Builtin models. VertexAI doesn't provide an API to list models. so we have to hardcode them here.
29
+ export const BuiltinModels = [
30
+ {
31
+ id: "gemini-pro",
32
+ name: "Gemini Pro",
33
+ provider: "vertexai",
34
+ owner: "google",
35
+ type: ModelType.Text,
36
+ },
37
+ {
38
+ id: "chat-bison",
39
+ name: "PaLM 2 Chat Bison",
40
+ provider: "vertexai",
41
+ owner: "google",
42
+ type: ModelType.Chat,
43
+ },
44
+ {
45
+ id: "text-bison", // versions 001, 002
46
+ name: "PaLM 2 Text Bison",
47
+ provider: "vertexai",
48
+ owner: "google",
49
+ type: ModelType.Text,
50
+ },
51
+ {
52
+ id: "code-gecko",
53
+ name: "Codey for Code Completion",
54
+ provider: "vertexai",
55
+ owner: "google",
56
+ type: ModelType.Code,
57
+ },
58
+ {
59
+ id: "code-bison",
60
+ name: "Codey for Code Generation",
61
+ provider: "vertexai",
62
+ owner: "google",
63
+ type: ModelType.Code,
64
+ },
65
+ {
66
+ id: "codechat-bison",
67
+ name: "Codey for Code Chat",
68
+ provider: "vertexai",
69
+ owner: "google",
70
+ type: ModelType.Code,
71
+ },
72
+ {
73
+ id: "tablextembedding-gecko",
74
+ name: "Gecko Text Embeddings",
75
+ provider: "vertexai",
76
+ owner: "google",
77
+ type: ModelType.Embedding,
78
+ },
79
+ {
80
+ id: "textembedding-gecko-multilingual",
81
+ name: "Gecko Multilingual Text Embeddings",
82
+ provider: "vertexai",
83
+ owner: "google",
84
+ type: ModelType.Embedding,
85
+ },
86
+ ];
87
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../../src/vertexai/models.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { PromptRole } from "@llumiverse/core";
2
+ export function getJSONSafetyNotice(schema) {
3
+ return "The answer must be a JSON object using the following JSON Schema:\n" + JSON.stringify(schema);
4
+ }
5
+ export function getPromptAsText(segments, options) {
6
+ const isChat = segments.find(m => m.role === PromptRole.assistant);
7
+ const context = [];
8
+ const content = [];
9
+ const safety = [];
10
+ for (const segment of segments) {
11
+ switch (segment.role) {
12
+ case PromptRole.user:
13
+ if (isChat) {
14
+ content.push('USER: ' + segment.content);
15
+ }
16
+ else {
17
+ content.push(segment.content);
18
+ }
19
+ break;
20
+ case PromptRole.assistant:
21
+ content.push('ASSISTANT: ' + segment.content);
22
+ break;
23
+ case PromptRole.system:
24
+ context.push(segment.content);
25
+ break;
26
+ case PromptRole.safety:
27
+ safety.push(segment.content);
28
+ break;
29
+ }
30
+ }
31
+ if (options.resultSchema) {
32
+ safety.push(getJSONSafetyNotice(options.resultSchema));
33
+ }
34
+ const out = [];
35
+ if (context.length > 0) {
36
+ out.push('CONTEXT: ' + context.join('\n'));
37
+ }
38
+ if (content.length > 0) {
39
+ const prefix = context.length > 0 && !isChat ? 'INSTRUCTION: ' : '';
40
+ out.push(prefix + content.join('\n'));
41
+ }
42
+ if (safety.length > 0) {
43
+ out.push('IMPORTANT: ' + safety.join('\n'));
44
+ }
45
+ return out.join('\n');
46
+ }
47
+ //# sourceMappingURL=prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../src/vertexai/utils/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAiB,MAAM,kBAAkB,CAAC;AAmB5E,MAAM,UAAU,mBAAmB,CAAC,MAAmB;IACnD,OAAO,qEAAqE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;AACzG,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,QAAyB,EAAE,OAAsB;IAC7E,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC;IACnE,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC7B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,KAAK,UAAU,CAAC,IAAI;gBAChB,IAAI,MAAM,EAAE,CAAC;oBACT,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC7C,CAAC;qBAAM,CAAC;oBACJ,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAClC,CAAC;gBACD,MAAM;YACV,KAAK,UAAU,CAAC,SAAS;gBACrB,OAAO,CAAC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC9C,MAAM;YACV,KAAK,UAAU,CAAC,MAAM;gBAClB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC9B,MAAM;YACV,KAAK,UAAU,CAAC,MAAM;gBAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBAC7B,MAAM;QACd,CAAC;IACL,CAAC;IAED,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,GAAG,GAAG,EAAE,CAAC;IACf,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,GAAG,CAAC,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,82 @@
1
+ function getTensorType(val) {
2
+ if (val == null) {
3
+ return null;
4
+ }
5
+ if (Array.isArray(val)) {
6
+ if (val.length > 0) {
7
+ val = val[0];
8
+ }
9
+ else {
10
+ return 'listVal';
11
+ }
12
+ }
13
+ const type = typeof val;
14
+ if (type === 'string') {
15
+ return 'stringVal';
16
+ }
17
+ if (type === 'number') {
18
+ if (val % 1 === 0) { // is interger
19
+ return 'intVal';
20
+ }
21
+ else {
22
+ return 'floatVal';
23
+ }
24
+ }
25
+ if (type === 'boolean') {
26
+ return 'boolVal';
27
+ }
28
+ if (type === 'object') {
29
+ return 'structVal';
30
+ }
31
+ return undefined;
32
+ }
33
+ export function formatArrayAsTensor(arr) {
34
+ return arr.map(item => {
35
+ const type = typeof item;
36
+ if (type === 'string' || type === 'number' || type === 'boolean') {
37
+ return item; // primitve values
38
+ }
39
+ else {
40
+ return formatObjectAsTensor(item);
41
+ }
42
+ });
43
+ }
44
+ /**
45
+ * Do not support nested array or nested object arrays
46
+ * @param obj
47
+ * @returns
48
+ */
49
+ function formatObjectAsTensor(obj, isField = false) {
50
+ const struct = {};
51
+ const keys = Object.keys(obj);
52
+ for (const key of keys) {
53
+ //console.log('###', key);
54
+ const val = obj[key];
55
+ const type = getTensorType(val);
56
+ if (type === 'structVal') {
57
+ if (Array.isArray(val)) {
58
+ struct[key] = { listVal: formatArrayAsTensor(val) };
59
+ }
60
+ else {
61
+ struct[key] = {
62
+ [type]: formatObjectAsTensor(val, true)
63
+ };
64
+ }
65
+ }
66
+ else if (type) {
67
+ struct[key] = {
68
+ [type]: val
69
+ };
70
+ }
71
+ }
72
+ return isField ? struct : {
73
+ structVal: struct
74
+ };
75
+ }
76
+ export function generateStreamingPrompt(prompt) {
77
+ return {
78
+ inputs: prompt.instances.map((inst) => formatObjectAsTensor(inst)),
79
+ parameters: formatObjectAsTensor(prompt.parameters)
80
+ };
81
+ }
82
+ //# sourceMappingURL=tensor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tensor.js","sourceRoot":"","sources":["../../../../src/vertexai/utils/tensor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,88 @@
1
+ import { Bedrock, FoundationModelSummary } from "@aws-sdk/client-bedrock";
2
+ import { BedrockRuntime, InvokeModelCommandOutput } from "@aws-sdk/client-bedrock-runtime";
3
+ import { AIModel, AbstractDriver, BuiltinProviders, Completion, DataSource, DriverOptions, ExecutionOptions, ModelSearchPayload, PromptFormats, TrainingJob, TrainingOptions } from "@llumiverse/core";
4
+ import { AwsCredentialIdentity, Provider } from "@smithy/types";
5
+ export interface BedrockModelCapabilities {
6
+ name: string;
7
+ canStream: boolean;
8
+ }
9
+ export interface BedrockDriverOptions extends DriverOptions {
10
+ /**
11
+ * The AWS region
12
+ */
13
+ region: string;
14
+ /**
15
+ * Tthe bucket name to be used for training.
16
+ * It will be created oif nto already exixts
17
+ */
18
+ training_bucket?: string;
19
+ /**
20
+ * The role ARN to be used for training
21
+ */
22
+ training_role_arn?: string;
23
+ /**
24
+ * The credentials to use to access AWS
25
+ */
26
+ credentials?: AwsCredentialIdentity | Provider<AwsCredentialIdentity>;
27
+ }
28
+ export declare class BedrockDriver extends AbstractDriver<BedrockDriverOptions, string> {
29
+ provider: BuiltinProviders;
30
+ private _executor?;
31
+ private _service?;
32
+ defaultFormat: PromptFormats;
33
+ constructor(options: BedrockDriverOptions);
34
+ getExecutor(): BedrockRuntime;
35
+ getService(): Bedrock;
36
+ extractDataFromResponse(prompt: string, response: InvokeModelCommandOutput): Completion;
37
+ requestCompletion(prompt: string, options: ExecutionOptions): Promise<Completion>;
38
+ protected canStream(options: ExecutionOptions): Promise<boolean>;
39
+ requestCompletionStream(prompt: string, options: ExecutionOptions): Promise<AsyncIterable<string>>;
40
+ preparePayload(prompt: string, options: ExecutionOptions): LLama2RequestPayload | ClaudeRequestPayload | AI21RequestPayload | CohereRequestPayload | AmazonRequestPayload;
41
+ startTraining(dataset: DataSource, options: TrainingOptions): Promise<TrainingJob>;
42
+ cancelTraining(jobId: string): Promise<TrainingJob>;
43
+ getTrainingJob(jobId: string): Promise<TrainingJob>;
44
+ validateConnection(): Promise<boolean>;
45
+ listTrainableModels(): Promise<AIModel<string>[]>;
46
+ listModels(_params: ModelSearchPayload): Promise<AIModel[]>;
47
+ _listModels(foundationFilter?: (m: FoundationModelSummary) => boolean): Promise<AIModel[]>;
48
+ generateEmbeddings(content: string, model?: string): Promise<{
49
+ embeddings: number[];
50
+ model: string;
51
+ }>;
52
+ }
53
+ interface LLama2RequestPayload {
54
+ prompt: string;
55
+ temperature: number;
56
+ top_p?: number;
57
+ max_gen_len: number;
58
+ }
59
+ interface ClaudeRequestPayload {
60
+ prompt: string;
61
+ temperature?: number;
62
+ max_tokens_to_sample?: number;
63
+ top_p?: number;
64
+ top_k?: number;
65
+ stop_sequences?: [string];
66
+ }
67
+ interface AI21RequestPayload {
68
+ prompt: string;
69
+ temperature: number;
70
+ maxTokens: number;
71
+ }
72
+ interface CohereRequestPayload {
73
+ prompt: string;
74
+ temperature: number;
75
+ max_tokens?: number;
76
+ p?: number;
77
+ }
78
+ interface AmazonRequestPayload {
79
+ inputText: string;
80
+ textGenerationConfig: {
81
+ temperature: number;
82
+ topP: number;
83
+ maxTokenCount: number;
84
+ stopSequences: [string];
85
+ };
86
+ }
87
+ export {};
88
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bedrock/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /// <reference types="node" resolution-mode="require"/>
2
+ /// <reference types="node" resolution-mode="require"/>
3
+ import { S3Client } from "@aws-sdk/client-s3";
4
+ import { Progress } from "@aws-sdk/lib-storage";
5
+ import { Readable } from "stream";
6
+ export declare function doesBucketExist(s3: S3Client, bucketName: string): Promise<boolean>;
7
+ export declare function createBucket(s3: S3Client, bucketName: string): Promise<import("@aws-sdk/client-s3").CreateBucketCommandOutput>;
8
+ export declare function tryCreateBucket(s3: S3Client, bucketName: string): Promise<import("@aws-sdk/client-s3").CreateBucketCommandOutput | undefined>;
9
+ export declare function uploadFile(s3: S3Client, source: Readable | string | Buffer, bucketName: string, file: string, onProgress?: (progress: Progress) => void): Promise<import("@aws-sdk/client-s3").CompleteMultipartUploadCommandOutput>;
10
+ /**
11
+ * Create the bucket if not already exists and then upload the file.
12
+ * @param s3
13
+ * @param source
14
+ * @param bucketName
15
+ * @param file
16
+ * @param onProgress
17
+ * @returns
18
+ */
19
+ export declare function forceUploadFile(s3: S3Client, source: Readable | string | Buffer, bucketName: string, file: string, onProgress?: (progress: Progress) => void): Promise<import("@aws-sdk/client-s3").CompleteMultipartUploadCommandOutput>;
20
+ //# sourceMappingURL=s3.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3.d.ts","sourceRoot":"","sources":["../../../src/bedrock/s3.ts"],"names":[],"mappings":";;AAAA,OAAO,EAA0C,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtF,OAAO,EAAE,QAAQ,EAAU,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAElC,wBAAsB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUxF;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mEAI5D;AAGD,wBAAsB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,+EAKrE;AAGD,wBAAsB,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,8EAe7J;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,8EAIlK"}
@@ -0,0 +1,36 @@
1
+ import { AIModel, AbstractDriver, BuiltinProviders, DriverOptions, ExecutionOptions, PromptFormats } from "@llumiverse/core";
2
+ import { HfInferenceEndpoint } from "@huggingface/inference";
3
+ import { FetchClient } from "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
+ service: FetchClient;
10
+ provider: BuiltinProviders;
11
+ _executor?: HfInferenceEndpoint;
12
+ defaultFormat: PromptFormats;
13
+ constructor(options: HuggingFaceIEDriverOptions);
14
+ getModelURLEndpoint(modelId: string): Promise<{
15
+ url: string;
16
+ status: string;
17
+ }>;
18
+ getExecutor(model: string): Promise<HfInferenceEndpoint>;
19
+ requestCompletionStream(prompt: string, options: ExecutionOptions): Promise<AsyncIterable<string>>;
20
+ requestCompletion(prompt: string, options: ExecutionOptions): Promise<{
21
+ result: string;
22
+ token_usage: {
23
+ result: number;
24
+ prompt: number;
25
+ total: number;
26
+ };
27
+ }>;
28
+ listTrainableModels(): Promise<AIModel<string>[]>;
29
+ listModels(): Promise<AIModel[]>;
30
+ validateConnection(): Promise<boolean>;
31
+ generateEmbeddings(content: string, model?: string): Promise<{
32
+ embeddings: number[];
33
+ model: string;
34
+ }>;
35
+ }
36
+ //# 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,OAAO,EAEP,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,aAAa,EAChB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAEH,mBAAmB,EAEtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,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,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,mBAAmC;IAC3C,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,aAAa,gBAAgC;gBAGzC,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;IAmBzB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB;IAiBjE,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB;;;;;;;;IAwB3D,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAIjD,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAehC,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAStC,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;CAK/G"}
@@ -0,0 +1,8 @@
1
+ export * from "./bedrock/index.js";
2
+ export * from "./huggingface_ie.js";
3
+ export * from "./openai.js";
4
+ export * from "./replicate.js";
5
+ export * from "./vertexai/index.js";
6
+ export * from "./togetherai/index.js";
7
+ export * from "./test/index.js";
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { AIModel, AbstractDriver, BuiltinProviders, Completion, DataSource, DriverOptions, ExecutionOptions, ModelType, PromptFormats, PromptSegment, TrainingJob, TrainingOptions, TrainingPromptOptions } from "@llumiverse/core";
2
+ import OpenAI from "openai";
3
+ export interface OpenAIDriverOptions extends DriverOptions {
4
+ apiKey: string;
5
+ }
6
+ export declare class OpenAIDriver extends AbstractDriver<OpenAIDriverOptions, OpenAI.Chat.Completions.ChatCompletionMessageParam[]> {
7
+ inputContentTypes: string[];
8
+ generatedContentTypes: string[];
9
+ service: OpenAI;
10
+ provider: BuiltinProviders;
11
+ defaultFormat: PromptFormats;
12
+ constructor(opts: OpenAIDriverOptions);
13
+ createPrompt(segments: PromptSegment[], opts: ExecutionOptions): OpenAI.Chat.Completions.ChatCompletionMessageParam[];
14
+ extractDataFromResponse(options: ExecutionOptions, result: OpenAI.Chat.Completions.ChatCompletion): Completion;
15
+ requestCompletionStream(prompt: OpenAI.Chat.Completions.ChatCompletionMessageParam[], options: ExecutionOptions): Promise<any>;
16
+ requestCompletion(prompt: OpenAI.Chat.Completions.ChatCompletionMessageParam[], options: ExecutionOptions): Promise<any>;
17
+ createTrainingPrompt(options: TrainingPromptOptions): string;
18
+ startTraining(dataset: DataSource, options: TrainingOptions): Promise<TrainingJob>;
19
+ cancelTraining(jobId: string): Promise<TrainingJob>;
20
+ getTrainingJob(jobId: string): Promise<TrainingJob>;
21
+ validateConnection(): Promise<boolean>;
22
+ listTrainableModels(): Promise<AIModel<string>[]>;
23
+ listModels(): Promise<AIModel[]>;
24
+ _listModels(filter?: (m: OpenAI.Models.Model) => boolean): Promise<{
25
+ id: string;
26
+ name: string;
27
+ provider: BuiltinProviders;
28
+ owner: string;
29
+ type: ModelType;
30
+ }[]>;
31
+ generateEmbeddings(content: string, model?: string): Promise<{
32
+ embeddings: number[];
33
+ model: string;
34
+ }>;
35
+ }
36
+ //# sourceMappingURL=openai.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../src/openai.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,aAAa,EACb,gBAAgB,EAEhB,SAAS,EACT,aAAa,EACb,aAAa,EACb,WAAW,EAEX,eAAe,EACf,qBAAqB,EACxB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAW5B,MAAM,WAAW,mBAAoB,SAAQ,aAAa;IACtD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,YAAa,SAAQ,cAAc,CAC5C,mBAAmB,EACnB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE,CACvD;IACG,iBAAiB,EAAE,MAAM,EAAE,CAAkB;IAC7C,qBAAqB,EAAE,MAAM,EAAE,CAAkB;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,mBAA2B;IACnC,aAAa,gBAAwB;gBAEzB,IAAI,EAAE,mBAAmB;IAOrC,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE;IAKrH,uBAAuB,CACnB,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,GAC/C,UAAU;IA4BP,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IAkC9H,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC;IA0B9H,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM;IAStD,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAgBlF,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAKnD,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAOnD,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAS5C,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAI3C,UAAU,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAIhC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO;;;;;;;IAaxD,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAE,MAAiC,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;CAezI"}
@@ -0,0 +1,52 @@
1
+ import { AIModel, AbstractDriver, BuiltinProviders, Completion, DataSource, DriverOptions, ExecutionOptions, ModelSearchPayload, PromptFormats, 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
+ provider: BuiltinProviders;
8
+ service: Replicate;
9
+ defaultFormat: PromptFormats;
10
+ static parseModelId(modelId: string): {
11
+ owner: string;
12
+ model: string;
13
+ version: string;
14
+ };
15
+ constructor(options: ReplicateDriverOptions);
16
+ extractDataFromResponse(prompt: string, response: Prediction): Completion;
17
+ requestCompletionStream(prompt: string, options: ExecutionOptions): Promise<AsyncIterable<string>>;
18
+ requestCompletion(prompt: string, options: ExecutionOptions): Promise<{
19
+ result: any;
20
+ token_usage: {
21
+ result: any;
22
+ prompt: number;
23
+ total: any;
24
+ };
25
+ }>;
26
+ startTraining(dataset: DataSource, options: TrainingOptions): Promise<TrainingJob>;
27
+ /**
28
+ * This method is not returning a consistent TrainingJob like the one returned by startTraining
29
+ * Instead of returning the full model name `owner/model:version` it returns only the version `version
30
+ * @param jobId
31
+ * @returns
32
+ */
33
+ cancelTraining(jobId: string): Promise<TrainingJob>;
34
+ /**
35
+ * This method is not returning a consistent TrainingJob like the one returned by startTraining
36
+ * Instead of returning the full model name `owner/model:version` it returns only the version `version
37
+ * @param jobId
38
+ * @returns
39
+ */
40
+ getTrainingJob(jobId: string): Promise<TrainingJob>;
41
+ validateConnection(): Promise<boolean>;
42
+ _listTrainableModels(): Promise<AIModel[]>;
43
+ listTrainableModels(): Promise<AIModel[]>;
44
+ listModels(params: ModelSearchPayload): Promise<AIModel[]>;
45
+ listModelVersions(owner: string, model: string): Promise<AIModel[]>;
46
+ searchModels(params: ModelSearchPayload): Promise<AIModel[]>;
47
+ generateEmbeddings(content: string, model?: string): Promise<{
48
+ embeddings: number[];
49
+ model: string;
50
+ }>;
51
+ }
52
+ //# 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,gBAAgB,EAChB,UAAU,EACV,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,WAAW,EAEX,eAAe,EAClB,MAAM,kBAAkB,CAAC;AAG1B,OAAO,SAAS,EAAE,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAelD,MAAM,WAAW,sBAAuB,SAAQ,aAAa;IACzD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,eAAgB,SAAQ,cAAc,CAAC,aAAa,EAAE,MAAM,CAAC;IACtE,QAAQ,mBAA8B;IACtC,OAAO,EAAE,SAAS,CAAC;IACnB,aAAa,gBAAgC;IAE7C,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM;;;;;gBAWvB,OAAO,EAAE,sBAAsB;IAO3C,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,GAAG,UAAU;IAYnE,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAwClG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB;;;;;;;;IAkC3D,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,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAY1D,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;IAuBlE,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;CAKzG"}
@@ -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/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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestValidationErrorCompletionStream.d.ts","sourceRoot":"","sources":["../../../src/test/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,27 @@
1
+ import { AIModel, CompletionStream, Driver, ExecutionOptions, ExecutionResponse, PromptOptions, 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(): string;
11
+ startTraining(): Promise<TrainingJob>;
12
+ cancelTraining(): Promise<TrainingJob>;
13
+ getTrainingJob(_jobId: string): Promise<TrainingJob>;
14
+ createPrompt(segments: PromptSegment[], _opts: PromptOptions): 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<{
21
+ embeddings: number[];
22
+ model: string;
23
+ }>;
24
+ executeError(segments: PromptSegment[], _options: ExecutionOptions): Promise<ExecutionResponse<PromptSegment[]>>;
25
+ executeValidationError(segments: PromptSegment[], _options: ExecutionOptions): Promise<ExecutionResponse<PromptSegment[]>>;
26
+ }
27
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/test/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAiB,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAa,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAK/K,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,MAAM;IAI9B,aAAa,IAAI,OAAO,CAAC,WAAW,CAAC;IAIrC,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAItC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIpD,YAAY,CAAC,QAAQ,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,aAAa,EAAE;IAG9E,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;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;IAKjE,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/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,sCAexE;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,oBAE/B"}
@@ -0,0 +1,23 @@
1
+ import { AIModel, AbstractDriver, Completion, DriverOptions, ExecutionOptions, PromptFormats } from "@llumiverse/core";
2
+ import { FetchClient } from "api-fetch-client";
3
+ interface TogetherAIDriverOptions extends DriverOptions {
4
+ apiKey: string;
5
+ }
6
+ export declare class TogetherAIDriver extends AbstractDriver<TogetherAIDriverOptions, string> {
7
+ provider: string;
8
+ apiKey: string;
9
+ defaultFormat: PromptFormats;
10
+ fetchClient: FetchClient;
11
+ constructor(options: TogetherAIDriverOptions);
12
+ requestCompletion(prompt: string, options: ExecutionOptions): Promise<Completion<any>>;
13
+ requestCompletionStream(prompt: string, options: ExecutionOptions): Promise<AsyncIterable<string>>;
14
+ listModels(): Promise<AIModel<string>[]>;
15
+ listTrainableModels(): Promise<AIModel<string>[]>;
16
+ validateConnection(): Promise<boolean>;
17
+ generateEmbeddings(content: string, model?: string | undefined): Promise<{
18
+ embeddings: number[];
19
+ model: string;
20
+ }>;
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,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACvH,OAAO,EAAE,WAAW,EAAmB,MAAM,kBAAkB,CAAC;AAGhE,UAAU,uBAAwB,SAAQ,aAAa;IACnD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,qBAAa,gBAAiB,SAAQ,cAAc,CAAC,uBAAuB,EAAE,MAAM,CAAC;IACjF,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,aAAa,CAAC;IAC7B,WAAW,EAAE,WAAW,CAAC;gBAEb,OAAO,EAAE,uBAAuB;IAUtC,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAsBtF,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IA6BlG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAkB9C,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;IAGjD,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAItC,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;CAIrH"}