@llumiverse/drivers 0.24.0 → 1.0.0-dev.20260202.145450Z

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 (227) hide show
  1. package/package.json +3 -3
  2. package/src/bedrock/index.ts +109 -2
  3. package/src/vertexai/index.ts +37 -18
  4. package/src/vertexai/models/claude.ts +146 -2
  5. package/lib/cjs/adobe/firefly.js +0 -120
  6. package/lib/cjs/adobe/firefly.js.map +0 -1
  7. package/lib/cjs/azure/azure_foundry.js +0 -432
  8. package/lib/cjs/azure/azure_foundry.js.map +0 -1
  9. package/lib/cjs/bedrock/converse.js +0 -285
  10. package/lib/cjs/bedrock/converse.js.map +0 -1
  11. package/lib/cjs/bedrock/index.js +0 -1091
  12. package/lib/cjs/bedrock/index.js.map +0 -1
  13. package/lib/cjs/bedrock/nova-image-payload.js +0 -207
  14. package/lib/cjs/bedrock/nova-image-payload.js.map +0 -1
  15. package/lib/cjs/bedrock/payloads.js +0 -3
  16. package/lib/cjs/bedrock/payloads.js.map +0 -1
  17. package/lib/cjs/bedrock/s3.js +0 -107
  18. package/lib/cjs/bedrock/s3.js.map +0 -1
  19. package/lib/cjs/bedrock/twelvelabs.js +0 -87
  20. package/lib/cjs/bedrock/twelvelabs.js.map +0 -1
  21. package/lib/cjs/groq/index.js +0 -323
  22. package/lib/cjs/groq/index.js.map +0 -1
  23. package/lib/cjs/huggingface_ie.js +0 -201
  24. package/lib/cjs/huggingface_ie.js.map +0 -1
  25. package/lib/cjs/index.js +0 -31
  26. package/lib/cjs/index.js.map +0 -1
  27. package/lib/cjs/mistral/index.js +0 -173
  28. package/lib/cjs/mistral/index.js.map +0 -1
  29. package/lib/cjs/mistral/types.js +0 -83
  30. package/lib/cjs/mistral/types.js.map +0 -1
  31. package/lib/cjs/openai/azure_openai.js +0 -72
  32. package/lib/cjs/openai/azure_openai.js.map +0 -1
  33. package/lib/cjs/openai/index.js +0 -665
  34. package/lib/cjs/openai/index.js.map +0 -1
  35. package/lib/cjs/openai/openai.js +0 -21
  36. package/lib/cjs/openai/openai.js.map +0 -1
  37. package/lib/cjs/openai/openai_compatible.js +0 -62
  38. package/lib/cjs/openai/openai_compatible.js.map +0 -1
  39. package/lib/cjs/openai/openai_format.js +0 -131
  40. package/lib/cjs/openai/openai_format.js.map +0 -1
  41. package/lib/cjs/package.json +0 -3
  42. package/lib/cjs/replicate.js +0 -275
  43. package/lib/cjs/replicate.js.map +0 -1
  44. package/lib/cjs/test-driver/TestErrorCompletionStream.js +0 -20
  45. package/lib/cjs/test-driver/TestErrorCompletionStream.js.map +0 -1
  46. package/lib/cjs/test-driver/TestValidationErrorCompletionStream.js +0 -24
  47. package/lib/cjs/test-driver/TestValidationErrorCompletionStream.js.map +0 -1
  48. package/lib/cjs/test-driver/index.js +0 -109
  49. package/lib/cjs/test-driver/index.js.map +0 -1
  50. package/lib/cjs/test-driver/utils.js +0 -30
  51. package/lib/cjs/test-driver/utils.js.map +0 -1
  52. package/lib/cjs/togetherai/index.js +0 -126
  53. package/lib/cjs/togetherai/index.js.map +0 -1
  54. package/lib/cjs/togetherai/interfaces.js +0 -3
  55. package/lib/cjs/togetherai/interfaces.js.map +0 -1
  56. package/lib/cjs/vertexai/debug.js +0 -12
  57. package/lib/cjs/vertexai/debug.js.map +0 -1
  58. package/lib/cjs/vertexai/embeddings/embeddings-image.js +0 -27
  59. package/lib/cjs/vertexai/embeddings/embeddings-image.js.map +0 -1
  60. package/lib/cjs/vertexai/embeddings/embeddings-text.js +0 -23
  61. package/lib/cjs/vertexai/embeddings/embeddings-text.js.map +0 -1
  62. package/lib/cjs/vertexai/index.js +0 -576
  63. package/lib/cjs/vertexai/index.js.map +0 -1
  64. package/lib/cjs/vertexai/models/claude.js +0 -485
  65. package/lib/cjs/vertexai/models/claude.js.map +0 -1
  66. package/lib/cjs/vertexai/models/gemini.js +0 -871
  67. package/lib/cjs/vertexai/models/gemini.js.map +0 -1
  68. package/lib/cjs/vertexai/models/imagen.js +0 -303
  69. package/lib/cjs/vertexai/models/imagen.js.map +0 -1
  70. package/lib/cjs/vertexai/models/llama.js +0 -183
  71. package/lib/cjs/vertexai/models/llama.js.map +0 -1
  72. package/lib/cjs/vertexai/models.js +0 -35
  73. package/lib/cjs/vertexai/models.js.map +0 -1
  74. package/lib/cjs/watsonx/index.js +0 -161
  75. package/lib/cjs/watsonx/index.js.map +0 -1
  76. package/lib/cjs/watsonx/interfaces.js +0 -3
  77. package/lib/cjs/watsonx/interfaces.js.map +0 -1
  78. package/lib/cjs/xai/index.js +0 -65
  79. package/lib/cjs/xai/index.js.map +0 -1
  80. package/lib/esm/adobe/firefly.js +0 -116
  81. package/lib/esm/adobe/firefly.js.map +0 -1
  82. package/lib/esm/azure/azure_foundry.js +0 -426
  83. package/lib/esm/azure/azure_foundry.js.map +0 -1
  84. package/lib/esm/bedrock/converse.js +0 -278
  85. package/lib/esm/bedrock/converse.js.map +0 -1
  86. package/lib/esm/bedrock/index.js +0 -1087
  87. package/lib/esm/bedrock/index.js.map +0 -1
  88. package/lib/esm/bedrock/nova-image-payload.js +0 -203
  89. package/lib/esm/bedrock/nova-image-payload.js.map +0 -1
  90. package/lib/esm/bedrock/payloads.js +0 -2
  91. package/lib/esm/bedrock/payloads.js.map +0 -1
  92. package/lib/esm/bedrock/s3.js +0 -99
  93. package/lib/esm/bedrock/s3.js.map +0 -1
  94. package/lib/esm/bedrock/twelvelabs.js +0 -84
  95. package/lib/esm/bedrock/twelvelabs.js.map +0 -1
  96. package/lib/esm/groq/index.js +0 -316
  97. package/lib/esm/groq/index.js.map +0 -1
  98. package/lib/esm/huggingface_ie.js +0 -197
  99. package/lib/esm/huggingface_ie.js.map +0 -1
  100. package/lib/esm/index.js +0 -15
  101. package/lib/esm/index.js.map +0 -1
  102. package/lib/esm/mistral/index.js +0 -169
  103. package/lib/esm/mistral/index.js.map +0 -1
  104. package/lib/esm/mistral/types.js +0 -80
  105. package/lib/esm/mistral/types.js.map +0 -1
  106. package/lib/esm/openai/azure_openai.js +0 -68
  107. package/lib/esm/openai/azure_openai.js.map +0 -1
  108. package/lib/esm/openai/index.js +0 -660
  109. package/lib/esm/openai/index.js.map +0 -1
  110. package/lib/esm/openai/openai.js +0 -14
  111. package/lib/esm/openai/openai.js.map +0 -1
  112. package/lib/esm/openai/openai_compatible.js +0 -55
  113. package/lib/esm/openai/openai_compatible.js.map +0 -1
  114. package/lib/esm/openai/openai_format.js +0 -127
  115. package/lib/esm/openai/openai_format.js.map +0 -1
  116. package/lib/esm/replicate.js +0 -268
  117. package/lib/esm/replicate.js.map +0 -1
  118. package/lib/esm/test-driver/TestErrorCompletionStream.js +0 -16
  119. package/lib/esm/test-driver/TestErrorCompletionStream.js.map +0 -1
  120. package/lib/esm/test-driver/TestValidationErrorCompletionStream.js +0 -20
  121. package/lib/esm/test-driver/TestValidationErrorCompletionStream.js.map +0 -1
  122. package/lib/esm/test-driver/index.js +0 -91
  123. package/lib/esm/test-driver/index.js.map +0 -1
  124. package/lib/esm/test-driver/utils.js +0 -25
  125. package/lib/esm/test-driver/utils.js.map +0 -1
  126. package/lib/esm/togetherai/index.js +0 -122
  127. package/lib/esm/togetherai/index.js.map +0 -1
  128. package/lib/esm/togetherai/interfaces.js +0 -2
  129. package/lib/esm/togetherai/interfaces.js.map +0 -1
  130. package/lib/esm/vertexai/debug.js +0 -6
  131. package/lib/esm/vertexai/debug.js.map +0 -1
  132. package/lib/esm/vertexai/embeddings/embeddings-image.js +0 -24
  133. package/lib/esm/vertexai/embeddings/embeddings-image.js.map +0 -1
  134. package/lib/esm/vertexai/embeddings/embeddings-text.js +0 -20
  135. package/lib/esm/vertexai/embeddings/embeddings-text.js.map +0 -1
  136. package/lib/esm/vertexai/index.js +0 -571
  137. package/lib/esm/vertexai/index.js.map +0 -1
  138. package/lib/esm/vertexai/models/claude.js +0 -479
  139. package/lib/esm/vertexai/models/claude.js.map +0 -1
  140. package/lib/esm/vertexai/models/gemini.js +0 -866
  141. package/lib/esm/vertexai/models/gemini.js.map +0 -1
  142. package/lib/esm/vertexai/models/imagen.js +0 -299
  143. package/lib/esm/vertexai/models/imagen.js.map +0 -1
  144. package/lib/esm/vertexai/models/llama.js +0 -179
  145. package/lib/esm/vertexai/models/llama.js.map +0 -1
  146. package/lib/esm/vertexai/models.js +0 -32
  147. package/lib/esm/vertexai/models.js.map +0 -1
  148. package/lib/esm/watsonx/index.js +0 -157
  149. package/lib/esm/watsonx/index.js.map +0 -1
  150. package/lib/esm/watsonx/interfaces.js +0 -2
  151. package/lib/esm/watsonx/interfaces.js.map +0 -1
  152. package/lib/esm/xai/index.js +0 -58
  153. package/lib/esm/xai/index.js.map +0 -1
  154. package/lib/types/adobe/firefly.d.ts +0 -30
  155. package/lib/types/adobe/firefly.d.ts.map +0 -1
  156. package/lib/types/azure/azure_foundry.d.ts +0 -52
  157. package/lib/types/azure/azure_foundry.d.ts.map +0 -1
  158. package/lib/types/bedrock/converse.d.ts +0 -9
  159. package/lib/types/bedrock/converse.d.ts.map +0 -1
  160. package/lib/types/bedrock/index.d.ts +0 -68
  161. package/lib/types/bedrock/index.d.ts.map +0 -1
  162. package/lib/types/bedrock/nova-image-payload.d.ts +0 -74
  163. package/lib/types/bedrock/nova-image-payload.d.ts.map +0 -1
  164. package/lib/types/bedrock/payloads.d.ts +0 -12
  165. package/lib/types/bedrock/payloads.d.ts.map +0 -1
  166. package/lib/types/bedrock/s3.d.ts +0 -23
  167. package/lib/types/bedrock/s3.d.ts.map +0 -1
  168. package/lib/types/bedrock/twelvelabs.d.ts +0 -50
  169. package/lib/types/bedrock/twelvelabs.d.ts.map +0 -1
  170. package/lib/types/groq/index.d.ts +0 -27
  171. package/lib/types/groq/index.d.ts.map +0 -1
  172. package/lib/types/huggingface_ie.d.ts +0 -35
  173. package/lib/types/huggingface_ie.d.ts.map +0 -1
  174. package/lib/types/index.d.ts +0 -15
  175. package/lib/types/index.d.ts.map +0 -1
  176. package/lib/types/mistral/index.d.ts +0 -25
  177. package/lib/types/mistral/index.d.ts.map +0 -1
  178. package/lib/types/mistral/types.d.ts +0 -132
  179. package/lib/types/mistral/types.d.ts.map +0 -1
  180. package/lib/types/openai/azure_openai.d.ts +0 -25
  181. package/lib/types/openai/azure_openai.d.ts.map +0 -1
  182. package/lib/types/openai/index.d.ts +0 -31
  183. package/lib/types/openai/index.d.ts.map +0 -1
  184. package/lib/types/openai/openai.d.ts +0 -15
  185. package/lib/types/openai/openai.d.ts.map +0 -1
  186. package/lib/types/openai/openai_compatible.d.ts +0 -26
  187. package/lib/types/openai/openai_compatible.d.ts.map +0 -1
  188. package/lib/types/openai/openai_format.d.ts +0 -21
  189. package/lib/types/openai/openai_format.d.ts.map +0 -1
  190. package/lib/types/replicate.d.ts +0 -48
  191. package/lib/types/replicate.d.ts.map +0 -1
  192. package/lib/types/test-driver/TestErrorCompletionStream.d.ts +0 -9
  193. package/lib/types/test-driver/TestErrorCompletionStream.d.ts.map +0 -1
  194. package/lib/types/test-driver/TestValidationErrorCompletionStream.d.ts +0 -9
  195. package/lib/types/test-driver/TestValidationErrorCompletionStream.d.ts.map +0 -1
  196. package/lib/types/test-driver/index.d.ts +0 -24
  197. package/lib/types/test-driver/index.d.ts.map +0 -1
  198. package/lib/types/test-driver/utils.d.ts +0 -5
  199. package/lib/types/test-driver/utils.d.ts.map +0 -1
  200. package/lib/types/togetherai/index.d.ts +0 -23
  201. package/lib/types/togetherai/index.d.ts.map +0 -1
  202. package/lib/types/togetherai/interfaces.d.ts +0 -96
  203. package/lib/types/togetherai/interfaces.d.ts.map +0 -1
  204. package/lib/types/vertexai/debug.d.ts +0 -2
  205. package/lib/types/vertexai/debug.d.ts.map +0 -1
  206. package/lib/types/vertexai/embeddings/embeddings-image.d.ts +0 -11
  207. package/lib/types/vertexai/embeddings/embeddings-image.d.ts.map +0 -1
  208. package/lib/types/vertexai/embeddings/embeddings-text.d.ts +0 -10
  209. package/lib/types/vertexai/embeddings/embeddings-text.d.ts.map +0 -1
  210. package/lib/types/vertexai/index.d.ts +0 -65
  211. package/lib/types/vertexai/index.d.ts.map +0 -1
  212. package/lib/types/vertexai/models/claude.d.ts +0 -28
  213. package/lib/types/vertexai/models/claude.d.ts.map +0 -1
  214. package/lib/types/vertexai/models/gemini.d.ts +0 -18
  215. package/lib/types/vertexai/models/gemini.d.ts.map +0 -1
  216. package/lib/types/vertexai/models/imagen.d.ts +0 -75
  217. package/lib/types/vertexai/models/imagen.d.ts.map +0 -1
  218. package/lib/types/vertexai/models/llama.d.ts +0 -20
  219. package/lib/types/vertexai/models/llama.d.ts.map +0 -1
  220. package/lib/types/vertexai/models.d.ts +0 -15
  221. package/lib/types/vertexai/models.d.ts.map +0 -1
  222. package/lib/types/watsonx/index.d.ts +0 -27
  223. package/lib/types/watsonx/index.d.ts.map +0 -1
  224. package/lib/types/watsonx/interfaces.d.ts +0 -65
  225. package/lib/types/watsonx/interfaces.d.ts.map +0 -1
  226. package/lib/types/xai/index.d.ts +0 -18
  227. package/lib/types/xai/index.d.ts.map +0 -1
