promptfoo 0.82.0 → 0.83.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 +10 -4
  2. package/dist/package.json +8 -8
  3. package/dist/src/commands/redteam/init.d.ts.map +1 -1
  4. package/dist/src/commands/redteam/init.js +30 -2
  5. package/dist/src/commands/redteam/init.js.map +1 -1
  6. package/dist/src/envars.d.ts +2 -1
  7. package/dist/src/envars.d.ts.map +1 -1
  8. package/dist/src/envars.js.map +1 -1
  9. package/dist/src/providers/openai.js +2 -2
  10. package/dist/src/providers/openai.js.map +1 -1
  11. package/dist/src/redteam/constants.d.ts +1 -0
  12. package/dist/src/redteam/constants.d.ts.map +1 -1
  13. package/dist/src/redteam/constants.js +3 -1
  14. package/dist/src/redteam/constants.js.map +1 -1
  15. package/dist/src/redteam/extraction/entities.d.ts.map +1 -1
  16. package/dist/src/redteam/extraction/entities.js +6 -7
  17. package/dist/src/redteam/extraction/entities.js.map +1 -1
  18. package/dist/src/redteam/extraction/purpose.d.ts.map +1 -1
  19. package/dist/src/redteam/extraction/purpose.js +6 -7
  20. package/dist/src/redteam/extraction/purpose.js.map +1 -1
  21. package/dist/src/redteam/extraction/util.d.ts +0 -1
  22. package/dist/src/redteam/extraction/util.d.ts.map +1 -1
  23. package/dist/src/redteam/extraction/util.js +6 -3
  24. package/dist/src/redteam/extraction/util.js.map +1 -1
  25. package/dist/src/redteam/plugins/base.d.ts.map +1 -1
  26. package/dist/src/redteam/plugins/base.js +6 -2
  27. package/dist/src/redteam/plugins/base.js.map +1 -1
  28. package/dist/src/redteam/plugins/index.d.ts.map +1 -1
  29. package/dist/src/redteam/plugins/index.js +47 -3
  30. package/dist/src/redteam/plugins/index.js.map +1 -1
  31. package/dist/src/redteam/plugins/pii.d.ts.map +1 -1
  32. package/dist/src/redteam/plugins/pii.js +1 -1
  33. package/dist/src/redteam/plugins/pii.js.map +1 -1
  34. package/dist/src/redteam/util.d.ts +1 -0
  35. package/dist/src/redteam/util.d.ts.map +1 -1
  36. package/dist/src/redteam/util.js +6 -0
  37. package/dist/src/redteam/util.js.map +1 -1
  38. package/dist/src/web/nextui/404/index.html +1 -1
  39. package/dist/src/web/nextui/404.html +1 -1
  40. package/dist/src/web/nextui/_next/static/chunks/app/{layout-436df6a7978b874b.js → layout-840b64134bca448d.js} +1 -1
  41. package/dist/src/web/nextui/auth/login/index.html +1 -1
  42. package/dist/src/web/nextui/auth/login/index.txt +2 -2
  43. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  44. package/dist/src/web/nextui/auth/signup/index.txt +2 -2
  45. package/dist/src/web/nextui/datasets/index.html +1 -1
  46. package/dist/src/web/nextui/datasets/index.txt +2 -2
  47. package/dist/src/web/nextui/eval/index.html +1 -1
  48. package/dist/src/web/nextui/eval/index.txt +3 -3
  49. package/dist/src/web/nextui/index.html +1 -1
  50. package/dist/src/web/nextui/index.txt +2 -2
  51. package/dist/src/web/nextui/progress/index.html +1 -1
  52. package/dist/src/web/nextui/progress/index.txt +2 -2
  53. package/dist/src/web/nextui/prompts/index.html +1 -1
  54. package/dist/src/web/nextui/prompts/index.txt +2 -2
  55. package/dist/src/web/nextui/report/index.html +1 -1
  56. package/dist/src/web/nextui/report/index.txt +2 -2
  57. package/dist/src/web/nextui/setup/index.html +1 -1
  58. package/dist/src/web/nextui/setup/index.txt +2 -2
  59. package/dist/test/redteam/extraction/entities.test.js +2 -0
  60. package/dist/test/redteam/extraction/entities.test.js.map +1 -1
  61. package/dist/test/redteam/extraction/purpose.test.js +1 -0
  62. package/dist/test/redteam/extraction/purpose.test.js.map +1 -1
  63. package/dist/test/redteam/plugins/base.test.js +1 -1
  64. package/dist/test/redteam/plugins/base.test.js.map +1 -1
  65. package/package.json +8 -8
  66. /package/dist/src/web/nextui/_next/static/{hKKNDbykxSExL2_mnZqWi → 48DSwiWE8aGl1g_5NqL3u}/_buildManifest.js +0 -0
  67. /package/dist/src/web/nextui/_next/static/{hKKNDbykxSExL2_mnZqWi → 48DSwiWE8aGl1g_5NqL3u}/_ssgManifest.js +0 -0
  68. /package/dist/src/web/nextui/_next/static/chunks/{258-97aa8e9afbe66e83.js → 258-bb444f6e7eb2432f.js} +0 -0
@@ -3,16 +3,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.RedTeamGenerationResponse = exports.REMOTE_GENERATION_URL = void 0;
6
+ exports.RedTeamGenerationResponse = void 0;
7
7
  exports.fetchRemoteGeneration = fetchRemoteGeneration;
8
8
  exports.callExtraction = callExtraction;
9
9
  exports.formatPrompts = formatPrompts;
10
10
  const dedent_1 = __importDefault(require("dedent"));
11
+ const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
11
12
  const zod_1 = require("zod");
12
13
  const cache_1 = require("../../cache");
14
+ const envars_1 = require("../../envars");
13
15
  const logger_1 = __importDefault(require("../../logger"));
14
16
  const shared_1 = require("../../providers/shared");
15
- exports.REMOTE_GENERATION_URL = 'https://api.promptfoo.dev/v1/generate';
17
+ const constants_1 = require("../constants");
16
18
  exports.RedTeamGenerationResponse = zod_1.z.object({
17
19
  task: zod_1.z.string(),
18
20
  result: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]),
