promptfoo 0.33.3 → 0.34.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 (68) hide show
  1. package/README.md +23 -22
  2. package/dist/package.json +1 -1
  3. package/dist/src/assertions.d.ts +4 -2
  4. package/dist/src/assertions.d.ts.map +1 -1
  5. package/dist/src/assertions.js +22 -5
  6. package/dist/src/assertions.js.map +1 -1
  7. package/dist/src/evaluator.d.ts.map +1 -1
  8. package/dist/src/evaluator.js +8 -7
  9. package/dist/src/evaluator.js.map +1 -1
  10. package/dist/src/index.js +1 -1
  11. package/dist/src/index.js.map +1 -1
  12. package/dist/src/main.js +4 -3
  13. package/dist/src/main.js.map +1 -1
  14. package/dist/src/providers/huggingface.js +2 -2
  15. package/dist/src/providers/huggingface.js.map +1 -1
  16. package/dist/src/providers/openai.d.ts +20 -2
  17. package/dist/src/providers/openai.d.ts.map +1 -1
  18. package/dist/src/providers/openai.js +92 -31
  19. package/dist/src/providers/openai.js.map +1 -1
  20. package/dist/src/providers.d.ts.map +1 -1
  21. package/dist/src/providers.js +2 -2
  22. package/dist/src/providers.js.map +1 -1
  23. package/dist/src/table.d.ts.map +1 -1
  24. package/dist/src/table.js +5 -1
  25. package/dist/src/table.js.map +1 -1
  26. package/dist/src/types.d.ts +12 -5
  27. package/dist/src/types.d.ts.map +1 -1
  28. package/dist/src/util.d.ts +3 -1
  29. package/dist/src/util.d.ts.map +1 -1
  30. package/dist/src/util.js +108 -11
  31. package/dist/src/util.js.map +1 -1
  32. package/dist/src/web/nextui/404/index.html +1 -1
  33. package/dist/src/web/nextui/404.html +1 -1
  34. package/dist/src/web/nextui/_next/static/chunks/{919-d71c386cf4a86911.js → 440-d53e95152985d2c9.js} +3 -3
  35. package/dist/src/web/nextui/_next/static/chunks/729-98e547dcb2d392cc.js +1 -0
  36. package/dist/src/web/nextui/_next/static/chunks/896-f2519aac9087ba0a.js +8 -0
  37. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/{page-6e1876bf1b902e7d.js → page-8571bc66ffa4f037.js} +1 -1
  38. package/dist/src/web/nextui/_next/static/chunks/app/eval/page-3b208fe2a2800a3e.js +1 -0
  39. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-4bc19fb7fd534921.js +1 -0
  40. package/dist/src/web/nextui/_next/static/chunks/{webpack-e0942e16d7068577.js → webpack-d493d89689f7b43b.js} +1 -1
  41. package/dist/src/web/nextui/_next/static/css/8c7fcf68df21e7e6.css +1 -0
  42. package/dist/src/web/nextui/_next/static/css/fbdc70c454098755.css +1 -0
  43. package/dist/src/web/nextui/auth/login/index.html +1 -1
  44. package/dist/src/web/nextui/auth/login/index.txt +3 -3
  45. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  46. package/dist/src/web/nextui/auth/signup/index.txt +3 -3
  47. package/dist/src/web/nextui/datasets/index.html +1 -1
  48. package/dist/src/web/nextui/datasets/index.txt +3 -3
  49. package/dist/src/web/nextui/eval/index.html +1 -1
  50. package/dist/src/web/nextui/eval/index.txt +6 -6
  51. package/dist/src/web/nextui/index.html +1 -1
  52. package/dist/src/web/nextui/index.txt +3 -3
  53. package/dist/src/web/nextui/prompts/index.html +1 -1
  54. package/dist/src/web/nextui/prompts/index.txt +3 -3
  55. package/dist/src/web/nextui/setup/index.html +2 -2
  56. package/dist/src/web/nextui/setup/index.txt +5 -5
  57. package/dist/src/web/server.d.ts.map +1 -1
  58. package/dist/src/web/server.js +18 -2
  59. package/dist/src/web/server.js.map +1 -1
  60. package/package.json +1 -1
  61. package/dist/src/web/nextui/_next/static/chunks/753-f62bfa32dbd9ff14.js +0 -8
  62. package/dist/src/web/nextui/_next/static/chunks/860-af67976c17d7f0d3.js +0 -1
  63. package/dist/src/web/nextui/_next/static/chunks/app/eval/page-c57265f0cc765850.js +0 -1
  64. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-0e921c39ba7c3038.js +0 -1
  65. package/dist/src/web/nextui/_next/static/css/6de4b83ebb0d35d6.css +0 -1
  66. package/dist/src/web/nextui/_next/static/css/d214f868fd093747.css +0 -1
  67. /package/dist/src/web/nextui/_next/static/{a66W9hLbRiOSchIpxBjVs → VpwZ6hpHRmu4JDi-ZyG1a}/_buildManifest.js +0 -0
  68. /package/dist/src/web/nextui/_next/static/{a66W9hLbRiOSchIpxBjVs → VpwZ6hpHRmu4JDi-ZyG1a}/_ssgManifest.js +0 -0
package/dist/src/util.js CHANGED
@@ -26,7 +26,7 @@ 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.printBorder = exports.getNunjucksEngine = exports.readFilters = exports.getEvalsWithPredicate = exports.getEvalFromHash = exports.getEvals = exports.getDatasetFromHash = exports.getPromptFromHash = exports.getTestCasesWithPredicate = exports.getTestCases = exports.getPromptsWithPredicate = exports.getPrompts = exports.sha256 = exports.getPromptsForTestCasesHash = exports.getPromptsForTestCases = exports.readLatestResults = exports.readResult = exports.dateToFilename = exports.filenameToDate = exports.cleanupOldResults = exports.listPreviousResults = exports.writeLatestResults = exports.getLatestResultsPath = exports.setConfigDirectoryPath = exports.getConfigDirectoryPath = exports.writeOutput = exports.writeMultipleOutputs = exports.readConfigs = exports.readConfig = exports.maybeReadConfig = exports.maybeRecordFirstRun = exports.readGlobalConfig = exports.resetGlobalConfig = void 0;
29
+ exports.printBorder = exports.getNunjucksEngine = exports.readFilters = exports.getEvalsWithPredicate = exports.getEvalFromHash = 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 = exports.dateToFilename = exports.filenameToDate = exports.cleanupOldResults = exports.listPreviousResults = exports.writeLatestResults = exports.getLatestResultsPath = exports.setConfigDirectoryPath = exports.getConfigDirectoryPath = exports.writeOutput = exports.writeMultipleOutputs = exports.readConfigs = exports.readConfig = exports.dereferenceConfig = exports.maybeReadConfig = exports.maybeRecordFirstRun = exports.readGlobalConfig = exports.resetGlobalConfig = void 0;
30
30
  const fs = __importStar(require("fs"));
31
31
  const path = __importStar(require("path"));
32
32
  const os = __importStar(require("os"));
@@ -86,20 +86,97 @@ async function maybeReadConfig(configPath) {
86
86
  return readConfig(configPath);
87
87
  }
88
88
  exports.maybeReadConfig = maybeReadConfig;