@@ -1,285 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.converseConcatMessages = converseConcatMessages;
4
- exports.converseSystemToMessages = converseSystemToMessages;
5
- exports.converseRemoveJSONprefill = converseRemoveJSONprefill;
6
- exports.converseJSONprefill = converseJSONprefill;
7
- exports.formatConversePrompt = formatConversePrompt;
8
- const core_1 = require("@llumiverse/core");
9
- const core_2 = require("@llumiverse/core");
10
- const client_bedrock_runtime_1 = require("@aws-sdk/client-bedrock-runtime");
11
- const s3_js_1 = require("./s3.js");
12
- function roleConversion(role) {
13
- return role === core_2.PromptRole.assistant ? client_bedrock_runtime_1.ConversationRole.ASSISTANT : client_bedrock_runtime_1.ConversationRole.USER;
14
- }
15
- function mimeToImageType(mime) {
16
- if (mime.startsWith("image/")) {
17
- return mime.split("/")[1];
18
- }
19
- return "png";
20
- }
21
- function mimeToDocType(mime) {
22
- if (mime.startsWith("application/") || mime.startsWith("text/")) {
23
- return mime.split("/")[1];
24
- }
25
- return "txt";
26
- }
27
- function mimeToVideoType(mime) {
28
- if (mime.startsWith("video/")) {
29
- return mime.split("/")[1];
30
- }
31
- return "mp4";
32
- }
33
- async function processFile(f, mode) {
34
- const source = await f.getStream();
35
- //Image file - "png" | "jpeg" | "gif" | "webp"
36
- if (f.mime_type && f.mime_type.startsWith("image")) {
37
- const imageBlock = {
38
- image: {
39
- format: mimeToImageType(f.mime_type),
40
- source: { bytes: await (0, core_1.readStreamAsUint8Array)(source) },
41
- }
42
- };
43
- return mode === 'content'
44
- ? imageBlock
45
- : imageBlock;
46
- }
47
- //Document file - "pdf | csv | doc | docx | xls | xlsx | html | txt | md"
48
- else if (f.mime_type && (f.mime_type.startsWith("text") || f.mime_type?.startsWith("application"))) {
49
- // Handle JSON files specially
50
- if (f.mime_type === "application/json" || (f.name && f.name.endsWith('.json'))) {
51
- const jsonContent = await (0, core_1.readStreamAsString)(source);
52
- try {
53
- const parsedJson = JSON.parse(jsonContent);
54
- if (mode === 'tool') {
55
- return { json: parsedJson };
56
- }
57
- else {
58
- // ContentBlock doesn't support JSON, so treat as text
59
- return { text: jsonContent };
60
- }
61
- }
62
- catch (error) {
63
- const textBlock = { text: jsonContent };
64
- return mode === 'content'
65
- ? textBlock
66
- : textBlock;
67
- }
68
- }
69
- else {
70
- const documentBlock = {
71
- document: {
72
- format: mimeToDocType(f.mime_type),
73
- name: f.name,
74
- source: { bytes: await (0, core_1.readStreamAsUint8Array)(source) },
75
- },
76
- };
77
- return mode === 'content'
78
- ? documentBlock
79
- : documentBlock;
80
- }
81
- }
82
- //Video file - "mov | mkv | mp4 | webm | flv | mpeg | mpg | wmv | three_gp"
83
- else if (f.mime_type && f.mime_type.startsWith("video")) {
84
- let url_string = (await f.getURL()).toLowerCase();
85
- let url_format = new URL(url_string);
86
- if (url_format.hostname.endsWith("amazonaws.com") &&
87
- (url_format.hostname.startsWith("s3.") || url_format.hostname.includes(".s3."))) {
88
- //Convert to s3:// format
89
- const parsedUrl = (0, s3_js_1.parseS3UrlToUri)(new URL(url_string));
90
- url_string = parsedUrl;
91
- url_format = new URL(parsedUrl);
92
- }
93
- const videoBlock = url_format.protocol === "s3:" ? {
94
- video: {
95
- format: mimeToVideoType(f.mime_type),
96
- source: {
97
- s3Location: {
98
- uri: url_string, //S3 URL
99
- //bucketOwner: We don't have this additional information.
100
- }
101
- },
102
- },
103
- } : {
104
- video: {
105
- format: mimeToVideoType(f.mime_type),
106
- source: { bytes: await (0, core_1.readStreamAsUint8Array)(source) },
107
- },
108
- };
109
- return mode === 'content'
110
- ? videoBlock
111
- : videoBlock;
112
- }
113
- //Fallback, send as text
114
- else {
115
- const textBlock = { text: await (0, core_1.readStreamAsString)(source) };
116
- return mode === 'content'
117
- ? textBlock
118
- : textBlock;
119
- }
120
- }
121
- async function processFileToContentBlock(f) {
122
- try {
123
- return processFile(f, 'content');
124
- }
125
- catch (error) {
126
- throw new Error(`Failed to process file ${f.name} for prompt: ${error instanceof Error ? error.message : String(error)}`);
127
- }
128
- }
129
- async function processFileToToolContentBlock(f) {
130
- try {
131
- return processFile(f, 'tool');
132
- }
133
- catch (error) {
134
- throw new Error(`Failed to process file ${f.name} for tool response: ${error instanceof Error ? error.message : String(error)}`);
135
- }
136
- }
137
- function converseConcatMessages(messages) {
138
- if (!messages || messages.length === 0)
139
- return [];
140
- const needsMerging = messages.some((message, i) => i < messages.length - 1 && message.role === messages[i + 1].role);
141
- // If no merging needed, return original array
142
- if (!needsMerging) {
143
- return messages;
144
- }
145
- const result = [];
146
- let currentMessage = { ...messages[0] };
147
- for (let i = 1; i < messages.length; i++) {
148
- if (currentMessage.role === messages[i].role) {
149
- // Same role - concatenate content
150
- currentMessage.content = (currentMessage.content || []).concat(...(messages[i].content || []));
151
- }
152
- else {
153
- // Different role - push current and start new
154
- result.push(currentMessage);
155
- currentMessage = { ...messages[i] };
156
- }
157
- }
158
- result.push(currentMessage);
159
- return result;
160
- }
161
- function converseSystemToMessages(system) {
162
- return {
163
- content: [{ text: system.map(system => system.text).join('\n').trim() }],
164
- role: client_bedrock_runtime_1.ConversationRole.USER
165
- };
166
- }
167
- function converseRemoveJSONprefill(messages) {
168
- //Remove the "```json" stop message
169
- if (messages && messages.length > 0) {
170
- if (messages[messages.length - 1].content?.[0].text === "```json") {
171
- messages.pop();
172
- }
173
- }
174
- return messages ?? [];
175
- }
176
- function converseJSONprefill(messages) {
177
- if (!messages) {
178
- messages = [];
179
- }
180
- //prefill the json
181
- messages.push({
182
- content: [{ text: "```json" }],
183
- role: client_bedrock_runtime_1.ConversationRole.ASSISTANT,
184
- });
185
- return messages;
186
- }
187
- // Used to ignore unsupported roles. Typically these are things like image specific roles.
188
- const unsupportedRoles = [
189
- core_2.PromptRole.negative,
190
- core_2.PromptRole.mask,
191
- ];
192
- async function formatConversePrompt(segments, options) {
193
- //Non-const for concat
194
- let system = [];
195
- const safety = [];
196
- let messages = [];
197
- for (const segment of segments) {
198
- // Role dependent processing
199
- if (segment.role === core_2.PromptRole.system) {
200
- system.push({ text: segment.content });
201
- }
202
- else if (segment.role === core_2.PromptRole.tool) {
203
- if (!segment.tool_use_id) {
204
- throw new Error("Tool use ID is required for tool segments");
205
- }
206
- //Tool use results (i.e. the model has requested a tool and this it the answer to that request)
207
- const toolContentBlocks = [];
208
- //Text segments
209
- if (segment.content) {
210
- toolContentBlocks.push({ text: segment.content });
211
- }
212
- //Handle attached files
213
- for (const file of segment.files ?? []) {
214
- toolContentBlocks.push(await processFileToToolContentBlock(file));
215
- }
216
- messages.push({
217
- content: [{
218
- toolResult: {
219
- toolUseId: segment.tool_use_id,
220
- content: toolContentBlocks,
221
- }
222
- }],
223
- role: client_bedrock_runtime_1.ConversationRole.USER
224
- });
225
- }
226
- else if (!unsupportedRoles.includes(segment.role)) {
227
- //User, Assistant or safety roles
228
- const contentBlocks = [];
229
- //Text segments
230
- if (segment.content) {
231
- contentBlocks.push({ text: segment.content });
232
- }
233
- //Handle attached files
234
- for (const file of segment.files ?? []) {
235
- contentBlocks.push(await processFileToContentBlock(file));
236
- }
237
- //If there are no content blocks, skip this message
238
- if (contentBlocks.length !== 0) {
239
- const message = { content: contentBlocks, role: roleConversion(segment.role) };
240
- if (segment.role === core_2.PromptRole.safety) {
241
- safety.push(message);
242
- }
243
- else {
244
- messages.push(message);
245
- }
246
- }
247
- }
248
- }
249
- if (options.result_schema) {
250
- let schemaText;
251
- if (options.tools && options.tools.length > 0) {
252
- schemaText = "When not calling tools, the answer must be a JSON object using the following JSON Schema:\n" + JSON.stringify(options.result_schema, undefined, 2);
253
- }
254
- else {
255
- schemaText = "The answer must be a JSON object using the following JSON Schema:\n" + JSON.stringify(options.result_schema, undefined, 2);
256
- }
257
- system.push({ text: "IMPORTANT: " + schemaText });
258
- }
259
- // Safety messages are user messages that should be included at the end.
260
- if (safety.length > 0) {
261
- messages = messages.concat(safety);
262
- }
263
- //Conversations must start with a user message
264
- //Use the system messages if none are provided
265
- if (messages.length === 0) {
266
- const systemMessage = converseSystemToMessages(system);
267
- if (systemMessage?.content?.[0]?.text?.trim()) {
268
- messages.push(systemMessage);
269
- }
270
- else {
271
- throw new Error("Prompt must contain at least one message");
272
- }
273
- system = undefined;
274
- }
275
- if (system && system.length === 0) {
276
- system = undefined; // If no system messages, set to undefined
277
- }
278
- messages = converseConcatMessages(messages);
279
- return {
280
- modelId: undefined, //required property, but allowed to be undefined
281
- messages: messages,
282
- system: system,
283
- };
284
- }
285
- //# sourceMappingURL=converse.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"converse.js","sourceRoot":"","sources":["../../../src/bedrock/converse.ts"],"names":[],"mappings":"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"}