@@ -32,12 +34,13 @@ exports.RedTeamGenerationResponse = zod_1.z.object({
32
34
  * ```
33
35
  */
34
36
  async function fetchRemoteGeneration(task, prompts) {
37
+ (0, tiny_invariant_1.default)(!(0, envars_1.getEnvBool)('PROMPTFOO_DISABLE_REDTEAM_REMOTE_GENERATION'), 'fetchRemoteGeneration should never be called when remote generation is disabled');
35
38
  try {
36
39
  const body = {
37
40
  task,
38
41
  prompts,
39
42
  };
40
- const response = await (0, cache_1.fetchWithCache)(exports.REMOTE_GENERATION_URL, {
43
+ const response = await (0, cache_1.fetchWithCache)(constants_1.REMOTE_GENERATION_URL, {
41
44
  method: 'POST',
42
45
  headers: { 'Content-Type': 'application/json' },
43
46
  body: JSON.stringify(body),
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/redteam/extraction/util.ts"],"names":[],"mappings":";;;;;;AA8BA,sDA2BC;AAED,wCAkBC;AAED,sCASC;AAxFD,oDAA4B;AAC5B,6BAAwB;AACxB,uCAA6C;AAC7C,0DAAkC;AAClC,mDAA4D;AAG/C,QAAA,qBAAqB,GAAG,uCAAuC,CAAC;AAEhE,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CACnD,CAAC,CAAC;AAIH;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,qBAAqB,CACzC,IAAiB,EACjB,OAAiB;IAEjB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,OAAO;SACR,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAc,EACnC,6BAAqB,EACrB;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,EACD,2BAAkB,EAClB,MAAM,CACP,CAAC;QAEF,MAAM,cAAc,GAAG,iCAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtE,OAAO,cAAc,CAAC,MAAM,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAM,CAAC,IAAI,CAAC,2CAA2C,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC;QAC1E,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,cAAc,CAClC,QAAqB,EACrB,MAAc,EACd,aAAoC;IAEpC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzD,IAAI,KAAK,EAAE,CAAC;QACV,gBAAM,CAAC,KAAK,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,gBAAM,CAAC,KAAK,CAAC,wCAAwC,MAAM,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,oDAAoD,MAAM,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED,SAAgB,aAAa,CAAC,OAAiB;IAC7C,OAAO,OAAO;SACX,GAAG,CACF,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,gBAAM,EAAA;;MAElB,MAAM;cACE,CACT;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../src/redteam/extraction/util.ts"],"names":[],"mappings":";;;;;;AA+BA,sDA+BC;AAED,wCAkBC;AAED,sCASC;AA7FD,oDAA4B;AAC5B,oEAAuC;AACvC,6BAAwB;AACxB,uCAA6C;AAC7C,yCAA0C;AAC1C,0DAAkC;AAClC,mDAA4D;AAE5D,4CAAqD;AAExC,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CACnD,CAAC,CAAC;AAIH;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,qBAAqB,CACzC,IAAiB,EACjB,OAAiB;IAEjB,IAAA,wBAAS,EACP,CAAC,IAAA,mBAAU,EAAC,6CAA6C,CAAC,EAC1D,iFAAiF,CAClF,CAAC;IACF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG;YACX,IAAI;YACJ,OAAO;SACR,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAA,sBAAc,EACnC,iCAAqB,EACrB;YACE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,EACD,2BAAkB,EAClB,MAAM,CACP,CAAC;QAEF,MAAM,cAAc,GAAG,iCAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtE,OAAO,cAAc,CAAC,MAAM,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,gBAAM,CAAC,IAAI,CAAC,2CAA2C,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC;QAC1E,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,cAAc,CAClC,QAAqB,EACrB,MAAc,EACd,aAAoC;IAEpC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzD,IAAI,KAAK,EAAE,CAAC;QACV,gBAAM,CAAC,KAAK,CAAC,wBAAwB,KAAK,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,gBAAM,CAAC,KAAK,CAAC,wCAAwC,MAAM,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,oDAAoD,MAAM,EAAE,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC;AAED,SAAgB,aAAa,CAAC,OAAiB;IAC7C,OAAO,OAAO;SACX,GAAG,CACF,CAAC,MAAM,EAAE,EAAE,CAAC,IAAA,gBAAM,EAAA;;MAElB,MAAM;cACE,CACT;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/redteam/plugins/base.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAOjE;;GAEG;AACH,8BAAsB,UAAU;IAS5B,SAAS,CAAC,QAAQ,EAAE,WAAW;IAC/B,SAAS,CAAC,OAAO,EAAE,MAAM;IACzB,SAAS,CAAC,SAAS,EAAE,MAAM;IAC3B,SAAS,CAAC,MAAM,EAAE,YAAY;IAXhC;;;;;;OAMG;gBAES,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,YAAiB;IAKrC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAEjD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE;IAE7D;;;;;OAKG;IACG,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,MAAU,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAsCxE;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,QAAQ,EAAE;IASvE;;;;;OAKG;IACH,SAAS,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE;IAU/E,OAAO,CAAC,eAAe;CAmCxB;AAED;;;;;;;GAOG;AACH,8BAAsB,kBAAkB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAElB,SAAS,CACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,WAAW,GAAG,SAAS,EACjC,aAAa,EAAE,cAAc,GAAG,SAAS,GACxC,OAAO,CAAC;QAAE,KAAK,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAsCrD"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/redteam/plugins/base.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAClG,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAOjE;;GAEG;AACH,8BAAsB,UAAU;IAS5B,SAAS,CAAC,QAAQ,EAAE,WAAW;IAC/B,SAAS,CAAC,OAAO,EAAE,MAAM;IACzB,SAAS,CAAC,SAAS,EAAE,MAAM;IAC3B,SAAS,CAAC,MAAM,EAAE,YAAY;IAXhC;;;;;;OAMG;gBAES,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,MAAM,GAAE,YAAiB;IAKrC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAEjD;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,EAAE;IAE7D;;;;;OAKG;IACG,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE,MAAU,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA8CxE;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,GAAG,QAAQ,EAAE;IASvE;;;;;OAKG;IACH,SAAS,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE;IAU/E,OAAO,CAAC,eAAe;CAmCxB;AAED;;;;;;;GAOG;AACH,8BAAsB,kBAAkB;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAElB,SAAS,CACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,WAAW,GAAG,SAAS,EACjC,aAAa,EAAE,cAAc,GAAG,SAAS,GACxC,OAAO,CAAC;QAAE,KAAK,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAsCrD"}
@@ -56,12 +56,16 @@ class PluginBase {
56
56
  n: currentBatchSize,
57
57
  });
58
58
  const finalTemplate = this.appendModifiers(renderedTemplate);
59
- const { output: generatedPrompts } = await this.provider.callApi(finalTemplate);
59
+ const { output: generatedPrompts, error } = await this.provider.callApi(finalTemplate);
60
60
  if (delayMs > 0) {
61
61
  logger_1.default.debug(`Delaying for ${delayMs}ms`);
62
62
  await new Promise((resolve) => setTimeout(resolve, delayMs));
63
63
  }
64
- (0, tiny_invariant_1.default)(typeof generatedPrompts === 'string', 'Expected generatedPrompts to be a string');
64
+ if (error) {
65
+ logger_1.default.error(`Error generating prompts for ${this.constructor.name}: ${error}`);
66
+ throw new Error(`Error generating prompts for ${this.constructor.name}: ${error}`);
67
+ }
68
+ (0, tiny_invariant_1.default)(typeof generatedPrompts === 'string', `Expected generatedPrompts to be a string, got ${typeof generatedPrompts}: ${JSON.stringify(generatedPrompts)}`);
65
69
  return this.parseGeneratedPrompts(generatedPrompts);
66
70
  };
67
71
  const allPrompts = await (0, generation_1.retryWithDeduplication)(generatePrompts, n);
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/redteam/plugins/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/redteam/plugins/base.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/redteam/plugins/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAwBvE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,CACN,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,YAAY,KAClB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;CAC1B;AAyED,eAAO,MAAM,OAAO,EAAE,aAAa,EAAwD,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/redteam/plugins/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAyBvE,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAC1C,MAAM,EAAE,CACN,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,CAAC,EAAE,MAAM,EACT,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,YAAY,KAClB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;CAC1B;AA4HD,eAAO,MAAM,OAAO,EAAE,aAAa,EAAwD,CAAC"}
@@ -5,7 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.Plugins = void 0;
7
7
  const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
8
+ const cache_1 = require("../../cache");
9
+ const envars_1 = require("../../envars");
10
+ const logger_1 = __importDefault(require("../../logger"));
11
+ const shared_1 = require("../../providers/shared");
8
12
  const constants_1 = require("../constants");
13
+ const util_1 = require("../util");
9
14
  const bfla_1 = require("./bfla");
10
15
  const bola_1 = require("./bola");
11
16
  const competitors_1 = require("./competitors");
@@ -26,11 +31,38 @@ const rbac_1 = require("./rbac");
26
31
  const shellInjection_1 = require("./shellInjection");
27
32
  const sqlInjection_1 = require("./sqlInjection");
28
33
  const ssrf_1 = require("./ssrf");
34
+ async function fetchRemoteTestCases(key, purpose, injectVar, n, config) {
35
+ (0, tiny_invariant_1.default)(!(0, envars_1.getEnvBool)('PROMPTFOO_DISABLE_REDTEAM_REMOTE_GENERATION'), 'fetchRemoteTestCases should never be called when remote generation is disabled');
36
+ const body = JSON.stringify({
37
+ task: key,
38
+ purpose,
39
+ injectVar,
40
+ n,
41
+ config,
42
+ });
43
+ logger_1.default.debug(`Using remote redteam generation for ${key}:\n${body}`);
44
+ const { data } = await (0, cache_1.fetchWithCache)(constants_1.REMOTE_GENERATION_URL, {
45
+ method: 'POST',
46
+ headers: {
47
+ 'Content-Type': 'application/json',
48
+ },
49
+ body,
50
+ }, shared_1.REQUEST_TIMEOUT_MS);
51
+ const ret = data.result;
52
+ logger_1.default.debug(`Received remote generation for ${key}:\n${JSON.stringify(ret)}`);
53
+ return ret;
54
+ }
29
55
  function createPluginFactory(PluginClass, key, validate) {
30
56
  return {
31
57
  key,
32
58
  validate: validate,
33
- action: (provider, purpose, injectVar, n, delayMs, config) => new PluginClass(provider, purpose, injectVar, config).generateTests(n, delayMs),
59
+ action: async (provider, purpose, injectVar, n, delayMs, config) => {
60
+ if ((0, util_1.shouldGenerateRemote)()) {
61
+ return fetchRemoteTestCases(key, purpose, injectVar, n, config);
62
+ }
63
+ logger_1.default.debug(`Using local redteam generation for ${key}`);
64
+ return new PluginClass(provider, purpose, injectVar, config).generateTests(n, delayMs);
65
+ },
34
66
  };
35
67
  }
36
68
  const pluginFactories = [
@@ -55,11 +87,23 @@ const pluginFactories = [
55
87
  ];
56
88
  const harmPlugins = Object.keys(constants_1.HARM_PLUGINS).map((category) => ({
57
89
  key: category,
58
- action: (provider, purpose, injectVar, n, delayMs) => (0, harmful_1.getHarmfulTests)(provider, purpose, injectVar, [category], n, delayMs),
90
+ action: async (provider, purpose, injectVar, n, delayMs) => {
91
+ if ((0, util_1.shouldGenerateRemote)()) {
92
+ return fetchRemoteTestCases(category, purpose, injectVar, n);
93
+ }
94
+ logger_1.default.debug(`Using local redteam generation for ${category}`);
95
+ return (0, harmful_1.getHarmfulTests)(provider, purpose, injectVar, [category], n, delayMs);
96
+ },
59
97
  }));
60
98
  const piiPlugins = constants_1.PII_PLUGINS.map((category) => ({
61
99
  key: category,
62
- action: (provider, purpose, injectVar, n) => (0, pii_1.getPiiLeakTestsForCategory)(provider, purpose, injectVar, category, n),
100
+ action: async (provider, purpose, injectVar, n) => {
101
+ if ((0, util_1.shouldGenerateRemote)()) {
102
+ return fetchRemoteTestCases(category, purpose, injectVar, n);
103
+ }
104
+ logger_1.default.debug(`Using local redteam generation for ${category}`);
105
+ return (0, pii_1.getPiiLeakTestsForCategory)(provider, purpose, injectVar, category, n);
106
+ },
63
107
  }));
64
108
  exports.Plugins = [...pluginFactories, ...harmPlugins, ...piiPlugins];
65
109
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/redteam/plugins/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/redteam/plugins/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"pii.d.ts","sourceRoot":"","sources":["../../../../src/redteam/plugins/pii.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAE5C,eAAO,MAAM,SAAS,0BAA0B,CAAC;AAoHjD;;;;;;;;;;GAUG;AACH,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,CAAC,EAAE,MAAM,EACT,IAAI,GAAE,MAAmB,GACxB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAkCrB;AAED,qBAAa,SAAU,SAAQ,kBAAkB;IAC/C,EAAE,SAAa;IACf,MAAM,SAkDJ;CACH"}
1
+ {"version":3,"file":"pii.d.ts","sourceRoot":"","sources":["../../../../src/redteam/plugins/pii.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAE5C,eAAO,MAAM,SAAS,0BAA0B,CAAC;AAoHjD;;;;;;;;;;GAUG;AACH,wBAAsB,0BAA0B,CAC9C,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,EACnB,CAAC,EAAE,MAAM,EACT,IAAI,GAAE,MAAmB,GACxB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAqCrB;AAED,qBAAa,SAAU,SAAQ,kBAAkB;IAC/C,EAAE,SAAa;IACf,MAAM,SAkDJ;CACH"}
@@ -133,7 +133,7 @@ async function getPiiLeakTestsForCategory(provider, purpose, injectVar, category
133
133
  n,
134
134
  }));
135
135
  const { output: generatedPrompts } = piiLeakPrompts;
136
- (0, tiny_invariant_1.default)(typeof generatedPrompts === 'string', 'Expected generatedPrompts to be a string');
136
+ (0, tiny_invariant_1.default)(typeof generatedPrompts === 'string', `Expected generatedPrompts to be a string, got ${typeof generatedPrompts}: ${JSON.stringify(generatedPrompts)}`);
137
137
  const prompts = generatedPrompts
138
138
  .split('\n')
139
139
  .filter((line) => line.includes('Prompt:'))
@@ -1 +1 @@
1
- {"version":3,"file":"pii.js","sourceRoot":"","sources":["../../../../src/redteam/plugins/pii.ts"],"names":[],"mappings":";;;;;;AAsIA,gEAyCC;AA/KD,oDAA4B;AAC5B,oEAAuC;AAEvC,oDAAyD;AAEzD,iCAA4C;AAE/B,QAAA,SAAS,GAAG,uBAAuB,CAAC;AAYjD;;GAEG;AACH,MAAM,cAAc,GAAkB;IACpC;QACE,GAAG,EAAE,YAAY;QACjB,WAAW,EAAE,qEAAqE;QAClF,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;KAqBT;KACF;IACD;QACE,GAAG,EAAE,aAAa;QAClB,WAAW,EACT,oFAAoF;QACtF,QAAQ,EAAE;;;;;;;;;;;;;;;;;KAiBT;KACF;IACD;QACE,GAAG,EAAE,YAAY;QACjB,WAAW,EACT,6FAA6F;QAC/F,QAAQ,EAAE;;;;;;;;;KAST;KACF;IACD;QACE,GAAG,EAAE,YAAY;QACjB,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE;;;;;;;;;KAST;KACF;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAA,gBAAM,EAAA;;;;;;;IAOhD,QAAQ;;;;;CAKX,CAAC;AAEF;;;;;;;;;;GAUG;AACI,KAAK,UAAU,0BAA0B,CAC9C,QAAqB,EACrB,OAAe,EACf,SAAiB,EACjB,WAAmB,EACnB,CAAS,EACT,OAAe,UAAU;IAEzB,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,YAAY,WAAW,YAAY,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,6BAAiB,GAAE,CAAC;IACrC,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,OAAO,CAC3C,QAAQ,CAAC,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACxD,OAAO;QACP,IAAI;QACJ,CAAC;KACF,CAAC,CACH,CAAC;IAEF,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,cAAc,CAAC;IACpD,IAAA,wBAAS,EAAC,OAAO,gBAAgB,KAAK,QAAQ,EAAE,0CAA0C,CAAC,CAAC;IAE5F,MAAM,OAAO,GAAG,gBAAgB;SAC7B,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAEpF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAI,EAAE;YACJ,CAAC,SAAS,CAAC,EAAE,MAAM;SACpB;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,iBAAS;gBACf,MAAM,EAAE,SAAS;aAClB;SACF;KACF,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAa,SAAU,SAAQ,yBAAkB;IAAjD;;QACE,OAAE,GAAG,iBAAS,CAAC;QACf,WAAM,GAAG,IAAA,gBAAM,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDd,CAAC;IACJ,CAAC;CAAA;AArDD,8BAqDC"}
1
+ {"version":3,"file":"pii.js","sourceRoot":"","sources":["../../../../src/redteam/plugins/pii.ts"],"names":[],"mappings":";;;;;;AAsIA,gEA4CC;AAlLD,oDAA4B;AAC5B,oEAAuC;AAEvC,oDAAyD;AAEzD,iCAA4C;AAE/B,QAAA,SAAS,GAAG,uBAAuB,CAAC;AAYjD;;GAEG;AACH,MAAM,cAAc,GAAkB;IACpC;QACE,GAAG,EAAE,YAAY;QACjB,WAAW,EAAE,qEAAqE;QAClF,QAAQ,EAAE;;;;;;;;;;;;;;;;;;;;;KAqBT;KACF;IACD;QACE,GAAG,EAAE,aAAa;QAClB,WAAW,EACT,oFAAoF;QACtF,QAAQ,EAAE;;;;;;;;;;;;;;;;;KAiBT;KACF;IACD;QACE,GAAG,EAAE,YAAY;QACjB,WAAW,EACT,6FAA6F;QAC/F,QAAQ,EAAE;;;;;;;;;KAST;KACF;IACD;QACE,GAAG,EAAE,YAAY;QACjB,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE;;;;;;;;;KAST;KACF;CACF,CAAC;AAEF;;;;;GAKG;AACH,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAA,gBAAM,EAAA;;;;;;;IAOhD,QAAQ;;;;;CAKX,CAAC;AAEF;;;;;;;;;;GAUG;AACI,KAAK,UAAU,0BAA0B,CAC9C,QAAqB,EACrB,OAAe,EACf,SAAiB,EACjB,WAAmB,EACnB,CAAS,EACT,OAAe,UAAU;IAEzB,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC;IACvE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,YAAY,WAAW,YAAY,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,6BAAiB,GAAE,CAAC;IACrC,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,OAAO,CAC3C,QAAQ,CAAC,YAAY,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACxD,OAAO;QACP,IAAI;QACJ,CAAC;KACF,CAAC,CACH,CAAC;IAEF,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,cAAc,CAAC;IACpD,IAAA,wBAAS,EACP,OAAO,gBAAgB,KAAK,QAAQ,EACpC,iDAAiD,OAAO,gBAAgB,KAAK,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAChH,CAAC;IAEF,MAAM,OAAO,GAAG,gBAAgB;SAC7B,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;SAC1C,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAEpF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9B,IAAI,EAAE;YACJ,CAAC,SAAS,CAAC,EAAE,MAAM;SACpB;QACD,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,iBAAS;gBACf,MAAM,EAAE,SAAS;aAClB;SACF;KACF,CAAC,CAAC,CAAC;AACN,CAAC;AAED,MAAa,SAAU,SAAQ,yBAAkB;IAAjD;;QACE,OAAE,GAAG,iBAAS,CAAC;QACf,WAAM,GAAG,IAAA,gBAAM,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDd,CAAC;IACJ,CAAC;CAAA;AArDD,8BAqDC"}
@@ -1,3 +1,4 @@
1
+ export declare function shouldGenerateRemote(): boolean;
1
2
  export declare function isBasicRefusal(response: string): boolean;
2
3
  export declare function removePrefix(str: string, prefix: string): string;
3
4
  //# sourceMappingURL=util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/redteam/util.ts"],"names":[],"mappings":"AAqBA,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAMxD;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAKvD"}
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../../src/redteam/util.ts"],"names":[],"mappings":"AAuBA,wBAAgB,oBAAoB,IAAI,OAAO,CAK9C;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAMxD;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAKvD"}
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.shouldGenerateRemote = shouldGenerateRemote;
3
4
  exports.isBasicRefusal = isBasicRefusal;
4
5
  exports.removePrefix = removePrefix;
6
+ const envars_1 = require("../envars");
5
7
  const REFUSAL_PREFIXES = [
6
8
  'Sorry',
7
9
  "I'm sorry",
@@ -21,6 +23,10 @@ const REFUSAL_SUBSTRINGS = [
21
23
  'If you have any other non-malicious requests',
22
24
  "I'm not able to provide",
23
25
  ];
26
+ function shouldGenerateRemote() {
27
+ // Generate remotely when the user has not disabled it and does not have an OpenAI key.
28
+ return (!(0, envars_1.getEnvBool)('PROMPTFOO_DISABLE_REDTEAM_REMOTE_GENERATION') && !(0, envars_1.getEnvString)('OPENAI_API_KEY'));
29
+ }
24
30
  function isBasicRefusal(response) {
25
31
  const lowerResponse = response.trim().toLowerCase();
26
32
  return (REFUSAL_PREFIXES.some((prefix) => lowerResponse.startsWith(prefix)) ||
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/redteam/util.ts"],"names":[],"mappings":";;AAqBA,wCAMC;AAED,oCAKC;AAlCD,MAAM,gBAAgB,GAAG;IACvB,OAAO;IACP,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,gBAAgB;IAChB,eAAe;CAChB,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,qBAAqB;IACrB,iBAAiB;IACjB,0BAA0B;IAC1B,8CAA8C;IAC9C,yBAAyB;CAC1B,CAAC;AAEF,SAAgB,cAAc,CAAC,QAAgB;IAC7C,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpD,OAAO,CACL,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnE,kBAAkB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,MAAc;IACtD,4FAA4F;IAC5F,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IAC/C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5D,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/redteam/util.ts"],"names":[],"mappings":";;AAuBA,oDAKC;AAED,wCAMC;AAED,oCAKC;AA3CD,sCAAqD;AAErD,MAAM,gBAAgB,GAAG;IACvB,OAAO;IACP,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,mBAAmB;IACnB,iBAAiB;IACjB,kBAAkB;IAClB,aAAa;IACb,gBAAgB;IAChB,eAAe;CAChB,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,qBAAqB;IACrB,iBAAiB;IACjB,0BAA0B;IAC1B,8CAA8C;IAC9C,yBAAyB;CAC1B,CAAC;AAEF,SAAgB,oBAAoB;IAClC,uFAAuF;IACvF,OAAO,CACL,CAAC,IAAA,mBAAU,EAAC,6CAA6C,CAAC,IAAI,CAAC,IAAA,qBAAY,EAAC,gBAAgB,CAAC,CAC9F,CAAC;AACJ,CAAC;AAED,SAAgB,cAAc,CAAC,QAAgB;IAC7C,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpD,OAAO,CACL,gBAAgB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnE,kBAAkB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAAC,GAAW,EAAE,MAAc;IACtD,4FAA4F;IAC5F,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;IAC/C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5D,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -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-2bde9ee952171572.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/hKKNDbykxSExL2_mnZqWi/_buildManifest.js" defer=""></script><script src="/_next/static/hKKNDbykxSExL2_mnZqWi/_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":"hKKNDbykxSExL2_mnZqWi","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-2bde9ee952171572.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/48DSwiWE8aGl1g_5NqL3u/_buildManifest.js" defer=""></script><script src="/_next/static/48DSwiWE8aGl1g_5NqL3u/_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":"48DSwiWE8aGl1g_5NqL3u","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-2bde9ee952171572.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/hKKNDbykxSExL2_mnZqWi/_buildManifest.js" defer=""></script><script src="/_next/static/hKKNDbykxSExL2_mnZqWi/_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":"hKKNDbykxSExL2_mnZqWi","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-2bde9ee952171572.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/48DSwiWE8aGl1g_5NqL3u/_buildManifest.js" defer=""></script><script src="/_next/static/48DSwiWE8aGl1g_5NqL3u/_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":"48DSwiWE8aGl1g_5NqL3u","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[185],{84173:function(e,t,r){Promise.resolve().then(r.bind(r,5071)),Promise.resolve().then(r.t.bind(r,5100,23)),Promise.resolve().then(r.t.bind(r,65246,23))},5071:function(e,t,r){"use strict";r.r(t),r.d(t,{PageShell:function(){return J}});var o=r(24004),n=r(14978),s=r(52428),i=r(14819),l=r(52653),a=r(13457),c=r(38640),u=r.n(c),d=r(28891),h=r(39864),f=r(47028);function p(e){let{darkMode:t,onToggleDarkMode:r}=e;return(0,o.jsx)("div",{className:"dark-mode-toggle",onClick:r,children:t?(0,o.jsx)(h.Z,{}):(0,o.jsx)(f.Z,{})})}r(32854);var x=r(58715),m=r(61443),g=r(14089),j=r(68452),b=r(91018),v=r(89394),k=r(91797),C=r(43226),Z=r(25210),S=r(26337),E=r(42834),O=r(49050);let _=[{icon:(0,o.jsx)(b.Z,{fontSize:"small"}),text:"Documentation",href:"https://www.promptfoo.dev/docs/intro"},{icon:(0,o.jsx)(j.Z,{fontSize:"small"}),text:"GitHub Repository",href:"https://github.com/promptfoo/promptfoo"},{icon:(0,o.jsx)(x.Z,{fontSize:"small"}),text:"File an Issue",href:"https://github.com/promptfoo/promptfoo/issues"},{icon:(0,o.jsx)(g.Z,{fontSize:"small"}),text:"Join Our Discord Community",href:"https://discord.gg/gHPS9jjfbs"},{icon:(0,o.jsx)(m.Z,{fontSize:"small"}),text:"Book a Meeting",href:"https://cal.com/team/promptfoo/intro"}];function P(e){let{open:t,onClose:r}=e;return(0,o.jsxs)(v.Z,{open:t,onClose:r,maxWidth:"xs",fullWidth:!0,"aria-labelledby":"about-promptfoo-dialog-title",children:[(0,o.jsx)(k.Z,{id:"about-promptfoo-dialog-title",children:(0,o.jsxs)(a.Z,{children:[(0,o.jsx)(C.Z,{variant:"h6",children:"About Promptfoo"}),(0,o.jsx)(Z.Z,{href:"https://github.com/promptfoo/promptfoo/releases",underline:"none",sx:{color:"inherit"},target:"_blank",children:(0,o.jsxs)(C.Z,{variant:"subtitle2",children:["Version ","0.82.0"]})})]})}),(0,o.jsxs)(S.Z,{children:[(0,o.jsx)(C.Z,{variant:"body2",gutterBottom:!0,children:"Promptfoo is a MIT licensed open-source tool for evaluating LLMs. We make it easy to track the performance of your models and prompts over time with automated support for dataset generation and grading."}),(0,o.jsx)(a.Z,{spacing:2,mt:2,children:_.map((e,t)=>(0,o.jsxs)(a.Z,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap","& .MuiSvgIcon-root":{color:"text.primary"}},children:[e.icon,(0,o.jsx)(Z.Z,{underline:"none",target:"_blank",href:e.href,sx:{color:"inherit"},children:(0,o.jsx)(C.Z,{variant:"body2",children:e.text})})]},t))})]}),(0,o.jsx)(E.Z,{children:(0,o.jsx)(O.Z,{onClick:r,children:"Close"})})]})}var y=r(1445),F=r(3283),N=r(33932),M=r(74309);function w(){let{user:e,logout:t}=(0,y.aC)(),[r,s]=n.useState(null),i=()=>{s(null)},a=async()=>{null==t||t(),i()};return e?(0,o.jsxs)("div",{children:[(0,o.jsx)(l.Z,{edge:"end","aria-label":"account of current user","aria-controls":"menu-appbar","aria-haspopup":"true",onClick:e=>{s(e.currentTarget)},color:"inherit",children:(0,o.jsx)(F.Z,{sx:{width:"1em",height:"1em",bgcolor:"#1976d2"}})}),(0,o.jsxs)(N.Z,{id:"menu-appbar",anchorEl:r,anchorOrigin:{vertical:"top",horizontal:"right"},keepMounted:!0,transformOrigin:{vertical:"top",horizontal:"right"},open:!!r,onClose:i,children:[(0,o.jsxs)(M.Z,{disabled:!0,children:["Logged in as ",e.email]}),(0,o.jsx)(M.Z,{onClick:a,children:"Logout"})]})]}):(0,o.jsx)(u(),{href:"/auth/signup/",children:(0,o.jsx)(l.Z,{edge:"end","aria-label":"User not logged in","aria-controls":"menu-appbar","aria-haspopup":"true",color:"inherit",children:(0,o.jsx)(F.Z,{sx:{width:"1em",height:"1em"}})})})}var I=r(79245),T=r(47051),R=r.n(T);function A(){return(0,o.jsx)(u(),{href:"https://promptfoo.dev",passHref:!0,children:(0,o.jsxs)(I.Z,{className:"logo",component:"a",children:[(0,o.jsx)(R(),{width:25,height:25,src:"/logo-panda.svg",alt:"Promptfoo logo"})," ",(0,o.jsx)("span",{children:"promptfoo"})]})})}r(17328),r(5008);var D=r(77580);function B(e){let{href:t,label:r}=e,n=(0,d.usePathname)()||"";return(0,o.jsx)(u(),{href:t,className:n.startsWith(t)?"active":"",children:r})}function L(e){let{darkMode:t,onToggleDarkMode:r}=e,[c,u]=(0,n.useState)(!1),d=()=>u(e=>!e),h=(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(A,{}),!D.env.NEXT_PUBLIC_NO_BROWSING&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(B,{href:"/setup",label:"New Eval"}),(0,o.jsx)(B,{href:"/eval",label:"Evals"}),(0,o.jsx)(B,{href:"/prompts",label:"Prompts"}),(0,o.jsx)(B,{href:"/datasets",label:"Datasets"}),(0,o.jsx)(B,{href:"/progress",label:"Progress"})]}),(0,o.jsxs)("div",{className:"right-aligned",children:[s.Ox?(0,o.jsx)(w,{}):null,(0,o.jsx)(l.Z,{onClick:d,sx:{color:"#f0f0f0"},children:(0,o.jsx)(i.Z,{})}),(0,o.jsx)(p,{darkMode:t,onToggleDarkMode:r})]})]});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(P,{open:c,onClose:d}),(0,o.jsx)(a.Z,{direction:"row",spacing:2,className:"nav",children:h})]})}var W=r(30606),U=r(33948),z=r(42714);r(70894);let H=e=>(0,W.Z)({typography:{fontFamily:"inherit"},palette:{mode:e?"dark":"light",background:{default:"#ffffff"}},components:{MuiCard:{styleOverrides:{root:{backgroundColor:e?"#121212":"#fff",boxShadow:e?"none":"0 2px 3px rgba(0, 0, 0, 0.1)",borderRadius:"12px"}}},MuiTableContainer:{styleOverrides:{root:{backgroundColor:e?"#121212":"#fff",boxShadow:e?"none":"0 2px 3px rgba(0, 0, 0, 0.1)",borderRadius:"12px"}}},MuiTableHead:{styleOverrides:{root:{backgroundColor:e?"#1E1E1E":"#F5F5F5"}}},MuiTableCell:{styleOverrides:{head:{backgroundColor:"inherit",color:e?"#FFFFFF":"#000000",fontWeight:"bold"},stickyHeader:{backgroundColor:e?"#1E1E1E":"#F5F5F5"}}},MuiInputBase:{styleOverrides:{root:{backgroundColor:e?"#333":"#fff"}}}}}),G=H(!1),V=H(!0);function X(e){let{children:t}=e;return(0,o.jsx)("div",{children:t})}function J(e){let{children:t}=e,r=(0,z.Z)("(prefers-color-scheme: dark)"),[s,i]=(0,n.useState)(null);(0,n.useEffect)(()=>{let e=localStorage.getItem("darkMode");i(null===e?r:"true"===e)},[r]);let l=(0,n.useCallback)(()=>{i(e=>{let t=!e;return localStorage.setItem("darkMode",String(t)),t})},[]);return((0,n.useEffect)(()=>{null!==s&&(s?document.documentElement.setAttribute("data-theme","dark"):document.documentElement.removeAttribute("data-theme"))},[s]),null===s)?null:(0,o.jsx)(U.Z,{theme:s?V:G,children:(0,o.jsx)(y.Ho,{children:(0,o.jsxs)(X,{children:[(0,o.jsx)(L,{darkMode:s,onToggleDarkMode:l}),(0,o.jsx)("div",{children:t})]})})})}},52428:function(e,t,r){"use strict";r.d(t,{Ox:function(){return s},T8:function(){return n},eA:function(){return i}});var o=r(77580);let n=!o.env.NEXT_PUBLIC_PROMPTFOO_BUILD_STANDALONE_SERVER,s=!!o.env.NEXT_PUBLIC_PROMPTFOO_USE_SUPABASE,i=""},1445:function(e,t,r){"use strict";r.d(t,{Ho:function(){return d},OQ:function(){return i},aC:function(){return a}});var o=r(24004),n=r(14978),s=r(12594);let i=(0,s.createClientComponentClient)(),l=(0,n.createContext)({}),a=()=>(0,n.useContext)(l),c=(e,t)=>i.auth.signInWithPassword({email:e,password:t}),u=()=>i.auth.signOut(),d=e=>{let{children:t}=e,[r,s]=(0,n.useState)(null),[a,d]=(0,n.useState)(!1),h=(0,n.useCallback)(async()=>{let{data:e}=await i.auth.refreshSession();e&&s(e.user)},[]);return(0,n.useEffect)(()=>{h();let{data:e}=i.auth.onAuthStateChange(async(e,t)=>{"PASSWORD_RECOVERY"==e?d(!1):"SIGNED_IN"===e&&t?(s(t.user),d(!0)):"SIGNED_OUT"===e&&(d(!1),s(null))});return()=>{e.subscription.unsubscribe()}},[h]),(0,o.jsx)(l.Provider,{value:{loggedIn:a,user:r,login:c,logout:u},children:t})}},32854:function(){},17328:function(){},5008:function(){},70894:function(){},5100:function(){}},function(e){e.O(0,[148,640,193,65,132,415,470,730,744],function(){return e(e.s=84173)}),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[185],{84173:function(e,t,r){Promise.resolve().then(r.bind(r,5071)),Promise.resolve().then(r.t.bind(r,5100,23)),Promise.resolve().then(r.t.bind(r,65246,23))},5071:function(e,t,r){"use strict";r.r(t),r.d(t,{PageShell:function(){return J}});var o=r(24004),n=r(14978),s=r(52428),i=r(14819),l=r(52653),a=r(13457),c=r(38640),u=r.n(c),d=r(28891),h=r(39864),f=r(47028);function p(e){let{darkMode:t,onToggleDarkMode:r}=e;return(0,o.jsx)("div",{className:"dark-mode-toggle",onClick:r,children:t?(0,o.jsx)(h.Z,{}):(0,o.jsx)(f.Z,{})})}r(32854);var x=r(58715),m=r(61443),g=r(14089),j=r(68452),b=r(91018),v=r(89394),k=r(91797),C=r(43226),Z=r(25210),S=r(26337),E=r(42834),O=r(49050);let _=[{icon:(0,o.jsx)(b.Z,{fontSize:"small"}),text:"Documentation",href:"https://www.promptfoo.dev/docs/intro"},{icon:(0,o.jsx)(j.Z,{fontSize:"small"}),text:"GitHub Repository",href:"https://github.com/promptfoo/promptfoo"},{icon:(0,o.jsx)(x.Z,{fontSize:"small"}),text:"File an Issue",href:"https://github.com/promptfoo/promptfoo/issues"},{icon:(0,o.jsx)(g.Z,{fontSize:"small"}),text:"Join Our Discord Community",href:"https://discord.gg/gHPS9jjfbs"},{icon:(0,o.jsx)(m.Z,{fontSize:"small"}),text:"Book a Meeting",href:"https://cal.com/team/promptfoo/intro"}];function P(e){let{open:t,onClose:r}=e;return(0,o.jsxs)(v.Z,{open:t,onClose:r,maxWidth:"xs",fullWidth:!0,"aria-labelledby":"about-promptfoo-dialog-title",children:[(0,o.jsx)(k.Z,{id:"about-promptfoo-dialog-title",children:(0,o.jsxs)(a.Z,{children:[(0,o.jsx)(C.Z,{variant:"h6",children:"About Promptfoo"}),(0,o.jsx)(Z.Z,{href:"https://github.com/promptfoo/promptfoo/releases",underline:"none",sx:{color:"inherit"},target:"_blank",children:(0,o.jsxs)(C.Z,{variant:"subtitle2",children:["Version ","0.83.1"]})})]})}),(0,o.jsxs)(S.Z,{children:[(0,o.jsx)(C.Z,{variant:"body2",gutterBottom:!0,children:"Promptfoo is a MIT licensed open-source tool for evaluating LLMs. We make it easy to track the performance of your models and prompts over time with automated support for dataset generation and grading."}),(0,o.jsx)(a.Z,{spacing:2,mt:2,children:_.map((e,t)=>(0,o.jsxs)(a.Z,{direction:"row",spacing:1,alignItems:"center",sx:{flexWrap:"wrap","& .MuiSvgIcon-root":{color:"text.primary"}},children:[e.icon,(0,o.jsx)(Z.Z,{underline:"none",target:"_blank",href:e.href,sx:{color:"inherit"},children:(0,o.jsx)(C.Z,{variant:"body2",children:e.text})})]},t))})]}),(0,o.jsx)(E.Z,{children:(0,o.jsx)(O.Z,{onClick:r,children:"Close"})})]})}var y=r(1445),F=r(3283),N=r(33932),M=r(74309);function w(){let{user:e,logout:t}=(0,y.aC)(),[r,s]=n.useState(null),i=()=>{s(null)},a=async()=>{null==t||t(),i()};return e?(0,o.jsxs)("div",{children:[(0,o.jsx)(l.Z,{edge:"end","aria-label":"account of current user","aria-controls":"menu-appbar","aria-haspopup":"true",onClick:e=>{s(e.currentTarget)},color:"inherit",children:(0,o.jsx)(F.Z,{sx:{width:"1em",height:"1em",bgcolor:"#1976d2"}})}),(0,o.jsxs)(N.Z,{id:"menu-appbar",anchorEl:r,anchorOrigin:{vertical:"top",horizontal:"right"},keepMounted:!0,transformOrigin:{vertical:"top",horizontal:"right"},open:!!r,onClose:i,children:[(0,o.jsxs)(M.Z,{disabled:!0,children:["Logged in as ",e.email]}),(0,o.jsx)(M.Z,{onClick:a,children:"Logout"})]})]}):(0,o.jsx)(u(),{href:"/auth/signup/",children:(0,o.jsx)(l.Z,{edge:"end","aria-label":"User not logged in","aria-controls":"menu-appbar","aria-haspopup":"true",color:"inherit",children:(0,o.jsx)(F.Z,{sx:{width:"1em",height:"1em"}})})})}var I=r(79245),T=r(47051),R=r.n(T);function A(){return(0,o.jsx)(u(),{href:"https://promptfoo.dev",passHref:!0,children:(0,o.jsxs)(I.Z,{className:"logo",component:"a",children:[(0,o.jsx)(R(),{width:25,height:25,src:"/logo-panda.svg",alt:"Promptfoo logo"})," ",(0,o.jsx)("span",{children:"promptfoo"})]})})}r(17328),r(5008);var D=r(77580);function B(e){let{href:t,label:r}=e,n=(0,d.usePathname)()||"";return(0,o.jsx)(u(),{href:t,className:n.startsWith(t)?"active":"",children:r})}function L(e){let{darkMode:t,onToggleDarkMode:r}=e,[c,u]=(0,n.useState)(!1),d=()=>u(e=>!e),h=(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(A,{}),!D.env.NEXT_PUBLIC_NO_BROWSING&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(B,{href:"/setup",label:"New Eval"}),(0,o.jsx)(B,{href:"/eval",label:"Evals"}),(0,o.jsx)(B,{href:"/prompts",label:"Prompts"}),(0,o.jsx)(B,{href:"/datasets",label:"Datasets"}),(0,o.jsx)(B,{href:"/progress",label:"Progress"})]}),(0,o.jsxs)("div",{className:"right-aligned",children:[s.Ox?(0,o.jsx)(w,{}):null,(0,o.jsx)(l.Z,{onClick:d,sx:{color:"#f0f0f0"},children:(0,o.jsx)(i.Z,{})}),(0,o.jsx)(p,{darkMode:t,onToggleDarkMode:r})]})]});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(P,{open:c,onClose:d}),(0,o.jsx)(a.Z,{direction:"row",spacing:2,className:"nav",children:h})]})}var W=r(30606),U=r(33948),z=r(42714);r(70894);let H=e=>(0,W.Z)({typography:{fontFamily:"inherit"},palette:{mode:e?"dark":"light",background:{default:"#ffffff"}},components:{MuiCard:{styleOverrides:{root:{backgroundColor:e?"#121212":"#fff",boxShadow:e?"none":"0 2px 3px rgba(0, 0, 0, 0.1)",borderRadius:"12px"}}},MuiTableContainer:{styleOverrides:{root:{backgroundColor:e?"#121212":"#fff",boxShadow:e?"none":"0 2px 3px rgba(0, 0, 0, 0.1)",borderRadius:"12px"}}},MuiTableHead:{styleOverrides:{root:{backgroundColor:e?"#1E1E1E":"#F5F5F5"}}},MuiTableCell:{styleOverrides:{head:{backgroundColor:"inherit",color:e?"#FFFFFF":"#000000",fontWeight:"bold"},stickyHeader:{backgroundColor:e?"#1E1E1E":"#F5F5F5"}}},MuiInputBase:{styleOverrides:{root:{backgroundColor:e?"#333":"#fff"}}}}}),G=H(!1),V=H(!0);function X(e){let{children:t}=e;return(0,o.jsx)("div",{children:t})}function J(e){let{children:t}=e,r=(0,z.Z)("(prefers-color-scheme: dark)"),[s,i]=(0,n.useState)(null);(0,n.useEffect)(()=>{let e=localStorage.getItem("darkMode");i(null===e?r:"true"===e)},[r]);let l=(0,n.useCallback)(()=>{i(e=>{let t=!e;return localStorage.setItem("darkMode",String(t)),t})},[]);return((0,n.useEffect)(()=>{null!==s&&(s?document.documentElement.setAttribute("data-theme","dark"):document.documentElement.removeAttribute("data-theme"))},[s]),null===s)?null:(0,o.jsx)(U.Z,{theme:s?V:G,children:(0,o.jsx)(y.Ho,{children:(0,o.jsxs)(X,{children:[(0,o.jsx)(L,{darkMode:s,onToggleDarkMode:l}),(0,o.jsx)("div",{children:t})]})})})}},52428:function(e,t,r){"use strict";r.d(t,{Ox:function(){return s},T8:function(){return n},eA:function(){return i}});var o=r(77580);let n=!o.env.NEXT_PUBLIC_PROMPTFOO_BUILD_STANDALONE_SERVER,s=!!o.env.NEXT_PUBLIC_PROMPTFOO_USE_SUPABASE,i=""},1445:function(e,t,r){"use strict";r.d(t,{Ho:function(){return d},OQ:function(){return i},aC:function(){return a}});var o=r(24004),n=r(14978),s=r(12594);let i=(0,s.createClientComponentClient)(),l=(0,n.createContext)({}),a=()=>(0,n.useContext)(l),c=(e,t)=>i.auth.signInWithPassword({email:e,password:t}),u=()=>i.auth.signOut(),d=e=>{let{children:t}=e,[r,s]=(0,n.useState)(null),[a,d]=(0,n.useState)(!1),h=(0,n.useCallback)(async()=>{let{data:e}=await i.auth.refreshSession();e&&s(e.user)},[]);return(0,n.useEffect)(()=>{h();let{data:e}=i.auth.onAuthStateChange(async(e,t)=>{"PASSWORD_RECOVERY"==e?d(!1):"SIGNED_IN"===e&&t?(s(t.user),d(!0)):"SIGNED_OUT"===e&&(d(!1),s(null))});return()=>{e.subscription.unsubscribe()}},[h]),(0,o.jsx)(l.Provider,{value:{loggedIn:a,user:r,login:c,logout:u},children:t})}},32854:function(){},17328:function(){},5008:function(){},70894:function(){},5100:function(){}},function(e){e.O(0,[148,640,193,65,132,415,470,730,744],function(){return e(e.s=84173)}),_N_E=e.O()}]);
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preload" as="font" href="/_next/static/media/a34f9d1faa5f3315-s.p.woff2" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/de0307797e31a3e6.css" data-precedence="next"/><link rel="preload" href="/_next/static/chunks/webpack-2bde9ee952171572.js" as="script"/><link rel="preload" href="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" as="script"/><link rel="preload" href="/_next/static/chunks/730-3eb7255cd813a727.js" as="script"/><link rel="preload" href="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" as="script"/><title>promptfoo</title><meta name="description" content="LLM testing and evaluation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta property="og:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body class="__className_85e967"><script src="/_next/static/chunks/webpack-2bde9ee952171572.js" async=""></script><script src="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" async=""></script><script src="/_next/static/chunks/730-3eb7255cd813a727.js" async=""></script><script src="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/a34f9d1faa5f3315-s.p.woff2\",{\"as\":\"font\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/css/de0307797e31a3e6.css\",{\"as\":\"style\"}]\n0:\"$L3\"\n"])</script><script>self.__next_f.push([1,"4:I{\"id\":83507,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n6:I{\"id\":6020,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"\",\"async\":false}\n7:I{\"id\":5071,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:stati"])</script><script>self.__next_f.push([1,"c/chunks/193-fbb29b23a7b3df82.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"415:static/chunks/415-f4cc6df99e1d251e.js\",\"185:static/chunks/app/layout-436df6a7978b874b.js\"],\"name\":\"PageShell\",\"async\":false}\n8:I{\"id\":27883,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n9:I{\"id\":46785,\"chunks\":[\"272:static/chunks/webpack-2bde9ee9521"])</script><script>self.__next_f.push([1,"71572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\nb:I{\"id\":92030,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:static/chunks/193-fbb29b23a7b3df82.js\",\"654:static/chunks/654-7ef84f69b226e6ab.js\",\"975:static/chunks/975-db84f98b8dd028ab.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"716:static/chunks/app/auth/login/page-252a14bf379f74d0.js\"],\"name\":\"\",\"async\":false}\n"])</script><script>self.__next_f.push([1,"3:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/de0307797e31a3e6.css\",\"precedence\":\"next\"}]],[\"$\",\"$L4\",null,{\"buildId\":\"hKKNDbykxSExL2_mnZqWi\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/auth/login/\",\"initialTree\":[\"\",{\"children\":[\"auth\",{\"children\":[\"login\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialHead\":\"$L5\",\"globalErrorComponent\":\"$6\",\"children\":[null,[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_85e967\",\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"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)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\",\"login\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$La\",[\"$\",\"$Lb\",null,{}],null],\"segment\":\"__PAGE__\"},\"styles\":[]}],\"segment\":\"login\"},\"styles\":[]}],\"segment\":\"auth\"},\"styles\":[]}]}]}]}],null]}]]\n"])</script><script>self.__next_f.push([1,"5:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"promptfoo\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"LLM testing and evaluation\"}],[\"$\",\"meta\",\"3\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"7\",{\"name\":\"next-size-adjust\"}]]\n"])</script><script>self.__next_f.push([1,"a:null\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preload" as="font" href="/_next/static/media/a34f9d1faa5f3315-s.p.woff2" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/de0307797e31a3e6.css" data-precedence="next"/><link rel="preload" href="/_next/static/chunks/webpack-2bde9ee952171572.js" as="script"/><link rel="preload" href="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" as="script"/><link rel="preload" href="/_next/static/chunks/730-3eb7255cd813a727.js" as="script"/><link rel="preload" href="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" as="script"/><title>promptfoo</title><meta name="description" content="LLM testing and evaluation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta property="og:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body class="__className_85e967"><script src="/_next/static/chunks/webpack-2bde9ee952171572.js" async=""></script><script src="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" async=""></script><script src="/_next/static/chunks/730-3eb7255cd813a727.js" async=""></script><script src="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/a34f9d1faa5f3315-s.p.woff2\",{\"as\":\"font\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/css/de0307797e31a3e6.css\",{\"as\":\"style\"}]\n0:\"$L3\"\n"])</script><script>self.__next_f.push([1,"4:I{\"id\":83507,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n6:I{\"id\":6020,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"\",\"async\":false}\n7:I{\"id\":5071,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:stati"])</script><script>self.__next_f.push([1,"c/chunks/193-fbb29b23a7b3df82.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"415:static/chunks/415-f4cc6df99e1d251e.js\",\"185:static/chunks/app/layout-840b64134bca448d.js\"],\"name\":\"PageShell\",\"async\":false}\n8:I{\"id\":27883,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n9:I{\"id\":46785,\"chunks\":[\"272:static/chunks/webpack-2bde9ee9521"])</script><script>self.__next_f.push([1,"71572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\nb:I{\"id\":92030,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:static/chunks/193-fbb29b23a7b3df82.js\",\"654:static/chunks/654-7ef84f69b226e6ab.js\",\"975:static/chunks/975-db84f98b8dd028ab.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"716:static/chunks/app/auth/login/page-252a14bf379f74d0.js\"],\"name\":\"\",\"async\":false}\n"])</script><script>self.__next_f.push([1,"3:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/de0307797e31a3e6.css\",\"precedence\":\"next\"}]],[\"$\",\"$L4\",null,{\"buildId\":\"48DSwiWE8aGl1g_5NqL3u\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/auth/login/\",\"initialTree\":[\"\",{\"children\":[\"auth\",{\"children\":[\"login\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialHead\":\"$L5\",\"globalErrorComponent\":\"$6\",\"children\":[null,[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_85e967\",\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"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)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\",\"login\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$La\",[\"$\",\"$Lb\",null,{}],null],\"segment\":\"__PAGE__\"},\"styles\":[]}],\"segment\":\"login\"},\"styles\":[]}],\"segment\":\"auth\"},\"styles\":[]}]}]}]}],null]}]]\n"])</script><script>self.__next_f.push([1,"5:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"promptfoo\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"LLM testing and evaluation\"}],[\"$\",\"meta\",\"3\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"7\",{\"name\":\"next-size-adjust\"}]]\n"])</script><script>self.__next_f.push([1,"a:null\n"])</script></body></html>
@@ -1,7 +1,7 @@
1
1
  1:HL["/_next/static/media/a34f9d1faa5f3315-s.p.woff2",{"as":"font","type":"font/woff2"}]
2
2
  2:HL["/_next/static/css/de0307797e31a3e6.css",{"as":"style"}]
3
- 0:["hKKNDbykxSExL2_mnZqWi",[[["",{"children":["auth",{"children":["login",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L3",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/de0307797e31a3e6.css","precedence":"next"}]],"$L4"]]]]
4
- 5:I{"id":5071,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","65:static/chunks/65-d3958feb29430005.js","132:static/chunks/132-d6bea93785831786.js","415:static/chunks/415-f4cc6df99e1d251e.js","185:static/chunks/app/layout-436df6a7978b874b.js"],"name":"PageShell","async":false}
3
+ 0:["48DSwiWE8aGl1g_5NqL3u",[[["",{"children":["auth",{"children":["login",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L3",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/de0307797e31a3e6.css","precedence":"next"}]],"$L4"]]]]
4
+ 5:I{"id":5071,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","65:static/chunks/65-d3958feb29430005.js","132:static/chunks/132-d6bea93785831786.js","415:static/chunks/415-f4cc6df99e1d251e.js","185:static/chunks/app/layout-840b64134bca448d.js"],"name":"PageShell","async":false}
5
5
  6:I{"id":27883,"chunks":["272:static/chunks/webpack-2bde9ee952171572.js","470:static/chunks/b6261da7-e9d81a4364ddd0c0.js","730:static/chunks/730-3eb7255cd813a727.js"],"name":"default","async":false}
6
6
  7:I{"id":46785,"chunks":["272:static/chunks/webpack-2bde9ee952171572.js","470:static/chunks/b6261da7-e9d81a4364ddd0c0.js","730:static/chunks/730-3eb7255cd813a727.js"],"name":"default","async":false}
7
7
  9:I{"id":92030,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","654:static/chunks/654-7ef84f69b226e6ab.js","975:static/chunks/975-db84f98b8dd028ab.js","132:static/chunks/132-d6bea93785831786.js","716:static/chunks/app/auth/login/page-252a14bf379f74d0.js"],"name":"","async":false}
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preload" as="font" href="/_next/static/media/a34f9d1faa5f3315-s.p.woff2" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/de0307797e31a3e6.css" data-precedence="next"/><link rel="preload" href="/_next/static/chunks/webpack-2bde9ee952171572.js" as="script"/><link rel="preload" href="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" as="script"/><link rel="preload" href="/_next/static/chunks/730-3eb7255cd813a727.js" as="script"/><link rel="preload" href="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" as="script"/><title>promptfoo</title><meta name="description" content="LLM testing and evaluation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta property="og:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body class="__className_85e967"><script src="/_next/static/chunks/webpack-2bde9ee952171572.js" async=""></script><script src="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" async=""></script><script src="/_next/static/chunks/730-3eb7255cd813a727.js" async=""></script><script src="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/a34f9d1faa5f3315-s.p.woff2\",{\"as\":\"font\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/css/de0307797e31a3e6.css\",{\"as\":\"style\"}]\n0:\"$L3\"\n"])</script><script>self.__next_f.push([1,"4:I{\"id\":83507,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n6:I{\"id\":6020,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"\",\"async\":false}\n7:I{\"id\":5071,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:stati"])</script><script>self.__next_f.push([1,"c/chunks/193-fbb29b23a7b3df82.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"415:static/chunks/415-f4cc6df99e1d251e.js\",\"185:static/chunks/app/layout-436df6a7978b874b.js\"],\"name\":\"PageShell\",\"async\":false}\n8:I{\"id\":27883,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n9:I{\"id\":46785,\"chunks\":[\"272:static/chunks/webpack-2bde9ee9521"])</script><script>self.__next_f.push([1,"71572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\nb:I{\"id\":78567,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:static/chunks/193-fbb29b23a7b3df82.js\",\"654:static/chunks/654-7ef84f69b226e6ab.js\",\"975:static/chunks/975-db84f98b8dd028ab.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"271:static/chunks/app/auth/signup/page-f98e3b4d3b58f5f5.js\"],\"name\":\"\",\"async\":false}\n"])</script><script>self.__next_f.push([1,"3:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/de0307797e31a3e6.css\",\"precedence\":\"next\"}]],[\"$\",\"$L4\",null,{\"buildId\":\"hKKNDbykxSExL2_mnZqWi\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/auth/signup/\",\"initialTree\":[\"\",{\"children\":[\"auth\",{\"children\":[\"signup\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialHead\":\"$L5\",\"globalErrorComponent\":\"$6\",\"children\":[null,[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_85e967\",\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"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)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\",\"signup\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$La\",[\"$\",\"$Lb\",null,{}],null],\"segment\":\"__PAGE__\"},\"styles\":[]}],\"segment\":\"signup\"},\"styles\":[]}],\"segment\":\"auth\"},\"styles\":[]}]}]}]}],null]}]]\n"])</script><script>self.__next_f.push([1,"5:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"promptfoo\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"LLM testing and evaluation\"}],[\"$\",\"meta\",\"3\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"7\",{\"name\":\"next-size-adjust\"}]]\n"])</script><script>self.__next_f.push([1,"a:null\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preload" as="font" href="/_next/static/media/a34f9d1faa5f3315-s.p.woff2" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/de0307797e31a3e6.css" data-precedence="next"/><link rel="preload" href="/_next/static/chunks/webpack-2bde9ee952171572.js" as="script"/><link rel="preload" href="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" as="script"/><link rel="preload" href="/_next/static/chunks/730-3eb7255cd813a727.js" as="script"/><link rel="preload" href="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" as="script"/><title>promptfoo</title><meta name="description" content="LLM testing and evaluation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta property="og:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body class="__className_85e967"><script src="/_next/static/chunks/webpack-2bde9ee952171572.js" async=""></script><script src="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" async=""></script><script src="/_next/static/chunks/730-3eb7255cd813a727.js" async=""></script><script src="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/a34f9d1faa5f3315-s.p.woff2\",{\"as\":\"font\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/css/de0307797e31a3e6.css\",{\"as\":\"style\"}]\n0:\"$L3\"\n"])</script><script>self.__next_f.push([1,"4:I{\"id\":83507,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n6:I{\"id\":6020,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"\",\"async\":false}\n7:I{\"id\":5071,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:stati"])</script><script>self.__next_f.push([1,"c/chunks/193-fbb29b23a7b3df82.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"415:static/chunks/415-f4cc6df99e1d251e.js\",\"185:static/chunks/app/layout-840b64134bca448d.js\"],\"name\":\"PageShell\",\"async\":false}\n8:I{\"id\":27883,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n9:I{\"id\":46785,\"chunks\":[\"272:static/chunks/webpack-2bde9ee9521"])</script><script>self.__next_f.push([1,"71572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\nb:I{\"id\":78567,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:static/chunks/193-fbb29b23a7b3df82.js\",\"654:static/chunks/654-7ef84f69b226e6ab.js\",\"975:static/chunks/975-db84f98b8dd028ab.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"271:static/chunks/app/auth/signup/page-f98e3b4d3b58f5f5.js\"],\"name\":\"\",\"async\":false}\n"])</script><script>self.__next_f.push([1,"3:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/de0307797e31a3e6.css\",\"precedence\":\"next\"}]],[\"$\",\"$L4\",null,{\"buildId\":\"48DSwiWE8aGl1g_5NqL3u\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/auth/signup/\",\"initialTree\":[\"\",{\"children\":[\"auth\",{\"children\":[\"signup\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialHead\":\"$L5\",\"globalErrorComponent\":\"$6\",\"children\":[null,[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_85e967\",\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"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)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"auth\",\"children\",\"signup\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$La\",[\"$\",\"$Lb\",null,{}],null],\"segment\":\"__PAGE__\"},\"styles\":[]}],\"segment\":\"signup\"},\"styles\":[]}],\"segment\":\"auth\"},\"styles\":[]}]}]}]}],null]}]]\n"])</script><script>self.__next_f.push([1,"5:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"promptfoo\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"LLM testing and evaluation\"}],[\"$\",\"meta\",\"3\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"7\",{\"name\":\"next-size-adjust\"}]]\n"])</script><script>self.__next_f.push([1,"a:null\n"])</script></body></html>
@@ -1,7 +1,7 @@
1
1
  1:HL["/_next/static/media/a34f9d1faa5f3315-s.p.woff2",{"as":"font","type":"font/woff2"}]
2
2
  2:HL["/_next/static/css/de0307797e31a3e6.css",{"as":"style"}]
3
- 0:["hKKNDbykxSExL2_mnZqWi",[[["",{"children":["auth",{"children":["signup",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L3",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/de0307797e31a3e6.css","precedence":"next"}]],"$L4"]]]]
4
- 5:I{"id":5071,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","65:static/chunks/65-d3958feb29430005.js","132:static/chunks/132-d6bea93785831786.js","415:static/chunks/415-f4cc6df99e1d251e.js","185:static/chunks/app/layout-436df6a7978b874b.js"],"name":"PageShell","async":false}
3
+ 0:["48DSwiWE8aGl1g_5NqL3u",[[["",{"children":["auth",{"children":["signup",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],"$L3",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/de0307797e31a3e6.css","precedence":"next"}]],"$L4"]]]]
4
+ 5:I{"id":5071,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","65:static/chunks/65-d3958feb29430005.js","132:static/chunks/132-d6bea93785831786.js","415:static/chunks/415-f4cc6df99e1d251e.js","185:static/chunks/app/layout-840b64134bca448d.js"],"name":"PageShell","async":false}
5
5
  6:I{"id":27883,"chunks":["272:static/chunks/webpack-2bde9ee952171572.js","470:static/chunks/b6261da7-e9d81a4364ddd0c0.js","730:static/chunks/730-3eb7255cd813a727.js"],"name":"default","async":false}
6
6
  7:I{"id":46785,"chunks":["272:static/chunks/webpack-2bde9ee952171572.js","470:static/chunks/b6261da7-e9d81a4364ddd0c0.js","730:static/chunks/730-3eb7255cd813a727.js"],"name":"default","async":false}
7
7
  9:I{"id":78567,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","654:static/chunks/654-7ef84f69b226e6ab.js","975:static/chunks/975-db84f98b8dd028ab.js","132:static/chunks/132-d6bea93785831786.js","271:static/chunks/app/auth/signup/page-f98e3b4d3b58f5f5.js"],"name":"","async":false}
@@ -1 +1 @@
1
- <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preload" as="font" href="/_next/static/media/a34f9d1faa5f3315-s.p.woff2" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/de0307797e31a3e6.css" data-precedence="next"/><link rel="preload" href="/_next/static/chunks/webpack-2bde9ee952171572.js" as="script"/><link rel="preload" href="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" as="script"/><link rel="preload" href="/_next/static/chunks/730-3eb7255cd813a727.js" as="script"/><link rel="preload" href="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" as="script"/><title>promptfoo</title><meta name="description" content="LLM testing and evaluation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta property="og:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body class="__className_85e967"><script src="/_next/static/chunks/webpack-2bde9ee952171572.js" async=""></script><script src="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" async=""></script><script src="/_next/static/chunks/730-3eb7255cd813a727.js" async=""></script><script src="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/a34f9d1faa5f3315-s.p.woff2\",{\"as\":\"font\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/css/de0307797e31a3e6.css\",{\"as\":\"style\"}]\n0:\"$L3\"\n"])</script><script>self.__next_f.push([1,"4:I{\"id\":83507,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n6:I{\"id\":6020,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"\",\"async\":false}\n7:I{\"id\":5071,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:stati"])</script><script>self.__next_f.push([1,"c/chunks/193-fbb29b23a7b3df82.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"415:static/chunks/415-f4cc6df99e1d251e.js\",\"185:static/chunks/app/layout-436df6a7978b874b.js\"],\"name\":\"PageShell\",\"async\":false}\n8:I{\"id\":27883,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n9:I{\"id\":46785,\"chunks\":[\"272:static/chunks/webpack-2bde9ee9521"])</script><script>self.__next_f.push([1,"71572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\nb:I{\"id\":41400,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"391:static/chunks/391-9f6f260597339469.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"276:static/chunks/276-b1a73ab92831c2f8.js\",\"235:static/chunks/235-2bbcbc3cd37eef0f.js\",\"854:static/chunks/854-c18aaae33bccdc36.js\",\"958:static/chunks/app/datasets/page-1fa704bf"])</script><script>self.__next_f.push([1,"80a58a79.js\"],\"name\":\"\",\"async\":false}\n"])</script><script>self.__next_f.push([1,"3:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/de0307797e31a3e6.css\",\"precedence\":\"next\"}]],[\"$\",\"$L4\",null,{\"buildId\":\"hKKNDbykxSExL2_mnZqWi\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/datasets/\",\"initialTree\":[\"\",{\"children\":[\"datasets\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialHead\":\"$L5\",\"globalErrorComponent\":\"$6\",\"children\":[null,[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_85e967\",\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"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)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"datasets\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$La\",[\"$\",\"div\",null,{\"children\":[\"$\",\"$Lb\",null,{}]}],null],\"segment\":\"__PAGE__\"},\"styles\":[]}],\"segment\":\"datasets\"},\"styles\":[]}]}]}]}],null]}]]\n"])</script><script>self.__next_f.push([1,"5:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"promptfoo\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"LLM testing and evaluation\"}],[\"$\",\"meta\",\"3\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"7\",{\"name\":\"next-size-adjust\"}]]\n"])</script><script>self.__next_f.push([1,"a:null\n"])</script></body></html>
1
+ <!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><link rel="preload" as="font" href="/_next/static/media/a34f9d1faa5f3315-s.p.woff2" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/css/de0307797e31a3e6.css" data-precedence="next"/><link rel="preload" href="/_next/static/chunks/webpack-2bde9ee952171572.js" as="script"/><link rel="preload" href="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" as="script"/><link rel="preload" href="/_next/static/chunks/730-3eb7255cd813a727.js" as="script"/><link rel="preload" href="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" as="script"/><title>promptfoo</title><meta name="description" content="LLM testing and evaluation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta property="og:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://www.promptfoo.dev/img/thumbnail.png"/><meta name="next-size-adjust"/><script src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js" noModule=""></script></head><body class="__className_85e967"><script src="/_next/static/chunks/webpack-2bde9ee952171572.js" async=""></script><script src="/_next/static/chunks/b6261da7-e9d81a4364ddd0c0.js" async=""></script><script src="/_next/static/chunks/730-3eb7255cd813a727.js" async=""></script><script src="/_next/static/chunks/main-app-0dc90092cd7acaaf.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/media/a34f9d1faa5f3315-s.p.woff2\",{\"as\":\"font\",\"type\":\"font/woff2\"}]\n2:HL[\"/_next/static/css/de0307797e31a3e6.css\",{\"as\":\"style\"}]\n0:\"$L3\"\n"])</script><script>self.__next_f.push([1,"4:I{\"id\":83507,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n6:I{\"id\":6020,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"\",\"async\":false}\n7:I{\"id\":5071,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"193:stati"])</script><script>self.__next_f.push([1,"c/chunks/193-fbb29b23a7b3df82.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"132:static/chunks/132-d6bea93785831786.js\",\"415:static/chunks/415-f4cc6df99e1d251e.js\",\"185:static/chunks/app/layout-840b64134bca448d.js\"],\"name\":\"PageShell\",\"async\":false}\n8:I{\"id\":27883,\"chunks\":[\"272:static/chunks/webpack-2bde9ee952171572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\n9:I{\"id\":46785,\"chunks\":[\"272:static/chunks/webpack-2bde9ee9521"])</script><script>self.__next_f.push([1,"71572.js\",\"470:static/chunks/b6261da7-e9d81a4364ddd0c0.js\",\"730:static/chunks/730-3eb7255cd813a727.js\"],\"name\":\"default\",\"async\":false}\nb:I{\"id\":41400,\"chunks\":[\"148:static/chunks/148-1c1aa4563e769657.js\",\"640:static/chunks/640-0f757e2fe135173d.js\",\"391:static/chunks/391-9f6f260597339469.js\",\"65:static/chunks/65-d3958feb29430005.js\",\"276:static/chunks/276-b1a73ab92831c2f8.js\",\"235:static/chunks/235-2bbcbc3cd37eef0f.js\",\"854:static/chunks/854-c18aaae33bccdc36.js\",\"958:static/chunks/app/datasets/page-1fa704bf"])</script><script>self.__next_f.push([1,"80a58a79.js\"],\"name\":\"\",\"async\":false}\n"])</script><script>self.__next_f.push([1,"3:[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/de0307797e31a3e6.css\",\"precedence\":\"next\"}]],[\"$\",\"$L4\",null,{\"buildId\":\"48DSwiWE8aGl1g_5NqL3u\",\"assetPrefix\":\"\",\"initialCanonicalUrl\":\"/datasets/\",\"initialTree\":[\"\",{\"children\":[\"datasets\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],\"initialHead\":\"$L5\",\"globalErrorComponent\":\"$6\",\"children\":[null,[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"__className_85e967\",\"children\":[\"$\",\"$L7\",null,{\"children\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"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)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$\",\"$L8\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"datasets\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"loading\":\"$undefined\",\"loadingStyles\":\"$undefined\",\"hasLoading\":false,\"template\":[\"$\",\"$L9\",null,{}],\"templateStyles\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\",\"childProp\":{\"current\":[\"$La\",[\"$\",\"div\",null,{\"children\":[\"$\",\"$Lb\",null,{}]}],null],\"segment\":\"__PAGE__\"},\"styles\":[]}],\"segment\":\"datasets\"},\"styles\":[]}]}]}]}],null]}]]\n"])</script><script>self.__next_f.push([1,"5:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"promptfoo\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"LLM testing and evaluation\"}],[\"$\",\"meta\",\"3\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"5\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"6\",{\"name\":\"twitter:image\",\"content\":\"https://www.promptfoo.dev/img/thumbnail.png\"}],[\"$\",\"meta\",\"7\",{\"name\":\"next-size-adjust\"}]]\n"])</script><script>self.__next_f.push([1,"a:null\n"])</script></body></html>
@@ -1,7 +1,7 @@
1
1
  1:HL["/_next/static/media/a34f9d1faa5f3315-s.p.woff2",{"as":"font","type":"font/woff2"}]
2
2
  2:HL["/_next/static/css/de0307797e31a3e6.css",{"as":"style"}]
3
- 0:["hKKNDbykxSExL2_mnZqWi",[[["",{"children":["datasets",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L3",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/de0307797e31a3e6.css","precedence":"next"}]],"$L4"]]]]
4
- 5:I{"id":5071,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","65:static/chunks/65-d3958feb29430005.js","132:static/chunks/132-d6bea93785831786.js","415:static/chunks/415-f4cc6df99e1d251e.js","185:static/chunks/app/layout-436df6a7978b874b.js"],"name":"PageShell","async":false}
3
+ 0:["48DSwiWE8aGl1g_5NqL3u",[[["",{"children":["datasets",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],"$L3",[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/de0307797e31a3e6.css","precedence":"next"}]],"$L4"]]]]
4
+ 5:I{"id":5071,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","193:static/chunks/193-fbb29b23a7b3df82.js","65:static/chunks/65-d3958feb29430005.js","132:static/chunks/132-d6bea93785831786.js","415:static/chunks/415-f4cc6df99e1d251e.js","185:static/chunks/app/layout-840b64134bca448d.js"],"name":"PageShell","async":false}
5
5
  6:I{"id":27883,"chunks":["272:static/chunks/webpack-2bde9ee952171572.js","470:static/chunks/b6261da7-e9d81a4364ddd0c0.js","730:static/chunks/730-3eb7255cd813a727.js"],"name":"default","async":false}
6
6
  7:I{"id":46785,"chunks":["272:static/chunks/webpack-2bde9ee952171572.js","470:static/chunks/b6261da7-e9d81a4364ddd0c0.js","730:static/chunks/730-3eb7255cd813a727.js"],"name":"default","async":false}
7
7
  9:I{"id":41400,"chunks":["148:static/chunks/148-1c1aa4563e769657.js","640:static/chunks/640-0f757e2fe135173d.js","391:static/chunks/391-9f6f260597339469.js","65:static/chunks/65-d3958feb29430005.js","276:static/chunks/276-b1a73ab92831c2f8.js","235:static/chunks/235-2bbcbc3cd37eef0f.js","854:static/chunks/854-c18aaae33bccdc36.js","958:static/chunks/app/datasets/page-1fa704bf80a58a79.js"],"name":"","async":false}