promptfoo 0.95.0 → 0.96.1

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 (350) hide show
  1. package/README.md +3 -1
  2. package/dist/package.json +19 -17
  3. package/dist/src/app/assets/{index-zXzgAsKj.js → index-CL29fyye.js} +185 -185
  4. package/dist/src/app/assets/{index.es-Jztl1qad.js → index.es-CsYHA4xg.js} +1 -1
  5. package/dist/src/app/assets/{sync-BJBBGzPI.js → sync-B9AjROwZ.js} +1 -1
  6. package/dist/src/app/index.html +1 -1
  7. package/dist/src/assertions/answerRelevance.d.ts +3 -0
  8. package/dist/src/assertions/answerRelevance.d.ts.map +1 -0
  9. package/dist/src/assertions/answerRelevance.js +19 -0
  10. package/dist/src/assertions/answerRelevance.js.map +1 -0
  11. package/dist/src/assertions/bleu.d.ts +23 -0
  12. package/dist/src/assertions/bleu.d.ts.map +1 -0
  13. package/dist/src/assertions/bleu.js +132 -0
  14. package/dist/src/assertions/bleu.js.map +1 -0
  15. package/dist/src/assertions/classifier.d.ts +3 -0
  16. package/dist/src/assertions/classifier.d.ts.map +1 -0
  17. package/dist/src/assertions/classifier.js +22 -0
  18. package/dist/src/assertions/classifier.js.map +1 -0
  19. package/dist/src/assertions/contains.d.ts +8 -0
  20. package/dist/src/assertions/contains.d.ts.map +1 -0
  21. package/dist/src/assertions/contains.js +110 -0
  22. package/dist/src/assertions/contains.js.map +1 -0
  23. package/dist/src/assertions/contextFaithfulness.d.ts +3 -0
  24. package/dist/src/assertions/contextFaithfulness.d.ts.map +1 -0
  25. package/dist/src/assertions/contextFaithfulness.js +19 -0
  26. package/dist/src/assertions/contextFaithfulness.js.map +1 -0
  27. package/dist/src/assertions/contextRecall.d.ts +3 -0
  28. package/dist/src/assertions/contextRecall.d.ts.map +1 -0
  29. package/dist/src/assertions/contextRecall.js +18 -0
  30. package/dist/src/assertions/contextRecall.js.map +1 -0
  31. package/dist/src/assertions/contextRelevance.d.ts +3 -0
  32. package/dist/src/assertions/contextRelevance.d.ts.map +1 -0
  33. package/dist/src/assertions/contextRelevance.js +19 -0
  34. package/dist/src/assertions/contextRelevance.js.map +1 -0
  35. package/dist/src/assertions/cost.d.ts +3 -0
  36. package/dist/src/assertions/cost.d.ts.map +1 -0
  37. package/dist/src/assertions/cost.js +22 -0
  38. package/dist/src/assertions/cost.js.map +1 -0
  39. package/dist/src/assertions/equals.d.ts +4 -0
  40. package/dist/src/assertions/equals.d.ts.map +1 -0
  41. package/dist/src/assertions/equals.js +32 -0
  42. package/dist/src/assertions/equals.js.map +1 -0
  43. package/dist/src/assertions/factuality.d.ts +3 -0
  44. package/dist/src/assertions/factuality.d.ts.map +1 -0
  45. package/dist/src/assertions/factuality.js +25 -0
  46. package/dist/src/assertions/factuality.js.map +1 -0
  47. package/dist/src/assertions/index.d.ts +1 -12
  48. package/dist/src/assertions/index.d.ts.map +1 -1
  49. package/dist/src/assertions/index.js +94 -987
  50. package/dist/src/assertions/index.js.map +1 -1
  51. package/dist/src/assertions/javascript.d.ts +4 -0
  52. package/dist/src/assertions/javascript.d.ts.map +1 -0
  53. package/dist/src/assertions/javascript.js +94 -0
  54. package/dist/src/assertions/javascript.js.map +1 -0
  55. package/dist/src/assertions/json.d.ts +7 -0
  56. package/dist/src/assertions/json.d.ts.map +1 -0
  57. package/dist/src/assertions/json.js +121 -0
  58. package/dist/src/assertions/json.js.map +1 -0
  59. package/dist/src/assertions/latency.d.ts +3 -0
  60. package/dist/src/assertions/latency.d.ts.map +1 -0
  61. package/dist/src/assertions/latency.js +22 -0
  62. package/dist/src/assertions/latency.js.map +1 -0
  63. package/dist/src/assertions/levenshtein.d.ts +3 -0
  64. package/dist/src/assertions/levenshtein.d.ts.map +1 -0
  65. package/dist/src/assertions/levenshtein.js +22 -0
  66. package/dist/src/assertions/levenshtein.js.map +1 -0
  67. package/dist/src/assertions/llmRubric.d.ts +3 -0
  68. package/dist/src/assertions/llmRubric.d.ts.map +1 -0
  69. package/dist/src/assertions/llmRubric.js +22 -0
  70. package/dist/src/assertions/llmRubric.js.map +1 -0
  71. package/dist/src/assertions/modelGradedClosedQa.d.ts +3 -0
  72. package/dist/src/assertions/modelGradedClosedQa.d.ts.map +1 -0
  73. package/dist/src/assertions/modelGradedClosedQa.js +25 -0
  74. package/dist/src/assertions/modelGradedClosedQa.js.map +1 -0
  75. package/dist/src/assertions/moderation.d.ts +3 -0
  76. package/dist/src/assertions/moderation.d.ts.map +1 -0
  77. package/dist/src/assertions/moderation.js +41 -0
  78. package/dist/src/assertions/moderation.js.map +1 -0
  79. package/dist/src/assertions/openai.d.ts +5 -0
  80. package/dist/src/assertions/openai.d.ts.map +1 -0
  81. package/dist/src/assertions/openai.js +68 -0
  82. package/dist/src/assertions/openai.js.map +1 -0
  83. package/dist/src/assertions/perplexity.d.ts +4 -0
  84. package/dist/src/assertions/perplexity.d.ts.map +1 -0
  85. package/dist/src/assertions/perplexity.js +40 -0
  86. package/dist/src/assertions/perplexity.js.map +1 -0
  87. package/dist/src/assertions/python.d.ts +4 -0
  88. package/dist/src/assertions/python.d.ts.map +1 -0
  89. package/dist/src/assertions/python.js +107 -0
  90. package/dist/src/assertions/python.js.map +1 -0
  91. package/dist/src/assertions/redteam.d.ts +3 -0
  92. package/dist/src/assertions/redteam.d.ts.map +1 -0
  93. package/dist/src/assertions/redteam.js +29 -0
  94. package/dist/src/assertions/redteam.js.map +1 -0
  95. package/dist/src/assertions/regex.d.ts +3 -0
  96. package/dist/src/assertions/regex.d.ts.map +1 -0
  97. package/dist/src/assertions/regex.js +34 -0
  98. package/dist/src/assertions/regex.js.map +1 -0
  99. package/dist/src/assertions/rouge.d.ts +3 -0
  100. package/dist/src/assertions/rouge.d.ts.map +1 -0
  101. package/dist/src/assertions/rouge.js +47 -0
  102. package/dist/src/assertions/rouge.js.map +1 -0
  103. package/dist/src/assertions/similar.d.ts +3 -0
  104. package/dist/src/assertions/similar.d.ts.map +1 -0
  105. package/dist/src/assertions/similar.js +40 -0
  106. package/dist/src/assertions/similar.js.map +1 -0
  107. package/dist/src/assertions/sql.d.ts +4 -0
  108. package/dist/src/assertions/sql.d.ts.map +1 -0
  109. package/dist/src/assertions/sql.js +98 -0
  110. package/dist/src/assertions/sql.js.map +1 -0
  111. package/dist/src/assertions/startsWith.d.ts +3 -0
  112. package/dist/src/assertions/startsWith.d.ts.map +1 -0
  113. package/dist/src/assertions/startsWith.js +22 -0
  114. package/dist/src/assertions/startsWith.js.map +1 -0
  115. package/dist/src/assertions/utils.d.ts +1 -0
  116. package/dist/src/assertions/utils.d.ts.map +1 -1
  117. package/dist/src/assertions/utils.js +7 -0
  118. package/dist/src/assertions/utils.js.map +1 -1
  119. package/dist/src/assertions/webhook.d.ts +3 -0
  120. package/dist/src/assertions/webhook.d.ts.map +1 -0
  121. package/dist/src/assertions/webhook.js +55 -0
  122. package/dist/src/assertions/webhook.js.map +1 -0
  123. package/dist/src/assertions/xml.d.ts +11 -0
  124. package/dist/src/assertions/xml.d.ts.map +1 -0
  125. package/dist/src/assertions/xml.js +86 -0
  126. package/dist/src/assertions/xml.js.map +1 -0
  127. package/dist/src/commands/eval/filterTests.d.ts +1 -0
  128. package/dist/src/commands/eval/filterTests.d.ts.map +1 -1
  129. package/dist/src/commands/eval/filterTests.js +14 -1
  130. package/dist/src/commands/eval/filterTests.js.map +1 -1
  131. package/dist/src/commands/eval.d.ts.map +1 -1
  132. package/dist/src/commands/eval.js +14 -3
  133. package/dist/src/commands/eval.js.map +1 -1
  134. package/dist/src/commands/import.d.ts.map +1 -1
  135. package/dist/src/commands/import.js +1 -0
  136. package/dist/src/commands/import.js.map +1 -1
  137. package/dist/src/commands/list.d.ts.map +1 -1
  138. package/dist/src/commands/list.js +15 -0
  139. package/dist/src/commands/list.js.map +1 -1
  140. package/dist/src/csv.d.ts.map +1 -1
  141. package/dist/src/csv.js +9 -4
  142. package/dist/src/csv.js.map +1 -1
  143. package/dist/src/database/tables.d.ts +189 -1
  144. package/dist/src/database/tables.d.ts.map +1 -1
  145. package/dist/src/envars.d.ts +9 -0
  146. package/dist/src/envars.d.ts.map +1 -1
  147. package/dist/src/envars.js.map +1 -1
  148. package/dist/src/evaluator.js +2 -2
  149. package/dist/src/evaluator.js.map +1 -1
  150. package/dist/src/evaluatorHelpers.d.ts.map +1 -1
  151. package/dist/src/evaluatorHelpers.js +4 -0
  152. package/dist/src/evaluatorHelpers.js.map +1 -1
  153. package/dist/src/fetch.d.ts.map +1 -1
  154. package/dist/src/fetch.js +8 -1
  155. package/dist/src/fetch.js.map +1 -1
  156. package/dist/src/globalConfig/accounts.d.ts +1 -0
  157. package/dist/src/globalConfig/accounts.d.ts.map +1 -1
  158. package/dist/src/globalConfig/accounts.js +24 -0
  159. package/dist/src/globalConfig/accounts.js.map +1 -1
  160. package/dist/src/index.d.ts +74 -68
  161. package/dist/src/index.d.ts.map +1 -1
  162. package/dist/src/onboarding.js +8 -8
  163. package/dist/src/onboarding.js.map +1 -1
  164. package/dist/src/providers/adaline.gateway.d.ts.map +1 -1
  165. package/dist/src/providers/adaline.gateway.js +4 -4
  166. package/dist/src/providers/adaline.gateway.js.map +1 -1
  167. package/dist/src/providers/anthropic.d.ts.map +1 -1
  168. package/dist/src/providers/anthropic.js +31 -0
  169. package/dist/src/providers/anthropic.js.map +1 -1
  170. package/dist/src/providers/{azureopenai.d.ts → azure.d.ts} +13 -13
  171. package/dist/src/providers/azure.d.ts.map +1 -0
  172. package/dist/src/providers/{azureopenai.js → azure.js} +64 -42
  173. package/dist/src/providers/azure.js.map +1 -0
  174. package/dist/src/providers/{azureopenaiUtil.d.ts → azureUtil.d.ts} +1 -1
  175. package/dist/src/providers/azureUtil.d.ts.map +1 -0
  176. package/dist/src/providers/{azureopenaiUtil.js → azureUtil.js} +3 -3
  177. package/dist/src/providers/azureUtil.js.map +1 -0
  178. package/dist/src/providers/bedrock.d.ts +5 -3
  179. package/dist/src/providers/bedrock.d.ts.map +1 -1
  180. package/dist/src/providers/bedrock.js +38 -9
  181. package/dist/src/providers/bedrock.js.map +1 -1
  182. package/dist/src/providers/defaults.d.ts.map +1 -1
  183. package/dist/src/providers/defaults.js +36 -0
  184. package/dist/src/providers/defaults.js.map +1 -1
  185. package/dist/src/providers/portkey.d.ts +3 -2
  186. package/dist/src/providers/portkey.d.ts.map +1 -1
  187. package/dist/src/providers/portkey.js +17 -10
  188. package/dist/src/providers/portkey.js.map +1 -1
  189. package/dist/src/providers/promptfoo.js +2 -2
  190. package/dist/src/providers/promptfoo.js.map +1 -1
  191. package/dist/src/providers.d.ts +9 -5
  192. package/dist/src/providers.d.ts.map +1 -1
  193. package/dist/src/providers.js +16 -11
  194. package/dist/src/providers.js.map +1 -1
  195. package/dist/src/redteam/commands/generate.d.ts.map +1 -1
  196. package/dist/src/redteam/commands/generate.js +5 -1
  197. package/dist/src/redteam/commands/generate.js.map +1 -1
  198. package/dist/src/redteam/commands/init.d.ts +11 -0
  199. package/dist/src/redteam/commands/init.d.ts.map +1 -1
  200. package/dist/src/redteam/commands/init.js +47 -12
  201. package/dist/src/redteam/commands/init.js.map +1 -1
  202. package/dist/src/redteam/commands/poison.d.ts +3 -0
  203. package/dist/src/redteam/commands/poison.d.ts.map +1 -0
  204. package/dist/src/redteam/commands/poison.js +165 -0
  205. package/dist/src/redteam/commands/poison.js.map +1 -0
  206. package/dist/src/redteam/commands/run.d.ts.map +1 -1
  207. package/dist/src/redteam/commands/run.js +2 -0
  208. package/dist/src/redteam/commands/run.js.map +1 -1
  209. package/dist/src/redteam/constants.d.ts +6 -5
  210. package/dist/src/redteam/constants.d.ts.map +1 -1
  211. package/dist/src/redteam/constants.js +54 -37
  212. package/dist/src/redteam/constants.js.map +1 -1
  213. package/dist/src/redteam/extraction/util.js +1 -1
  214. package/dist/src/redteam/extraction/util.js.map +1 -1
  215. package/dist/src/redteam/graders.d.ts +34 -32
  216. package/dist/src/redteam/graders.d.ts.map +1 -1
  217. package/dist/src/redteam/graders.js +34 -33
  218. package/dist/src/redteam/graders.js.map +1 -1
  219. package/dist/src/redteam/index.d.ts.map +1 -1
  220. package/dist/src/redteam/index.js +9 -2
  221. package/dist/src/redteam/index.js.map +1 -1
  222. package/dist/src/redteam/plugins/bfla.d.ts.map +1 -1
  223. package/dist/src/redteam/plugins/bfla.js +5 -3
  224. package/dist/src/redteam/plugins/bfla.js.map +1 -1
  225. package/dist/src/redteam/plugins/bola.js +3 -3
  226. package/dist/src/redteam/plugins/index.d.ts.map +1 -1
  227. package/dist/src/redteam/plugins/index.js +3 -2
  228. package/dist/src/redteam/plugins/index.js.map +1 -1
  229. package/dist/src/redteam/plugins/intent.d.ts +22 -0
  230. package/dist/src/redteam/plugins/intent.d.ts.map +1 -0
  231. package/dist/src/redteam/plugins/intent.js +100 -0
  232. package/dist/src/redteam/plugins/intent.js.map +1 -0
  233. package/dist/src/redteam/plugins/pii.d.ts.map +1 -1
  234. package/dist/src/redteam/plugins/pii.js +21 -14
  235. package/dist/src/redteam/plugins/pii.js.map +1 -1
  236. package/dist/src/redteam/plugins/rbac.d.ts.map +1 -1
  237. package/dist/src/redteam/plugins/rbac.js +5 -4
  238. package/dist/src/redteam/plugins/rbac.js.map +1 -1
  239. package/dist/src/redteam/plugins/sqlInjection.d.ts.map +1 -1
  240. package/dist/src/redteam/plugins/sqlInjection.js +13 -4
  241. package/dist/src/redteam/plugins/sqlInjection.js.map +1 -1
  242. package/dist/src/redteam/providers/crescendo/index.d.ts.map +1 -1
  243. package/dist/src/redteam/providers/crescendo/index.js +6 -4
  244. package/dist/src/redteam/providers/crescendo/index.js.map +1 -1
  245. package/dist/src/redteam/providers/goat.d.ts +2 -0
  246. package/dist/src/redteam/providers/goat.d.ts.map +1 -1
  247. package/dist/src/redteam/providers/goat.js +10 -3
  248. package/dist/src/redteam/providers/goat.js.map +1 -1
  249. package/dist/src/redteam/providers/iterative.d.ts.map +1 -1
  250. package/dist/src/redteam/providers/iterative.js +4 -2
  251. package/dist/src/redteam/providers/iterative.js.map +1 -1
  252. package/dist/src/redteam/providers/iterativeImage.d.ts.map +1 -1
  253. package/dist/src/redteam/providers/iterativeImage.js +4 -2
  254. package/dist/src/redteam/providers/iterativeImage.js.map +1 -1
  255. package/dist/src/redteam/providers/iterativeTree.d.ts +3 -1
  256. package/dist/src/redteam/providers/iterativeTree.d.ts.map +1 -1
  257. package/dist/src/redteam/providers/iterativeTree.js +5 -3
  258. package/dist/src/redteam/providers/iterativeTree.js.map +1 -1
  259. package/dist/src/redteam/providers/shared.d.ts +2 -2
  260. package/dist/src/redteam/providers/shared.d.ts.map +1 -1
  261. package/dist/src/redteam/providers/shared.js +2 -2
  262. package/dist/src/redteam/providers/shared.js.map +1 -1
  263. package/dist/src/redteam/strategies/mathPrompt.js +1 -1
  264. package/dist/src/redteam/strategies/mathPrompt.js.map +1 -1
  265. package/dist/src/redteam/strategies/multilingual.js +1 -1
  266. package/dist/src/redteam/strategies/multilingual.js.map +1 -1
  267. package/dist/src/redteam/types.d.ts +1 -0
  268. package/dist/src/redteam/types.d.ts.map +1 -1
  269. package/dist/src/remoteGrading.js +1 -1
  270. package/dist/src/remoteGrading.js.map +1 -1
  271. package/dist/src/telemetry.d.ts +2 -2
  272. package/dist/src/types/index.d.ts +4737 -12
  273. package/dist/src/types/index.d.ts.map +1 -1
  274. package/dist/src/types/index.js +23 -26
  275. package/dist/src/types/index.js.map +1 -1
  276. package/dist/src/types/providers.d.ts +12 -0
  277. package/dist/src/types/providers.d.ts.map +1 -1
  278. package/dist/src/types/providers.js.map +1 -1
  279. package/dist/src/util/config/load.d.ts +1 -1
  280. package/dist/src/util/config/load.d.ts.map +1 -1
  281. package/dist/src/util/config/load.js +15 -2
  282. package/dist/src/util/config/load.js.map +1 -1
  283. package/dist/src/util/index.d.ts +34 -0
  284. package/dist/src/util/index.d.ts.map +1 -1
  285. package/dist/src/validators/providers.d.ts +391 -0
  286. package/dist/src/validators/providers.d.ts.map +1 -1
  287. package/dist/src/validators/providers.js +18 -0
  288. package/dist/src/validators/providers.js.map +1 -1
  289. package/dist/src/validators/redteam.d.ts +136 -0
  290. package/dist/src/validators/redteam.d.ts.map +1 -1
  291. package/dist/test/assertions/bleu.test.d.ts +2 -0
  292. package/dist/test/assertions/bleu.test.d.ts.map +1 -0
  293. package/dist/test/assertions/bleu.test.js +162 -0
  294. package/dist/test/assertions/bleu.test.js.map +1 -0
  295. package/dist/test/assertions/index.test.js +276 -297
  296. package/dist/test/assertions/index.test.js.map +1 -1
  297. package/dist/test/assertions/json.test.d.ts +2 -0
  298. package/dist/test/assertions/json.test.d.ts.map +1 -0
  299. package/dist/test/assertions/json.test.js +36 -0
  300. package/dist/test/assertions/json.test.js.map +1 -0
  301. package/dist/test/assertions/sql.test.d.ts +2 -0
  302. package/dist/test/assertions/sql.test.d.ts.map +1 -0
  303. package/dist/test/assertions/sql.test.js +280 -0
  304. package/dist/test/assertions/sql.test.js.map +1 -0
  305. package/dist/test/commands/eval/filterTests.test.js +30 -0
  306. package/dist/test/commands/eval/filterTests.test.js.map +1 -1
  307. package/dist/test/factories/evalFactory.d.ts +155 -1
  308. package/dist/test/factories/evalFactory.d.ts.map +1 -1
  309. package/dist/test/fetch.test.js +17 -0
  310. package/dist/test/fetch.test.js.map +1 -1
  311. package/dist/test/onboarding.test.js +126 -1
  312. package/dist/test/onboarding.test.js.map +1 -1
  313. package/dist/test/providers/anthropic.test.js +120 -0
  314. package/dist/test/providers/anthropic.test.js.map +1 -1
  315. package/dist/test/providers/azure.test.js +22 -25
  316. package/dist/test/providers/azure.test.js.map +1 -1
  317. package/dist/test/providers/bedrock.test.js +178 -55
  318. package/dist/test/providers/bedrock.test.js.map +1 -1
  319. package/dist/test/providers/index.test.js +7 -7
  320. package/dist/test/providers/index.test.js.map +1 -1
  321. package/dist/test/providers/portkey.test.d.ts +2 -0
  322. package/dist/test/providers/portkey.test.d.ts.map +1 -0
  323. package/dist/test/providers/portkey.test.js +46 -0
  324. package/dist/test/providers/portkey.test.js.map +1 -0
  325. package/dist/test/redteam/commands/init.test.d.ts +2 -0
  326. package/dist/test/redteam/commands/init.test.d.ts.map +1 -0
  327. package/dist/test/redteam/commands/init.test.js +109 -0
  328. package/dist/test/redteam/commands/init.test.js.map +1 -0
  329. package/dist/test/redteam/plugins/pluginDocumentation.test.js +4 -1
  330. package/dist/test/redteam/plugins/pluginDocumentation.test.js.map +1 -1
  331. package/dist/test/redteam/providers/goat.test.js +1 -1
  332. package/dist/test/redteam/providers/goat.test.js.map +1 -1
  333. package/dist/test/redteam/providers/iterativeTree.test.js +8 -3
  334. package/dist/test/redteam/providers/iterativeTree.test.js.map +1 -1
  335. package/dist/test/util/config/load.test.js +44 -1
  336. package/dist/test/util/config/load.test.js.map +1 -1
  337. package/dist/tsconfig.tsbuildinfo +1 -1
  338. package/package.json +19 -17
  339. package/dist/src/providers/azureopenai.d.ts.map +0 -1
  340. package/dist/src/providers/azureopenai.js.map +0 -1
  341. package/dist/src/providers/azureopenaiUtil.d.ts.map +0 -1
  342. package/dist/src/providers/azureopenaiUtil.js.map +0 -1
  343. package/dist/src/redteam/eval/excessive-agency/llm_rubric-20240617.json +0 -10
  344. package/dist/src/redteam/eval/excessive-agency/llm_rubric-20240618.json +0 -10
  345. package/dist/src/redteam/eval/harmful/llm_rubric-20240723.json +0 -10
  346. package/dist/src/redteam/eval/harmful/llm_rubric-20240724.json +0 -10
  347. package/dist/test/is-sql-tests/node-sql-parser.test.d.ts +0 -2
  348. package/dist/test/is-sql-tests/node-sql-parser.test.d.ts.map +0 -1
  349. package/dist/test/is-sql-tests/node-sql-parser.test.js +0 -179
  350. package/dist/test/is-sql-tests/node-sql-parser.test.js.map +0 -1