89
+ async function dereferenceConfig(rawConfig) {
90
+ if (process.env.PROMPTFOO_DISABLE_REF_PARSER) {
91
+ return rawConfig;
92
+ }
93
+ // Track and delete tools[i].function for each tool, preserving the rest of the properties
94
+ // https://github.com/promptfoo/promptfoo/issues/364
95
+ // Remove parameters from functions and tools to prevent dereferencing
96
+ const extractFunctionParameters = (functions) => {
97
+ return functions.map((func) => {
98
+ const { parameters } = func;
99
+ delete func.parameters;
100
+ return { parameters };
101
+ });
102
+ };
103
+ const extractToolParameters = (tools) => {
104
+ return tools.map((tool) => {
105
+ const { parameters } = tool.function || {};
106
+ if (tool.function?.parameters) {
107
+ delete tool.function.parameters;
108
+ }
109
+ return { parameters };
110
+ });
111
+ };
112
+ // Restore parameters to functions and tools after dereferencing
113
+ const restoreFunctionParameters = (functions, parametersList) => {
114
+ functions.forEach((func, index) => {
115
+ if (parametersList[index]?.parameters) {
116
+ func.parameters = parametersList[index].parameters;
117
+ }
118
+ });
119
+ };
120
+ const restoreToolParameters = (tools, parametersList) => {
121
+ tools.forEach((tool, index) => {
122
+ if (parametersList[index]?.parameters) {
123
+ tool.function = tool.function || {};
124
+ tool.function.parameters = parametersList[index].parameters;
125
+ }
126
+ });
127
+ };
128
+ let functionsParametersList = [];
129
+ let toolsParametersList = [];
130
+ if (Array.isArray(rawConfig.providers)) {
131
+ rawConfig.providers.forEach((provider, providerIndex) => {
132
+ if (typeof provider === 'string')
133
+ return;
134
+ if (!provider.config) {
135
+ // Handle when provider is a map
136
+ provider = Object.values(provider)[0];
137
+ }
138
+ if (provider.config?.functions) {
139
+ functionsParametersList[providerIndex] = extractFunctionParameters(provider.config.functions);
140
+ }
141
+ if (provider.config?.tools) {
142
+ toolsParametersList[providerIndex] = extractToolParameters(provider.config.tools);
143
+ }
144
+ });
145
+ }
146
+ // Dereference JSON
147
+ const config = (await json_schema_ref_parser_1.default.dereference(rawConfig));
148
+ // Restore functions and tools parameters
149
+ if (Array.isArray(config.providers)) {
150
+ config.providers.forEach((provider, index) => {
151
+ if (typeof provider === 'string')
152
+ return;
153
+ if (!provider.config) {
154
+ // Handle when provider is a map
155
+ provider = Object.values(provider)[0];
156
+ }
157
+ if (functionsParametersList[index]) {
158
+ provider.config.functions = provider.config.functions || [];
159
+ restoreFunctionParameters(provider.config.functions, functionsParametersList[index]);
160
+ }
161
+ if (toolsParametersList[index]) {
162
+ provider.config.tools = provider.config.tools || [];
163
+ restoreToolParameters(provider.config.tools, toolsParametersList[index]);
164
+ }
165
+ });
166
+ }
167
+ return config;
168
+ }
169
+ exports.dereferenceConfig = dereferenceConfig;
89
170
  async function readConfig(configPath) {
90
171
  const ext = path.parse(configPath).ext;
91
172
  switch (ext) {
92
173
  case '.json':
93
- let json = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
94
- json = (await json_schema_ref_parser_1.default.dereference(json));
95
- return json;
96
- case '.js':
97
- return require(configPath);
98
174
  case '.yaml':
99
175
  case '.yml':
100
- let ret = js_yaml_1.default.load(fs.readFileSync(configPath, 'utf-8'));
101
- ret = (await json_schema_ref_parser_1.default.dereference(ret));
102
- return ret;
176
+ let rawConfig = js_yaml_1.default.load(fs.readFileSync(configPath, 'utf-8'));
177
+ return dereferenceConfig(rawConfig);
178
+ case '.js':
179
+ return require(configPath);
103
180
  default:
104
181
  throw new Error(`Unsupported configuration file format: ${ext}`);
105
182
  }
@@ -173,7 +250,7 @@ async function readConfigs(configPaths) {
173
250
  env: configs.reduce((prev, curr) => ({ ...prev, ...curr.env }), {}),
174
251
  evaluateOptions: configs.reduce((prev, curr) => ({ ...prev, ...curr.evaluateOptions }), {}),
175
252
  commandLineOptions: configs.reduce((prev, curr) => ({ ...prev, ...curr.commandLineOptions }), {}),
176
- sharing: !configs.some(config => config.sharing === false),
253
+ sharing: !configs.some((config) => config.sharing === false),
177
254
  };
178
255
  return combinedConfig;
179
256
  }
@@ -276,7 +353,7 @@ function listPreviousResults() {
276
353
  return sortedFiles;
277
354
  }
278
355
  exports.listPreviousResults = listPreviousResults;
