promptfoo 0.112.1 → 0.112.3

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 (205) hide show
  1. package/dist/package.json +3 -1
  2. package/dist/src/app/assets/index-BFUlbBKg.css +1 -0
  3. package/dist/src/app/assets/{index-B_R4lOTO.js → index-CHWpe2P4.js} +289 -289
  4. package/dist/src/app/assets/{index.es-Dv3pRhEi.js → index.es-BGDEHdxg.js} +1 -1
  5. package/dist/src/app/assets/{source-map-support-CoF2H4lA.js → source-map-support-BR7TbsEY.js} +1 -1
  6. package/dist/src/app/assets/{sync-BDJ__srV.js → sync-C4JKkKoZ.js} +1 -1
  7. package/dist/src/app/index.html +2 -2
  8. package/dist/src/assertions/index.js +2 -2
  9. package/dist/src/assertions/index.js.map +1 -1
  10. package/dist/src/commands/eval.d.ts.map +1 -1
  11. package/dist/src/commands/eval.js +3 -2
  12. package/dist/src/commands/eval.js.map +1 -1
  13. package/dist/src/commands/share.d.ts.map +1 -1
  14. package/dist/src/commands/share.js +5 -1
  15. package/dist/src/commands/share.js.map +1 -1
  16. package/dist/src/csv.d.ts.map +1 -1
  17. package/dist/src/csv.js +5 -5
  18. package/dist/src/csv.js.map +1 -1
  19. package/dist/src/evaluator.d.ts +9 -2
  20. package/dist/src/evaluator.d.ts.map +1 -1
  21. package/dist/src/evaluator.js +42 -12
  22. package/dist/src/evaluator.js.map +1 -1
  23. package/dist/src/evaluatorHelpers.d.ts.map +1 -1
  24. package/dist/src/evaluatorHelpers.js +14 -6
  25. package/dist/src/evaluatorHelpers.js.map +1 -1
  26. package/dist/src/matchers.js +3 -3
  27. package/dist/src/matchers.js.map +1 -1
  28. package/dist/src/prompts/index.js +2 -2
  29. package/dist/src/prompts/index.js.map +1 -1
  30. package/dist/src/providers/anthropic/messages.d.ts +4 -0
  31. package/dist/src/providers/anthropic/messages.d.ts.map +1 -1
  32. package/dist/src/providers/anthropic/messages.js +30 -1
  33. package/dist/src/providers/anthropic/messages.js.map +1 -1
  34. package/dist/src/providers/anthropic/types.d.ts +3 -0
  35. package/dist/src/providers/anthropic/types.d.ts.map +1 -1
  36. package/dist/src/providers/azure/assistant.js +2 -2
  37. package/dist/src/providers/azure/assistant.js.map +1 -1
  38. package/dist/src/providers/azure/chat.d.ts +5 -0
  39. package/dist/src/providers/azure/chat.d.ts.map +1 -1
  40. package/dist/src/providers/azure/chat.js +34 -7
  41. package/dist/src/providers/azure/chat.js.map +1 -1
  42. package/dist/src/providers/azure/types.d.ts +2 -0
  43. package/dist/src/providers/azure/types.d.ts.map +1 -1
  44. package/dist/src/providers/bedrock/nova-sonic.d.ts +17 -0
  45. package/dist/src/providers/bedrock/nova-sonic.d.ts.map +1 -0
  46. package/dist/src/providers/bedrock/nova-sonic.js +411 -0
  47. package/dist/src/providers/bedrock/nova-sonic.js.map +1 -0
  48. package/dist/src/providers/bedrock.d.ts +67 -1
  49. package/dist/src/providers/bedrock.d.ts.map +1 -1
  50. package/dist/src/providers/bedrock.js +31 -1
  51. package/dist/src/providers/bedrock.js.map +1 -1
  52. package/dist/src/providers/browser.js +2 -2
  53. package/dist/src/providers/browser.js.map +1 -1
  54. package/dist/src/providers/google/ai.studio.d.ts +4 -0
  55. package/dist/src/providers/google/ai.studio.d.ts.map +1 -1
  56. package/dist/src/providers/google/ai.studio.js +39 -2
  57. package/dist/src/providers/google/ai.studio.js.map +1 -1
  58. package/dist/src/providers/google/live.d.ts +0 -1
  59. package/dist/src/providers/google/live.d.ts.map +1 -1
  60. package/dist/src/providers/google/live.js +10 -1
  61. package/dist/src/providers/google/live.js.map +1 -1
  62. package/dist/src/providers/google/types.d.ts +3 -1
  63. package/dist/src/providers/google/types.d.ts.map +1 -1
  64. package/dist/src/providers/google/types.js.map +1 -1
  65. package/dist/src/providers/google/util.d.ts +11 -1
  66. package/dist/src/providers/google/util.d.ts.map +1 -1
  67. package/dist/src/providers/google/util.js +33 -2
  68. package/dist/src/providers/google/util.js.map +1 -1
  69. package/dist/src/providers/google/vertex.d.ts +4 -0
  70. package/dist/src/providers/google/vertex.d.ts.map +1 -1
  71. package/dist/src/providers/google/vertex.js +52 -1
  72. package/dist/src/providers/google/vertex.js.map +1 -1
  73. package/dist/src/providers/groq.d.ts +1 -0
  74. package/dist/src/providers/groq.d.ts.map +1 -1
  75. package/dist/src/providers/http.d.ts.map +1 -1
  76. package/dist/src/providers/http.js +6 -5
  77. package/dist/src/providers/http.js.map +1 -1
  78. package/dist/src/providers/litellm.d.ts +1 -0
  79. package/dist/src/providers/litellm.d.ts.map +1 -1
  80. package/dist/src/providers/mcp/client.d.ts +14 -0
  81. package/dist/src/providers/mcp/client.d.ts.map +1 -0
  82. package/dist/src/providers/mcp/client.js +144 -0
  83. package/dist/src/providers/mcp/client.js.map +1 -0
  84. package/dist/src/providers/mcp/transform.d.ts +8 -0
  85. package/dist/src/providers/mcp/transform.d.ts.map +1 -0
  86. package/dist/src/providers/mcp/transform.js +60 -0
  87. package/dist/src/providers/mcp/transform.js.map +1 -0
  88. package/dist/src/providers/mcp/types.d.ts +36 -0
  89. package/dist/src/providers/mcp/types.d.ts.map +1 -0
  90. package/dist/src/providers/mcp/types.js +6 -0
  91. package/dist/src/providers/mcp/types.js.map +1 -0
  92. package/dist/src/providers/openai/chat.d.ts +4 -0
  93. package/dist/src/providers/openai/chat.d.ts.map +1 -1
  94. package/dist/src/providers/openai/chat.js +31 -5
  95. package/dist/src/providers/openai/chat.js.map +1 -1
  96. package/dist/src/providers/openai/responses.d.ts.map +1 -1
  97. package/dist/src/providers/openai/responses.js +2 -1
  98. package/dist/src/providers/openai/responses.js.map +1 -1
  99. package/dist/src/providers/openai/types.d.ts +2 -0
  100. package/dist/src/providers/openai/types.d.ts.map +1 -1
  101. package/dist/src/providers/openai/util.d.ts.map +1 -1
  102. package/dist/src/providers/openai/util.js +2 -1
  103. package/dist/src/providers/openai/util.js.map +1 -1
  104. package/dist/src/providers/promptfoo.d.ts +2 -2
  105. package/dist/src/providers/promptfoo.d.ts.map +1 -1
  106. package/dist/src/providers/registry.d.ts.map +1 -1
  107. package/dist/src/providers/registry.js +15 -2
  108. package/dist/src/providers/registry.js.map +1 -1
  109. package/dist/src/providers/xai.d.ts +1 -0
  110. package/dist/src/providers/xai.d.ts.map +1 -1
  111. package/dist/src/redteam/commands/generate.d.ts.map +1 -1
  112. package/dist/src/redteam/commands/generate.js +5 -5
  113. package/dist/src/redteam/commands/generate.js.map +1 -1
  114. package/dist/src/redteam/commands/run.d.ts.map +1 -1
  115. package/dist/src/redteam/commands/run.js +8 -2
  116. package/dist/src/redteam/commands/run.js.map +1 -1
  117. package/dist/src/redteam/constants.d.ts +14 -1
  118. package/dist/src/redteam/constants.d.ts.map +1 -1
  119. package/dist/src/redteam/constants.js +45 -7
  120. package/dist/src/redteam/constants.js.map +1 -1
  121. package/dist/src/redteam/graders.d.ts.map +1 -1
  122. package/dist/src/redteam/graders.js +3 -0
  123. package/dist/src/redteam/graders.js.map +1 -1
  124. package/dist/src/redteam/index.d.ts +1 -1
  125. package/dist/src/redteam/index.d.ts.map +1 -1
  126. package/dist/src/redteam/index.js +7 -4
  127. package/dist/src/redteam/index.js.map +1 -1
  128. package/dist/src/redteam/plugins/agentic/constants.d.ts +3 -0
  129. package/dist/src/redteam/plugins/agentic/constants.d.ts.map +1 -0
  130. package/dist/src/redteam/plugins/agentic/constants.js +6 -0
  131. package/dist/src/redteam/plugins/agentic/constants.js.map +1 -0
  132. package/dist/src/redteam/plugins/agentic/memoryPoisoning.d.ts +17 -0
  133. package/dist/src/redteam/plugins/agentic/memoryPoisoning.d.ts.map +1 -0
  134. package/dist/src/redteam/plugins/agentic/memoryPoisoning.js +62 -0
  135. package/dist/src/redteam/plugins/agentic/memoryPoisoning.js.map +1 -0
  136. package/dist/src/redteam/plugins/base.d.ts +2 -1
  137. package/dist/src/redteam/plugins/base.d.ts.map +1 -1
  138. package/dist/src/redteam/plugins/base.js +8 -3
  139. package/dist/src/redteam/plugins/base.js.map +1 -1
  140. package/dist/src/redteam/plugins/custom.js +2 -2
  141. package/dist/src/redteam/plugins/custom.js.map +1 -1
  142. package/dist/src/redteam/plugins/index.d.ts.map +1 -1
  143. package/dist/src/redteam/plugins/index.js +2 -0
  144. package/dist/src/redteam/plugins/index.js.map +1 -1
  145. package/dist/src/redteam/plugins/intent.js +2 -2
  146. package/dist/src/redteam/plugins/intent.js.map +1 -1
  147. package/dist/src/redteam/providers/agentic/memoryPoisoning.d.ts +21 -0
  148. package/dist/src/redteam/providers/agentic/memoryPoisoning.d.ts.map +1 -0
  149. package/dist/src/redteam/providers/agentic/memoryPoisoning.js +87 -0
  150. package/dist/src/redteam/providers/agentic/memoryPoisoning.js.map +1 -0
  151. package/dist/src/redteam/providers/iterative.d.ts +5 -1
  152. package/dist/src/redteam/providers/iterative.d.ts.map +1 -1
  153. package/dist/src/redteam/providers/iterative.js +33 -12
  154. package/dist/src/redteam/providers/iterative.js.map +1 -1
  155. package/dist/src/redteam/providers/prompts.d.ts +1 -0
  156. package/dist/src/redteam/providers/prompts.d.ts.map +1 -1
  157. package/dist/src/redteam/providers/prompts.js +68 -1
  158. package/dist/src/redteam/providers/prompts.js.map +1 -1
  159. package/dist/src/redteam/strategies/index.js +2 -2
  160. package/dist/src/redteam/strategies/index.js.map +1 -1
  161. package/dist/src/redteam/types.d.ts +2 -0
  162. package/dist/src/redteam/types.d.ts.map +1 -1
  163. package/dist/src/share.d.ts.map +1 -1
  164. package/dist/src/share.js +5 -0
  165. package/dist/src/share.js.map +1 -1
  166. package/dist/src/types/index.d.ts +13 -0
  167. package/dist/src/types/index.d.ts.map +1 -1
  168. package/dist/src/types/index.js +3 -3
  169. package/dist/src/types/index.js.map +1 -1
  170. package/dist/src/types/providers.d.ts +1 -0
  171. package/dist/src/types/providers.d.ts.map +1 -1
  172. package/dist/src/util/cloud.d.ts +1 -1
  173. package/dist/src/util/cloud.d.ts.map +1 -1
  174. package/dist/src/util/cloud.js +2 -2
  175. package/dist/src/util/cloud.js.map +1 -1
  176. package/dist/src/util/config/load.d.ts.map +1 -1
  177. package/dist/src/util/config/load.js +4 -3
  178. package/dist/src/util/config/load.js.map +1 -1
  179. package/dist/src/util/file.d.ts +13 -26
  180. package/dist/src/util/file.d.ts.map +1 -1
  181. package/dist/src/util/file.js +65 -43
  182. package/dist/src/util/file.js.map +1 -1
  183. package/dist/src/util/fileExtensions.d.ts +33 -0
  184. package/dist/src/util/fileExtensions.d.ts.map +1 -0
  185. package/dist/src/util/fileExtensions.js +54 -0
  186. package/dist/src/util/fileExtensions.js.map +1 -0
  187. package/dist/src/util/fileReference.js +2 -2
  188. package/dist/src/util/fileReference.js.map +1 -1
  189. package/dist/src/util/functions/loadFunction.js +4 -4
  190. package/dist/src/util/functions/loadFunction.js.map +1 -1
  191. package/dist/src/util/index.d.ts +0 -13
  192. package/dist/src/util/index.d.ts.map +1 -1
  193. package/dist/src/util/index.js +6 -56
  194. package/dist/src/util/index.js.map +1 -1
  195. package/dist/src/util/testCaseReader.js +5 -5
  196. package/dist/src/util/testCaseReader.js.map +1 -1
  197. package/dist/src/util/transform.js +2 -2
  198. package/dist/src/util/transform.js.map +1 -1
  199. package/dist/src/validators/redteam.d.ts +4 -0
  200. package/dist/src/validators/redteam.d.ts.map +1 -1
  201. package/dist/src/validators/redteam.js +11 -2
  202. package/dist/src/validators/redteam.js.map +1 -1
  203. package/dist/tsconfig.tsbuildinfo +1 -1
  204. package/package.json +3 -1
  205. package/dist/src/app/assets/index-iTNO3LND.css +0 -1
