promptfoo 0.65.2 → 0.67.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/README.md +9 -9
  2. package/dist/package.json +9 -7
  3. package/dist/src/accounts.d.ts +3 -0
  4. package/dist/src/accounts.d.ts.map +1 -0
  5. package/dist/src/accounts.js +14 -0
  6. package/dist/src/accounts.js.map +1 -0
  7. package/dist/src/assertions.d.ts.map +1 -1
  8. package/dist/src/assertions.js +18 -47
  9. package/dist/src/assertions.js.map +1 -1
  10. package/dist/src/cache.d.ts.map +1 -1
  11. package/dist/src/cache.js +3 -3
  12. package/dist/src/cache.js.map +1 -1
  13. package/dist/src/commands/config.d.ts +3 -0
  14. package/dist/src/commands/config.d.ts.map +1 -0
  15. package/dist/src/commands/config.js +50 -0
  16. package/dist/src/commands/config.js.map +1 -0
  17. package/dist/src/commands/delete.js +1 -1
  18. package/dist/src/commands/delete.js.map +1 -1
  19. package/dist/src/commands/export.d.ts.map +1 -1
  20. package/dist/src/commands/export.js +1 -1
  21. package/dist/src/commands/export.js.map +1 -1
  22. package/dist/src/commands/import.js +1 -1
  23. package/dist/src/commands/import.js.map +1 -1
  24. package/dist/src/commands/list.d.ts.map +1 -1
  25. package/dist/src/commands/list.js +2 -2
  26. package/dist/src/commands/list.js.map +1 -1
  27. package/dist/src/commands/show.d.ts.map +1 -1
  28. package/dist/src/commands/show.js +2 -2
  29. package/dist/src/commands/show.js.map +1 -1
  30. package/dist/src/csv.d.ts.map +1 -1
  31. package/dist/src/csv.js +0 -1
  32. package/dist/src/csv.js.map +1 -1
  33. package/dist/src/database.d.ts.map +1 -1
  34. package/dist/src/database.js +5 -5
  35. package/dist/src/database.js.map +1 -1
  36. package/dist/src/esm.d.ts.map +1 -1
  37. package/dist/src/esm.js +1 -1
  38. package/dist/src/esm.js.map +1 -1
  39. package/dist/src/evaluator.d.ts +18 -0
  40. package/dist/src/evaluator.d.ts.map +1 -1
  41. package/dist/src/evaluator.js +44 -26
  42. package/dist/src/evaluator.js.map +1 -1
  43. package/dist/src/feedback.d.ts.map +1 -1
  44. package/dist/src/feedback.js +2 -2
  45. package/dist/src/feedback.js.map +1 -1
  46. package/dist/src/fetch.d.ts.map +1 -1
  47. package/dist/src/fetch.js.map +1 -1
  48. package/dist/src/globalConfig.d.ts +17 -0
  49. package/dist/src/globalConfig.d.ts.map +1 -0
  50. package/dist/src/globalConfig.js +100 -0
  51. package/dist/src/globalConfig.js.map +1 -0
  52. package/dist/src/googleSheets.d.ts.map +1 -1
  53. package/dist/src/googleSheets.js +6 -6
  54. package/dist/src/googleSheets.js.map +1 -1
  55. package/dist/src/index.d.ts +2 -1
  56. package/dist/src/index.d.ts.map +1 -1
  57. package/dist/src/index.js +4 -4
  58. package/dist/src/index.js.map +1 -1
  59. package/dist/src/integrations/langfuse.js +1 -1
  60. package/dist/src/integrations/langfuse.js.map +1 -1
  61. package/dist/src/main.js +55 -28
  62. package/dist/src/main.js.map +1 -1
  63. package/dist/src/matchers.d.ts.map +1 -1
  64. package/dist/src/matchers.js +19 -18
  65. package/dist/src/matchers.js.map +1 -1
  66. package/dist/src/migrate.d.ts.map +1 -1
  67. package/dist/src/migrate.js +2 -2
  68. package/dist/src/migrate.js.map +1 -1
  69. package/dist/src/onboarding.d.ts.map +1 -1
  70. package/dist/src/onboarding.js +3 -3
  71. package/dist/src/onboarding.js.map +1 -1
  72. package/dist/src/prompts/constants.d.ts +3 -0
  73. package/dist/src/prompts/constants.d.ts.map +1 -0
  74. package/dist/src/prompts/constants.js +16 -0
  75. package/dist/src/prompts/constants.js.map +1 -0
  76. package/dist/src/prompts/external/ragas.d.ts.map +1 -0
  77. package/dist/src/prompts/external/ragas.js.map +1 -0
  78. package/dist/src/{prompts.d.ts → prompts/grading.d.ts} +7 -4
  79. package/dist/src/prompts/grading.d.ts.map +1 -0
  80. package/dist/src/prompts/grading.js +119 -0
  81. package/dist/src/prompts/grading.js.map +1 -0
  82. package/dist/src/prompts/index.d.ts +25 -0
  83. package/dist/src/prompts/index.d.ts.map +1 -0
  84. package/dist/src/prompts/index.js +143 -0
  85. package/dist/src/prompts/index.js.map +1 -0
  86. package/dist/src/prompts/processors/javascript.d.ts +9 -0
  87. package/dist/src/prompts/processors/javascript.d.ts.map +1 -0
  88. package/dist/src/prompts/processors/javascript.js +22 -0
  89. package/dist/src/prompts/processors/javascript.js.map +1 -0
  90. package/dist/src/prompts/processors/json.d.ts +12 -0
  91. package/dist/src/prompts/processors/json.d.ts.map +1 -0
  92. package/dist/src/prompts/processors/json.js +48 -0
  93. package/dist/src/prompts/processors/json.js.map +1 -0
  94. package/dist/src/prompts/processors/jsonl.d.ts +9 -0
  95. package/dist/src/prompts/processors/jsonl.d.ts.map +1 -0
  96. package/dist/src/prompts/processors/jsonl.js +48 -0
  97. package/dist/src/prompts/processors/jsonl.js.map +1 -0
  98. package/dist/src/prompts/processors/python.d.ts +31 -0
  99. package/dist/src/prompts/processors/python.d.ts.map +1 -0
  100. package/dist/src/prompts/processors/python.js +96 -0
  101. package/dist/src/prompts/processors/python.js.map +1 -0
  102. package/dist/src/prompts/processors/string.d.ts +8 -0
  103. package/dist/src/prompts/processors/string.d.ts.map +1 -0
  104. package/dist/src/prompts/processors/string.js +23 -0
  105. package/dist/src/prompts/processors/string.js.map +1 -0
  106. package/dist/src/prompts/processors/text.d.ts +9 -0
  107. package/dist/src/prompts/processors/text.d.ts.map +1 -0
  108. package/dist/src/prompts/processors/text.js +47 -0
  109. package/dist/src/prompts/processors/text.js.map +1 -0
  110. package/dist/src/prompts/processors/yaml.d.ts +13 -0
  111. package/dist/src/prompts/processors/yaml.d.ts.map +1 -0
  112. package/dist/src/prompts/processors/yaml.js +55 -0
  113. package/dist/src/prompts/processors/yaml.js.map +1 -0
  114. package/dist/src/prompts/utils.d.ts +29 -0
  115. package/dist/src/prompts/utils.d.ts.map +1 -0
  116. package/dist/src/prompts/utils.js +143 -0
  117. package/dist/src/prompts/utils.js.map +1 -0
  118. package/dist/src/providers/anthropic.d.ts +1 -0
  119. package/dist/src/providers/anthropic.d.ts.map +1 -1
  120. package/dist/src/providers/anthropic.js +11 -3
  121. package/dist/src/providers/anthropic.js.map +1 -1
  122. package/dist/src/providers/azureopenai.d.ts.map +1 -1
  123. package/dist/src/providers/azureopenai.js +1 -1
  124. package/dist/src/providers/azureopenai.js.map +1 -1
  125. package/dist/src/providers/azureopenaiUtil.d.ts.map +1 -1
  126. package/dist/src/providers/azureopenaiUtil.js +2 -2
  127. package/dist/src/providers/azureopenaiUtil.js.map +1 -1
  128. package/dist/src/providers/bam.d.ts.map +1 -1
  129. package/dist/src/providers/bam.js +1 -1
  130. package/dist/src/providers/bam.js.map +1 -1
  131. package/dist/src/providers/bedrock.d.ts +1 -0
  132. package/dist/src/providers/bedrock.d.ts.map +1 -1
  133. package/dist/src/providers/bedrock.js +21 -4
  134. package/dist/src/providers/bedrock.js.map +1 -1
  135. package/dist/src/providers/cloudflare-ai.d.ts +1 -1
  136. package/dist/src/providers/cloudflare-ai.d.ts.map +1 -1
  137. package/dist/src/providers/cloudflare-ai.js +1 -1
  138. package/dist/src/providers/cloudflare-ai.js.map +1 -1
  139. package/dist/src/providers/cohere.d.ts.map +1 -1
  140. package/dist/src/providers/cohere.js.map +1 -1
  141. package/dist/src/providers/defaults.d.ts +9 -3
  142. package/dist/src/providers/defaults.d.ts.map +1 -1
  143. package/dist/src/providers/defaults.js +22 -3
  144. package/dist/src/providers/defaults.js.map +1 -1
  145. package/dist/src/providers/http.d.ts.map +1 -1
  146. package/dist/src/providers/http.js +2 -2
  147. package/dist/src/providers/http.js.map +1 -1
  148. package/dist/src/providers/huggingface.d.ts +1 -1
  149. package/dist/src/providers/huggingface.d.ts.map +1 -1
  150. package/dist/src/providers/huggingface.js +1 -1
  151. package/dist/src/providers/huggingface.js.map +1 -1
  152. package/dist/src/providers/llama.d.ts.map +1 -1
  153. package/dist/src/providers/llama.js.map +1 -1
  154. package/dist/src/providers/localai.d.ts.map +1 -1
  155. package/dist/src/providers/localai.js +1 -1
  156. package/dist/src/providers/localai.js.map +1 -1
  157. package/dist/src/providers/mistral.d.ts.map +1 -1
  158. package/dist/src/providers/mistral.js +1 -1
  159. package/dist/src/providers/mistral.js.map +1 -1
  160. package/dist/src/providers/ollama.d.ts.map +1 -1
  161. package/dist/src/providers/ollama.js +2 -2
  162. package/dist/src/providers/ollama.js.map +1 -1
  163. package/dist/src/providers/openai.d.ts +1 -1
  164. package/dist/src/providers/openai.d.ts.map +1 -1
  165. package/dist/src/providers/openai.js +2 -2
  166. package/dist/src/providers/openai.js.map +1 -1
  167. package/dist/src/providers/palm.d.ts.map +1 -1
  168. package/dist/src/providers/palm.js +1 -1
  169. package/dist/src/providers/palm.js.map +1 -1
  170. package/dist/src/providers/portkey.d.ts +1 -1
  171. package/dist/src/providers/portkey.d.ts.map +1 -1
  172. package/dist/src/providers/portkey.js.map +1 -1
  173. package/dist/src/providers/promptfoo.d.ts.map +1 -1
  174. package/dist/src/providers/promptfoo.js.map +1 -1
  175. package/dist/src/providers/pythonCompletion.d.ts.map +1 -1
  176. package/dist/src/providers/pythonCompletion.js +3 -3
  177. package/dist/src/providers/pythonCompletion.js.map +1 -1
  178. package/dist/src/providers/replicate.d.ts.map +1 -1
  179. package/dist/src/providers/replicate.js +2 -2
  180. package/dist/src/providers/replicate.js.map +1 -1
  181. package/dist/src/providers/scriptCompletion.d.ts.map +1 -1
  182. package/dist/src/providers/scriptCompletion.js +1 -1
  183. package/dist/src/providers/scriptCompletion.js.map +1 -1
  184. package/dist/src/providers/vertex.d.ts +13 -1
  185. package/dist/src/providers/vertex.d.ts.map +1 -1
  186. package/dist/src/providers/vertex.js +80 -18
  187. package/dist/src/providers/vertex.js.map +1 -1
  188. package/dist/src/providers/vertexUtil.d.ts +1 -0
  189. package/dist/src/providers/vertexUtil.d.ts.map +1 -1
  190. package/dist/src/providers/vertexUtil.js +11 -1
  191. package/dist/src/providers/vertexUtil.js.map +1 -1
  192. package/dist/src/providers/voyage.d.ts.map +1 -1
  193. package/dist/src/providers/voyage.js.map +1 -1
  194. package/dist/src/providers/webhook.d.ts.map +1 -1
  195. package/dist/src/providers/webhook.js +1 -1
  196. package/dist/src/providers/webhook.js.map +1 -1
  197. package/dist/src/providers.d.ts +4 -3
  198. package/dist/src/providers.d.ts.map +1 -1
  199. package/dist/src/providers.js +31 -20
  200. package/dist/src/providers.js.map +1 -1
  201. package/dist/src/python/wrapper.d.ts.map +1 -1
  202. package/dist/src/python/wrapper.js +1 -1
  203. package/dist/src/python/wrapper.js.map +1 -1
  204. package/dist/src/python/wrapper.py +8 -3
  205. package/dist/src/redteam/constants.d.ts +1 -1
  206. package/dist/src/redteam/constants.d.ts.map +1 -1
  207. package/dist/src/redteam/constants.js +2 -2
  208. package/dist/src/redteam/constants.js.map +1 -1
  209. package/dist/src/redteam/getCompetitorTests.d.ts +2 -2
  210. package/dist/src/redteam/getCompetitorTests.d.ts.map +1 -1
  211. package/dist/src/redteam/getCompetitorTests.js +1 -8
  212. package/dist/src/redteam/getCompetitorTests.js.map +1 -1
  213. package/dist/src/redteam/getHallucinationTests.d.ts +2 -2
  214. package/dist/src/redteam/getHallucinationTests.d.ts.map +1 -1
  215. package/dist/src/redteam/getHallucinationTests.js +1 -8
  216. package/dist/src/redteam/getHallucinationTests.js.map +1 -1
  217. package/dist/src/redteam/getHarmfulTests.d.ts +9 -6
  218. package/dist/src/redteam/getHarmfulTests.d.ts.map +1 -1
  219. package/dist/src/redteam/getHarmfulTests.js +6 -3
  220. package/dist/src/redteam/getHarmfulTests.js.map +1 -1
  221. package/dist/src/redteam/getHijackingTests.d.ts +2 -2
  222. package/dist/src/redteam/getHijackingTests.d.ts.map +1 -1
  223. package/dist/src/redteam/getHijackingTests.js +1 -8
  224. package/dist/src/redteam/getHijackingTests.js.map +1 -1
  225. package/dist/src/redteam/getOverconfidenceTests.d.ts +2 -2
  226. package/dist/src/redteam/getOverconfidenceTests.d.ts.map +1 -1
  227. package/dist/src/redteam/getOverconfidenceTests.js +1 -8
  228. package/dist/src/redteam/getOverconfidenceTests.js.map +1 -1
  229. package/dist/src/redteam/getPiiTests.d.ts +4 -2
  230. package/dist/src/redteam/getPiiTests.d.ts.map +1 -1
  231. package/dist/src/redteam/getPiiTests.js +8 -11
  232. package/dist/src/redteam/getPiiTests.js.map +1 -1
  233. package/dist/src/redteam/getPoliticalStatementsTests.d.ts +2 -2
  234. package/dist/src/redteam/getPoliticalStatementsTests.d.ts.map +1 -1
  235. package/dist/src/redteam/getPoliticalStatementsTests.js +1 -8
  236. package/dist/src/redteam/getPoliticalStatementsTests.js.map +1 -1
  237. package/dist/src/redteam/getUnderconfidenceTests.d.ts +2 -2
  238. package/dist/src/redteam/getUnderconfidenceTests.d.ts.map +1 -1
  239. package/dist/src/redteam/getUnderconfidenceTests.js +1 -8
  240. package/dist/src/redteam/getUnderconfidenceTests.js.map +1 -1
  241. package/dist/src/redteam/getUnintendedContractTests.d.ts +2 -2
  242. package/dist/src/redteam/getUnintendedContractTests.d.ts.map +1 -1
  243. package/dist/src/redteam/getUnintendedContractTests.js +1 -8
  244. package/dist/src/redteam/getUnintendedContractTests.js.map +1 -1
  245. package/dist/src/redteam/index.d.ts +5 -3
  246. package/dist/src/redteam/index.d.ts.map +1 -1
  247. package/dist/src/redteam/index.js +34 -35
  248. package/dist/src/redteam/index.js.map +1 -1
  249. package/dist/src/redteam/iterative.d.ts +3 -0
  250. package/dist/src/redteam/iterative.d.ts.map +1 -1
  251. package/dist/src/redteam/iterative.js +12 -5
  252. package/dist/src/redteam/iterative.js.map +1 -1
  253. package/dist/src/share.d.ts.map +1 -1
  254. package/dist/src/share.js +1 -1
  255. package/dist/src/share.js.map +1 -1
  256. package/dist/src/suggestions.d.ts.map +1 -1
  257. package/dist/src/suggestions.js.map +1 -1
  258. package/dist/src/table.d.ts.map +1 -1
  259. package/dist/src/table.js +1 -1
  260. package/dist/src/table.js.map +1 -1
  261. package/dist/src/telemetry.d.ts.map +1 -1
  262. package/dist/src/telemetry.js +3 -3
  263. package/dist/src/telemetry.js.map +1 -1
  264. package/dist/src/testCases.d.ts.map +1 -1
  265. package/dist/src/testCases.js +9 -5
  266. package/dist/src/testCases.js.map +1 -1
  267. package/dist/src/types.d.ts +5 -1
  268. package/dist/src/types.d.ts.map +1 -1
  269. package/dist/src/types.js.map +1 -1
  270. package/dist/src/updates.d.ts.map +1 -1
  271. package/dist/src/updates.js +2 -2
  272. package/dist/src/updates.js.map +1 -1
  273. package/dist/src/util.d.ts +1 -3
  274. package/dist/src/util.d.ts.map +1 -1
  275. package/dist/src/util.js +44 -53
  276. package/dist/src/util.js.map +1 -1
  277. package/dist/src/web/nextui/404/index.html +1 -1
  278. package/dist/src/web/nextui/404.html +1 -1
  279. package/dist/src/web/nextui/_next/static/chunks/2-f562fcee36045aca.js +1 -0
  280. package/dist/src/web/nextui/_next/static/chunks/94-c07f30271fa4d8e4.js +32 -0
  281. package/dist/src/web/nextui/_next/static/chunks/app/auth/login/{page-c4a2650ac3a0ecd9.js → page-d932a73274f0f175.js} +1 -1
  282. package/dist/src/web/nextui/_next/static/chunks/app/auth/signup/{page-dd18caf3100d8d0e.js → page-7a8f35189f8bc5b8.js} +1 -1
  283. package/dist/src/web/nextui/_next/static/chunks/app/datasets/page-9712a72be5b92b81.js +1 -0
  284. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/{page-40b89e739dc45119.js → page-35bb69e87d17a291.js} +1 -1
  285. package/dist/src/web/nextui/_next/static/chunks/app/eval/{page-16d9d50aa8dc0520.js → page-aef3aed32af8d4d7.js} +1 -1
  286. package/dist/src/web/nextui/_next/static/chunks/app/layout-c6a855ac7037db70.js +1 -0
  287. package/dist/src/web/nextui/_next/static/chunks/app/progress/{page-00b5c3308a81af12.js → page-751105ef02d00993.js} +1 -1
  288. package/dist/src/web/nextui/_next/static/chunks/app/prompts/page-689202b79a6b6a92.js +1 -0
  289. package/dist/src/web/nextui/_next/static/chunks/app/report/page-4b1c00ce9ee1f5ab.js +1 -0
  290. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-544af5b41c35d73a.js +1 -0
  291. package/dist/src/web/nextui/_next/static/chunks/{webpack-c469fe135043664b.js → webpack-d1a82d85a184970b.js} +1 -1
  292. package/dist/src/web/nextui/_next/static/css/451beaa5570cb9d3.css +1 -0
  293. package/dist/src/web/nextui/_next/static/css/{51a17e8edcdfdbb2.css → b76f1739b5a14901.css} +1 -1
  294. package/dist/src/web/nextui/_next/static/css/dab5d695b3657d59.css +1 -0
  295. package/dist/src/web/nextui/_next/static/css/e9f25719d0b14939.css +1 -0
  296. package/dist/src/web/nextui/_next/static/css/edcd6f0b6c902fde.css +1 -0
  297. package/dist/src/web/nextui/auth/login/index.html +1 -1
  298. package/dist/src/web/nextui/auth/login/index.txt +6 -6
  299. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  300. package/dist/src/web/nextui/auth/signup/index.txt +6 -6
  301. package/dist/src/web/nextui/datasets/index.html +1 -1
  302. package/dist/src/web/nextui/datasets/index.txt +6 -6
  303. package/dist/src/web/nextui/eval/index.html +1 -1
  304. package/dist/src/web/nextui/eval/index.txt +8 -8
  305. package/dist/src/web/nextui/index.html +1 -1
  306. package/dist/src/web/nextui/index.txt +5 -5
  307. package/dist/src/web/nextui/progress/index.html +1 -1
  308. package/dist/src/web/nextui/progress/index.txt +6 -6
  309. package/dist/src/web/nextui/prompts/index.html +1 -1
  310. package/dist/src/web/nextui/prompts/index.txt +6 -6
  311. package/dist/src/web/nextui/report/index.html +1 -1
  312. package/dist/src/web/nextui/report/index.txt +8 -8
  313. package/dist/src/web/nextui/setup/index.html +2 -2
  314. package/dist/src/web/nextui/setup/index.txt +9 -9
  315. package/dist/src/web/server.d.ts.map +1 -1
  316. package/dist/src/web/server.js +10 -10
  317. package/dist/src/web/server.js.map +1 -1
  318. package/package.json +9 -7
  319. package/dist/src/external/ragas.d.ts.map +0 -1
  320. package/dist/src/external/ragas.js.map +0 -1
  321. package/dist/src/prompts.d.ts.map +0 -1
  322. package/dist/src/prompts.js +0 -391
  323. package/dist/src/prompts.js.map +0 -1
  324. package/dist/src/web/nextui/_next/static/chunks/2-83f58953fd015451.js +0 -1
  325. package/dist/src/web/nextui/_next/static/chunks/371-0554dc4f28404020.js +0 -32
  326. package/dist/src/web/nextui/_next/static/chunks/app/datasets/page-9426b519d4be1fdb.js +0 -1
  327. package/dist/src/web/nextui/_next/static/chunks/app/layout-dfda5ed5ef745c2d.js +0 -1
  328. package/dist/src/web/nextui/_next/static/chunks/app/prompts/page-ee610cffca4b965b.js +0 -1
  329. package/dist/src/web/nextui/_next/static/chunks/app/report/page-7699a16d46de673c.js +0 -1
  330. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-e1c49ea6fe7c04c5.js +0 -1
  331. package/dist/src/web/nextui/_next/static/css/15e7b41f5e8a79bf.css +0 -1
  332. package/dist/src/web/nextui/_next/static/css/16c1dd82fc87c9d7.css +0 -1
  333. package/dist/src/web/nextui/_next/static/css/51f7d6933894a4f8.css +0 -1
  334. package/dist/src/web/nextui/_next/static/css/85bfc598653c1699.css +0 -1
  335. /package/dist/src/{external → prompts/external}/ragas.d.ts +0 -0
  336. /package/dist/src/{external → prompts/external}/ragas.js +0 -0
  337. /package/dist/src/web/nextui/_next/static/{S3D5Fr7gOoSz0gy8y6ZaU → m-VSM7eKSuIZDyA_tnwFX}/_buildManifest.js +0 -0
  338. /package/dist/src/web/nextui/_next/static/{S3D5Fr7gOoSz0gy8y6ZaU → m-VSM7eKSuIZDyA_tnwFX}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"updates.js","sourceRoot":"","sources":["../../src/updates.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,6DAA2C;AAE3C,sDAA8B;AAC9B,mCAA2C;AAC3C,mEAA0C;AAE1C,MAAM,OAAO,GAAG,sBAAW,CAAC,OAAO,CAAC;AAE7B,KAAK,UAAU,gBAAgB;IACpC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAgB,EAAC,6CAA6C,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACjG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA8B,CAAC;IAClE,OAAO,IAAI,CAAC,aAAa,CAAC;AAC5B,CAAC;AAPD,4CAOC;AAEM,KAAK,UAAU,eAAe;IACnC,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,aAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAA,YAAQ,EAAC,aAAa,EAAE,OAAO,CAAC,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACvD,gBAAM,CAAC,IAAI,CACT,KAAK,MAAM;EACf,eAAK,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,eAAK,CAAC,MAAM,CAC7D,OAAO,CACR,+CAA+C,eAAK,CAAC,KAAK,CAAC,aAAa,CAAC;;aAEnE,eAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,OAAO,eAAK,CAAC,KAAK,CAC1D,iCAAiC,CAClC;EACL,MAAM,IAAI,CACP,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AA3BD,0CA2BC"}