279
- const RESULT_HISTORY_LENGTH = parseInt(process.env.RESULT_HISTORY_LENGTH || '', 10) || 50;
356
+ const RESULT_HISTORY_LENGTH = parseInt(process.env.RESULT_HISTORY_LENGTH || '', 10) || 100;
280
357
  function cleanupOldResults(remaining = RESULT_HISTORY_LENGTH) {
281
358
  const sortedFiles = listPreviousResults();
282
359
  for (let i = 0; i < sortedFiles.length - remaining; i++) {
@@ -323,6 +400,26 @@ function readResult(name) {
323
400
  }
324
401
  }
325
402
  exports.readResult = readResult;
403
+ function updateResult(filename, newTable) {
404
+ const resultsDirectory = path.join(getConfigDirectoryPath(), 'output');
405
+ const safeFilename = path.basename(filename);
406
+ const resultsPath = path.join(resultsDirectory, safeFilename);
407
+ try {
408
+ const evalData = JSON.parse(fs.readFileSync(resultsPath, 'utf-8'));
409
+ evalData.results.table = newTable;
410
+ fs.writeFileSync(resultsPath, JSON.stringify(evalData, null, 2));
411
+ logger_1.default.info(`Updated results in ${resultsPath}`);
412
+ const results = listPreviousResults();
413
+ if (filename === results[results.length - 1]) {
414
+ // Overwite latest.json too
415
+ fs.copyFileSync(resultsPath, getLatestResultsPath());
416
+ }
417
+ }
418
+ catch (err) {
419
+ logger_1.default.error(`Failed to update results in ${resultsPath}:\n${err}`);
420
+ }
421
+ }
422
+ exports.updateResult = updateResult;
326
423
  function readLatestResults() {
327
424
  return JSON.parse(fs.readFileSync(getLatestResultsPath(), 'utf-8'));
328
425
  }
@@ -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-e0942e16d7068577.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/a66W9hLbRiOSchIpxBjVs/_buildManifest.js" defer=""></script><script src="/_next/static/a66W9hLbRiOSchIpxBjVs/_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":"a66W9hLbRiOSchIpxBjVs","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-d493d89689f7b43b.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_buildManifest.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_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":"VpwZ6hpHRmu4JDi-ZyG1a","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-e0942e16d7068577.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/a66W9hLbRiOSchIpxBjVs/_buildManifest.js" defer=""></script><script src="/_next/static/a66W9hLbRiOSchIpxBjVs/_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":"a66W9hLbRiOSchIpxBjVs","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-d493d89689f7b43b.js" defer=""></script><script src="/_next/static/chunks/framework-8883d1e9be70c3da.js" defer=""></script><script src="/_next/static/chunks/main-b81070c77c77982d.js" defer=""></script><script src="/_next/static/chunks/pages/_app-52924524f99094ab.js" defer=""></script><script src="/_next/static/chunks/pages/_error-c92d5c4bb2b49926.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_buildManifest.js" defer=""></script><script src="/_next/static/VpwZ6hpHRmu4JDi-ZyG1a/_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":"VpwZ6hpHRmu4JDi-ZyG1a","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -1,4 +1,4 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[919],{9329:function(e,t,r){var n=r(6314);t.Z=void 0;var o=n(r(984)),a=r(7437),i=(0,o.default)((0,a.jsx)("path",{d:"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"}),"ContentCopy");t.Z=i},3391:function(e,t,r){var n=r(6314);t.Z=void 0;var o=n(r(984)),a=r(7437),i=(0,o.default)((0,a.jsx)("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}),"Edit");t.Z=i},6882:function(e,t,r){r.d(t,{Z:function(){return P}});var n=r(791),o=r(3428),a=r(2265),i=r(7042),s=r(5600),l=r(9538),u=r(8702),c=r(7927),d=r(5843),f=r(6520),v=r(5702);function h(e){return(0,v.Z)("MuiCircularProgress",e)}(0,f.Z)("MuiCircularProgress",["root","determinate","indeterminate","colorPrimary","colorSecondary","svg","circle","circleDeterminate","circleIndeterminate","circleDisableShrink"]);var m=r(7437);let p=["className","color","disableShrink","size","style","thickness","value","variant"],g=e=>e,y,S,b,E,Z=(0,l.F4)(y||(y=g`
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[440],{9329:function(e,t,r){var n=r(6314);t.Z=void 0;var o=n(r(984)),a=r(7437),i=(0,o.default)((0,a.jsx)("path",{d:"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"}),"ContentCopy");t.Z=i},3391:function(e,t,r){var n=r(6314);t.Z=void 0;var o=n(r(984)),a=r(7437),i=(0,o.default)((0,a.jsx)("path",{d:"M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"}),"Edit");t.Z=i},3295:function(e,t,r){var n=r(6314);t.Z=void 0;var o=n(r(984)),a=r(7437),i=(0,o.default)((0,a.jsx)("path",{d:"M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54c-.04-.24-.24-.41-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61l-2.01-1.58zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6z"}),"Settings");t.Z=i},6882:function(e,t,r){r.d(t,{Z:function(){return M}});var n=r(791),o=r(3428),a=r(2265),i=r(7042),s=r(5600),l=r(9538),u=r(8702),c=r(7927),d=r(5843),f=r(6520),v=r(5702);function h(e){return(0,v.Z)("MuiCircularProgress",e)}(0,f.Z)("MuiCircularProgress",["root","determinate","indeterminate","colorPrimary","colorSecondary","svg","circle","circleDeterminate","circleIndeterminate","circleDisableShrink"]);var m=r(7437);let p=["className","color","disableShrink","size","style","thickness","value","variant"],g=e=>e,y,S,b,Z,E=(0,l.F4)(y||(y=g`
2
2
  0% {
3
3
  transform: rotate(0deg);
4
4
  }
@@ -23,9 +23,9 @@
23
23
  }
24
24
  `)),x=e=>{let{classes:t,variant:r,color:n,disableShrink:o}=e,a={root:["root",r,`color${(0,u.Z)(n)}`],svg:["svg"],circle:["circle",`circle${(0,u.Z)(r)}`,o&&"circleDisableShrink"]};return(0,s.Z)(a,h,t)},C=(0,d.ZP)("span",{name:"MuiCircularProgress",slot:"Root",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.root,t[r.variant],t[`color${(0,u.Z)(r.color)}`]]}})(({ownerState:e,theme:t})=>(0,o.Z)({display:"inline-block"},"determinate"===e.variant&&{transition:t.transitions.create("transform")},"inherit"!==e.color&&{color:(t.vars||t).palette[e.color].main}),({ownerState:e})=>"indeterminate"===e.variant&&(0,l.iv)(b||(b=g`
25
25
  animation: ${0} 1.4s linear infinite;
26
- `),Z)),k=(0,d.ZP)("svg",{name:"MuiCircularProgress",slot:"Svg",overridesResolver:(e,t)=>t.svg})({display:"block"}),D=(0,d.ZP)("circle",{name:"MuiCircularProgress",slot:"Circle",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.circle,t[`circle${(0,u.Z)(r.variant)}`],r.disableShrink&&t.circleDisableShrink]}})(({ownerState:e,theme:t})=>(0,o.Z)({stroke:"currentColor"},"determinate"===e.variant&&{transition:t.transitions.create("stroke-dashoffset")},"indeterminate"===e.variant&&{strokeDasharray:"80px, 200px",strokeDashoffset:0}),({ownerState:e})=>"indeterminate"===e.variant&&!e.disableShrink&&(0,l.iv)(E||(E=g`
26
+ `),E)),k=(0,d.ZP)("svg",{name:"MuiCircularProgress",slot:"Svg",overridesResolver:(e,t)=>t.svg})({display:"block"}),D=(0,d.ZP)("circle",{name:"MuiCircularProgress",slot:"Circle",overridesResolver:(e,t)=>{let{ownerState:r}=e;return[t.circle,t[`circle${(0,u.Z)(r.variant)}`],r.disableShrink&&t.circleDisableShrink]}})(({ownerState:e,theme:t})=>(0,o.Z)({stroke:"currentColor"},"determinate"===e.variant&&{transition:t.transitions.create("stroke-dashoffset")},"indeterminate"===e.variant&&{strokeDasharray:"80px, 200px",strokeDashoffset:0}),({ownerState:e})=>"indeterminate"===e.variant&&!e.disableShrink&&(0,l.iv)(Z||(Z=g`
27
27
  animation: ${0} 1.4s ease-in-out infinite;
28
- `),w)),z=a.forwardRef(function(e,t){let r=(0,c.Z)({props:e,name:"MuiCircularProgress"}),{className:a,color:s="primary",disableShrink:l=!1,size:u=40,style:d,thickness:f=3.6,value:v=0,variant:h="indeterminate"}=r,g=(0,n.Z)(r,p),y=(0,o.Z)({},r,{color:s,disableShrink:l,size:u,thickness:f,value:v,variant:h}),S=x(y),b={},E={},Z={};if("determinate"===h){let e=2*Math.PI*((44-f)/2);b.strokeDasharray=e.toFixed(3),Z["aria-valuenow"]=Math.round(v),b.strokeDashoffset=`${((100-v)/100*e).toFixed(3)}px`,E.transform="rotate(-90deg)"}return(0,m.jsx)(C,(0,o.Z)({className:(0,i.Z)(S.root,a),style:(0,o.Z)({width:u,height:u},E,d),ownerState:y,ref:t,role:"progressbar"},Z,g,{children:(0,m.jsx)(k,{className:S.svg,ownerState:y,viewBox:"22 22 44 44",children:(0,m.jsx)(D,{className:S.circle,style:b,ownerState:y,cx:44,cy:44,r:(44-f)/2,fill:"none",strokeWidth:f})})}))});var P=z},4173:function(e,t,r){r.d(t,{Z:function(){return S}});var n=r(791),o=r(3428),a=r(2265),i=r(7042),s=r(5600),l=r(5843),u=r(7927),c=r(3226),d=r(6520),f=r(5702);function v(e){return(0,f.Z)("MuiDialogContentText",e)}(0,d.Z)("MuiDialogContentText",["root"]);var h=r(7437);let m=["children","className"],p=e=>{let{classes:t}=e,r=(0,s.Z)({root:["root"]},v,t);return(0,o.Z)({},t,r)},g=(0,l.ZP)(c.Z,{shouldForwardProp:e=>(0,l.FO)(e)||"classes"===e,name:"MuiDialogContentText",slot:"Root",overridesResolver:(e,t)=>t.root})({}),y=a.forwardRef(function(e,t){let r=(0,u.Z)({props:e,name:"MuiDialogContentText"}),{className:a}=r,s=(0,n.Z)(r,m),l=p(s);return(0,h.jsx)(g,(0,o.Z)({component:"p",variant:"body1",color:"text.secondary",ref:t,ownerState:s,className:(0,i.Z)(l.root,a)},r,{classes:l}))});var S=y},5795:function(e,t,r){r.d(t,{Z:function(){return y}});var n=r(3428),o=r(791),a=r(2265),i=r(7042),s=r(5600),l=r(7927),u=r(5843),c=r(6520),d=r(5702);function f(e){return(0,d.Z)("MuiTableContainer",e)}(0,c.Z)("MuiTableContainer",["root"]);var v=r(7437);let h=["className","component"],m=e=>{let{classes:t}=e;return(0,s.Z)({root:["root"]},f,t)},p=(0,u.ZP)("div",{name:"MuiTableContainer",slot:"Root",overridesResolver:(e,t)=>t.root})({width:"100%",overflowX:"auto"}),g=a.forwardRef(function(e,t){let r=(0,l.Z)({props:e,name:"MuiTableContainer"}),{className:a,component:s="div"}=r,u=(0,o.Z)(r,h),c=(0,n.Z)({},r,{component:s}),d=m(c);return(0,v.jsx)(p,(0,n.Z)({ref:t,as:s,className:(0,i.Z)(d.root,a),ownerState:c},u))});var y=g},4740:function(e,t,r){r.d(t,{SV:function(){return i}});var n=r(2265);let o=(0,n.createContext)(null),a={didCatch:!1,error:null};class i extends n.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=a}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){let{error:e}=this.state;if(null!==e){for(var t,r,n=arguments.length,o=Array(n),i=0;i<n;i++)o[i]=arguments[i];null===(t=(r=this.props).onReset)||void 0===t||t.call(r,{args:o,reason:"imperative-api"}),this.setState(a)}}componentDidCatch(e,t){var r,n;null===(r=(n=this.props).onError)||void 0===r||r.call(n,e,t)}componentDidUpdate(e,t){let{didCatch:r}=this.state,{resetKeys:n}=this.props;if(r&&null!==t.error&&function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some((e,r)=>!Object.is(e,t[r]))}(e.resetKeys,n)){var o,i;null===(o=(i=this.props).onReset)||void 0===o||o.call(i,{next:n,prev:e.resetKeys,reason:"keys"}),this.setState(a)}}render(){let{children:e,fallbackRender:t,FallbackComponent:r,fallback:a}=this.props,{didCatch:i,error:s}=this.state,l=e;if(i){let e={error:s,resetErrorBoundary:this.resetErrorBoundary};if((0,n.isValidElement)(a))l=a;else if("function"==typeof t)l=t(e);else if(r)l=(0,n.createElement)(r,e);else throw s}return(0,n.createElement)(o.Provider,{value:{didCatch:i,error:s,resetErrorBoundary:this.resetErrorBoundary}},l)}}},1853:function(e,t,r){/**
28
+ `),w)),z=a.forwardRef(function(e,t){let r=(0,c.Z)({props:e,name:"MuiCircularProgress"}),{className:a,color:s="primary",disableShrink:l=!1,size:u=40,style:d,thickness:f=3.6,value:v=0,variant:h="indeterminate"}=r,g=(0,n.Z)(r,p),y=(0,o.Z)({},r,{color:s,disableShrink:l,size:u,thickness:f,value:v,variant:h}),S=x(y),b={},Z={},E={};if("determinate"===h){let e=2*Math.PI*((44-f)/2);b.strokeDasharray=e.toFixed(3),E["aria-valuenow"]=Math.round(v),b.strokeDashoffset=`${((100-v)/100*e).toFixed(3)}px`,Z.transform="rotate(-90deg)"}return(0,m.jsx)(C,(0,o.Z)({className:(0,i.Z)(S.root,a),style:(0,o.Z)({width:u,height:u},Z,d),ownerState:y,ref:t,role:"progressbar"},E,g,{children:(0,m.jsx)(k,{className:S.svg,ownerState:y,viewBox:"22 22 44 44",children:(0,m.jsx)(D,{className:S.circle,style:b,ownerState:y,cx:44,cy:44,r:(44-f)/2,fill:"none",strokeWidth:f})})}))});var M=z},4173:function(e,t,r){r.d(t,{Z:function(){return S}});var n=r(791),o=r(3428),a=r(2265),i=r(7042),s=r(5600),l=r(5843),u=r(7927),c=r(3226),d=r(6520),f=r(5702);function v(e){return(0,f.Z)("MuiDialogContentText",e)}(0,d.Z)("MuiDialogContentText",["root"]);var h=r(7437);let m=["children","className"],p=e=>{let{classes:t}=e,r=(0,s.Z)({root:["root"]},v,t);return(0,o.Z)({},t,r)},g=(0,l.ZP)(c.Z,{shouldForwardProp:e=>(0,l.FO)(e)||"classes"===e,name:"MuiDialogContentText",slot:"Root",overridesResolver:(e,t)=>t.root})({}),y=a.forwardRef(function(e,t){let r=(0,u.Z)({props:e,name:"MuiDialogContentText"}),{className:a}=r,s=(0,n.Z)(r,m),l=p(s);return(0,h.jsx)(g,(0,o.Z)({component:"p",variant:"body1",color:"text.secondary",ref:t,ownerState:s,className:(0,i.Z)(l.root,a)},r,{classes:l}))});var S=y},5795:function(e,t,r){r.d(t,{Z:function(){return y}});var n=r(3428),o=r(791),a=r(2265),i=r(7042),s=r(5600),l=r(7927),u=r(5843),c=r(6520),d=r(5702);function f(e){return(0,d.Z)("MuiTableContainer",e)}(0,c.Z)("MuiTableContainer",["root"]);var v=r(7437);let h=["className","component"],m=e=>{let{classes:t}=e;return(0,s.Z)({root:["root"]},f,t)},p=(0,u.ZP)("div",{name:"MuiTableContainer",slot:"Root",overridesResolver:(e,t)=>t.root})({width:"100%",overflowX:"auto"}),g=a.forwardRef(function(e,t){let r=(0,l.Z)({props:e,name:"MuiTableContainer"}),{className:a,component:s="div"}=r,u=(0,o.Z)(r,h),c=(0,n.Z)({},r,{component:s}),d=m(c);return(0,v.jsx)(p,(0,n.Z)({ref:t,as:s,className:(0,i.Z)(d.root,a),ownerState:c},u))});var y=g},4740:function(e,t,r){r.d(t,{SV:function(){return i}});var n=r(2265);let o=(0,n.createContext)(null),a={didCatch:!1,error:null};class i extends n.Component{constructor(e){super(e),this.resetErrorBoundary=this.resetErrorBoundary.bind(this),this.state=a}static getDerivedStateFromError(e){return{didCatch:!0,error:e}}resetErrorBoundary(){let{error:e}=this.state;if(null!==e){for(var t,r,n=arguments.length,o=Array(n),i=0;i<n;i++)o[i]=arguments[i];null===(t=(r=this.props).onReset)||void 0===t||t.call(r,{args:o,reason:"imperative-api"}),this.setState(a)}}componentDidCatch(e,t){var r,n;null===(r=(n=this.props).onError)||void 0===r||r.call(n,e,t)}componentDidUpdate(e,t){let{didCatch:r}=this.state,{resetKeys:n}=this.props;if(r&&null!==t.error&&function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return e.length!==t.length||e.some((e,r)=>!Object.is(e,t[r]))}(e.resetKeys,n)){var o,i;null===(o=(i=this.props).onReset)||void 0===o||o.call(i,{next:n,prev:e.resetKeys,reason:"keys"}),this.setState(a)}}render(){let{children:e,fallbackRender:t,FallbackComponent:r,fallback:a}=this.props,{didCatch:i,error:s}=this.state,l=e;if(i){let e={error:s,resetErrorBoundary:this.resetErrorBoundary};if((0,n.isValidElement)(a))l=a;else if("function"==typeof t)l=t(e);else if(r)l=(0,n.createElement)(r,e);else throw s}return(0,n.createElement)(o.Provider,{value:{didCatch:i,error:s,resetErrorBoundary:this.resetErrorBoundary}},l)}}},1853:function(e,t,r){/**
29
29
  * @license React
30
30
  * use-sync-external-store-shim.production.min.js
31
31
  *
@@ -0,0 +1 @@
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[729],{2810:function(e,t,s){"use strict";let l;async function n(){if(!l){let e=await fetch("/api/config"),t=await e.json();l=t.apiBaseUrl}return l}s.d(t,{b:function(){return n}})},9729:function(e,t,s){"use strict";s.r(t),s.d(t,{default:function(){return eP}});var l=s(7437),n=s(2265),r=s(2130),i=s(6882),a=s(3388),o=s(4033),c=s(3082),d=s(5551),u=s(6507),p=s(7760),h=s(4081),m=s(819),x=s(8212),j=s(5507),f=s(923),g=s(654),v=s(3457),y=s(8276),b=s(3295),Z=s(2467),w=s(9605),S=s(3391),C=s(9190),k=s(6704),N=s(9394),R=s(1797),F=s(6337),P=s(1101),E=s(9872),L=s(2653),D=s(3533),I=s(4740),T=s(4660);let M=(0,T.Ue)(e=>({filePath:null,setFilePath:t=>e(()=>({filePath: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}))})),V=["#fd7f6f","#7eb0d5","#b2e061","#bd7ebe","#ffb55a","#ffee65","#beb9db","#fdcce5","#8bd3c7"];function W(e){let{table:t}=e,s=(0,n.useRef)(null),r=(0,n.useRef)(null);return(0,n.useEffect)(()=>{if(!s.current)return;r.current&&r.current.destroy();let e=t.body.flatMap(e=>e.outputs.map(e=>e.score)),l=Math.min(...e),n=(Math.ceil(Math.max(...e))-Math.floor(l))/10,i=Array.from({length:11},(e,t)=>parseFloat((Math.floor(l)+t*n).toFixed(2))),a=t.head.prompts.map((e,s)=>{let l=t.body.flatMap(e=>e.outputs[s].score),r=i.map(e=>l.filter(t=>t>=e&&t<e+n).length);return{label:"Prompt ".concat(s+1),data:r,backgroundColor:V[s%V.length]}});r.current=new k.kL(s.current,{type:"bar",data:{labels:i,datasets:a},options:{animation:!1,plugins:{title:{display:!0,text:"Score Distribution"},legend:{display:!1},tooltip:{callbacks:{title:function(e){let t=e[0].datasetIndex;return"Prompt ".concat(t+1)},label:function(e){let t=e.dataIndex,s=i[t],l=i[t+1];return l?"".concat(s," <= score < ").concat(l):"".concat(s," <= score")}}}}}})},[t]),(0,l.jsx)("canvas",{ref:s,style:{maxHeight:"300px"}})}function O(e){let{table:t}=e,s=(0,n.useRef)(null),r=(0,n.useRef)(null);return(0,n.useEffect)(()=>{if(!s.current)return;r.current&&r.current.destroy();let e=t.head.prompts.map((e,s)=>{let l=t.body.flatMap(e=>e.outputs[s]),n=l.filter(e=>e.pass).length,r=n/l.length*100;return{label:"Prompt ".concat(s+1),data:[r],backgroundColor:V[s%V.length]}});r.current=new k.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,l.jsx)("canvas",{ref:s,style:{maxHeight:"300px"}})}function A(e){let{table:t}=e,s=(0,n.useRef)(null),r=(0,n.useRef)(null),[i,a]=(0,n.useState)(0),[o,c]=(0,n.useState)(1),[d,u]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{if(!s.current)return;r.current&&r.current.destroy();let e=t.body.flatMap(e=>e.outputs.map(e=>e.score)),l=Math.min(...e),n=Math.max(...e),a=t.body.map(e=>{let t=e.outputs[i].score,s=e.outputs[o].score;return{x:t,y:s,backgroundColor:s>t?"green":s<t?"red":"gray"}});r.current=new k.kL(s.current,{type:"scatter",data:{datasets:[{data:a,backgroundColor:a.map(e=>e.backgroundColor)},{type:"line",data:[{x:l,y:l},{x:n,y:n}],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],l=s.outputs[0].text,n=s.outputs[1].text;return l.length>30&&(l=l.substring(0,30)+"..."),n.length>30&&(n=n.substring(0,30)+"..."),"Output 1: ".concat(l,"\nOutput 2: ").concat(n)}}}},scales:{x:{title:{display:!0,text:"Prompt ".concat(i+1," Score")}},y:{title:{display:!0,text:"Prompt ".concat(o+1," Score")}}}}})},[t,i,o]),(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(N.Z,{open:d,onClose:()=>u(!1),children:[(0,l.jsx)(R.Z,{children:"Compare prompt outputs"}),(0,l.jsxs)(F.Z,{children:[(0,l.jsx)(h.Z,{sx:{m:1,minWidth:120},children:(0,l.jsx)(g.Z,{value:i,onChange:e=>a(Number(e.target.value)),children:t.head.prompts.map((e,t)=>(0,l.jsxs)(j.Z,{value:t,children:["Prompt ",t+1]},t))})}),(0,l.jsx)(h.Z,{sx:{m:1,minWidth:120},children:(0,l.jsx)(g.Z,{value:o,onChange:e=>c(Number(e.target.value)),children:t.head.prompts.map((e,t)=>(0,l.jsxs)(j.Z,{value:t,children:["Prompt ",t+1]},t))})})]})]}),(0,l.jsx)("canvas",{ref:s,style:{maxHeight:"300px",cursor:"pointer"},onClick:()=>u(!0)})]})}function U(e){let{columnVisibility:t}=e,s=(0,P.Z)();k.kL.defaults.color="dark"===s.palette.mode?"#aaa":"#666";let[r,i]=(0,n.useState)(!0),{table:a}=M();if(!a||!r||a.head.prompts.length<2)return null;let o=a.body.flatMap(e=>e.outputs.map(e=>e.score));return 1===new Set(o).size?null:(0,l.jsx)(I.SV,{fallback:null,children:(0,l.jsxs)(E.Z,{style:{position:"relative",padding:s.spacing(3)},children:[(0,l.jsx)(L.Z,{style:{position:"absolute",right:0,top:0},onClick:()=>i(!1),children:(0,l.jsx)(D.Z,{})}),(0,l.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",width:"100%"},children:[(0,l.jsx)("div",{style:{width:"33%"},children:(0,l.jsx)(O,{table:a})}),(0,l.jsx)("div",{style:{width:"33%"},children:(0,l.jsx)(W,{table:a})}),(0,l.jsx)("div",{style:{width:"33%"},children:(0,l.jsx)(A,{table:a})})]})]})})}k.kL.register(k.vn,k.ST,k.ho,k.uw,k.f$,k.ZL,k.jn,k.od,k.u,k.wL);var z=s(9116);s(5777);var _=s(7660),B=s(3216),H=s(182),J=s(5391),G=s(1396),q=s.n(G);s(8715);var Y=e=>{let{lookup:t}=e;return t&&Object.keys(t).length?(0,l.jsx)("div",{className:"custom-metric-container",children:Object.entries(t).map(e=>{let[t,s]=e;return t&&s?(0,l.jsxs)("span",{children:[t,": ",s.toFixed(2)]},t):null})}):null},$=s(2834),X=s(5446),K=s(9329),Q=s(4719),ee=s(3701),et=s(9279),es=s(666),el=s(5795),en=s(6988),er=s(4147),ei=s(3226);function ea(e){let{gradingResults:t}=e;return t?(0,l.jsxs)(u.Z,{mt:2,children:[(0,l.jsx)(ei.Z,{variant:"subtitle1",children:"Assertions"}),(0,l.jsx)(el.Z,{children:(0,l.jsxs)(ee.Z,{children:[(0,l.jsx)(en.Z,{children:(0,l.jsxs)(er.Z,{children:[(0,l.jsx)(es.Z,{style:{fontWeight:"bold"},children:"Pass"}),(0,l.jsx)(es.Z,{style:{fontWeight:"bold"},children:"Score"}),(0,l.jsx)(es.Z,{style:{fontWeight:"bold"},children:"Type"}),(0,l.jsx)(es.Z,{style:{fontWeight:"bold"},children:"Value"}),(0,l.jsx)(es.Z,{style:{fontWeight:"bold"},children:"Reason"})]})}),(0,l.jsx)(et.Z,{children:t.map((e,t)=>{var s,n;return(0,l.jsxs)(er.Z,{children:[(0,l.jsx)(es.Z,{children:e.pass?"✅":"❌"}),(0,l.jsx)(es.Z,{children:e.score.toFixed(2)}),(0,l.jsx)(es.Z,{children:(null===(s=e.assertion)||void 0===s?void 0:s.type)||""}),(0,l.jsx)(es.Z,{style:{whiteSpace:"pre-wrap"},children:(null===(n=e.assertion)||void 0===n?void 0:n.value)?String(e.assertion.value):"-"}),(0,l.jsx)(es.Z,{style:{whiteSpace:"pre-wrap"},children:e.reason})]},t)})})]})})]}):null}function eo(e){let{open:t,onClose:s,prompt:r,provider:i,output:a,gradingResults:o}=e,[c,p]=(0,n.useState)(!1);(0,n.useEffect)(()=>{p(!1)},[r]);let h=async e=>{await navigator.clipboard.writeText(e),p(!0)};return(0,l.jsxs)(N.Z,{open:t,onClose:s,fullWidth:!0,maxWidth:"lg",children:[(0,l.jsxs)(R.Z,{children:["Details",i&&": ".concat(i)]}),(0,l.jsxs)(F.Z,{children:[(0,l.jsxs)(u.Z,{mb:2,children:[(0,l.jsx)(ei.Z,{variant:"subtitle1",style:{marginBottom:"1rem"},children:"Prompt"}),(0,l.jsx)(X.u,{readOnly:!0,value:r,style:{width:"100%",padding:"0.75rem"},maxRows:20}),(0,l.jsx)(L.Z,{onClick:()=>h(r),style:{position:"absolute",right:"10px",top:"10px"},children:c?(0,l.jsx)(Q.Z,{}):(0,l.jsx)(K.Z,{})})]}),a&&(0,l.jsxs)(u.Z,{my:2,children:[(0,l.jsx)(ei.Z,{variant:"subtitle1",style:{marginBottom:"1rem",marginTop:"1rem"},children:"Output"}),(0,l.jsx)(X.u,{readOnly:!0,maxRows:20,value:a,style:{width:"100%",padding:"0.75rem"}})]}),(0,l.jsx)(ea,{gradingResults:o})]}),(0,l.jsx)($.Z,{children:(0,l.jsx)(d.Z,{onClick:s,children:"Close"})})]})}var ec=s(2810);function ed(e){return null===e||0===e||1===e?"":"(".concat(e.toFixed(2),")")}function eu(e){return"string"==typeof e||"number"==typeof e?e.toString().length:Array.isArray(e)?e.reduce((e,t)=>e+eu(t),0):n.isValidElement(e)&&e.props.children?n.Children.toArray(e.props.children).reduce((e,t)=>e+eu(t),0):0}function ep(e){let t,{text:s,maxLength:r}=e,[i,a]=n.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,r-t)}if(Array.isArray(e)){let s=[],l=t;for(let t of e){let e=eu(t);if(l+e>r){s.push(o(t,l));break}s.push(t),l+=e}return s}if(n.isValidElement(e)&&e.props.children){let s=eu(e.props.children);if(s>r-t)return n.cloneElement(e,{...e.props,children:o(e.props.children,t)})}return e};t=n.isValidElement(s)||"string"==typeof s?s:JSON.stringify(s);let c=i?o(t):t,d=eu(t)>r;return(0,l.jsxs)("div",{style:{cursor:d?"pointer":"normal"},onClick:()=>{a(!i)},children:[c,i&&eu(t)>r&&(0,l.jsx)("span",{children:"..."})]})}function eh(e){var t,s,r,i;let a,o,c,d,u,{output:p,maxTextLength:h,rowIndex:m,promptIndex:x,onRating:j,firstOutput:f,filterMode:g,showStats:v}=e,[b,Z]=n.useState(!1),w="string"==typeof p.text?p.text:JSON.stringify(p.text),S=[];if(!p.pass&&w.includes("---")?w=(S=w.split("---")).slice(1).join("---"):S=[w],"different"===g&&f){let e,t="string"==typeof f.text?f.text:JSON.stringify(f.text);t.includes("---")&&(t=t.split("---").slice(1).join("---"));try{JSON.parse(t),JSON.parse(w),e=(0,z.CT)(t,w)}catch(s){e=t.includes(". ")&&w.includes(". ")?(0,z.SY)(t,w):(0,z.NV)(t,w)}a=(0,l.jsx)(l.Fragment,{children:e.map((e,t)=>e.added?(0,l.jsx)("ins",{children:e.value},t):e.removed?(0,l.jsx)("del",{children:e.value},t):(0,l.jsx)("span",{children:e.value},t))})}let C=e=>{j(m,x,e)};if(null===(t=p.tokenUsage)||void 0===t?void 0:t.completion){c=(0,l.jsxs)("span",{children:[Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(p.latencyMs)," ms"]});let e=p.tokenUsage.completion/(p.latencyMs/1e3);d=(0,l.jsx)("span",{children:Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e)})}p.cost&&(u=(0,l.jsxs)("span",{children:["$",p.cost.toPrecision(2)]})),(null===(s=p.tokenUsage)||void 0===s?void 0:s.cached)?o=(0,l.jsxs)("span",{children:[Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(p.tokenUsage.cached)," ","(cached)"]}):(null===(r=p.tokenUsage)||void 0===r?void 0:r.total)&&(o=(0,l.jsx)("span",{children:Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(p.tokenUsage.total)}));let k=v?(0,l.jsxs)("div",{className:"cell-detail",children:[o&&(0,l.jsxs)("div",{className:"stat-item",children:[(0,l.jsx)("strong",{children:"Tokens:"})," ",o]}),c&&(0,l.jsxs)("div",{className:"stat-item",children:[(0,l.jsx)("strong",{children:"Latency:"})," ",c]}),d&&(0,l.jsxs)("div",{className:"stat-item",children:[(0,l.jsx)("strong",{children:"Tokens/Sec:"})," ",d]}),u&&(0,l.jsxs)("div",{className:"stat-item",children:[(0,l.jsx)("strong",{children:"Cost:"})," ",u]})]}):null,N=(0,l.jsxs)("div",{className:"cell-actions",children:[p.prompt&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)("span",{className:"action",onClick:()=>{Z(!0)},children:(0,l.jsx)(y.Z,{title:"View ouput and test details",children:(0,l.jsx)("span",{children:"\uD83D\uDD0E"})})}),(0,l.jsx)(eo,{open:b,onClose:()=>{Z(!1)},prompt:p.prompt,provider:p.provider,gradingResults:null===(i=p.gradingResult)||void 0===i?void 0:i.componentResults,output:w})]}),(0,l.jsx)("span",{className:"action",onClick:()=>C(!0),children:(0,l.jsx)(y.Z,{title:"Mark test passed (score 1.0)",children:(0,l.jsx)("span",{children:"\uD83D\uDC4D"})})}),(0,l.jsx)("span",{className:"action",onClick:()=>C(!1),children:(0,l.jsx)(y.Z,{title:"Mark test failed (score 0.0)",children:(0,l.jsx)("span",{children:"\uD83D\uDC4E"})})}),(0,l.jsx)("span",{className:"action",onClick:()=>{let e=prompt("Set test score (0.0 - 1.0):");if(null!==e){let t=parseFloat(e);!isNaN(t)&&t>=0&&t<=1?j(m,x,void 0,t):alert("Invalid score. Please enter a value between 0.0 and 1.0.")}},children:(0,l.jsx)(y.Z,{title:"Set test score",children:(0,l.jsx)("span",{children:"✏️"})})})]});return(0,l.jsxs)("div",{className:"cell",children:[p.pass?(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)("div",{className:"status pass",children:[(0,l.jsxs)("div",{className:"pill",children:["PASS",(0,l.jsx)("span",{className:"score",children:ed(p.score)})]}),(0,l.jsx)(Y,{lookup:p.namedScores})]})}):(0,l.jsx)(l.Fragment,{children:(0,l.jsxs)("div",{className:"status fail",children:[(0,l.jsxs)("div",{className:"pill",children:["FAIL",p.score>0?" ":"",(0,l.jsx)("span",{className:"score",children:ed(p.score)})]}),(0,l.jsx)(Y,{lookup:p.namedScores}),(0,l.jsx)("span",{className:"fail-reason",children:S[0].trim().split("\n").map((e,t)=>(0,l.jsxs)(n.Fragment,{children:[e,(0,l.jsx)("br",{})]},t))})]})}),(0,l.jsx)(ep,{text:a||w,maxLength:h}),k,N]})}function em(e){let{text:t,maxLength:s,expandedText:r,resourceId:i,className:a}=e,[o,c]=n.useState(!1);return(0,l.jsxs)("div",{className:"".concat(a||""),children:[(0,l.jsx)(ep,{text:t,maxLength:s}),r&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(y.Z,{title:"View prompt",children:(0,l.jsx)("span",{className:"action",onClick:()=>{c(!0)},children:"\uD83D\uDD0E"})}),(0,l.jsx)(eo,{open:o,onClose:()=>{c(!1)},prompt:r}),i&&(0,l.jsx)(y.Z,{title:"View other evals and datasets for this prompt",children:(0,l.jsx)("span",{className:"action",children:(0,l.jsx)(q(),{href:"/prompts/?id=".concat(i),target:"_blank",children:(0,l.jsx)(J.Z,{fontSize:"small"})})})})]})]})}function ex(e){let{maxTextLength:t,columnVisibility:s,wordBreak:i,filterMode:a,failureFilter:o,showStats:c,onFailureFilterToggle:d}=e,{filePath:u,table:h,setTable:m}=M();(0,r.Z)(h,"Table should be defined");let{head:x,body:j}=h,f=x.prompts.map((e,t)=>j.reduce((e,s)=>e+(s.outputs[t].pass?1:0),0)),g=x.prompts.map((e,t)=>j.reduce((e,s)=>{var l,n;return e+((null===(n=s.outputs[t].gradingResult)||void 0===n?void 0:null===(l=n.componentResults)||void 0===l?void 0:l.length)||0)},0)),v=x.prompts.map((e,t)=>j.reduce((e,s)=>{var l;let n=null===(l=s.outputs[t].gradingResult)||void 0===l?void 0:l.componentResults;return e+(n?n.filter(e=>e.pass).length:0)},0)),y=async(e,t,s,l)=>{let n=[...j],r={...n[e]},i=[...r.outputs],a=null!=s?s:i[t].pass,o=void 0===l?s?1:0:l||0;i[t].pass=a,i[t].score=o;let c={...i[t].gradingResult||{},pass:a,score:o,reason:"Manual result (overrides all other grading results)",assertion:null};i[t].gradingResult=c,r.outputs=i,n[e]=r;let d={head:x,body:n};m(d);try{let e=await fetch("".concat(await (0,ec.b)(),"/api/eval/").concat(u),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({table:d})});if(!e.ok)throw Error("Network response was not ok")}catch(e){console.error("Failed to update table:",e)}},b=f.reduce((e,t,s,l)=>t>l[e]?s:e,0),Z=f[b],w=(0,_.Cl)(),S=[];x.vars.length>0&&S.push(w.group({id:"vars",header:()=>(0,l.jsx)("span",{className:"font-bold",children:"Variables"}),columns:x.vars.map((e,s)=>w.accessor(e=>e.vars[s],{id:"Variable ".concat(s+1),header:()=>(0,l.jsx)(em,{text:e,maxLength:t,className:"font-bold"}),cell:e=>(0,l.jsx)(ep,{text:e.getValue(),maxLength:t}),size:50}))})),S.push(w.group({id:"prompts",header:()=>(0,l.jsx)("span",{className:"font-bold",children:"Outputs"}),columns:x.prompts.map((e,s)=>w.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 n,r,i,u,h,m,y,b;let w=f[s]&&j.length?(f[s]/j.length*100).toFixed(2):"0.00",S=f[s]===Z&&0!==Z,C="Prompt ".concat(s+1),k=o[C]||!1,N=c?(0,l.jsxs)("div",{className:"prompt-detail",children:[g[s]?(0,l.jsxs)("div",{children:[(0,l.jsx)("strong",{children:"Asserts:"})," ",v[s],"/",g[s]," passed"]}):null,(null===(n=e.metrics)||void 0===n?void 0:n.totalLatencyMs)?(0,l.jsxs)("div",{children:[(0,l.jsx)("strong",{children:"Avg Latency:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.totalLatencyMs/j.length)," ","ms"]}):null,(null===(i=e.metrics)||void 0===i?void 0:null===(r=i.tokenUsage)||void 0===r?void 0:r.total)?(0,l.jsxs)("div",{children:[(0,l.jsx)("strong",{children:"Avg Tokens:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.tokenUsage.total/j.length)]}):null,(null===(u=e.metrics)||void 0===u?void 0:u.totalLatencyMs)&&(null===(m=e.metrics)||void 0===m?void 0:null===(h=m.tokenUsage)||void 0===h?void 0:h.completion)?(0,l.jsxs)("div",{children:[(0,l.jsx)("strong",{children:"Tokens/Sec:"})," ",Intl.NumberFormat(void 0,{maximumFractionDigits:0}).format(e.metrics.tokenUsage.completion/(e.metrics.totalLatencyMs/1e3))]}):null,(null===(y=e.metrics)||void 0===y?void 0:y.cost)?(0,l.jsxs)("div",{children:[(0,l.jsx)("strong",{children:"Cost:"})," $",e.metrics.cost.toPrecision(2)]}):null]}):null,R=x.prompts.every(e=>e.provider===x.prompts[0].provider),F=e.provider?e.provider.split(":"):[],P=F.length>1?(0,l.jsxs)(l.Fragment,{children:[F[0],":",(0,l.jsx)("strong",{children:F.slice(1).join(":")})]}):(0,l.jsx)("strong",{children:e.provider});return(0,l.jsxs)("div",{className:"output-header",children:[(0,l.jsxs)("div",{className:"pills",children:[!R&&e.provider?(0,l.jsx)("div",{className:"provider",children:P}):null,(0,l.jsx)("div",{className:"summary",children:(0,l.jsxs)("div",{className:"highlight ".concat(S?"success":""),children:[(0,l.jsxs)("strong",{children:[w,"% passing"]})," (",f[s],"/",j.length," cases)"]})}),(null===(b=e.metrics)||void 0===b?void 0:b.namedScores)&&Object.keys(e.metrics.namedScores).length>0?(0,l.jsx)(Y,{lookup:e.metrics.namedScores}):null]}),(0,l.jsx)(em,{className:"prompt-container",text:e.display,expandedText:e.raw,maxLength:t,resourceId:e.id}),N,"failures"===a&&(0,l.jsx)(H.Z,{sx:{"& .MuiFormControlLabel-label":{fontSize:"0.75rem"}},control:(0,l.jsx)(p.Z,{checked:k,onChange:e=>d(C,e.target.checked)}),label:"Show failures"})]})},cell:e=>(0,l.jsx)(eh,{output:e.getValue(),maxTextLength:t,rowIndex:e.row.index,promptIndex:s,onRating:y,firstOutput:k[e.row.index].outputs[0],filterMode:a,showStats:c})}))}));let C=j.some(e=>e.description);C&&S.splice(0,0,{accessorFn:e=>e.description||"",id:"description",header:()=>(0,l.jsx)("span",{className:"font-bold",children:"Description"}),cell:e=>(0,l.jsx)(ep,{text:String(e.getValue()),maxLength:t}),size:50});let k=n.useMemo(()=>"failures"===a?Object.values(o).every(e=>!e)?j:j.filter(e=>e.outputs.some((e,t)=>{let s=!e.pass;return o["Prompt ".concat(t+1)]&&s})):"different"===a?j.filter(e=>!e.outputs.every(t=>t.text===e.outputs[0].text)):j,[j,o,a]),N=(0,B.b7)({data:k,columns:S,columnResizeMode:"onChange",getCoreRowModel:(0,_.sC)(),state:{columnVisibility:s}});return(0,l.jsxs)("table",{className:"results-table firefox-fix ".concat(t<=25?"compact":""),style:{wordBreak:i},children:[(0,l.jsx)("thead",{children:N.getHeaderGroups().map(e=>(0,l.jsx)("tr",{className:"header",children:e.headers.map(e=>(0,l.jsxs)("th",{colSpan:e.colSpan,style:{width:e.getSize()},children:[e.isPlaceholder?null:(0,B.ie)(e.column.columnDef.header,e.getContext()),(0,l.jsx)("div",{onMouseDown:e.getResizeHandler(),onTouchStart:e.getResizeHandler(),className:"resizer ".concat(e.column.getIsResizing()?"isResizing":"")})]},e.id))},e.id))}),(0,l.jsx)("tbody",{children:N.getRowModel().rows.map((e,t)=>{let s=!1;return(0,l.jsx)("tr",{children:e.getVisibleCells().map(e=>{let n=e.column.id.startsWith("Variable")||"description"===e.column.id,r=!n&&!s;return r&&(s=!0),(0,l.jsx)("td",{style:{width:e.column.getSize()},className:"".concat(n?"variable":""," ").concat(0!==t||n?"":"first-prompt-row"," ").concat(r?"first-prompt-col":""),children:(0,B.ie)(e.column.columnDef.cell,e.getContext())},e.id)})},e.id)})})]})}s(2604);var ej=s(2481),ef=s(7175);function eg(e){let{open:t,onClose:r}=e,{config:i}=M(),a=n.useRef(null),[o,c]=n.useState(!1),[p,h]=n.useState("");n.useEffect(()=>{t&&(async()=>{let{default:e}=await s.e(339).then(s.bind(s,8339));h(e.dump(i))})()},[t,i]);let m=()=>{c(!1),r()};return(0,l.jsxs)(N.Z,{open:t,onClose:m,"aria-labelledby":"config-dialog-title",maxWidth:"md",fullWidth:!0,children:[(0,l.jsx)(R.Z,{id:"config-dialog-title",children:(0,l.jsxs)(u.Z,{display:"flex",justifyContent:"space-between",alignItems:"center",children:[(0,l.jsx)(ei.Z,{variant:"h6",style:{flexGrow:1},children:"Config"}),(0,l.jsxs)(u.Z,{children:[(0,l.jsx)(y.Z,{title:"Copy to clipboard",children:(0,l.jsx)(L.Z,{onClick:()=>{a.current&&(a.current.select(),document.execCommand("copy"),c(!0))},children:o?(0,l.jsx)(Q.Z,{}):(0,l.jsx)(ef.Z,{})})}),(0,l.jsx)(y.Z,{title:"Download .yaml",children:(0,l.jsx)(L.Z,{onClick:()=>{let e=new Blob([p],{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,l.jsx)(ej.Z,{})})})]})]})}),(0,l.jsx)(F.Z,{children:(0,l.jsx)(ei.Z,{variant:"body1",component:"div",children:(0,l.jsx)("textarea",{ref:a,readOnly:!0,value:p,style:{width:"100%",minHeight:"400px",fontFamily:"monospace",border:"1px solid #ccc"}})})}),(0,l.jsx)($.Z,{children:(0,l.jsx)(d.Z,{onClick:m,color:"primary",children:"Close"})})]})}var ev=s(4173),ey=s(1975),eb=e=>{let{open:t,onClose:s,shareUrl:r}=e,i=(0,n.useRef)(null),[a,o]=(0,n.useState)(!1),c=()=>{s(),o(!1)};return(0,l.jsxs)(N.Z,{open:t,onClose:c,PaperProps:{style:{minWidth:"min(660px, 100%)"}},children:[(0,l.jsx)(R.Z,{children:"Your eval is ready to share"}),(0,l.jsxs)(F.Z,{children:[(0,l.jsx)(ey.Z,{inputRef:i,value:r,fullWidth:!0,InputProps:{readOnly:!0,endAdornment:(0,l.jsx)(L.Z,{onClick:()=>{i.current&&(i.current.select(),document.execCommand("copy"),o(!0))},children:a?(0,l.jsx)(Q.Z,{}):(0,l.jsx)(ef.Z,{})})}}),(0,l.jsx)(ev.Z,{sx:{fontSize:"0.75rem"},children:"Shared URLs are deleted after 1 week."})]}),(0,l.jsx)($.Z,{children:(0,l.jsx)(d.Z,{onClick:c,color:"primary",children:"Close"})})]})},eZ=s(33),ew=e=>{let{open:t,onClose:s}=e,{maxTextLength:n,setMaxTextLength:r,wordBreak:i,setWordBreak:a,showInferenceDetails:o,setShowInferenceDetails:c}=M();return(0,l.jsxs)(N.Z,{open:t,onClose:s,fullWidth:!0,maxWidth:"sm",children:[(0,l.jsx)(R.Z,{children:"Table View Settings"}),(0,l.jsxs)(F.Z,{children:[(0,l.jsx)(u.Z,{children:(0,l.jsx)(y.Z,{title:"Forcing line breaks makes it easier to adjust column widths to your liking",children:(0,l.jsx)(H.Z,{control:(0,l.jsx)(p.Z,{checked:"break-all"===i,onChange:e=>a(e.target.checked?"break-all":"break-word")}),label:"Force line breaks"})})}),(0,l.jsx)(u.Z,{children:(0,l.jsx)(y.Z,{title:"Show detailed inference statistics such as latency, tokens used, cost, etc.",children:(0,l.jsx)(H.Z,{control:(0,l.jsx)(p.Z,{checked:o,onChange:e=>c(e.target.checked)}),label:"Show inference details"})})}),(0,l.jsxs)(u.Z,{maxWidth:"sm",children:[(0,l.jsxs)(ei.Z,{mt:2,children:["Max text length: ",n]}),(0,l.jsx)(eZ.ZP,{min:25,max:1e3,value:n,onChange:(e,t)=>r(t)})]})]}),(0,l.jsx)($.Z,{children:(0,l.jsx)(d.Z,{onClick:s,children:"Close"})})]})},eS=s(1938);let eC=(0,C.Z)(v.Z)(e=>{let{theme:t}=e;return{maxWidth:"100%",flexWrap:"wrap",[t.breakpoints.down("sm")]:{flexDirection:"column"}}});function ek(e){let{recentEvals:t,onRecentEvalSelected:s,defaultEvalId:a}=e,c=(0,o.useRouter)(),{table:v,config:C,maxTextLength:k,wordBreak:N,showInferenceDetails:R}=M(),{setStateFromConfig:F}=(0,eS.o)(),[P,E]=n.useState({}),[L,D]=n.useState([]),[I,T]=n.useState({}),[V,W]=n.useState("all"),[O,A]=n.useState(!1),[z,_]=n.useState(""),[B,H]=n.useState(!1),J=async()=>{H(!0);try{let e=await fetch("https://api.promptfoo.dev/eval",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({data:{version:2,createdAt:new Date().toISOString(),results:{table:v},config:C}})}),{id:t}=await e.json(),s="https://app.promptfoo.dev/eval/".concat(t);_(s),A(!0)}catch(e){alert("Sorry, something went wrong.")}finally{H(!1)}},[G,q]=n.useState(!1),[Y,$]=n.useState(!1);(0,r.Z)(v,"Table data must be loaded before rendering ResultsView");let{head:X}=v,K=[...X.vars.map((e,t)=>({value:"Variable ".concat(t+1),label:"Var ".concat(t+1,": ").concat(X.vars[t].length>100?X.vars[t].slice(0,97)+"...":X.vars[t]),group:"Variables"})),...X.prompts.map((e,t)=>({value:"Prompt ".concat(t+1),label:"Prompt ".concat(t+1,": ").concat(X.prompts[t].display.length>100?X.prompts[t].display.slice(0,97)+"...":X.prompts[t].display),group:"Prompts"}))];return n.useEffect(()=>{D(K.map(e=>e.value))},[X]),(0,l.jsxs)("div",{style:{marginLeft:"1rem",marginRight:"1rem"},children:[(0,l.jsx)(u.Z,{py:"md",children:(0,l.jsxs)(eC,{direction:"row",spacing:4,alignItems:"center",children:[(0,l.jsx)(u.Z,{children:t&&t.length>0&&(0,l.jsxs)(h.Z,{sx:{m:1,minWidth:200},size:"small",children:[(0,l.jsx)(m.Z,{children:"View run"}),(0,l.jsx)(g.Z,{className:"recent-files",label:"Previous runs",defaultValue:a,onChange:e=>s(e.target.value),children:t.map(e=>(0,l.jsx)(j.Z,{value:e.id,children:e.label},e.id))},t.map(e=>e.id).join(","))]})}),(0,l.jsx)(u.Z,{children:(0,l.jsxs)(h.Z,{sx:{m:1,minWidth:200,maxWidth:350},size:"small",children:[(0,l.jsx)(m.Z,{id:"visible-columns-label",children:"Show columns"}),(0,l.jsx)(g.Z,{labelId:"visible-columns-label",id:"visible-columns",multiple:!0,value:L,onChange:e=>{let{target:{value:t}}=e;D("string"==typeof t?t.split(","):t);let s=[...X.vars.map((e,t)=>"Variable ".concat(t+1)),...X.prompts.map((e,t)=>"Prompt ".concat(t+1))],l={};s.forEach(e=>{l[e]=("string"==typeof t?t.split(","):t).includes(e)}),E(l)},input:(0,l.jsx)(f.Z,{label:"Visible columns"}),renderValue:e=>e.join(", "),children:K.map(e=>(0,l.jsxs)(j.Z,{dense:!0,value:e.value,children:[(0,l.jsx)(p.Z,{checked:L.indexOf(e.value)>-1}),(0,l.jsx)(x.Z,{primary:e.label})]},e.value))})]})}),(0,l.jsx)(u.Z,{children:(0,l.jsxs)(h.Z,{sx:{minWidth:180},size:"small",children:[(0,l.jsx)(m.Z,{id:"failure-filter-mode-label",children:"Filter"}),(0,l.jsxs)(g.Z,{labelId:"filter-mode-label",id:"filter-mode",value:V,onChange:e=>{let t=e.target.value;W(t);let s={};X.prompts.forEach((e,l)=>{s["Prompt ".concat(l+1)]="failures"===t}),T(s)},label:"Filter",children:[(0,l.jsx)(j.Z,{value:"all",children:"Show all results"}),(0,l.jsx)(j.Z,{value:"failures",children:"Show failures only"}),(0,l.jsx)(j.Z,{value:"different",children:"Show different only"})]})]})}),(0,l.jsx)(u.Z,{flexGrow:1}),(0,l.jsx)(u.Z,{display:"flex",justifyContent:"flex-end",children:(0,l.jsxs)(eC,{direction:"row",spacing:2,children:[(0,l.jsx)(y.Z,{title:"Edit table view settings",children:(0,l.jsx)(d.Z,{color:"primary",onClick:()=>$(!0),startIcon:(0,l.jsx)(b.Z,{}),children:"Table Settings"})}),C&&(0,l.jsx)(y.Z,{title:"View the configuration that defines this eval",children:(0,l.jsx)(d.Z,{color:"primary",onClick:()=>q(!0),startIcon:(0,l.jsx)(w.Z,{}),children:"View YAML"})}),C&&(0,l.jsx)(y.Z,{title:"Edit eval",children:(0,l.jsx)(d.Z,{color:"primary",onClick:()=>{F(C),c.push("/setup/")},startIcon:(0,l.jsx)(S.Z,{}),children:"Edit Eval"})}),(null==C?void 0:C.sharing)&&(0,l.jsx)(y.Z,{title:"Generate a unique URL that others can access",children:(0,l.jsx)(d.Z,{color:"primary",onClick:J,disabled:B,startIcon:B?(0,l.jsx)(i.Z,{size:16}):(0,l.jsx)(Z.Z,{}),children:"Share"})})]})})]})}),(0,l.jsx)(U,{columnVisibility:P}),(0,l.jsx)(ex,{maxTextLength:k,columnVisibility:P,wordBreak:N,showStats:R,filterMode:V,failureFilter:I,onFailureFilterToggle:(e,t)=>{T(s=>({...s,[e]:t}))}}),(0,l.jsx)(eg,{open:G,onClose:()=>q(!1)}),(0,l.jsx)(eb,{open:O,onClose:()=>A(!1),shareUrl:z}),(0,l.jsx)(ew,{open:Y,onClose:()=>$(!1)})]})}var eN=s(279);async function eR(){let e=(0,c.createClientComponentClient)(),{data:{user:t}}=await e.auth.getUser();(0,r.Z)(t,"User not logged in");let{data:s,error:l}=await e.from("EvaluationResult").select("id, createdAt").eq("user_id",t.id).order("createdAt",{ascending:!1}).limit(100);return s||[]}async function eF(e){let t=(0,c.createClientComponentClient)(),{data:s,error:l}=await t.from("EvaluationResult").select("*").eq("id",e).single();return s}function eP(e){var t;let{fetchId:s,preloadedData:c,recentEvals:d,defaultEvalId:u}=e,p=(0,o.useRouter)(),{table:h,setTable:m,setConfig:x,setFilePath:j}=M(),[f,g]=n.useState(!1),[v,y]=n.useState(!1),[b,Z]=n.useState(d||[]),w=async()=>{(0,r.Z)(eN.T,"Cannot fetch recent files when not running locally");let e=await fetch("".concat(await (0,ec.b)(),"/results"),{cache:"no-store"}),t=await e.json();return Z(t.data),t.data},S=async e=>{let t=await fetch("".concat(await (0,ec.b)(),"/results/").concat(e),{cache:"no-store"}),s=await t.json();m(s.data.results.table),x(s.data.config),j(e)},C=async e=>{eN.T?S(e):(g(!1),p.push("/eval/remote:".concat(encodeURIComponent(e))))},[k,N]=n.useState(u||(null===(t=b[0])||void 0===t?void 0:t.id)),R=(0,o.useSearchParams)(),F=R?R.get("file"):null;return(n.useEffect(()=>{if(F){let e=async()=>{await S(F),g(!0)};e()}else if(c){var e;m(null===(e=c.data.results)||void 0===e?void 0:e.table),x(c.data.config),g(!0)}else if(s){let e=async()=>{var e;let t=await fetch("https://api.promptfoo.dev/eval/".concat(s));if(!t.ok){y(!0);return}let l=await t.json();m(null===(e=l.data.results)||void 0===e?void 0:e.table),x(l.data.config),g(!0)};e()}else eN.T?(0,ec.b)().then(e=>{let t=(0,a.io)(e);return t.on("init",e=>{console.log("Initialized socket connection",e),g(!0),m(e.results.table),x(e.config),w().then(e=>{var t,s;N(null===(t=e[0])||void 0===t?void 0:t.id),j(null===(s=e[0])||void 0===s?void 0:s.id)})}),t.on("update",e=>{console.log("Received data update",e),m(e.results.table),x(e.config),w().then(e=>{var t;N(null===(t=e[0])||void 0===t?void 0:t.id)})}),()=>{t.disconnect()}}):eR().then(e=>{Z(e.map(e=>({id:e.id,label:e.createdAt}))),e.length>0&&eF(e[0].id).then(t=>{(0,r.Z)(t,"Eval not found");let s=t.results,l=t.config;N(e[0].id),m(s.table),x(l),g(!0)})})},[s,m,x,c,N,F]),v)?(0,l.jsx)("div",{className:"loading",children:"404 Eval not found"}):f&&h?(0,l.jsx)(ek,{defaultEvalId:k,recentEvals:b,onRecentEvalSelected:C}):(0,l.jsxs)("div",{className:"loading",children:[(0,l.jsx)("div",{children:(0,l.jsx)(i.Z,{size:22})}),(0,l.jsx)("div",{children:"Loading eval data"})]})}s(5038)},279:function(e,t,s){"use strict";s.d(t,{T:function(){return n},e:function(){return r}});var l=s(2601);let n=!l.env.NEXT_PUBLIC_PROMPTFOO_BUILD_STANDALONE_SERVER,r=""},1938:function(e,t,s){"use strict";s.d(t,{o:function(){return r}});var l=s(4660),n=s(4810);let r=(0,l.Ue)()((0,n.tJ)((e,t)=>({env:{},testCases:[],description:"",providers:[],prompts:[],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}),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=>!e.endsWith(".txt")&&!e.endsWith(".json")&&!e.endsWith(".yaml")):console.warn("Invalid prompts config",t.prompts)),e(s)},getTestSuite:()=>{let{description:e,testCases:s,providers:l,prompts:n,env:r}=t();return{env:r,description:e,providers:l,prompts:n,tests:s}}}),{name:"promptfoo",skipHydration:!0}))},8715:function(){},5038:function(){},2604:function(){},5777:function(){}}]);