@@ -0,0 +1,411 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.NovaSonicProvider = void 0;
7
+ const client_bedrock_runtime_1 = require("@aws-sdk/client-bedrock-runtime");
8
+ const node_http_handler_1 = require("@smithy/node-http-handler");
9
+ const node_buffer_1 = require("node:buffer");
10
+ const node_crypto_1 = require("node:crypto");
11
+ const rxjs_1 = require("rxjs");
12
+ const rxjs_2 = require("rxjs");
13
+ const operators_1 = require("rxjs/operators");
14
+ const logger_1 = __importDefault(require("../../logger"));
15
+ const bedrock_1 = require("../bedrock");
16
+ const DEFAULT_CONFIG = {
17
+ inference: {
18
+ maxTokens: 1024,
19
+ topP: 0.9,
20
+ temperature: 0.7,
21
+ },
22
+ audio: {
23
+ input: {
24
+ audioType: 'SPEECH',
25
+ encoding: 'base64',
26
+ mediaType: 'audio/lpcm',
27
+ sampleRateHertz: 8000,
28
+ sampleSizeBits: 16,
29
+ channelCount: 1,
30
+ },
31
+ output: {
32
+ audioType: 'SPEECH',
33
+ encoding: 'base64',
34
+ mediaType: 'audio/lpcm',
35
+ sampleRateHertz: 8000,
36
+ sampleSizeBits: 16,
37
+ channelCount: 1,
38
+ voiceId: 'tiffany',
39
+ },
40
+ },
41
+ text: {
42
+ mediaType: 'text/plain',
43
+ },
44
+ };
45
+ class NovaSonicProvider extends bedrock_1.AwsBedrockGenericProvider {
46
+ constructor(modelName = 'amazon.nova-sonic-v1:0', options = {}) {
47
+ super(modelName, options);
48
+ this.sessions = new Map();
49
+ this.config = options.config;
50
+ this.bedrockClient = new client_bedrock_runtime_1.BedrockRuntimeClient({
51
+ region: this.getRegion(),
52
+ requestHandler: new node_http_handler_1.NodeHttp2Handler({
53
+ requestTimeout: 300000,
54
+ sessionTimeout: 300000,
55
+ disableConcurrentStreams: false,
56
+ maxConcurrentStreams: 20,
57
+ }),
58
+ });
59
+ }
60
+ createSession(sessionId = (0, node_crypto_1.randomUUID)()) {
61
+ if (this.sessions.has(sessionId)) {
62
+ throw new Error(`Session ${sessionId} already exists`);
63
+ }
64
+ const session = {
65
+ queue: [],
66
+ queueSignal: new rxjs_1.Subject(),
67
+ closeSignal: new rxjs_1.Subject(),
68
+ responseHandlers: new Map(),
69
+ isActive: true,
70
+ audioContentId: (0, node_crypto_1.randomUUID)(),
71
+ promptName: (0, node_crypto_1.randomUUID)(),
72
+ };
73
+ this.sessions.set(sessionId, session);
74
+ return session;
75
+ }
76
+ async sendEvent(sessionId, event) {
77
+ if (Object.keys(event.event)[0] !== 'audioInput') {
78
+ logger_1.default.debug('sendEvent: ' + Object.keys(event.event)[0]);
79
+ }
80
+ const session = this.sessions.get(sessionId);
81
+ if (!session?.isActive) {
82
+ logger_1.default.error(`Session ${sessionId} is not active`);
83
+ return;
84
+ }
85
+ session.queue.push(event);
86
+ session.queueSignal.next();
87
+ }
88
+ async endSession(sessionId) {
89
+ const session = this.sessions.get(sessionId);
90
+ if (!session) {
91
+ throw new Error(`Session ${sessionId} not found`);
92
+ }
93
+ else if (!session.isActive) {
94
+ logger_1.default.debug(`Session ${sessionId} is not active`);
95
+ return;
96
+ }
97
+ // Wait a moment for any final events
98
+ await new Promise((resolve) => setTimeout(resolve, 1000));
99
+ await this.sendEvent(sessionId, {
100
+ event: {
101
+ promptEnd: {
102
+ promptName: session.promptName,
103
+ },
104
+ },
105
+ });
106
+ // Wait for any final events after prompt end
107
+ await new Promise((resolve) => setTimeout(resolve, 1000));
108
+ await this.sendEvent(sessionId, {
109
+ event: {
110
+ sessionEnd: {},
111
+ },
112
+ });
113
+ session.isActive = false;
114
+ logger_1.default.debug('Session closed');
115
+ }
116
+ async sendTextMessage(sessionId, role, prompt) {
117
+ const session = this.sessions.get(sessionId);
118
+ if (!session) {
119
+ throw new Error(`Session ${sessionId} not found`);
120
+ }
121
+ const textPromptID = (0, node_crypto_1.randomUUID)();
122
+ logger_1.default.debug('sendTextMessage: ' + prompt);
123
+ this.sendEvent(sessionId, {
124
+ event: {
125
+ contentStart: {
126
+ promptName: session.promptName,
127
+ contentName: textPromptID,
128
+ type: 'TEXT',
129
+ interactive: false,
130
+ role,
131
+ textInputConfiguration: this.config?.textInputConfiguration || DEFAULT_CONFIG.text,
132
+ },
133
+ },
134
+ });
135
+ // Text input content for system prompt
136
+ this.sendEvent(sessionId, {
137
+ event: {
138
+ textInput: {
139
+ promptName: session.promptName,
140
+ contentName: textPromptID,
141
+ content: prompt,
142
+ },
143
+ },
144
+ });
145
+ // Text content end
146
+ this.sendEvent(sessionId, {
147
+ event: {
148
+ contentEnd: {
149
+ promptName: session.promptName,
150
+ contentName: textPromptID,
151
+ },
152
+ },
153
+ });
154
+ }
155
+ async sendSystemPrompt(sessionId, prompt) {
156
+ return this.sendTextMessage(sessionId, 'SYSTEM', prompt);
157
+ }
158
+ async sendChatTextHistory(sessionId, role, prompt) {
159
+ return this.sendTextMessage(sessionId, role, prompt);
160
+ }
161
+ async callApi(prompt, context) {
162
+ const sessionId = (0, node_crypto_1.randomUUID)();
163
+ const session = this.createSession(sessionId);
164
+ let assistantTranscript = '';
165
+ let userTranscript = '';
166
+ let audioContent = '';
167
+ let hasAudioContent = false;
168
+ let functionCallOccurred = false;
169
+ logger_1.default.debug('prompt: ' + prompt.slice(0, 1000));
170
+ // Set up event handlers
171
+ session.responseHandlers.set('textOutput', (data) => {
172
+ logger_1.default.debug('textOutput: ' + JSON.stringify(data));
173
+ if (data.role === 'USER') {
174
+ userTranscript += data.content + '\n';
175
+ }
176
+ else if (data.role === 'ASSISTANT') {
177
+ assistantTranscript += data.content + '\n';
178
+ }
179
+ });
180
+ session.responseHandlers.set('contentEnd', async (data) => {
181
+ logger_1.default.debug('contentEnd');
182
+ if (data.stopReason === 'END_TURN') {
183
+ await this.endSession(sessionId);
184
+ }
185
+ });
186
+ session.responseHandlers.set('audioOutput', (data) => {
187
+ hasAudioContent = true;
188
+ logger_1.default.debug('audioOutput');
189
+ audioContent += data.content;
190
+ });
191
+ session.responseHandlers.set('toolUse', async (data) => {
192
+ logger_1.default.debug('toolUse');
193
+ functionCallOccurred = true;
194
+ // const result = await this.handleToolUse(data.toolName, data);
195
+ const result = 'Tool result';
196
+ const toolResultId = (0, node_crypto_1.randomUUID)();
197
+ await this.sendEvent(sessionId, {
198
+ event: {
199
+ contentStart: {
200
+ promptName: session.promptName,
201
+ contentName: toolResultId,
202
+ interactive: false,
203
+ type: 'TOOL',
204
+ role: 'TOOL',
205
+ toolResultInputConfiguration: {
206
+ toolUseId: data.toolUseId,
207
+ type: 'TEXT',
208
+ textInputConfiguration: {
209
+ mediaType: 'text/plain',
210
+ },
211
+ },
212
+ },
213
+ },
214
+ });
215
+ await this.sendEvent(sessionId, {
216
+ event: {
217
+ toolResult: {
218
+ promptName: session.promptName,
219
+ contentName: toolResultId,
220
+ content: JSON.stringify(result),
221
+ },
222
+ },
223
+ });
224
+ await this.sendEvent(sessionId, {
225
+ event: {
226
+ contentEnd: {
227
+ promptName: session.promptName,
228
+ contentName: toolResultId,
229
+ },
230
+ },
231
+ });
232
+ });
233
+ try {
234
+ // Process response stream
235
+ const request = this.bedrockClient.send(new client_bedrock_runtime_1.InvokeModelWithBidirectionalStreamCommand({
236
+ modelId: this.modelName,
237
+ body: this.createAsyncIterable(sessionId),
238
+ }));
239
+ logger_1.default.debug('Sending sessionStart');
240
+ // Initialize session
241
+ await this.sendEvent(sessionId, {
242
+ event: {
243
+ sessionStart: {
244
+ inferenceConfiguration: this.config?.interfaceConfig || DEFAULT_CONFIG.inference,
245
+ },
246
+ },
247
+ });
248
+ logger_1.default.debug('Sending promptStart');
249
+ // Start prompt
250
+ await this.sendEvent(sessionId, {
251
+ event: {
252
+ promptStart: {
253
+ promptName: session.promptName,
254
+ textOutputConfiguration: this.config?.textOutputConfiguration || DEFAULT_CONFIG.text,
255
+ audioOutputConfiguration: this.config?.audioOutputConfiguration || DEFAULT_CONFIG.audio.output,
256
+ ...(this.config?.toolConfig && { toolConfiguration: this.config?.toolConfig }),
257
+ },
258
+ },
259
+ });
260
+ logger_1.default.debug('Sending system prompt');
261
+ await this.sendSystemPrompt(sessionId, context?.test?.metadata?.systemPrompt || '');
262
+ logger_1.default.debug('Processing conversation history');
263
+ let promptText = prompt;
264
+ try {
265
+ // Check if the prompt is a JSON string
266
+ const parsedPrompt = JSON.parse(prompt);
267
+ if (Array.isArray(parsedPrompt)) {
268
+ // Handle array of messages format
269
+ for (const [index, message] of parsedPrompt.entries()) {
270
+ if (message.role !== 'system' && index !== parsedPrompt.length - 1) {
271
+ await this.sendTextMessage(sessionId, message.role.toUpperCase(), message.content[0].text);
272
+ }
273
+ }
274
+ promptText = parsedPrompt[parsedPrompt.length - 1].content[0].text;
275
+ }
276
+ }
277
+ catch (err) {
278
+ logger_1.default.error(`Error processing conversation history: ${err}`);
279
+ }
280
+ logger_1.default.debug('Sending audioInput start');
281
+ // Send prompt content
282
+ await this.sendEvent(sessionId, {
283
+ event: {
284
+ contentStart: {
285
+ promptName: session.promptName,
286
+ contentName: session.audioContentId,
287
+ type: 'AUDIO',
288
+ interactive: true,
289
+ role: 'USER',
290
+ audioInputConfiguration: this.config?.audioInputConfiguration || DEFAULT_CONFIG.audio.input,
291
+ },
292
+ },
293
+ });
294
+ logger_1.default.debug('Sending audioInput chunks');
295
+ // Send the actual prompt
296
+ const chunks = promptText?.match(/.{1,1024}/g)?.map((chunk) => node_buffer_1.Buffer.from(chunk)) || [];
297
+ logger_1.default.debug('audioInput in chunks: ' + chunks.length);
298
+ for (const chunk of chunks) {
299
+ await this.sendEvent(sessionId, {
300
+ event: {
301
+ audioInput: {
302
+ promptName: session.promptName,
303
+ contentName: session.audioContentId,
304
+ content: chunk.toString(),
305
+ },
306
+ },
307
+ });
308
+ await new Promise((resolve) => setTimeout(resolve, 30));
309
+ }
310
+ logger_1.default.debug('Sending audioInput end');
311
+ // End content and prompt
312
+ await this.sendEvent(sessionId, {
313
+ event: {
314
+ contentEnd: {
315
+ promptName: session.promptName,
316
+ contentName: session.audioContentId,
317
+ },
318
+ },
319
+ });
320
+ const response = await request;
321
+ if (response.body) {
322
+ for await (const event of response.body) {
323
+ if (!session.isActive) {
324
+ break;
325
+ }
326
+ if (event.chunk?.bytes) {
327
+ const data = JSON.parse(new TextDecoder().decode(event.chunk.bytes));
328
+ const eventType = Object.keys(data.event || {})[0];
329
+ logger_1.default.debug('processing eventType: ' + eventType);
330
+ const handler = session.responseHandlers.get(eventType);
331
+ if (handler) {
332
+ await handler(data.event[eventType]);
333
+ }
334
+ }
335
+ }
336
+ }
337
+ return {
338
+ output: assistantTranscript || '[No response received from API]',
339
+ // TODO: Add token usage
340
+ tokenUsage: { total: 0, prompt: 0, completion: 0 },
341
+ cached: false,
342
+ metadata: {
343
+ ...(hasAudioContent && audioContent
344
+ ? {
345
+ audio: {
346
+ data: audioContent,
347
+ format: 'lpcm',
348
+ transcript: assistantTranscript,
349
+ },
350
+ userTranscript,
351
+ }
352
+ : {}),
353
+ functionCallOccurred,
354
+ },
355
+ };
356
+ }
357
+ catch (error) {
358
+ logger_1.default.error('Error in nova-sonic provider: ' + JSON.stringify(error));
359
+ return {
360
+ error: error instanceof Error ? error.message : String(error),
361
+ metadata: {},
362
+ };
363
+ }
364
+ finally {
365
+ await this.endSession(sessionId);
366
+ this.sessions.delete(sessionId);
367
+ }
368
+ }
369
+ createAsyncIterable(sessionId) {
370
+ const session = this.sessions.get(sessionId);
371
+ if (!session) {
372
+ throw new Error(`Session ${sessionId} not found`);
373
+ }
374
+ return {
375
+ [Symbol.asyncIterator]: () => ({
376
+ async next() {
377
+ if (!session.isActive) {
378
+ return { done: true, value: undefined };
379
+ }
380
+ if (session.queue.length === 0) {
381
+ try {
382
+ await Promise.race([
383
+ (0, rxjs_2.firstValueFrom)(session.queueSignal.pipe((0, operators_1.take)(1))),
384
+ (0, rxjs_2.firstValueFrom)(session.closeSignal.pipe((0, operators_1.take)(1))),
385
+ ]);
386
+ }
387
+ catch {
388
+ return { done: true, value: undefined };
389
+ }
390
+ }
391
+ const nextEvent = session.queue.shift();
392
+ if (nextEvent) {
393
+ return {
394
+ value: {
395
+ chunk: {
396
+ bytes: new TextEncoder().encode(JSON.stringify(nextEvent)),
397
+ },
398
+ },
399
+ done: false,
400
+ };
401
+ }
402
+ else {
403
+ return { done: true, value: undefined };
404
+ }
405
+ },
406
+ }),
407
+ };
408
+ }
409
+ }
410
+ exports.NovaSonicProvider = NovaSonicProvider;
411
+ //# sourceMappingURL=nova-sonic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nova-sonic.js","sourceRoot":"","sources":["../../../../src/providers/bedrock/nova-sonic.ts"],"names":[],"mappings":"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"}
@@ -206,6 +206,60 @@ export interface BedrockAmazonNovaGenerationOptions extends BedrockOptions {
206
206
  };