1
+ {"version":3,"file":"updates.js","sourceRoot":"","sources":["../../src/updates.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAC1B,6DAA2C;AAC3C,mEAA0C;AAC1C,mCAA2C;AAC3C,sDAA8B;AAE9B,MAAM,OAAO,GAAG,sBAAW,CAAC,OAAO,CAAC;AAE7B,KAAK,UAAU,gBAAgB;IACpC,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAgB,EAAC,6CAA6C,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACjG,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA8B,CAAC;IAClE,OAAO,IAAI,CAAC,aAAa,CAAC;AAC5B,CAAC;AAPD,4CAOC;AAEM,KAAK,UAAU,eAAe;IACnC,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,aAAqB,CAAC;IAC1B,IAAI,CAAC;QACH,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAA,YAAQ,EAAC,aAAa,EAAE,OAAO,CAAC,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;QACvD,gBAAM,CAAC,IAAI,CACT,KAAK,MAAM;EACf,eAAK,CAAC,MAAM,CAAC,IAAI,CAAC,qCAAqC,eAAK,CAAC,MAAM,CAC7D,OAAO,CACR,+CAA+C,eAAK,CAAC,KAAK,CAAC,aAAa,CAAC;;aAEnE,eAAK,CAAC,KAAK,CAAC,sBAAsB,CAAC,OAAO,eAAK,CAAC,KAAK,CAC1D,iCAAiC,CAClC;EACL,MAAM,IAAI,CACP,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AA3BD,0CA2BC"}
@@ -1,8 +1,5 @@
1
1
  import nunjucks from 'nunjucks';
2
2
  import { type EvalWithMetadata, type EvaluateResult, type EvaluateSummary, type EvaluateTable, type NunjucksFilterMap, type PromptWithMetadata, type ResultsFile, type TestCase, type TestCasesWithMetadata, type UnifiedConfig, type OutputFile, type Prompt, type CompletedPrompt } from './types';
3
- export declare function resetGlobalConfig(): void;
4
- export declare function readGlobalConfig(): any;
5
- export declare function maybeRecordFirstRun(): boolean;
6
3
  export declare function maybeReadConfig(configPath: string): Promise<UnifiedConfig | undefined>;
7
4
  export declare function dereferenceConfig(rawConfig: UnifiedConfig): Promise<UnifiedConfig>;
8
5
  export declare function readConfig(configPath: string): Promise<UnifiedConfig>;
@@ -96,4 +93,5 @@ export declare function varsMatch(vars1: Record<string, string | string[] | obje
96
93
  export declare function resultIsForTestCase(result: EvaluateResult, testCase: TestCase): boolean;
97
94
  export declare function safeJsonStringify(value: any, prettyPrint?: boolean): string;
98
95
  export declare function renderVarsInObject<T>(obj: T, vars?: Record<string, string | object>): T;
96
+ export declare function extractJsonObjects(str: string): object[];
99
97
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
package/dist/src/util.js CHANGED
@@ -26,69 +26,30 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.renderVarsInObject = exports.safeJsonStringify = exports.resultIsForTestCase = exports.varsMatch = exports.providerToIdentifier = exports.getStandaloneEvals = exports.setupEnv = exports.transformOutput = exports.printBorder = exports.getNunjucksEngine = exports.readFilters = exports.deleteEval = exports.getEvalsWithPredicate = exports.getEvalFromId = exports.getEvals = exports.getDatasetFromHash = exports.getPromptFromHash = exports.getTestCasesWithPredicate = exports.getTestCases = exports.getPromptsWithPredicate = exports.getPrompts = exports.sha256 = exports.getPromptsForTestCasesHash = exports.getPromptsForTestCases = exports.readLatestResults = exports.updateResult = exports.readResult_fileSystem = exports.readResult = exports.dateToFilename = exports.filenameToDate = exports.cleanupOldFileResults = exports.migrateResultsFromFileSystemToDatabase = exports.listPreviousResults_fileSystem = exports.listPreviousResultFilenames_fileSystem = exports.listPreviousResults = exports.writeResultsToDatabase = exports.getLatestResultsPath = exports.setConfigDirectoryPath = exports.getConfigDirectoryPath = exports.readOutput = exports.writeOutput = exports.writeMultipleOutputs = exports.readConfigs = exports.readConfig = exports.dereferenceConfig = exports.maybeReadConfig = exports.maybeRecordFirstRun = exports.readGlobalConfig = exports.resetGlobalConfig = void 0;
30
- const fs = __importStar(require("fs"));
31
- const path = __importStar(require("path"));
32
- const os = __importStar(require("os"));
29
+ exports.extractJsonObjects = exports.renderVarsInObject = exports.safeJsonStringify = exports.resultIsForTestCase = exports.varsMatch = exports.providerToIdentifier = exports.getStandaloneEvals = exports.setupEnv = exports.transformOutput = exports.printBorder = exports.getNunjucksEngine = exports.readFilters = exports.deleteEval = exports.getEvalsWithPredicate = exports.getEvalFromId = exports.getEvals = exports.getDatasetFromHash = exports.getPromptFromHash = exports.getTestCasesWithPredicate = exports.getTestCases = exports.getPromptsWithPredicate = exports.getPrompts = exports.sha256 = exports.getPromptsForTestCasesHash = exports.getPromptsForTestCases = exports.readLatestResults = exports.updateResult = exports.readResult_fileSystem = exports.readResult = exports.dateToFilename = exports.filenameToDate = exports.cleanupOldFileResults = exports.migrateResultsFromFileSystemToDatabase = exports.listPreviousResults_fileSystem = exports.listPreviousResultFilenames_fileSystem = exports.listPreviousResults = exports.writeResultsToDatabase = exports.getLatestResultsPath = exports.setConfigDirectoryPath = exports.getConfigDirectoryPath = exports.readOutput = exports.writeOutput = exports.writeMultipleOutputs = exports.readConfigs = exports.readConfig = exports.dereferenceConfig = exports.maybeReadConfig = void 0;
30
+ const json_schema_ref_parser_1 = __importDefault(require("@apidevtools/json-schema-ref-parser"));
33
31
  const crypto_1 = require("crypto");
32
+ const sync_1 = require("csv-stringify/sync");
34
33
  const dotenv_1 = __importDefault(require("dotenv"));
35
- const json_schema_ref_parser_1 = __importDefault(require("@apidevtools/json-schema-ref-parser"));
36
- const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
37
- const nunjucks_1 = __importDefault(require("nunjucks"));
38
- const js_yaml_1 = __importDefault(require("js-yaml"));
34
+ const drizzle_orm_1 = require("drizzle-orm");
39
35
  const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
40
- const sync_1 = require("csv-stringify/sync");
36
+ const fs = __importStar(require("fs"));
41
37
  const glob_1 = require("glob");
42
- const drizzle_orm_1 = require("drizzle-orm");
38
+ const js_yaml_1 = __importDefault(require("js-yaml"));
39
+ const nunjucks_1 = __importDefault(require("nunjucks"));
40
+ const os = __importStar(require("os"));
41
+ const path = __importStar(require("path"));
42
+ const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
43
43
  const cliState_1 = __importDefault(require("./cliState"));
44
- const logger_1 = __importDefault(require("./logger"));
45
- const esm_1 = require("./esm");
46
- const testCases_1 = require("./testCases");
47
44
  const database_1 = require("./database");
45
+ const esm_1 = require("./esm");
46
+ const googleSheets_1 = require("./googleSheets");
47
+ const logger_1 = __importDefault(require("./logger"));
48
48
  const migrate_1 = require("./migrate");
49
49
  const wrapper_1 = require("./python/wrapper");
50
+ const testCases_1 = require("./testCases");
50
51
  const types_1 = require("./types");
51
- const googleSheets_1 = require("./googleSheets");
52
52
  const DEFAULT_QUERY_LIMIT = 100;
53
- let globalConfigCache = null;
54
- function resetGlobalConfig() {
55
- globalConfigCache = null;
56
- }
57
- exports.resetGlobalConfig = resetGlobalConfig;
58
- function readGlobalConfig() {
59
- if (!globalConfigCache) {
60
- const configDir = getConfigDirectoryPath();
61
- const configFilePath = path.join(configDir, 'promptfoo.yaml');
62
- if (fs.existsSync(configFilePath)) {
63
- globalConfigCache = js_yaml_1.default.load(fs.readFileSync(configFilePath, 'utf-8'));
64
- }
65
- else {
66
- if (!fs.existsSync(configDir)) {
67
- fs.mkdirSync(configDir, { recursive: true });
68
- }
69
- globalConfigCache = { hasRun: false };
70
- fs.writeFileSync(configFilePath, js_yaml_1.default.dump(globalConfigCache));
71
- }
72
- }
73
- return globalConfigCache;
74
- }
75
- exports.readGlobalConfig = readGlobalConfig;
76
- function maybeRecordFirstRun() {
77
- // Return true if first run
78
- try {
79
- const config = readGlobalConfig();
80
- if (!config.hasRun) {
81
- config.hasRun = true;
82
- fs.writeFileSync(path.join(getConfigDirectoryPath(true /* createIfNotExists */), 'promptfoo.yaml'), js_yaml_1.default.dump(config));
83
- return true;
84
- }
85
- return false;
86
- }
87
- catch (err) {
88
- return false;
89
- }
90
- }
91
- exports.maybeRecordFirstRun = maybeRecordFirstRun;
92
53
  async function maybeReadConfig(configPath) {
93
54
  if (!fs.existsSync(configPath)) {
94
55
  return undefined;
@@ -1210,4 +1171,34 @@ function renderVarsInObject(obj, vars) {
1210
1171
  return obj;
1211
1172
  }
1212
1173
  exports.renderVarsInObject = renderVarsInObject;
1174
+ function extractJsonObjects(str) {
1175
+ // This will extract all json objects from a string
1176
+ const jsonObjects = [];
1177
+ let openBracket = str.indexOf('{');
1178
+ let closeBracket = str.indexOf('}', openBracket);
1179
+ // Iterate over the string until we find a valid JSON-like pattern
1180
+ // Iterate over all trailing } until the contents parse as json
1181
+ while (openBracket !== -1) {
1182
+ const jsonStr = str.slice(openBracket, closeBracket + 1);
1183
+ try {
1184
+ jsonObjects.push(JSON.parse(jsonStr));
1185
+ // This is a valid JSON object, so start looking for
1186
+ // an opening bracket after the last closing bracket
1187
+ openBracket = str.indexOf('{', closeBracket + 1);
1188
+ closeBracket = str.indexOf('}', openBracket);
1189
+ }
1190
+ catch (err) {
1191
+ // Not a valid object, move on to the next closing bracket
1192
+ closeBracket = str.indexOf('}', closeBracket + 1);
1193
+ while (closeBracket === -1) {
1194
+ // No closing brackets made a valid json object, so
1195
+ // start looking with the next opening bracket
1196
+ openBracket = str.indexOf('{', openBracket + 1);
1197
+ closeBracket = str.indexOf('}', openBracket);
1198
+ }
1199
+ }
1200
+ }
1201
+ return jsonObjects;
1202
+ }
1203
+ exports.extractJsonObjects = extractJsonObjects;
1213
1204
  //# sourceMappingURL=util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/util.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-c469fe135043664b.js" defer=""></script><script src="/_next/static/chunks/framework-c3d480eb9ad30ba5.js" defer=""></script><script src="/_next/static/chunks/main-853e5508e37bbe4c.js" defer=""></script><script src="/_next/static/chunks/pages/_app-998b254a061422d4.js" defer=""></script><script src="/_next/static/chunks/pages/_error-94f0db477e27e000.js" defer=""></script><script src="/_next/static/S3D5Fr7gOoSz0gy8y6ZaU/_buildManifest.js" defer=""></script><script src="/_next/static/S3D5Fr7gOoSz0gy8y6ZaU/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"S3D5Fr7gOoSz0gy8y6ZaU","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-d1a82d85a184970b.js" defer=""></script><script src="/_next/static/chunks/framework-c3d480eb9ad30ba5.js" defer=""></script><script src="/_next/static/chunks/main-853e5508e37bbe4c.js" defer=""></script><script src="/_next/static/chunks/pages/_app-998b254a061422d4.js" defer=""></script><script src="/_next/static/chunks/pages/_error-94f0db477e27e000.js" defer=""></script><script src="/_next/static/m-VSM7eKSuIZDyA_tnwFX/_buildManifest.js" defer=""></script><script src="/_next/static/m-VSM7eKSuIZDyA_tnwFX/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"m-VSM7eKSuIZDyA_tnwFX","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-c469fe135043664b.js" defer=""></script><script src="/_next/static/chunks/framework-c3d480eb9ad30ba5.js" defer=""></script><script src="/_next/static/chunks/main-853e5508e37bbe4c.js" defer=""></script><script src="/_next/static/chunks/pages/_app-998b254a061422d4.js" defer=""></script><script src="/_next/static/chunks/pages/_error-94f0db477e27e000.js" defer=""></script><script src="/_next/static/S3D5Fr7gOoSz0gy8y6ZaU/_buildManifest.js" defer=""></script><script src="/_next/static/S3D5Fr7gOoSz0gy8y6ZaU/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"S3D5Fr7gOoSz0gy8y6ZaU","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><title>404: This page could not be found</title><meta name="next-head-count" content="3"/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-d1a82d85a184970b.js" defer=""></script><script src="/_next/static/chunks/framework-c3d480eb9ad30ba5.js" defer=""></script><script src="/_next/static/chunks/main-853e5508e37bbe4c.js" defer=""></script><script src="/_next/static/chunks/pages/_app-998b254a061422d4.js" defer=""></script><script src="/_next/static/chunks/pages/_error-94f0db477e27e000.js" defer=""></script><script src="/_next/static/m-VSM7eKSuIZDyA_tnwFX/_buildManifest.js" defer=""></script><script src="/_next/static/m-VSM7eKSuIZDyA_tnwFX/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"m-VSM7eKSuIZDyA_tnwFX","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2],{49532:function(e,t,s){"use strict";let n,l;async function a(){if(n||(l||(l=fetch("/api/config").then(e=>e.json()).then(e=>n=e.apiBaseUrl)),await l),void 0===n)throw Error("API base URL is undefined");return n}s.d(t,{b:function(){return a}})},72002:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return e1}});var n=s(24004),l=s(14978),a=s(77580);let r=a.env.NEXT_PUBLIC_PROMPTFOO_REMOTE_API_BASE_URL||a.env.NEXT_PUBLIC_PROMPTFOO_BASE_URL||a.env.PROMPTFOO_REMOTE_API_BASE_URL||"https://api.promptfoo.dev",i=a.env.NEXT_PUBLIC_PROMPTFOO_BASE_URL||a.env.PROMPTFOO_REMOTE_APP_BASE_URL||"https://app.promptfoo.dev";var o=s(49532);let c=(0,l.createContext)(void 0),d=e=>{let{children:t}=e,[s,a]=(0,l.useState)(!1);return(0,l.useEffect)(()=>{let e=e=>{"Shift"===e.key&&a(!0)},t=e=>{"Shift"===e.key&&a(!1)};return window.addEventListener("keydown",e),window.addEventListener("keyup",t),()=>{window.removeEventListener("keydown",e),window.removeEventListener("keyup",t)}},[]),(0,n.jsx)(c.Provider,{value:s,children:t})};var u=s(52428),p=s(11615),h=s(12594),m=s(28891),x=s(74997),g=s(93179),j=s(47887),v=s(43205),f=s(5592),b=s(14931),y=s(75307),Z=s(17178),w=s(42610),C=s(68873),k=s(49567),S=s(40982),N=s(24362),R=s(39813),I=s(1852),P=s(57027),E=s(94941),F=s(36273),O=s(96976),T=s(8508),M=s(34304),D=s(32414),L=s(67339),A=s(65969),U=s(63147),W=s(14059),_=s(23223),z=s(26110),V=s(48931),B=s(99645),J=s(29794),H=s(22701),G=s(51956),X=s(82669),Y=s(77656),q=s(37204),$=s(79685),K=s(74595);let Q={getItem:async e=>await (0,q.U2)(e)||null,setItem:async(e,t)=>{await (0,q.t8)(e,t)},removeItem:async e=>{await (0,q.IV)(e)}},ee=(0,$.Ue)()((0,K.tJ)((e,t)=>({evalId:null,setEvalId:t=>e(()=>({evalId:t})),table:null,setTable:t=>e(()=>({table:t})),config:null,setConfig:t=>e(()=>({config:t})),maxTextLength:250,setMaxTextLength:t=>e(()=>({maxTextLength:t})),wordBreak:"break-word",setWordBreak:t=>e(()=>({wordBreak:t})),showInferenceDetails:!0,setShowInferenceDetails:t=>e(()=>({showInferenceDetails:t})),renderMarkdown:!1,setRenderMarkdown:t=>e(()=>({renderMarkdown:t})),prettifyJson:!1,setPrettifyJson:t=>e(()=>({prettifyJson:t})),showPrompts:!1,setShowPrompts:t=>e(()=>({showPrompts:t})),showPassFail:!0,setShowPassFail:t=>e(()=>({showPassFail:t}))}),{name:"ResultsViewStorage",storage:(0,K.FL)(()=>Q)}));function et(e){let{open:t,onClose:a}=e,{config:r}=ee(),i=l.useRef(null),[o,c]=l.useState(!1),[d,u]=l.useState("");l.useEffect(()=>{t&&(async()=>{let{default:e}=await Promise.resolve().then(s.bind(s,34235));u(e.dump(r))})()},[t,r]);let p=()=>{c(!1),a()};return(0,n.jsxs)(J.Z,{open:t,onClose:p,"aria-labelledby":"config-dialog-title",maxWidth:"md",fullWidth:!0,children:[(0,n.jsx)(X.Z,{id:"config-dialog-title",children:(0,n.jsxs)(k.Z,{display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,n.jsx)(U.Z,{variant:"h6",style:{flexGrow:1},children:"Config"}),(0,n.jsxs)(k.Z,{children:[(0,n.jsx)(A.Z,{title:"Copy to clipboard",children:(0,n.jsx)(Y.Z,{onClick:()=>{i.current&&(i.current.select(),document.execCommand("copy"),c(!0))},children:o?(0,n.jsx)(z.Z,{}):(0,n.jsx)(B.Z,{})})}),(0,n.jsx)(A.Z,{title:"Download .yaml",children:(0,n.jsx)(Y.Z,{onClick:()=>{let e=new Blob([d],{type:"text/yaml;charset=utf-8"}),t=URL.createObjectURL(e),s=document.createElement("a");s.href=t,s.download="config.yaml",document.body.appendChild(s),s.click(),document.body.removeChild(s),URL.revokeObjectURL(t)},children:(0,n.jsx)(V.Z,{})})})]})]})}),(0,n.jsx)(G.Z,{children:(0,n.jsx)(U.Z,{variant:"body1",component:"div",children:(0,n.jsx)("textarea",{ref:i,readOnly:!0,value:d,style:{width:"100%",minHeight:"400px",fontFamily:"monospace",border:"1px solid #ccc"}})})}),(0,n.jsx)(H.Z,{children:(0,n.jsx)(S.Z,{onClick:p,color:"primary",children:"Close"})})]})}var es=s(79715),en=s(34235),el=function(){let{table:e,config:t,evalId:s}=ee(),[a,r]=l.useState(!1),i=(e,t)=>{let s=URL.createObjectURL(e),n=document.createElement("a");n.href=s,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),URL.revokeObjectURL(s)},o=()=>{r(!1)};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(O.Z,{onClick:()=>{r(!0)},children:[(0,n.jsx)(P.Z,{children:(0,n.jsx)(V.Z,{fontSize:"small"})}),(0,n.jsx)(E.Z,{children:"Download"})]}),(0,n.jsx)(J.Z,{onClose:o,open:a,children:(0,n.jsx)(G.Z,{children:(0,n.jsxs)(D.Z,{direction:"column",spacing:2,sx:{width:"100%"},children:[(0,n.jsx)(S.Z,{onClick:()=>{let e=en.default.dump(t),s=new Blob([e],{type:"text/yaml;charset=utf-8"});i(s,"promptfooconfig.yaml"),o()},startIcon:(0,n.jsx)(V.Z,{}),fullWidth:!0,sx:{justifyContent:"flex-start"},children:"Download YAML Config"}),(0,n.jsx)(S.Z,{onClick:()=>{if(!e){alert("No table data");return}let t=[],n=[...e.head.vars,...e.head.prompts.map(e=>"[".concat(e.provider,"] ").concat(e.label))];t.push(n),e.body.forEach(e=>{let s=[...e.vars,...e.outputs.map(e=>{let{pass:t,text:s}=e;return(t?"[PASS] ":"[FAIL] ")+s})];t.push(s)});let l=(0,es.P)(t),a=new Blob([l],{type:"text/csv;charset=utf-8;"});i(a,"".concat(s,"-table.csv")),o()},startIcon:(0,n.jsx)(V.Z,{}),fullWidth:!0,sx:{justifyContent:"flex-start"},children:"Download Table CSV"}),(0,n.jsx)(S.Z,{onClick:()=>{if(!e){alert("No table data");return}let t=new Blob([JSON.stringify(e,null,2)],{type:"application/json"});i(t,"".concat(s,"-table.json")),o()},startIcon:(0,n.jsx)(V.Z,{}),fullWidth:!0,sx:{justifyContent:"flex-start"},children:"Download Table JSON"}),(0,n.jsx)(S.Z,{onClick:()=>{if(!e){alert("No table data");return}let t=e.body.map((t,s)=>({chosen:t.outputs.filter(e=>e.pass).map(e=>e.text),rejected:t.outputs.filter(e=>!e.pass).map(e=>e.text),vars:t.test.vars,providers:e.head.prompts.map(e=>e.provider),prompts:e.head.prompts.map(e=>e.label||e.display||e.raw)})),n=new Blob([JSON.stringify(t,null,2)],{type:"application/json"});i(n,"".concat(s,"-dpo.json")),o()},startIcon:(0,n.jsx)(V.Z,{}),fullWidth:!0,sx:{justifyContent:"flex-start"},children:"Download DPO JSON"})]})})})]})},ea=s(69179),er=s(92715),ei=s(37803),eo=s(92863),ec=s(36001);let ed=["#fd7f6f","#7eb0d5","#b2e061","#bd7ebe","#ffb55a","#ffee65","#beb9db","#fdcce5","#8bd3c7"];function eu(e){let{table:t}=e,s=(0,l.useRef)(null),a=(0,l.useRef)(null);return(0,l.useEffect)(()=>{if(!s.current)return;a.current&&a.current.destroy();let e=t.body.flatMap(e=>e.outputs.map(e=>e.score)),n=Math.min(...e),l=(Math.ceil(Math.max(...e))-Math.floor(n))/10,r=Array.from({length:11},(e,t)=>parseFloat((Math.floor(n)+t*l).toFixed(2))),i=t.head.prompts.map((e,s)=>{let n=t.body.flatMap(e=>e.outputs[s].score),a=r.map(e=>n.filter(t=>t>=e&&t<e+l).length);return{label:"Column ".concat(s+1),data:a,backgroundColor:ed[s%ed.length]}});a.current=new ec.kL(s.current,{type:"bar",data:{labels:r,datasets:i},options:{animation:!1,plugins:{title:{display:!0,text:"Score Distribution"},legend:{display:!1},tooltip:{callbacks:{title:function(e){let t=e[0].datasetIndex;return"Column ".concat(t+1)},label:function(e){let t=e.dataIndex,s=r[t],n=r[t+1];return n?"".concat(s," <= score < ").concat(n):"".concat(s," <= score")}}}}}})},[t]),(0,n.jsx)("canvas",{ref:s,style:{maxHeight:"300px"}})}function ep(e){let{table:t}=e,s=(0,l.useRef)(null),a=(0,l.useRef)(null);return(0,l.useEffect)(()=>{if(!s.current)return;a.current&&a.current.destroy();let e=t.head.prompts.map((e,s)=>{let n=t.body.flatMap(e=>e.outputs[s]),l=n.filter(e=>e.pass).length,a=l/n.length*100;return{label:"Column ".concat(s+1),data:[a],backgroundColor:ed[s%ed.length]}});a.current=new ec.kL(s.current,{type:"bar",data:{labels:["Pass Rate (%)"],datasets:e},options:{animation:!1,plugins:{title:{display:!0,text:"Pass rate"},legend:{display:!0}}}})},[t]),(0,n.jsx)("canvas",{ref:s,style:{maxHeight:"300px"}})}function eh(e){let{table:t}=e,s=(0,l.useRef)(null),a=(0,l.useRef)(null),[r,i]=(0,l.useState)(0),[o,c]=(0,l.useState)(1),[d,u]=(0,l.useState)(!1);return(0,l.useEffect)(()=>{if(!s.current)return;a.current&&a.current.destroy();let e=t.body.flatMap(e=>e.outputs.map(e=>e.score)),n=Math.min(...e),l=Math.max(...e),i=t.body.map(e=>{let t=e.outputs[r].score,s=e.outputs[o].score;return{x:t,y:s,backgroundColor:s>t?"green":s<t?"red":"gray"}});a.current=new ec.kL(s.current,{type:"scatter",data:{datasets:[{data:i,backgroundColor:i.map(e=>e.backgroundColor)},{type:"line",data:[{x:n,y:n},{x:l,y:l}],borderColor:"gray",borderWidth:1,borderDash:[5,5],pointRadius:0}]},options:{animation:!1,plugins:{legend:{display:!1},tooltip:{callbacks:{label:function(e){let s=t.body[e.dataIndex],n=s.outputs[0].text,l=s.outputs[1].text;return n.length>30&&(n=n.substring(0,30)+"..."),l.length>30&&(l=l.substring(0,30)+"..."),"Output 1: ".concat(n,"\nOutput 2: ").concat(l)}}}},scales:{x:{title:{display:!0,text:"Prompt ".concat(r+1," Score")},ticks:{callback:function(e,t,s){let n=String(Math.round(100*Number(e)));return t===s.length-1&&(n+="%"),n}}},y:{title:{display:!0,text:"Prompt ".concat(o+1," Score")},ticks:{callback:function(e,t,s){let n=String(Math.round(100*Number(e)));return t===s.length-1&&(n+="%"),n}}}}}})},[t,r,o]),(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(J.Z,{open:d,onClose:()=>u(!1),children:[(0,n.jsx)(X.Z,{children:"Compare prompt outputs"}),(0,n.jsxs)(G.Z,{children:[(0,n.jsx)(R.Z,{sx:{m:1,minWidth:120},children:(0,n.jsx)(M.Z,{value:r,onChange:e=>i(Number(e.target.value)),children:t.head.prompts.map((e,t)=>(0,n.jsxs)(O.Z,{value:t,children:["Prompt ",t+1]},t))})}),(0,n.jsx)(R.Z,{sx:{m:1,minWidth:120},children:(0,n.jsx)(M.Z,{value:o,onChange:e=>c(Number(e.target.value)),children:t.head.prompts.map((e,t)=>(0,n.jsxs)(O.Z,{value:t,children:["Prompt ",t+1]},t))})})]})]}),(0,n.jsx)("canvas",{ref:s,style:{maxHeight:"300px",cursor:"pointer"},onClick:()=>u(!0)})]})}function em(e){let{table:t}=e,s=(0,l.useRef)(null),a=(0,l.useRef)(null);return(0,l.useEffect)(()=>{var e;if(!s.current)return;a.current&&a.current.destroy();let n=Object.keys((null===(e=t.head.prompts[0].metrics)||void 0===e?void 0:e.namedScores)||{}),l=t.head.prompts.map((e,s)=>{let l=n.map(s=>{var n;let l=(null===(n=e.metrics)||void 0===n?void 0:n.namedScores[s])||0,a=Math.max(...t.head.prompts.map(e=>{var t;return(null===(t=e.metrics)||void 0===t?void 0:t.namedScores[s])||0}));return l/a});return{label:"".concat(t.head.prompts[s].provider),data:l,backgroundColor:ed[s%ed.length]}});a.current=new ec.kL(s.current,{type:"bar",data:{labels:n,datasets:l},options:{scales:{x:{grid:{display:!1}},y:{ticks:{callback:function(e,t,s){let n=String(Math.round(100*Number(e)));return t===s.length-1&&(n+="%"),n}}}},plugins:{tooltip:{callbacks:{title:function(e){return e[0].dataset.label},label:function(e){let t=e.parsed.y;return"".concat(n[e.dataIndex],": ").concat((100*t).toFixed(2),"% pass rate")}}}}}})},[t]),(0,n.jsx)("canvas",{ref:s,style:{maxHeight:"300px"}})}ec.kL.register(ec.vn,ec.ST,ec.ho,ec.uw,ec.f$,ec.ZL,ec.jn,ec.od,ec.u,ec.wL);var ex=l.memo(function(e){var t;let{columnVisibility:s}=e,a=(0,eo.Z)();ec.kL.defaults.color="dark"===a.palette.mode?"#aaa":"#666";let[r,i]=(0,l.useState)(!0),{table:o}=ee();if(!o||!r||o.head.prompts.length<2)return null;let c=o.body.flatMap(e=>e.outputs.map(e=>e.score)),d=new Set(c);return 1===d.size?null:(0,n.jsx)(ea.SV,{fallback:null,children:(0,n.jsxs)(ei.Z,{style:{position:"relative",padding:a.spacing(3)},children:[(0,n.jsx)(Y.Z,{style:{position:"absolute",right:0,top:0},onClick:()=>i(!1),children:(0,n.jsx)(er.Z,{})}),(0,n.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",width:"100%"},children:[(0,n.jsx)("div",{style:{width:"33%"},children:(0,n.jsx)(ep,{table:o})}),(0,n.jsx)("div",{style:{width:"33%"},children:d.size<=3&&Object.keys((null===(t=o.head.prompts[0].metrics)||void 0===t?void 0:t.namedScores)||{}).length>1?(0,n.jsx)(em,{table:o}):(0,n.jsx)(eu,{table:o})}),(0,n.jsx)("div",{style:{width:"33%"},children:(0,n.jsx)(eh,{table:o})})]})]})})}),eg=s(36128),ej=s(9317),ev=s(50459);s(55974);var ef=e=>{let{lookup:t,onSearchTextChange:s}=e;return t&&Object.keys(t).length?(0,n.jsx)("div",{className:"custom-metric-container",children:Object.entries(t).map(e=>{let[t,l]=e;return t&&void 0!==l?(0,n.jsxs)("span",{onClick:()=>s&&s("metric=".concat(t,":[^0]")),className:s?"clickable":"",children:[t,": ",l.toFixed(2)]},t):null})}):null},eb=s(35185),ey=s(65068),eZ=s(70417),ew=s(21303),eC=s(61451),ek=s(26485),eS=s(30021),eN=s(613);function eR(e){let{gradingResults:t}=e;return t?(0,n.jsxs)(k.Z,{mt:2,children:[(0,n.jsx)(U.Z,{variant:"subtitle1",children:"Assertions"}),(0,n.jsx)(eC.Z,{children:(0,n.jsxs)(ey.Z,{children:[(0,n.jsx)(ek.Z,{children:(0,n.jsxs)(eS.Z,{children:[(0,n.jsx)(ew.Z,{style:{fontWeight:"bold"},children:"Pass"}),(0,n.jsx)(ew.Z,{style:{fontWeight:"bold"},children:"Score"}),(0,n.jsx)(ew.Z,{style:{fontWeight:"bold"},children:"Type"}),(0,n.jsx)(ew.Z,{style:{fontWeight:"bold"},children:"Value"}),(0,n.jsx)(ew.Z,{style:{fontWeight:"bold"},children:"Reason"})]})}),(0,n.jsx)(eZ.Z,{children:t.map((e,t)=>{var s,l;return e?(0,n.jsxs)(eS.Z,{children:[(0,n.jsx)(ew.Z,{children:e.pass?"✅":"❌"}),(0,n.jsx)(ew.Z,{children:e.score.toFixed(2)}),(0,n.jsx)(ew.Z,{children:(null===(s=e.assertion)||void 0===s?void 0:s.type)||""}),(0,n.jsx)(ew.Z,{style:{whiteSpace:"pre-wrap"},children:(null===(l=e.assertion)||void 0===l?void 0:l.value)?String(e.assertion.value):"-"}),(0,n.jsx)(ew.Z,{style:{whiteSpace:"pre-wrap"},children:e.reason})]},t):null})})]})})]}):null}function eI(e){let{open:t,onClose:s,prompt:a,provider:r,output:i,gradingResults:o,metadata:c}=e,[d,u]=(0,l.useState)(!1);(0,l.useEffect)(()=>{u(!1)},[a]);let p=async e=>{await navigator.clipboard.writeText(e),u(!0)};return(0,n.jsxs)(J.Z,{open:t,onClose:s,fullWidth:!0,maxWidth:"lg",children:[(0,n.jsxs)(X.Z,{children:["Details",r&&": ".concat(r)]}),(0,n.jsxs)(G.Z,{children:[(0,n.jsxs)(k.Z,{mb:2,children:[(0,n.jsx)(U.Z,{variant:"subtitle1",style:{marginBottom:"1rem"},children:"Prompt"}),(0,n.jsx)(eN.u,{readOnly:!0,value:a,style:{width:"100%",padding:"0.75rem"},maxRows:20}),(0,n.jsx)(Y.Z,{onClick:()=>p(a),style:{position:"absolute",right:"10px",top:"10px"},children:d?(0,n.jsx)(z.Z,{}):(0,n.jsx)(eb.Z,{})})]}),(null==c?void 0:c.redteamFinalPrompt)&&(0,n.jsxs)(k.Z,{my:2,children:[(0,n.jsx)(U.Z,{variant:"subtitle1",style:{marginBottom:"1rem",marginTop:"1rem"},children:"Modified Prompt (Red Team)"}),(0,n.jsx)(eN.u,{readOnly:!0,maxRows:20,value:c.redteamFinalPrompt,style:{width:"100%",padding:"0.75rem"}})]}),i&&(0,n.jsxs)(k.Z,{my:2,children:[(0,n.jsx)(U.Z,{variant:"subtitle1",style:{marginBottom:"1rem",marginTop:"1rem"},children:"Output"}),(0,n.jsx)(eN.u,{readOnly:!0,maxRows:20,value:i,style:{width:"100%",padding:"0.75rem"}})]}),(0,n.jsx)(eR,{gradingResults:o})]}),(0,n.jsx)(H.Z,{children:(0,n.jsx)(S.Z,{onClick:s,children:"Close"})})]})}var eP=s(12431),eE=s(8541),eF=function(){let e=(0,eo.Z)(),[t,s]=l.useState(!1),a=()=>{s(!1)};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{style:{textAlign:"center",marginTop:20,marginBottom:40},children:(0,n.jsx)(S.Z,{variant:"text",color:"primary",startIcon:(0,n.jsx)(eP.Z,{}),onClick:()=>{s(!0)},children:"Generate test cases"})}),(0,n.jsxs)(J.Z,{open:t,onClose:a,children:[(0,n.jsx)(X.Z,{children:"Run on Command Line"}),(0,n.jsx)(G.Z,{children:(0,n.jsxs)(eE.Z,{children:[(0,n.jsx)("p",{children:"This feature is in beta. UI coming soon."}),(0,n.jsxs)("p",{children:["Run"," ",(0,n.jsx)(k.Z,{component:"code",sx:{backgroundColor:"dark"===e.palette.mode?"#424242":"#f0f0f0",padding:"2px 4px",borderRadius:"4px"},children:"promptfoo generate dataset"}),"to generate test cases on the command line."]})]})}),(0,n.jsx)(H.Z,{children:(0,n.jsx)(S.Z,{onClick:a,color:"primary",children:"Close"})})]})]})};function eO(e){return"string"==typeof e||"number"==typeof e?e.toString().length:Array.isArray(e)?e.reduce((e,t)=>e+eO(t),0):l.isValidElement(e)&&e.props.children?l.Children.toArray(e.props.children).reduce((e,t)=>e+eO(t),0):0}let eT=l.memo(function(e){let t,{text:s,maxLength:a}=e,[r,i]=l.useState(!0),o=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;if("string"==typeof e||"number"==typeof e){let s=e.toString();return s.slice(0,a-t)}if(Array.isArray(e)){let s=[],n=t;for(let t of e){let e=eO(t);if(n+e>a){s.push(o(t,n));break}s.push(t),n+=e}return s}if(l.isValidElement(e)&&e.props.children){let s=eO(e.props.children);if(s>a-t)return l.cloneElement(e,{...e.props,children:o(e.props.children,t)})}return e};t=l.isValidElement(s)||"string"==typeof s?s:JSON.stringify(s);let c=r?o(t):t,d=eO(t)>a;return(0,n.jsxs)("div",{style:{cursor:d?"pointer":"normal"},onClick:()=>{i(!r)},children:[c,r&&eO(t)>a&&(0,n.jsx)("span",{children:"..."})]})});var eM=s(59682),eD=s(62268),eL=s(38640),eA=s.n(eL),eU=s(73490),eW=s(24495);s(16658);var e_=e=>{let{failReasons:t}=e,[s,a]=(0,l.useState)(0);return t.length<1?null:(0,n.jsxs)("div",{className:"fail-reason",children:[t.length>1&&(0,n.jsxs)("span",{className:"fail-reason-carousel-controls",children:[(0,n.jsx)(Y.Z,{onClick:()=>{a(e=>e>0?e-1:t.length-1)},children:(0,n.jsx)(eU.Z,{sx:{fontSize:12}})}),(0,n.jsxs)("span",{children:[s+1,"/",t.length]}),(0,n.jsx)(Y.Z,{onClick:()=>{a(e=>e<t.length-1?e+1:0)},children:(0,n.jsx)(eW.Z,{sx:{fontSize:12}})})]}),t[s].trim().split("\n").map((e,t)=>(0,n.jsxs)(l.Fragment,{children:[e,(0,n.jsx)("br",{})]},t))]})},ez=e=>{let{open:t,contextText:s,commentText:l,onClose:a,onSave:r,onChange:i}=e;return(0,n.jsxs)(J.Z,{open:t,onClose:a,fullWidth:!0,maxWidth:"sm",children:[(0,n.jsx)(X.Z,{children:"Edit Comment"}),(0,n.jsxs)(G.Z,{children:[(0,n.jsx)(k.Z,{sx:{backgroundColor:"#f0f0f0",padding:2,marginBottom:2},children:s}),(0,n.jsx)(L.Z,{autoFocus:!0,margin:"dense",type:"text",fullWidth:!0,multiline:!0,rows:4,value:l,onChange:e=>i(e.target.value)})]}),(0,n.jsxs)(H.Z,{children:[(0,n.jsx)(S.Z,{onClick:r,color:"primary",variant:"contained",children:"Save"}),(0,n.jsx)(S.Z,{onClick:a,color:"primary",children:"Cancel"})]})]})};let eV=()=>{let e=(0,l.useContext)(c);if(void 0===e)throw Error("useShiftKey must be used within a ShiftKeyProvider");return e};var eB=s(19116);let eJ=l.memo(function(e){var t,s,a,r,i,o,c,d,u,p,h,m,x;let g,j,v,f,b,y,{output:Z,maxTextLength:w,rowIndex:C,promptIndex:k,onRating:S,firstOutput:N,showDiffs:R,searchText:I,showStats:P}=e,{renderMarkdown:E,prettifyJson:F,showPrompts:O,showPassFail:T}=ee(),[M,D]=l.useState(!1),[L,U]=l.useState(!1),[W,_]=l.useState(null),z=e=>{_(e||null),U(!L)},[V,B]=l.useState(!1),[J,H]=l.useState((null===(t=Z.gradingResult)||void 0===t?void 0:t.comment)||""),G=()=>{B(!0)},X="string"==typeof Z.text?Z.text:JSON.stringify(Z.text),Y=[];if(!Z.pass&&X.includes("---")&&(Y=((null===(p=Z.gradingResult)||void 0===p?void 0:p.componentResults)||[]).filter(e=>!!e&&!e.pass).map(e=>e.reason),X=X.split("---").slice(1).join("---")),R&&N){let e,t="string"==typeof N.text?N.text:JSON.stringify(N.text);t.includes("---")&&(t=t.split("---").slice(1).join("---"));try{JSON.parse(t),JSON.parse(X),e=(0,eB.CT)(t,X)}catch(s){e=t.includes(". ")&&X.includes(". ")?(0,eB.SY)(t,X):(0,eB.NV)(t,X)}g=(0,n.jsx)(n.Fragment,{children:e.map((e,t)=>e.added?(0,n.jsx)("ins",{children:e.value},t):e.removed?(0,n.jsx)("del",{children:e.value},t):(0,n.jsx)("span",{children:e.value},t))})}if(I)try{let e;let t=RegExp(I,"gi"),s=[];for(;null!==(e=t.exec(X));)s.push({start:e.index,end:t.lastIndex});g=(0,n.jsx)(n.Fragment,{children:s.length>0?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{children:X.substring(0,s[0].start)},"text-before"),s.map((e,t)=>(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"search-highlight",children:X.substring(e.start,e.end)},"match-"+t),(0,n.jsx)("span",{children:X.substring(e.end,s[t+1]?s[t+1].start:X.length)},"text-after-"+t)]}))]}):(0,n.jsx)("span",{children:X},"no-match")})}catch(e){console.error("Invalid regular expression:",e.message)}else if(E)g=(0,n.jsx)(ev.U,{components:{img:e=>{let{src:t,alt:s}=e;return(0,n.jsx)("img",{loading:"lazy",src:t,alt:s,onClick:()=>z(t),style:{cursor:"pointer"}})}},children:X});else if(F)try{g=(0,n.jsx)("pre",{children:JSON.stringify(JSON.parse(X),null,2)})}catch(e){}let q=l.useCallback(e=>{var t;S(e,void 0,null===(t=Z.gradingResult)||void 0===t?void 0:t.comment)},[S,null===(s=Z.gradingResult)||void 0===s?void 0:s.comment]),$=l.useCallback(()=>{let e=prompt("Set test score (0.0 - 1.0):",String(Z.score));if(null!==e){let s=parseFloat(e);if(!isNaN(s)&&s>=0&&s<=1){var t;S(void 0,s,null===(t=Z.gradingResult)||void 0===t?void 0:t.comment)}else alert("Invalid score. Please enter a value between 0.0 and 1.0.")}},[S,Z.score,null===(a=Z.gradingResult)||void 0===a?void 0:a.comment]),[K,Q]=l.useState(!1),et=l.useCallback(()=>{navigator.clipboard.writeText(Z.text),Q(!0)},[Z.text]);if(Z.latencyMs&&(v=(0,n.jsxs)("span",{children:[Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(Z.latencyMs)," ms"]})),null===(r=Z.tokenUsage)||void 0===r?void 0:r.completion){let e=Z.tokenUsage.completion/(Z.latencyMs/1e3);f=(0,n.jsx)("span",{children:Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e)})}if(Z.cost&&(b=(0,n.jsxs)("span",{children:["$",Z.cost.toPrecision(2)]})),null===(i=Z.tokenUsage)||void 0===i?void 0:i.cached)j=(0,n.jsxs)("span",{children:[Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(Z.tokenUsage.cached)," ","(cached)"]});else if(null===(o=Z.tokenUsage)||void 0===o?void 0:o.total){let e=Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(null!==(h=Z.tokenUsage.prompt)&&void 0!==h?h:0),t=Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(null!==(m=Z.tokenUsage.completion)&&void 0!==m?m:0),s=Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(Z.tokenUsage.total);j=(0,n.jsx)(A.Z,{title:"".concat(e," prompt tokens + ").concat(t," completion tokens = ").concat(s," total"),children:(0,n.jsxs)("span",{children:[s,("0"!==e||"0"!==t)&&" (".concat(e,"+").concat(t,")")]})})}let es=(null===(c=Z.gradingResult)||void 0===c?void 0:c.comment)&&"!highlight"!==Z.gradingResult.comment?(0,n.jsx)("div",{className:"comment",onClick:G,children:Z.gradingResult.comment}):null,en=P?(0,n.jsxs)("div",{className:"cell-detail",children:[j&&(0,n.jsxs)("div",{className:"stat-item",children:[(0,n.jsx)("strong",{children:"Tokens:"})," ",j]}),v&&(0,n.jsxs)("div",{className:"stat-item",children:[(0,n.jsx)("strong",{children:"Latency:"})," ",v]}),f&&(0,n.jsxs)("div",{className:"stat-item",children:[(0,n.jsx)("strong",{children:"Tokens/Sec:"})," ",f]}),b&&(0,n.jsxs)("div",{className:"stat-item",children:[(0,n.jsx)("strong",{children:"Cost:"})," ",b]})]}):null,el=eV(),ea=(0,n.jsxs)("div",{className:"cell-actions",children:[el&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"action",onClick:et,onMouseDown:e=>e.preventDefault(),children:(0,n.jsx)(A.Z,{title:"Copy output to clipboard",children:(0,n.jsx)("span",{children:K?"✅":"\uD83D\uDCCB"})})}),(0,n.jsx)("span",{className:"action",onClick:()=>{let e;J.startsWith("!highlight")?S(void 0,void 0,e=J.slice(10).trim()):S(void 0,void 0,e=("!highlight "+J).trim()),H(e)},onMouseDown:e=>e.preventDefault(),children:(0,n.jsx)(A.Z,{title:"Toggle test highlight",children:(0,n.jsx)("span",{children:"\uD83C\uDF1F"})})})]}),Z.prompt&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:"action",onClick:()=>{D(!0)},children:(0,n.jsx)(A.Z,{title:"View ouput and test details",children:(0,n.jsx)("span",{children:"\uD83D\uDD0E"})})}),(0,n.jsx)(eI,{open:M,onClose:()=>{D(!1)},prompt:Z.prompt,provider:Z.provider,gradingResults:null===(d=Z.gradingResult)||void 0===d?void 0:d.componentResults,output:X,metadata:Z.metadata})]}),(0,n.jsx)("span",{className:"action",onClick:()=>q(!0),children:(0,n.jsx)(A.Z,{title:"Mark test passed (score 1.0)",children:(0,n.jsx)("span",{children:"\uD83D\uDC4D"})})}),(0,n.jsx)("span",{className:"action",onClick:()=>q(!1),children:(0,n.jsx)(A.Z,{title:"Mark test failed (score 0.0)",children:(0,n.jsx)("span",{children:"\uD83D\uDC4E"})})}),(0,n.jsx)("span",{className:"action",onClick:$,children:(0,n.jsx)(A.Z,{title:"Set test score",children:(0,n.jsx)("span",{children:"\uD83D\uDD22"})})}),(0,n.jsx)("span",{className:"action",onClick:G,children:(0,n.jsx)(A.Z,{title:"Edit comment",children:(0,n.jsx)("span",{children:"✏️"})})})]}),er={};(null===(u=Z.gradingResult)||void 0===u?void 0:u.comment)==="!highlight"&&(er.backgroundColor="#ffffeb");let ei=0,eo=0,ec=Z.gradingResult;if(ec?ec.componentResults?ec.componentResults.forEach(e=>{(null==e?void 0:e.pass)?ei++:eo++}):(ei=ec.pass?1:0,eo=ec.pass?0:1):Z.pass?ei=1:Z.pass||(eo=1),1===eo&&1===ei)y=(0,n.jsxs)(n.Fragment,{children:["".concat(eo," FAIL")," ","".concat(ei," PASS")]});else{let e="";eo>1||ei>1&&eo>0?e="".concat(eo," FAIL"):1===eo&&(e="FAIL");let t="";ei>1||eo>1&&ei>0?t="".concat(ei," PASS"):1===ei&&0===eo&&(t="PASS");let s=e&&t?" ":"";y=(0,n.jsxs)(n.Fragment,{children:[e,s,t]})}let ed=null===(x=Z.score)||0===x||1===x?"":"(".concat(x.toFixed(2),")");return(0,n.jsxs)("div",{className:"cell",style:er,children:[T&&(0,n.jsx)(n.Fragment,{children:Z.pass?(0,n.jsx)(n.Fragment,{children:(0,n.jsxs)("div",{className:"status pass",children:[(0,n.jsxs)("div",{className:"pill",children:[y,ed&&(0,n.jsxs)("span",{className:"score",children:[" ",ed]})]}),(0,n.jsx)(ef,{lookup:Z.namedScores})]})}):(0,n.jsx)(n.Fragment,{children:(0,n.jsxs)("div",{className:"status fail",children:[(0,n.jsxs)("div",{className:"pill",children:[y,ed&&(0,n.jsxs)("span",{className:"score",children:[" ",ed]})]}),(0,n.jsx)(ef,{lookup:Z.namedScores}),(0,n.jsx)("span",{className:"fail-reason",children:(0,n.jsx)(e_,{failReasons:Y})})]})})}),O&&N.prompt&&(0,n.jsxs)("div",{className:"prompt",children:[(0,n.jsx)("span",{className:"pill",children:"Prompt"}),Z.prompt]}),(0,n.jsx)(eT,{text:g||X,maxLength:w}),es,en,ea,L&&W&&(0,n.jsx)("div",{className:"lightbox",onClick:()=>z(),children:(0,n.jsx)("img",{src:W,alt:"Lightbox"})}),(0,n.jsx)(ez,{open:V,contextText:Z.text,commentText:J,onClose:()=>{B(!1)},onSave:()=>{S(void 0,void 0,J),B(!1)},onChange:H})]})});function eH(e){let{text:t,maxLength:s,expandedText:a,resourceId:r,className:i}=e,[o,c]=l.useState(!1);return(0,n.jsxs)("div",{className:"".concat(i||""),children:[(0,n.jsx)(eT,{text:t,maxLength:s}),a&&(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(A.Z,{title:"View prompt",children:(0,n.jsx)("span",{className:"action",onClick:()=>{c(!0)},children:"\uD83D\uDD0E"})}),(0,n.jsx)(eI,{open:o,onClose:()=>{c(!1)},prompt:a}),r&&(0,n.jsx)(A.Z,{title:"View other evals and datasets for this prompt",children:(0,n.jsx)("span",{className:"action",children:(0,n.jsx)(eA(),{href:"/prompts/?id=".concat(r),target:"_blank",children:(0,n.jsx)(eM.Z,{fontSize:"small"})})})})]})]})}s(93207);var eG=l.memo(function(e){let{maxTextLength:t,columnVisibility:s,wordBreak:a,filterMode:r,failureFilter:i,searchText:c,showStats:d,onFailureFilterToggle:u,onSearchTextChange:p}=e,{evalId:h,table:m,setTable:x}=ee();(0,g.Z)(m,"Table should be defined");let{head:j,body:v}=m,f=l.useCallback(async(e,t,s,n,l)=>{var a,r;let i=[...v],c={...i[e]},d=[...c.outputs],u=null!=s?s:d[t].pass,p=void 0===n?s?1:0:n||0;d[t].pass=u,d[t].score=p;let m=(null===(a=d[t].gradingResult)||void 0===a?void 0:a.componentResults)||[];if(void 0!==s){let e=m.findIndex(e=>{var t;return(null===(t=e.assertion)||void 0===t?void 0:t.type)==="human"}),t={pass:u,score:p,reason:"Manual result (overrides all other grading results)",comment:l,assertion:{type:"human"}};-1!==e?m[e]=t:m.push(t)}let g={...d[t].gradingResult||{},pass:u,score:p,reason:"Manual result (overrides all other grading results)",comment:l,assertion:(null===(r=d[t].gradingResult)||void 0===r?void 0:r.assertion)||null,componentResults:m};d[t].gradingResult=g,c.outputs=d,i[e]=c;let f={head:j,body:i};x(f);try{let e=await fetch("".concat(await (0,o.b)(),"/api/eval/").concat(h),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({table:f})});if(!e.ok)throw Error("Network response was not ok")}catch(e){console.error("Failed to update table:",e)}},[v,j,x,h]),b=Object.keys(s).length>0,y=l.useMemo(()=>{try{return RegExp(c,"i")}catch(e){return console.error("Invalid regular expression:",e.message),null}},[c]),Z=l.useMemo(()=>{try{return v.map((e,t)=>({...e,outputs:e.outputs.map((e,s)=>({...e,originalRowIndex:t,originalPromptIndex:s}))})).filter(e=>{let t=!0;return"failures"===r?t=e.outputs.some((e,t)=>{let n="Prompt ".concat(t+1);return i[n]&&!e.pass&&(!b||s[n])}):"different"===r?t=!e.outputs.every(t=>t.text===e.outputs[0].text):"highlights"===r&&(console.log(e.outputs[0].text),t=e.outputs.some(e=>{var t,s;return null===(s=e.gradingResult)||void 0===s?void 0:null===(t=s.comment)||void 0===t?void 0:t.startsWith("!highlight")})),!!t&&(!c||!y||e.outputs.some(t=>{var s,n;let l=e.vars.map(e=>"var=".concat(e)).join(" "),a="".concat(t.text," ").concat(Object.keys(t.namedScores).map(e=>"metric=".concat(e,":").concat(t.namedScores[e])).join(" ")," ").concat((null===(s=t.gradingResult)||void 0===s?void 0:s.reason)||""," ").concat((null===(n=t.gradingResult)||void 0===n?void 0:n.comment)||""),r="".concat(l," ").concat(a);return y.test(r)}))})}catch(e){return console.error("Invalid regular expression:",e.message),v}},[v,i,r,c,s,b,y]);l.useEffect(()=>{B(e=>({...e,pageIndex:0}))},[i,r,c]);let w=l.useMemo(()=>j.prompts.map((e,t)=>v.reduce((e,s)=>e+(s.outputs[t].pass?1:0),0)),[j.prompts,v]),C=l.useMemo(()=>j.prompts.map((e,t)=>v.reduce((e,s)=>{var n,l;return e+((null===(l=s.outputs[t].gradingResult)||void 0===l?void 0:null===(n=l.componentResults)||void 0===n?void 0:n.length)||0)},0)),[j.prompts,v]),R=l.useMemo(()=>j.prompts.map((e,t)=>v.reduce((e,s)=>{var n;let l=null===(n=s.outputs[t].gradingResult)||void 0===n?void 0:n.componentResults;return e+(l?l.filter(e=>null==e?void 0:e.pass).length:0)},0)),[j.prompts,v]),I=l.useMemo(()=>w.reduce((e,t,s,n)=>t>n[e]?s:e,0),[w]),P=w[I],E=l.useMemo(()=>(0,eg.Cl)(),[]),{renderMarkdown:F}=ee(),T=l.useMemo(()=>j.vars.length>0?[E.group({id:"vars",header:()=>(0,n.jsx)("span",{className:"font-bold",children:"Variables"}),columns:j.vars.map((e,s)=>E.accessor(e=>e.vars[s],{id:"Variable ".concat(s+1),header:()=>(0,n.jsx)(eH,{text:e,maxLength:t,className:"font-bold"}),cell:e=>{let s=e.getValue();return(0,n.jsx)("div",{className:"cell",children:F?(0,n.jsx)(ev.U,{children:s}):(0,n.jsx)(eT,{text:s,maxLength:t})})},size:50}))})]:[],[E,j.vars,t,F]),D=l.useCallback((e,t)=>Z[e].outputs[t],[Z]),A=l.useCallback(e=>Z[e].outputs[0],[Z]),W=l.useMemo(()=>[E.group({id:"prompts",header:()=>(0,n.jsx)("span",{className:"font-bold",children:"Outputs"}),columns:j.prompts.map((e,s)=>E.accessor(e=>(function(e){if("string"==typeof e){let t=e.startsWith("[PASS]"),s=e;return e.startsWith("[PASS]")?s=s.slice(6):e.startsWith("[FAIL]")&&(s=s.slice(6)),{text:s,pass:t,score:t?1:0}}return e})(e.outputs[s]),{id:"Prompt ".concat(s+1),header:()=>{var l,a,o,c,h,m,x,g;let j=w[s]&&v.length?(w[s]/v.length*100).toFixed(2):"0.00",f=w[s]===P&&0!==P,b="Prompt ".concat(s+1),y=i[b]||!1,Z=d?(0,n.jsxs)("div",{className:"prompt-detail",children:[C[s]?(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:"Asserts:"})," ",R[s],"/",C[s]," passed"]}):null,(null===(l=e.metrics)||void 0===l?void 0:l.totalLatencyMs)?(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:"Avg Latency:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.totalLatencyMs/v.length)," ","ms"]}):null,(null===(o=e.metrics)||void 0===o?void 0:null===(a=o.tokenUsage)||void 0===a?void 0:a.total)?(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:"Avg Tokens:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.tokenUsage.total/v.length)]}):null,(null===(c=e.metrics)||void 0===c?void 0:c.totalLatencyMs)&&(null===(m=e.metrics)||void 0===m?void 0:null===(h=m.tokenUsage)||void 0===h?void 0:h.completion)?(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:"Tokens/Sec:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.tokenUsage.completion/(e.metrics.totalLatencyMs/1e3))]}):null,(null===(x=e.metrics)||void 0===x?void 0:x.cost)?(0,n.jsxs)("div",{children:[(0,n.jsx)("strong",{children:"Cost:"})," $",e.metrics.cost.toPrecision(2)]}):null]}):null,k=e.provider?e.provider.split(":"):[],S=k.length>1?(0,n.jsxs)(n.Fragment,{children:[k[0],":",(0,n.jsx)("strong",{children:k.slice(1).join(":")})]}):(0,n.jsx)("strong",{children:e.provider});return(0,n.jsxs)("div",{className:"output-header",children:[(0,n.jsxs)("div",{className:"pills",children:[e.provider?(0,n.jsx)("div",{className:"provider",children:S}):null,(0,n.jsx)("div",{className:"summary",children:(0,n.jsxs)("div",{className:"highlight ".concat(f?"success":""),children:[(0,n.jsxs)("strong",{children:[j,"% passing"]})," (",w[s],"/",v.length," cases)"]})}),(null===(g=e.metrics)||void 0===g?void 0:g.namedScores)&&Object.keys(e.metrics.namedScores).length>0?(0,n.jsx)(ef,{lookup:e.metrics.namedScores,onSearchTextChange:p}):null]}),(0,n.jsx)(eH,{className:"prompt-container",text:e.label||e.display||e.raw,expandedText:e.raw,maxLength:t,resourceId:e.id}),Z,"failures"===r&&(0,n.jsx)(eD.Z,{sx:{"& .MuiFormControlLabel-label":{fontSize:"0.75rem"}},control:(0,n.jsx)(N.Z,{checked:y,onChange:e=>u(b,e.target.checked)}),label:"Show failures"})]})},cell:e=>{var l,a;let i=D(e.row.index,s);return(0,n.jsx)(eJ,{output:i,maxTextLength:t,rowIndex:e.row.index,promptIndex:s,onRating:f.bind(null,null!==(l=i.originalRowIndex)&&void 0!==l?l:e.row.index,null!==(a=i.originalPromptIndex)&&void 0!==a?a:s),firstOutput:A(e.row.index),showDiffs:"different"===r,searchText:c,showStats:d})}}))})],[E,j.prompts,w,v.length,P,i,d,C,R,t,u,r,c,D,A,f,p]),_=l.useMemo(()=>{let e=v.some(e=>e.description);return e?{accessorFn:e=>e.description||"",id:"description",header:()=>(0,n.jsx)("span",{className:"font-bold",children:"Description"}),cell:e=>(0,n.jsx)("div",{className:"cell",children:(0,n.jsx)(eT,{text:String(e.getValue()),maxLength:t})}),size:50}:null},[v,t]),z=l.useMemo(()=>{let e=[];return _&&e.push(_),e.push(...T,...W),e},[_,T,W]),[V,B]=l.useState({pageIndex:0,pageSize:50}),J=(0,ej.b7)({data:Z,columns:z,columnResizeMode:"onChange",getCoreRowModel:(0,eg.sC)(),getPaginationRowModel:(0,eg.G_)(),state:{columnVisibility:s,pagination:V}});return(0,n.jsxs)("div",{children:[(0,n.jsxs)("table",{className:"results-table firefox-fix ".concat(t<=25?"compact":""),style:{wordBreak:a},children:[(0,n.jsx)("thead",{children:J.getHeaderGroups().map(e=>(0,n.jsx)("tr",{className:"header",children:e.headers.map(e=>(0,n.jsxs)("th",{colSpan:e.colSpan,style:{width:e.getSize()},children:[e.isPlaceholder?null:(0,ej.ie)(e.column.columnDef.header,e.getContext()),(0,n.jsx)("div",{onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler(),className:"resizer ".concat(e.column.getIsResizing()?"isResizing":"")})]},e.id))},e.id))}),(0,n.jsx)("tbody",{children:J.getRowModel().rows.map((e,t)=>{let s=!1;return(0,n.jsx)("tr",{children:e.getVisibleCells().map(e=>{let l=e.column.id.startsWith("Variable")||"description"===e.column.id,a=!l&&!s;return a&&(s=!0),(0,n.jsx)("td",{style:{width:e.column.getSize()},className:"".concat(l?"variable":""," ").concat(0!==t||l?"":"first-prompt-row"," ").concat(a?"first-prompt-col":""),children:(0,ej.ie)(e.column.columnDef.cell,e.getContext())},e.id)})},e.id)})})]}),J.getPageCount()>1&&(0,n.jsxs)(k.Z,{className:"pagination",sx:{display:"flex",alignItems:"center",gap:2},children:[(0,n.jsx)(S.Z,{onClick:()=>{B(e=>({...e,pageIndex:Math.max(e.pageIndex-1,0)})),window.scrollTo(0,0)},disabled:0===J.getState().pagination.pageIndex,variant:"contained",children:"Previous"}),(0,n.jsxs)(U.Z,{component:"span",sx:{display:"flex",alignItems:"center",gap:1},children:["Page",(0,n.jsx)(L.Z,{size:"small",type:"number",value:J.getState().pagination.pageIndex+1,onChange:e=>{let t=e.target.value?Number(e.target.value)-1:0;B(e=>({...e,pageIndex:Math.min(Math.max(t,0),J.getPageCount()-1)}))},InputProps:{style:{width:"60px",textAlign:"center"}},variant:"outlined"}),(0,n.jsxs)("span",{children:["of ",J.getPageCount()]})]}),(0,n.jsx)(S.Z,{onClick:()=>{B(e=>({...e,pageIndex:Math.min(e.pageIndex+1,J.getPageCount()-1)})),window.scrollTo(0,0)},disabled:J.getState().pagination.pageIndex+1>=J.getPageCount(),variant:"contained",children:"Next"}),(0,n.jsxs)(U.Z,{component:"span",sx:{display:"flex",alignItems:"center",gap:1},children:[(0,n.jsxs)(M.Z,{value:V.pageSize,onChange:e=>{B({pageIndex:0,pageSize:Number(e.target.value)}),window.scrollTo(0,0)},displayEmpty:!0,inputProps:{"aria-label":"Results per page"},size:"small",sx:{m:1,minWidth:80},children:[(0,n.jsx)(O.Z,{value:10,children:"10"}),(0,n.jsx)(O.Z,{value:50,children:"50"}),(0,n.jsx)(O.Z,{value:100,children:"100"}),(0,n.jsx)(O.Z,{value:500,children:"500"}),(0,n.jsx)(O.Z,{value:1e3,children:"1000"})]}),(0,n.jsx)("span",{children:"results per page"})]})]}),(0,n.jsx)(eF,{})]})}),eX=s(22695),eY=e=>{let{open:t,onClose:s}=e,{maxTextLength:l,setMaxTextLength:a,wordBreak:r,setWordBreak:i,showInferenceDetails:o,setShowInferenceDetails:c,renderMarkdown:d,setRenderMarkdown:u,prettifyJson:p,setPrettifyJson:h,showPrompts:m,setShowPrompts:x,showPassFail:g,setShowPassFail:j}=ee();return(0,n.jsxs)(J.Z,{open:t,onClose:s,fullWidth:!0,maxWidth:"sm",children:[(0,n.jsx)(X.Z,{children:"Table View Settings"}),(0,n.jsxs)(G.Z,{children:[(0,n.jsx)(k.Z,{children:(0,n.jsx)(A.Z,{title:"Forcing line breaks makes it easier to adjust column widths to your liking",placement:"right",children:(0,n.jsx)(eD.Z,{control:(0,n.jsx)(N.Z,{checked:"break-all"===r,onChange:e=>i(e.target.checked?"break-all":"break-word")}),label:"Force line breaks"})})}),(0,n.jsx)(k.Z,{children:(0,n.jsx)(eD.Z,{control:(0,n.jsx)(N.Z,{checked:d,onChange:e=>u(e.target.checked)}),label:"Render model outputs as Markdown"})}),(0,n.jsx)(k.Z,{children:(0,n.jsx)(eD.Z,{control:(0,n.jsx)(N.Z,{checked:p,onChange:e=>h(e.target.checked)}),label:"Prettify JSON outputs"})}),(0,n.jsx)(k.Z,{children:(0,n.jsx)(A.Z,{title:"Show the final prompt that produced the output in each cell.",placement:"right",children:(0,n.jsx)(eD.Z,{control:(0,n.jsx)(N.Z,{checked:m,onChange:e=>x(e.target.checked)}),label:"Show full prompt in output cell"})})}),(0,n.jsx)(k.Z,{children:(0,n.jsx)(A.Z,{title:"Show pass/fail status for each output.",placement:"right",children:(0,n.jsx)(eD.Z,{control:(0,n.jsx)(N.Z,{checked:g,onChange:e=>j(e.target.checked)}),label:"Show pass/fail status"})})}),(0,n.jsx)(k.Z,{children:(0,n.jsx)(A.Z,{title:"Show detailed inference statistics such as latency, tokens used, cost, etc.",placement:"right",children:(0,n.jsx)(eD.Z,{control:(0,n.jsx)(N.Z,{checked:o,onChange:e=>c(e.target.checked)}),label:"Show inference details"})})}),(0,n.jsxs)(k.Z,{maxWidth:"sm",children:[(0,n.jsxs)(U.Z,{mt:2,children:["Max text length: ",l]}),(0,n.jsx)(eX.ZP,{min:25,max:1e3,value:l,onChange:(e,t)=>a(t)})]})]}),(0,n.jsx)(H.Z,{children:(0,n.jsx)(S.Z,{onClick:s,children:"Close"})})]})},eq=e=>{let{open:t,onClose:s,shareUrl:a}=e,r=(0,l.useRef)(null),[i,o]=(0,l.useState)(!1),c=()=>{s(),o(!1)};return(0,n.jsxs)(J.Z,{open:t,onClose:c,PaperProps:{style:{minWidth:"min(660px, 100%)"}},children:[(0,n.jsx)(X.Z,{children:"Your eval is ready to share"}),(0,n.jsxs)(G.Z,{children:[(0,n.jsx)(L.Z,{inputRef:r,value:a,fullWidth:!0,InputProps:{readOnly:!0,endAdornment:(0,n.jsx)(Y.Z,{onClick:()=>{r.current&&(r.current.select(),document.execCommand("copy"),o(!0))},children:i?(0,n.jsx)(z.Z,{}):(0,n.jsx)(B.Z,{})})}}),(0,n.jsx)(eE.Z,{sx:{fontSize:"0.75rem"},children:"Shared URLs are deleted after 2 weeks."})]}),(0,n.jsx)(H.Z,{children:(0,n.jsx)(S.Z,{onClick:c,color:"primary",children:"Close"})})]})};s(58022);let e$=(0,W.Z)(D.Z)(e=>{let{theme:t}=e;return{maxWidth:"100%",flexWrap:"wrap",[t.breakpoints.down("sm")]:{flexDirection:"column"}}});function eK(e){var t;let{recentEvals:s,onRecentEvalSelected:a,defaultEvalId:c}=e,d=(0,m.useRouter)(),u=(0,m.useSearchParams)(),{table:h,config:x,setConfig:D,maxTextLength:W,wordBreak:z,showInferenceDetails:V,evalId:B}=ee(),{setStateFromConfig:J}=(0,j.o)(),[H,G]=l.useState((null==u?void 0:u.get("search"))||""),[X]=(0,_.Nr)(H,1e3),Y=e=>{G(e)},[q,$]=l.useState({}),K=l.useCallback((e,t)=>{$(s=>({...s,[e]:t}))},[$]),[Q,es]=l.useState("all"),[en,ea]=l.useState(!1),[er,ei]=l.useState(""),[eo,ec]=l.useState(!1),ed=async()=>{ec(!0);try{let e=await fetch("".concat(r,"/api/eval"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({data:{version:2,createdAt:new Date().toISOString(),results:{table:h},config:x}})}),{id:t}=await e.json(),s="".concat(i,"/eval/").concat(t);ei(s),ea(!0)}catch(e){alert("Sorry, something went wrong.")}finally{ec(!1)}},[eu,ep]=l.useState(!1),[eh,em]=l.useState(!1);(0,g.Z)(h,"Table data must be loaded before rendering ResultsView");let{head:eg}=h,ej=async()=>{(0,g.Z)(x,"Config must be loaded before clicking its description");let e=window.prompt("Enter new description:",x.description);if(null!==e&&e!==x.description){let t={...x,description:e};try{let e=await fetch("".concat(await (0,o.b)(),"/api/eval/").concat(B),{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({config:t})});if(!e.ok)throw Error("Network response was not ok");D(t)}catch(e){console.error("Failed to update table:",e)}}},ev=async()=>{if(window.confirm("Are you sure you want to delete this evaluation?"))try{let e=await fetch("".concat(await (0,o.b)(),"/api/eval/").concat(B),{method:"DELETE"});if(!e.ok)throw Error("Network response was not ok");d.push("/")}catch(e){console.error("Failed to delete evaluation:",e),alert("Failed to delete evaluation")}},ef=l.useMemo(()=>[...eg.vars.map((e,t)=>({value:"Variable ".concat(t+1),label:"Var ".concat(t+1,": ").concat(eg.vars[t].length>100?eg.vars[t].slice(0,97)+"...":eg.vars[t]),group:"Variables"})),...eg.prompts.map((e,t)=>{let s=eg.prompts[t],n=s.label||s.display||s.raw;return{value:"Prompt ".concat(t+1),label:"Prompt ".concat(t+1,": ").concat(n.length>100?n.slice(0,97)+"...":n),group:"Prompts"}})],[eg.vars,eg.prompts]),[eb,ey]=l.useState({}),[eZ,ew]=l.useState(ef.map(e=>e.value)),[eC,ek]=l.useState(null);return(0,n.jsxs)("div",{style:{marginLeft:"1rem",marginRight:"1rem"},children:[(0,n.jsx)(k.Z,{mb:2,sx:{display:"flex",alignItems:"center"},children:(0,n.jsxs)(U.Z,{variant:"h5",sx:{flexGrow:1},children:[(0,n.jsx)("span",{className:"description",onClick:ej,children:(null==x?void 0:x.description)||B})," ",(null==x?void 0:x.description)&&(0,n.jsx)("span",{className:"description-filepath",children:B})]})}),(0,n.jsx)(k.Z,{py:"md",children:(0,n.jsxs)(e$,{direction:"row",spacing:4,alignItems:"center",children:[(0,n.jsx)(k.Z,{children:s&&s.length>0&&(0,n.jsx)(R.Z,{sx:{m:1,minWidth:200},size:"small",children:(0,n.jsx)(C.Z,{size:"small",options:s,renderOption:(e,t)=>(0,l.createElement)("li",{...e,key:t.id},t.label),style:{width:350},renderInput:e=>(0,n.jsx)(L.Z,{...e,label:"Eval run",variant:"outlined"}),defaultValue:s.find(e=>e.id===c)||s[0],onChange:(e,t)=>{t&&t.id&&a(t.id)},disableClearable:!0})})}),(0,n.jsx)(k.Z,{children:(0,n.jsxs)(R.Z,{sx:{m:1,minWidth:200,maxWidth:350},size:"small",children:[(0,n.jsx)(I.Z,{id:"visible-columns-label",children:"Columns"}),(0,n.jsx)(M.Z,{labelId:"visible-columns-label",id:"visible-columns",multiple:!0,value:eZ,onChange:e=>{let{target:{value:t}}=e;ew("string"==typeof t?t.split(","):t);let s=[...eg.vars.map((e,t)=>"Variable ".concat(t+1)),...eg.prompts.map((e,t)=>"Prompt ".concat(t+1))],n={};s.forEach(e=>{n[e]=("string"==typeof t?t.split(","):t).includes(e)}),ey(n)},input:(0,n.jsx)(T.Z,{label:"Visible columns"}),renderValue:e=>e.join(", "),children:ef.map(e=>(0,n.jsxs)(O.Z,{dense:!0,value:e.value,children:[(0,n.jsx)(N.Z,{checked:eZ.indexOf(e.value)>-1}),(0,n.jsx)(E.Z,{primary:e.label})]},e.value))})]})}),(0,n.jsx)(k.Z,{children:(0,n.jsxs)(R.Z,{sx:{minWidth:180},size:"small",children:[(0,n.jsx)(I.Z,{id:"failure-filter-mode-label",children:"Display"}),(0,n.jsxs)(M.Z,{labelId:"filter-mode-label",id:"filter-mode",value:Q,onChange:e=>{let t=e.target.value;es(t);let s={};eg.prompts.forEach((e,n)=>{s["Prompt ".concat(n+1)]="failures"===t}),$(s)},label:"Filter",children:[(0,n.jsx)(O.Z,{value:"all",children:"Show all results"}),(0,n.jsx)(O.Z,{value:"failures",children:"Show failures only"}),(0,n.jsx)(O.Z,{value:"different",children:"Show different only"}),(0,n.jsx)(O.Z,{value:"highlights",children:"Show highlights only"})]})]})}),(0,n.jsx)(k.Z,{children:(0,n.jsx)(L.Z,{sx:{minWidth:180},size:"small",label:"Search",placeholder:"Text or regex",value:H,onChange:e=>Y(e.target.value)})}),(0,n.jsx)(k.Z,{flexGrow:1}),(0,n.jsx)(k.Z,{display:"flex",justifyContent:"flex-end",children:(0,n.jsxs)(e$,{direction:"row",spacing:2,children:[(0,n.jsx)(S.Z,{color:"primary",onClick:e=>{ek(e.currentTarget)},startIcon:(0,n.jsx)(v.Z,{}),children:"Eval actions"}),x&&(0,n.jsxs)(F.Z,{id:"eval-actions-menu",anchorEl:eC,keepMounted:!0,open:!!eC,onClose:()=>{ek(null)},children:[(0,n.jsx)(A.Z,{title:"View the configuration that defines this eval",placement:"left",children:(0,n.jsxs)(O.Z,{onClick:()=>ep(!0),children:[(0,n.jsx)(P.Z,{children:(0,n.jsx)(w.Z,{fontSize:"small"})}),"View YAML"]})}),(0,n.jsx)(A.Z,{title:"Edit this eval in the web UI",placement:"left",children:(0,n.jsxs)(O.Z,{onClick:()=>{J(x),d.push("/setup/")},children:[(0,n.jsx)(P.Z,{children:(0,n.jsx)(b.Z,{fontSize:"small"})}),"Edit Eval"]})}),(0,n.jsx)(el,{}),(null==x?void 0:x.sharing)&&(0,n.jsx)(A.Z,{title:"Generate a unique URL that others can access",placement:"left",children:(0,n.jsxs)(O.Z,{onClick:ed,disabled:eo,children:[(0,n.jsx)(P.Z,{children:eo?(0,n.jsx)(p.Z,{size:16}):(0,n.jsx)(Z.Z,{fontSize:"small"})}),"Share"]})}),(0,n.jsx)(A.Z,{title:"Delete this eval",placement:"left",children:(0,n.jsxs)(O.Z,{onClick:ev,children:[(0,n.jsx)(P.Z,{children:(0,n.jsx)(f.Z,{fontSize:"small"})}),"Delete"]})})]}),(0,n.jsx)(A.Z,{title:"Edit table view settings",placement:"bottom",children:(0,n.jsx)(S.Z,{color:"primary",onClick:()=>em(!0),startIcon:(0,n.jsx)(y.Z,{}),children:"Table Settings"})}),(null==x?void 0:null===(t=x.metadata)||void 0===t?void 0:t.redteam)&&(0,n.jsx)(A.Z,{title:"View vulnerability scan report",placement:"bottom",children:(0,n.jsx)(S.Z,{color:"primary",startIcon:(0,n.jsx)(w.Z,{}),onClick:()=>d.push("/report/?evalId=".concat(B)),children:"Vulnerability Report"})})]})})]})}),(0,n.jsx)(ex,{columnVisibility:eb}),(0,n.jsx)(eG,{maxTextLength:W,columnVisibility:eb,wordBreak:z,showStats:V,filterMode:Q,failureFilter:q,searchText:X,onFailureFilterToggle:K,onSearchTextChange:Y}),(0,n.jsx)(et,{open:eu,onClose:()=>ep(!1)}),(0,n.jsx)(eq,{open:en,onClose:()=>ea(!1),shareUrl:er}),(0,n.jsx)(eY,{open:eh,onClose:()=>em(!1)})]})}async function eQ(){let e=(0,h.createClientComponentClient)(),{data:{user:t}}=await e.auth.getUser();(0,g.Z)(t,"User not logged in");let{data:s,error:n}=await e.from("EvaluationResult").select("id, createdAt").eq("user_id",t.id).order("createdAt",{ascending:!1}).limit(100);return s||[]}async function e0(e){let t=(0,h.createClientComponentClient)(),{data:s,error:n}=await t.from("EvaluationResult").select("*").eq("id",e).single();return s}function e1(e){var t;let{fetchId:s,preloadedData:a,recentEvals:i,defaultEvalId:c}=e,h=(0,m.useRouter)(),{table:j,setTable:v,setConfig:f,setEvalId:b}=ee(),[y,Z]=l.useState(!1),[w,C]=l.useState(!1),[k,S]=l.useState(i||[]),N=async()=>{let e=await fetch("".concat(await (0,o.b)(),"/api/results"),{cache:"no-store"}),t=await e.json();return S(t.data),t.data},R=l.useCallback(async e=>{let t=await fetch("".concat(await (0,o.b)(),"/api/results/").concat(e),{cache:"no-store"}),s=await t.json();v(s.data.results.table),f(s.data.config),b(e)},[v,f,b]),I=async e=>{u.Ox?(Z(!1),h.push("/eval/remote:".concat(encodeURIComponent(e)))):h.push("/eval/?evalId=".concat(encodeURIComponent(e)))},[P,E]=l.useState(c||(null===(t=k[0])||void 0===t?void 0:t.id)),F=(0,m.useSearchParams)(),O=F?F.get("evalId"):null;return(l.useEffect(()=>{if(O){let e=async()=>{await R(O),Z(!0),E(O),N()};e()}else if(a){var e;v(null===(e=a.data.results)||void 0===e?void 0:e.table),f(a.data.config),Z(!0)}else if(s){let e=async()=>{var e;let t="".concat(r,"/api/eval/").concat(s);console.log("Fetching eval from remote server",t);let n=await fetch(t);if(!n.ok){C(!0);return}let l=await n.json();v(null===(e=l.data.results)||void 0===e?void 0:e.table),f(l.data.config),Z(!0)};e()}else if(u.T8)(0,o.b)().then(e=>{let t=(0,x.io)(e);return t.on("init",e=>{console.log("Initialized socket connection",e),Z(!0),v(null==e?void 0:e.results.table),f(null==e?void 0:e.config),N().then(e=>{var t,s;E(null===(t=e[0])||void 0===t?void 0:t.id),b(null===(s=e[0])||void 0===s?void 0:s.id)})}),t.on("update",e=>{console.log("Received data update",e),v(e.results.table),f(e.config),N().then(e=>{var t;let s=null===(t=e[0])||void 0===t?void 0:t.id;s&&(E(s),b(s))})}),()=>{t.disconnect()}});else if(u.Ox)eQ().then(e=>{S(e.map(e=>({id:e.id,label:e.createdAt}))),e.length>0&&e0(e[0].id).then(t=>{(0,g.Z)(t,"Eval not found");let s=t.results,n=t.config;E(e[0].id),v(s.table),f(n),Z(!0)})});else{let e=async()=>{let e=await N();if(!(e.length>0))return(0,n.jsx)("div",{className:"notice",children:"No evals yet. Share some evals to this server and they will appear here."});{let t=await (0,o.b)(),s=e[0].id,n=await fetch("".concat(t,"/api/results/").concat(s)),l=await n.json();v(l.data.results.table),f(l.data.config),Z(!0),E(s),b(s)}};e()}},[s,v,f,b,R,a,E,O]),w)?(0,n.jsx)("div",{className:"notice",children:"404 Eval not found"}):y&&j?(0,n.jsx)(d,{children:(0,n.jsx)(eK,{defaultEvalId:P,recentEvals:k,onRecentEvalSelected:I})}):(0,n.jsxs)("div",{className:"notice",children:[(0,n.jsx)("div",{children:(0,n.jsx)(p.Z,{size:22})}),(0,n.jsx)("div",{children:"Waiting for eval data"})]})}s(94455)},52428:function(e,t,s){"use strict";s.d(t,{Ox:function(){return a},T8:function(){return l},eA:function(){return r}});var n=s(77580);let l=!n.env.NEXT_PUBLIC_PROMPTFOO_BUILD_STANDALONE_SERVER,a=!!n.env.NEXT_PUBLIC_PROMPTFOO_USE_SUPABASE,r=""},47887:function(e,t,s){"use strict";s.d(t,{o:function(){return a}});var n=s(79685),l=s(74595);let a=(0,n.Ue)()((0,l.tJ)((e,t)=>({env:{},testCases:[],description:"",providers:[],prompts:[],defaultTest:{},evaluateOptions:{},setEnv:t=>e({env:t}),setTestCases:t=>e({testCases:t}),setDescription:t=>e({description:t}),setProviders:t=>e({providers:t}),setPrompts:t=>e({prompts:t}),setDefaultTest:t=>e({defaultTest:t}),setEvaluateOptions:t=>e({evaluateOptions:t}),setStateFromConfig:t=>{let s={};t.description&&(s.description=t.description||""),t.tests&&(s.testCases=t.tests),t.providers&&(s.providers=t.providers),t.prompts&&("string"==typeof t.prompts?s.prompts=[t.prompts]:Array.isArray(t.prompts)?s.prompts=t.prompts.filter(e=>"string"==typeof e&&!e.endsWith(".txt")&&!e.endsWith(".json")&&!e.endsWith(".yaml")):console.warn("Invalid prompts config",t.prompts)),t.defaultTest&&(s.defaultTest=t.defaultTest),t.evaluateOptions&&(s.evaluateOptions=t.evaluateOptions),e(s)},getTestSuite:()=>{let{description:e,testCases:s,providers:n,prompts:l,env:a}=t();return{env:a,description:e,providers:n,prompts:l,tests:s}}}),{name:"promptfoo",skipHydration:!0}))},55974:function(){},94455:function(){},16658:function(){},93207:function(){},58022:function(){}}]);