@@ -5,20 +5,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const dedent_1 = __importDefault(require("dedent"));
7
7
  const bedrock_1 = require("../../src/providers/bedrock");
8
- jest.mock('@aws-sdk/client-bedrock-runtime', () => {
9
- return {
10
- BedrockRuntime: jest.fn().mockImplementation(() => {
11
- return {
12
- invokeModel: jest.fn(),
13
- };
14
- }),
15
- };
16
- });
8
+ const bedrock_2 = require("../../src/providers/bedrock");
9
+ jest.mock('@aws-sdk/client-bedrock-runtime', () => ({
10
+ BedrockRuntime: jest.fn().mockImplementation(() => ({
11
+ invokeModel: jest.fn(),
12
+ })),
13
+ }));
14
+ const { BedrockRuntime } = jest.requireMock('@aws-sdk/client-bedrock-runtime');
17
15
  jest.mock('@smithy/node-http-handler', () => {
18
16
  return {
19
17
  NodeHttpHandler: jest.fn(),
20
18
  };
21
- }, { virtual: true });
19
+ });
22
20
  jest.mock('proxy-agent', () => jest.fn());
23
21
  jest.mock('../../src/cache', () => ({
24
22
  getCache: jest.fn(),
@@ -29,17 +27,27 @@ jest.mock('../../src/logger', () => ({
29
27
  warn: jest.fn(),
30
28
  error: jest.fn(),
31
29
  }));
30
+ class TestBedrockProvider extends bedrock_1.AwsBedrockGenericProvider {
31
+ constructor(config = {}) {
32
+ super('test-model', { config });
33
+ this.modelName = 'test-model';
34
+ }
35
+ async getClient() {
36
+ return this.getBedrockInstance();
37
+ }
38
+ async generateText(prompt, options) {
39
+ return '';
40
+ }
41
+ async generateChat(messages, options) {
42
+ return {};
43
+ }
44
+ }
32
45
  describe('AwsBedrockGenericProvider', () => {
33
- let BedrockRuntime;
34
46
  beforeEach(() => {
35
- jest.resetModules();
36
- // eslint-disable-next-line @typescript-eslint/no-require-imports
37
- BedrockRuntime = require('@aws-sdk/client-bedrock-runtime').BedrockRuntime;
38
47
  jest.clearAllMocks();
39
48
  });
40
49
  afterEach(() => {
41
- delete process.env.HTTP_PROXY;
42
- delete process.env.HTTPS_PROXY;
50
+ jest.clearAllMocks();
43
51
  });
44
52
  it('should create Bedrock instance without proxy settings', async () => {
45
53
  const provider = new (class extends bedrock_1.AwsBedrockGenericProvider {
@@ -86,7 +94,7 @@ describe('AwsBedrockGenericProvider', () => {
86
94
  expect(BedrockRuntime).not.toHaveBeenCalledWith(expect.objectContaining({ credentials: expect.anything() }));
87
95
  });
88
96
  describe('BEDROCK_MODEL CLAUDE_MESSAGES', () => {
89
- const modelHandler = bedrock_1.BEDROCK_MODEL.CLAUDE_MESSAGES;
97
+ const modelHandler = bedrock_2.BEDROCK_MODEL.CLAUDE_MESSAGES;
90
98
  it('should include tools and tool_choice in params when provided', () => {
91
99
  const config = {
92
100
  region: 'us-east-1',
@@ -149,9 +157,90 @@ describe('AwsBedrockGenericProvider', () => {
149
157
  expect(params).toHaveProperty('tool_choice');
150
158
  expect(params.tool_choice).toEqual({ type: 'tool', name: 'get_current_weather' });
151
159
  });
160
+ it('should handle JSON message array with image content', () => {
161
+ const config = {
162
+ region: 'us-east-1',
163
+ };
164
+ const prompt = JSON.stringify([
165
+ {
166
+ role: 'user',
167
+ content: [
168
+ { type: 'text', text: "What's in this image?" },
169
+ {
170
+ type: 'image',
171
+ source: {
172
+ type: 'base64',
173
+ media_type: 'image/jpeg',
174
+ data: 'base64EncodedImageData',
175
+ },
176
+ },
177
+ ],
178
+ },
179
+ ]);
180
+ const params = bedrock_2.BEDROCK_MODEL.CLAUDE_MESSAGES.params(config, prompt);
181
+ expect(params.messages).toEqual([
182
+ {
183
+ role: 'user',
184
+ content: [
185
+ { type: 'text', text: "What's in this image?" },
186
+ {
187
+ type: 'image',
188
+ source: {
189
+ type: 'base64',
190
+ media_type: 'image/jpeg',
191
+ data: 'base64EncodedImageData',
192
+ },
193
+ },
194
+ ],
195
+ },
196
+ ]);
197
+ });
198
+ it('should handle JSON message array with system message and image content', () => {
199
+ const config = {
200
+ region: 'us-east-1',
201
+ };
202
+ const prompt = JSON.stringify([
203
+ { role: 'system', content: 'You are a helpful assistant.' },
204
+ {
205
+ role: 'user',
206
+ content: [
207
+ { type: 'text', text: 'Describe this image:' },
208
+ {
209
+ type: 'image',
210
+ source: {
211
+ type: 'base64',
212
+ media_type: 'image/png',
213
+ data: 'base64EncodedImageData',
214
+ },
215
+ },
216
+ ],
217
+ },
218
+ ]);
219
+ const params = bedrock_2.BEDROCK_MODEL.CLAUDE_MESSAGES.params(config, prompt);
220
+ expect(params.messages).toEqual([
221
+ {
222
+ role: 'system',
223
+ content: [{ type: 'text', text: 'You are a helpful assistant.' }],
224
+ },
225
+ {
226
+ role: 'user',
227
+ content: [
228
+ { type: 'text', text: 'Describe this image:' },
229
+ {
230
+ type: 'image',
231
+ source: {
232
+ type: 'base64',
233
+ media_type: 'image/png',
234
+ data: 'base64EncodedImageData',
235
+ },
236
+ },
237
+ ],
238
+ },
239
+ ]);
240
+ });
152
241
  });
153
242
  describe('BEDROCK_MODEL AI21', () => {
154
- const modelHandler = bedrock_1.BEDROCK_MODEL.AI21;
243
+ const modelHandler = bedrock_2.BEDROCK_MODEL.AI21;
155
244
  it('should include AI21-specific parameters', () => {
156
245
  const config = {
157
246
  region: 'us-east-1',
@@ -197,7 +286,7 @@ describe('AwsBedrockGenericProvider', () => {
197
286
  });
198
287
  });
199
288
  describe('getCredentials', () => {
200
- it('should return credentials if accessKeyId and secretAccessKey are provided', () => {
289
+ it('should return credentials if accessKeyId and secretAccessKey are provided', async () => {
201
290
  const provider = new (class extends bedrock_1.AwsBedrockGenericProvider {
202
291
  constructor() {
203
292
  super('test-model', {
@@ -208,13 +297,13 @@ describe('AwsBedrockGenericProvider', () => {
208
297
  });
209
298
  }
210
299
  })();
211
- const credentials = provider.getCredentials();
300
+ const credentials = await provider.getCredentials();
212
301
  expect(credentials).toEqual({
213
302
  accessKeyId: 'test-access-key',
214
303
  secretAccessKey: 'test-secret-key',
215
304
  });
216
305
  });
217
- it('should return undefined if accessKeyId or secretAccessKey is missing', () => {
306
+ it('should return undefined if accessKeyId or secretAccessKey is missing', async () => {
218
307
  const provider = new (class extends bedrock_1.AwsBedrockGenericProvider {
219
308
  constructor() {
220
309
  super('test-model', {
@@ -224,7 +313,41 @@ describe('AwsBedrockGenericProvider', () => {
224
313
  });
225
314
  }
226
315
  })();
227
- const credentials = provider.getCredentials();
316
+ const credentials = await provider.getCredentials();
317
+ expect(credentials).toBeUndefined();
318
+ });
319
+ it('should return credentials when accessKeyId and secretAccessKey are provided', async () => {
320
+ const provider = new TestBedrockProvider({
321
+ accessKeyId: 'test-key',
322
+ secretAccessKey: 'test-secret',
323
+ sessionToken: 'test-token',
324
+ });
325
+ const credentials = await provider.getCredentials();
326
+ expect(credentials).toEqual({
327
+ accessKeyId: 'test-key',
328
+ secretAccessKey: 'test-secret',
329
+ sessionToken: 'test-token',
330
+ });
331
+ });
332
+ it('should return SSO credential provider when profile is specified', async () => {
333
+ const mockSSOProvider = jest.fn();
334
+ jest.mock('@aws-sdk/credential-provider-sso', () => ({
335
+ fromSSO: (config) => {
336
+ mockSSOProvider();
337
+ expect(config).toEqual({ profile: 'test-profile' });
338
+ return 'sso-provider';
339
+ },
340
+ }));
341
+ const provider = new TestBedrockProvider({
342
+ profile: 'test-profile',
343
+ });
344
+ const credentials = await provider.getCredentials();
345
+ expect(mockSSOProvider).toHaveBeenCalledWith();
346
+ expect(credentials).toBe('sso-provider');
347
+ });
348
+ it('should return undefined when no credentials are provided', async () => {
349
+ const provider = new TestBedrockProvider({});
350
+ const credentials = await provider.getCredentials();
228
351
  expect(credentials).toBeUndefined();
229
352
  });
230
353
  });
@@ -232,110 +355,110 @@ describe('AwsBedrockGenericProvider', () => {
232
355
  describe('addConfigParam', () => {
233
356
  it('should add config value if provided', () => {
234
357
  const params = {};
235
- (0, bedrock_1.addConfigParam)(params, 'key', 'configValue');
358
+ (0, bedrock_2.addConfigParam)(params, 'key', 'configValue');
236
359
  expect(params.key).toBe('configValue');
237
360
  });
238
361
  it('should add env value if config value is not provided', () => {
239
362
  const params = {};
240
363
  process.env.TEST_ENV_KEY = 'envValue';
241
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY);
364
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY);
242
365
  expect(params.key).toBe('envValue');
243
366
  delete process.env.TEST_ENV_KEY;
244
367
  });
245
368
  it('should add default value if neither config nor env value is provided', () => {
246
369
  const params = {};
247
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, undefined, 'defaultValue');
370
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, undefined, 'defaultValue');
248
371
  expect(params.key).toBe('defaultValue');
249
372
  });
250
373
  it('should prioritize config value over env and default values', () => {
251
374
  const params = {};
252
375
  process.env.TEST_ENV_KEY = 'envValue';
253
- (0, bedrock_1.addConfigParam)(params, 'key', 'configValue', process.env.TEST_ENV_KEY, 'defaultValue');
376
+ (0, bedrock_2.addConfigParam)(params, 'key', 'configValue', process.env.TEST_ENV_KEY, 'defaultValue');
254
377
  expect(params.key).toBe('configValue');
255
378
  delete process.env.TEST_ENV_KEY;
256
379
  });
257
380
  it('should prioritize env value over default value if config value is not provided', () => {
258
381
  const params = {};
259
382
  process.env.TEST_ENV_KEY = 'envValue';
260
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 'defaultValue');
383
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 'defaultValue');
261
384
  expect(params.key).toBe('envValue');
262
385
  delete process.env.TEST_ENV_KEY;
263
386
  });
264
387
  it('should parse env value if default value is a number', () => {
265
388
  const params = {};
266
389
  process.env.TEST_ENV_KEY = '42';
267
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 0);
390
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 0);
268
391
  expect(params.key).toBe(42);
269
392
  delete process.env.TEST_ENV_KEY;
270
393
  });
271
394
  it('should handle undefined config, env, and default values gracefully', () => {
272
395
  const params = {};
273
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, undefined, undefined);
396
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, undefined, undefined);
274
397
  expect(params.key).toBeUndefined();
275
398
  });
276
399
  it('should correctly parse non-number string values', () => {
277
400
  const params = {};
278
401
  process.env.TEST_ENV_KEY = 'nonNumberString';
279
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 0);
402
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 0);
280
403
  expect(params.key).toBe(0);
281
404
  delete process.env.TEST_ENV_KEY;
282
405
  });
283
406
  it('should correctly parse empty string values', () => {
284
407
  const params = {};
285
408
  process.env.TEST_ENV_KEY = '';
286
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 'defaultValue');
409
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 'defaultValue');
287
410
  expect(params.key).toBe('');
288
411
  delete process.env.TEST_ENV_KEY;
289
412
  });
290
413
  it('should handle env value not set', () => {
291
414
  const params = {};
292
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, process.env.UNSET_ENV_KEY, 'defaultValue');
415
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, process.env.UNSET_ENV_KEY, 'defaultValue');
293
416
  expect(params.key).toBe('defaultValue');
294
417
  });
295
418
  it('should handle config values that are objects', () => {
296
419
  const params = {};
297
420
  const configValue = { nestedKey: 'nestedValue' };
298
- (0, bedrock_1.addConfigParam)(params, 'key', configValue);
421
+ (0, bedrock_2.addConfigParam)(params, 'key', configValue);
299
422
  expect(params.key).toEqual(configValue);
300
423
  });
301
424
  it('should handle config values that are arrays', () => {
302
425
  const params = {};
303
426
  const configValue = ['value1', 'value2'];
304
- (0, bedrock_1.addConfigParam)(params, 'key', configValue);
427
+ (0, bedrock_2.addConfigParam)(params, 'key', configValue);
305
428
  expect(params.key).toEqual(configValue);
306
429
  });
307
430
  it('should handle special characters in env values', () => {
308
431
  const params = {};
309
432
  process.env.TEST_ENV_KEY = '!@#$%^&*()_+';
310
- (0, bedrock_1.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 'defaultValue');
433
+ (0, bedrock_2.addConfigParam)(params, 'key', undefined, process.env.TEST_ENV_KEY, 'defaultValue');
311
434
  expect(params.key).toBe('!@#$%^&*()_+');
312
435
  delete process.env.TEST_ENV_KEY;
313
436
  });
314
437
  });
315
438
  describe('parseValue', () => {
316
439
  it('should return the original value if defaultValue is not a number', () => {
317
- expect((0, bedrock_1.parseValue)('stringValue', 'defaultValue')).toBe('stringValue');
440
+ expect((0, bedrock_2.parseValue)('stringValue', 'defaultValue')).toBe('stringValue');
318
441
  });
319
442
  it('should return parsed float value if defaultValue is a number', () => {
320
- expect((0, bedrock_1.parseValue)('42.5', 0)).toBe(42.5);
443
+ expect((0, bedrock_2.parseValue)('42.5', 0)).toBe(42.5);
321
444
  });
322
445
  it('should return NaN for non-numeric strings if defaultValue is a number', () => {
323
- expect((0, bedrock_1.parseValue)('notANumber', 0)).toBe(0);
446
+ expect((0, bedrock_2.parseValue)('notANumber', 0)).toBe(0);
324
447
  });
325
448
  it('should return 0 for an empty string if defaultValue is a number', () => {
326
- expect((0, bedrock_1.parseValue)('', 0)).toBe(0);
449
+ expect((0, bedrock_2.parseValue)('', 0)).toBe(0);
327
450
  });
328
451
  it('should return null for a null value if defaultValue is not a number', () => {
329
- expect((0, bedrock_1.parseValue)(null, 'defaultValue')).toBeNull();
452
+ expect((0, bedrock_2.parseValue)(null, 'defaultValue')).toBeNull();
330
453
  });
331
454
  it('should return undefined for an undefined value if defaultValue is not a number', () => {
332
- expect((0, bedrock_1.parseValue)(undefined, 'defaultValue')).toBeUndefined();
455
+ expect((0, bedrock_2.parseValue)(undefined, 'defaultValue')).toBeUndefined();
333
456
  });
334
457
  });
335
458
  describe('llama', () => {
336
459
  describe('getLlamaModelHandler', () => {
337
460
  describe('LLAMA2', () => {
338
- const handler = (0, bedrock_1.getLlamaModelHandler)(bedrock_1.LlamaVersion.V2);
461
+ const handler = (0, bedrock_2.getLlamaModelHandler)(bedrock_2.LlamaVersion.V2);
339
462
  it('should generate correct prompt for a single user message', () => {
340
463
  const config = { temperature: 0.5, top_p: 0.9, max_gen_len: 512 };
341
464
  const prompt = 'Describe the purpose of a "hello world" program in one sentence.';
@@ -379,7 +502,7 @@ describe('llama', () => {
379
502
  });
380
503
  });
381
504
  describe('LLAMA3', () => {
382
- const handler = (0, bedrock_1.getLlamaModelHandler)(bedrock_1.LlamaVersion.V3);
505
+ const handler = (0, bedrock_2.getLlamaModelHandler)(bedrock_2.LlamaVersion.V3);
383
506
  it('should generate correct prompt for a single user message', () => {
384
507
  const config = { temperature: 0.5, top_p: 0.9, max_gen_len: 512 };
385
508
  const prompt = 'Describe the purpose of a "hello world" program in one sentence.';
@@ -431,7 +554,7 @@ describe('llama', () => {
431
554
  });
432
555
  });
433
556
  describe('LLAMA3_1', () => {
434
- const handler = (0, bedrock_1.getLlamaModelHandler)(bedrock_1.LlamaVersion.V3_1);
557
+ const handler = (0, bedrock_2.getLlamaModelHandler)(bedrock_2.LlamaVersion.V3_1);
435
558
  it('should generate correct prompt for a single user message', () => {
436
559
  const config = { temperature: 0.5, top_p: 0.9, max_gen_len: 512 };
437
560
  const prompt = 'Describe the purpose of a "hello world" program in one sentence.';
@@ -446,7 +569,7 @@ describe('llama', () => {
446
569
  });
447
570
  });
448
571
  describe('LLAMA3_2', () => {
449
- const handler = (0, bedrock_1.getLlamaModelHandler)(bedrock_1.LlamaVersion.V3_2);
572
+ const handler = (0, bedrock_2.getLlamaModelHandler)(bedrock_2.LlamaVersion.V3_2);
450
573
  it('should generate correct prompt for a single user message', () => {
451
574
  const config = { temperature: 0.5, top_p: 0.9, max_new_tokens: 512 };
452
575
  const prompt = 'Describe the purpose of a "hello world" program in one sentence.';
@@ -468,10 +591,10 @@ describe('llama', () => {
468
591
  });
469
592
  });
470
593
  it('should throw an error for unsupported LLAMA version', () => {
471
- expect(() => (0, bedrock_1.getLlamaModelHandler)(1)).toThrow('Unsupported LLAMA version: 1');
594
+ expect(() => (0, bedrock_2.getLlamaModelHandler)(1)).toThrow('Unsupported LLAMA version: 1');
472
595
  });
473
596
  it('should handle output correctly', () => {
474
- const handler = (0, bedrock_1.getLlamaModelHandler)(bedrock_1.LlamaVersion.V2);
597
+ const handler = (0, bedrock_2.getLlamaModelHandler)(bedrock_2.LlamaVersion.V2);
475
598
  expect(handler.output({ generation: 'Test response' })).toBe('Test response');
476
599
  expect(handler.output({})).toBeUndefined();
477
600
  });
@@ -485,7 +608,7 @@ describe('llama', () => {
485
608
  },
486
609
  ];
487
610
  const expectedPrompt = '<s>[INST] Describe the purpose of a "hello world" program in one sentence. [/INST]';
488
- expect((0, bedrock_1.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
611
+ expect((0, bedrock_2.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
489
612
  });
490
613
  it('should handle a system message followed by a user message', () => {
491
614
  const messages = [
@@ -499,7 +622,7 @@ describe('llama', () => {
499
622
 
500
623
  What is the capital of France? [/INST]
501
624
  `;
502
- expect((0, bedrock_1.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
625
+ expect((0, bedrock_2.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
503
626
  });
504
627
  it('should handle a system message, user message, and assistant response', () => {
505
628
  const messages = [
@@ -514,7 +637,7 @@ describe('llama', () => {
514
637
 
515
638
  What is the capital of France? [/INST] The capital of France is Paris. </s>
516
639
  `;
517
- expect((0, bedrock_1.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
640
+ expect((0, bedrock_2.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
518
641
  });
519
642
  it('should handle multiple turns of conversation', () => {
520
643
  // see https://huggingface.co/blog/llama2#how-to-prompt-llama-2
@@ -531,7 +654,7 @@ describe('llama', () => {
531
654
 
532
655
  Hello [/INST] Hi there! How can I assist you today? </s><s>[INST] What's the weather like? [/INST]
533
656
  `;
534
- expect((0, bedrock_1.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
657
+ expect((0, bedrock_2.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
535
658
  });
536
659
  it('should handle only a system message correctly', () => {
537
660
  const messages = [
@@ -543,7 +666,7 @@ describe('llama', () => {
543
666
  <</SYS>>
544
667
 
545
668
  `}\n\n`;
546
- expect((0, bedrock_1.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
669
+ expect((0, bedrock_2.formatPromptLlama2Chat)(messages)).toBe(expectedPrompt);
547
670
  });
548
671
  });
549
672
  describe('formatPromptLlama3Instruct', () => {
@@ -553,7 +676,7 @@ describe('llama', () => {
553
676
  <|begin_of_text|><|start_header_id|>user<|end_header_id|>
554
677
 
555
678
  Hello, how are you?<|eot_id|><|start_header_id|>assistant<|end_header_id|>`;
556
- expect((0, bedrock_1.formatPromptLlama3Instruct)(messages)).toBe(expected);
679
+ expect((0, bedrock_2.formatPromptLlama3Instruct)(messages)).toBe(expected);
557
680
  });
558
681
  it('should format multiple messages correctly', () => {
559
682
  const messages = [
@@ -569,7 +692,7 @@ describe('llama', () => {
569
692
  Hi there! How can I help you?<|eot_id|><|start_header_id|>user<|end_header_id|>
570
693
 
571
694
  What's the weather like?<|eot_id|><|start_header_id|>assistant<|end_header_id|>`;
572
- expect((0, bedrock_1.formatPromptLlama3Instruct)(messages)).toBe(expected);
695
+ expect((0, bedrock_2.formatPromptLlama3Instruct)(messages)).toBe(expected);
573
696
  });
574
697
  it('should handle system messages correctly', () => {
575
698
  const messages = [
@@ -582,7 +705,7 @@ describe('llama', () => {
582
705
  You are a helpful assistant.<|eot_id|><|start_header_id|>user<|end_header_id|>
583
706
 
584
707
  Hello<|eot_id|><|start_header_id|>assistant<|end_header_id|>`;
585
- expect((0, bedrock_1.formatPromptLlama3Instruct)(messages)).toBe(expected);
708
+ expect((0, bedrock_2.formatPromptLlama3Instruct)(messages)).toBe(expected);
586
709
  });
587
710
  });
588
711
  });
@@ -1 +1 @@
1
- {"version":3,"file":"bedrock.test.js","sourceRoot":"","sources":["../../../test/providers/bedrock.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bedrock.test.js","sourceRoot":"","sources":["../../../test/providers/bedrock.test.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,7 @@ const esm_1 = require("../../src/esm");
37
37
  const logger_1 = __importDefault(require("../../src/logger"));
38
38
  const providers_1 = require("../../src/providers");
39
39
  const anthropic_1 = require("../../src/providers/anthropic");
40
- const azureopenai_1 = require("../../src/providers/azureopenai");
40
+ const azure_1 = require("../../src/providers/azure");
41
41
  const bedrock_1 = require("../../src/providers/bedrock");
42
42
  const cloudflare_ai_1 = require("../../src/providers/cloudflare-ai");
43
43
  const huggingface_1 = require("../../src/providers/huggingface");
@@ -308,7 +308,7 @@ describe('call provider apis', () => {
308
308
  })),
309
309
  };
310
310
  mockFetch.mockResolvedValue(mockResponse);
311
- const provider = new azureopenai_1.AzureOpenAiCompletionProvider('text-davinci-003');
311
+ const provider = new azure_1.AzureCompletionProvider('text-davinci-003');
312
312
  const result = await provider.callApi('Test prompt');
313
313
  expect(mockFetch).toHaveBeenCalledTimes(1);
314
314
  expect(result.output).toBe('Test output');
@@ -323,7 +323,7 @@ describe('call provider apis', () => {
323
323
  })),
324
324
  };
325
325
  mockFetch.mockResolvedValue(mockResponse);
326
- const provider = new azureopenai_1.AzureOpenAiChatCompletionProvider('gpt-4o-mini');
326
+ const provider = new azure_1.AzureChatCompletionProvider('gpt-4o-mini');
327
327
  const result = await provider.callApi(JSON.stringify([{ role: 'user', content: 'Test prompt' }]));
328
328
  expect(mockFetch).toHaveBeenCalledTimes(1);
329
329
  expect(result.output).toBe('Test output');
@@ -351,7 +351,7 @@ describe('call provider apis', () => {
351
351
  })),
352
352
  };
353
353
  mockFetch.mockResolvedValue(mockResponse);
354
- const provider = new azureopenai_1.AzureOpenAiChatCompletionProvider('gpt-4o-mini', {
354
+ const provider = new azure_1.AzureChatCompletionProvider('gpt-4o-mini', {
355
355
  config: { dataSources },
356
356
  });
357
357
  const result = await provider.callApi(JSON.stringify([
@@ -372,7 +372,7 @@ describe('call provider apis', () => {
372
372
  })),
373
373
  };
374
374
  mockFetch.mockResolvedValue(mockResponse);
375
- const provider = new azureopenai_1.AzureOpenAiChatCompletionProvider('gpt-4o-mini');
375
+ const provider = new azure_1.AzureChatCompletionProvider('gpt-4o-mini');
376
376
  const result = await provider.callApi(JSON.stringify([{ role: 'user', content: 'Test prompt' }]));
377
377
  expect(mockFetch).toHaveBeenCalledTimes(1);
378
378
  expect(result.output).toBe('Test output');
@@ -1045,11 +1045,11 @@ describe('loadApiProvider', () => {
1045
1045
  });
1046
1046
  it('loadApiProvider with azureopenai:completion:modelName', async () => {
1047
1047
  const provider = await (0, providers_1.loadApiProvider)('azureopenai:completion:text-davinci-003');
1048
- expect(provider).toBeInstanceOf(azureopenai_1.AzureOpenAiCompletionProvider);
1048
+ expect(provider).toBeInstanceOf(azure_1.AzureCompletionProvider);
1049
1049
  });
1050
1050
  it('loadApiProvider with azureopenai:chat:modelName', async () => {
1051
1051
  const provider = await (0, providers_1.loadApiProvider)('azureopenai:chat:gpt-3.5-turbo');
1052
- expect(provider).toBeInstanceOf(azureopenai_1.AzureOpenAiChatCompletionProvider);
1052
+ expect(provider).toBeInstanceOf(azure_1.AzureChatCompletionProvider);
1053
1053
  });
1054
1054
  it('loadApiProvider with anthropic:completion', async () => {
1055
1055
  const provider = await (0, providers_1.loadApiProvider)('anthropic:completion');