207
207
  };
208
208
  }
209
+ export type ContentType = 'AUDIO' | 'TEXT' | 'TOOL';
210
+ export type AudioMediaType = 'audio/wav' | 'audio/lpcm' | 'audio/mulaw' | 'audio/mpeg';
211
+ export type TextMediaType = 'text/plain' | 'application/json';
212
+ export interface AudioConfiguration {
213
+ readonly mediaType: AudioMediaType;
214
+ readonly sampleRateHertz: number;
215
+ readonly sampleSizeBits: number;
216
+ readonly channelCount: number;
217
+ readonly encoding: string;
218
+ readonly audioType: 'SPEECH';
219
+ }
220
+ export interface TextConfiguration {
221
+ readonly contentType: ContentType;
222
+ readonly mediaType: TextMediaType;
223
+ }
224
+ export interface BedrockAmazonNovaSonicGenerationOptions extends BedrockOptions {
225
+ interfaceConfig?: {
226
+ max_new_tokens?: number;
227
+ temperature?: number;
228
+ top_p?: number;
229
+ top_k?: number;
230
+ stopSequences?: string[];
231
+ };
232
+ audioInputConfiguration?: Omit<AudioConfiguration, 'voiceId'>;
233
+ audioOutputConfiguration?: Omit<AudioConfiguration, 'mediaType'> & {
234
+ mediaType: 'audio/lpcm';
235
+ voiceId?: 'matthew' | 'tiffany' | 'amy';
236
+ };
237
+ textInputConfiguration?: TextConfiguration;
238
+ textOutputConfiguration?: Omit<TextConfiguration, 'mediaType'> & {
239
+ mediaType: 'text/plain';
240
+ };
241
+ toolConfig?: {
242
+ tools?: {
243
+ toolSpec: {
244
+ name: string;
245
+ description?: string;
246
+ inputSchema: {
247
+ json: {
248
+ type: 'object';
249
+ properties: {
250
+ [propertyName: string]: {
251
+ description: string;
252
+ type: string;
253
+ };
254
+ };
255
+ required: string[];
256
+ };
257
+ };
258
+ };
259
+ }[];
260
+ toolChoice?: 'any' | 'auto' | string;
261
+ };
262
+ }
209
263
  export interface BedrockDeepseekGenerationOptions extends BedrockOptions {
210
264
  max_tokens?: number;
211
265
  temperature?: number;
@@ -224,7 +278,8 @@ export declare enum LlamaVersion {
224
278
  V3 = 3,
225
279
  V3_1 = 3.1,
226
280
  V3_2 = 3.2,
227
- V3_3 = 3.3
281
+ V3_3 = 3.3,
282
+ V4 = 4
228
283
  }
229
284
  export interface LlamaMessage {
230
285
  role: 'system' | 'user' | 'assistant';
@@ -232,6 +287,7 @@ export interface LlamaMessage {
232
287
  }
233
288
  export declare const formatPromptLlama2Chat: (messages: LlamaMessage[]) => string;
234
289
  export declare const formatPromptLlama3Instruct: (messages: LlamaMessage[]) => string;
290
+ export declare const formatPromptLlama4: (messages: LlamaMessage[]) => string;
235
291
  export declare const getLlamaModelHandler: (version: LlamaVersion) => {
236
292
  params: (config: BedrockLlamaGenerationOptions, prompt: string, stop?: string[], modelName?: string) => {
237
293
  prompt: string;
@@ -321,6 +377,16 @@ export declare const BEDROCK_MODEL: {
321
377
  output: (config: BedrockOptions, responseJson: any) => any;
322
378
  tokenUsage: (responseJson: any, promptText: string) => TokenUsage;
323
379
  };
380
+ LLAMA4: {
381
+ params: (config: BedrockLlamaGenerationOptions, prompt: string, stop?: string[], modelName?: string) => {
382
+ prompt: string;
383
+ temperature?: number;
384
+ top_p?: number;
385
+ max_gen_len?: number;
386
+ };
387
+ output: (config: BedrockOptions, responseJson: any) => any;
388
+ tokenUsage: (responseJson: any, promptText: string) => TokenUsage;
389
+ };
324
390
  COHERE_COMMAND: {
325
391
  params: (config: BedrockCohereCommandGenerationOptions, prompt: string, stop?: string[], modelName?: string) => any;
326
392
  output: (config: BedrockOptions, responseJson: any) => any;
@@ -1 +1 @@
1
- {"version":3,"file":"bedrock.d.ts","sourceRoot":"","sources":["../../../src/providers/bedrock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bedrock.d.ts","sourceRoot":"","sources":["../../../src/providers/bedrock.ts"],"names":[],"mappings":"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"}