promptfoo 0.59.1 → 0.61.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/README.md +14 -2
  2. package/dist/package.json +5 -2
  3. package/dist/src/assertions.d.ts +2 -1
  4. package/dist/src/assertions.d.ts.map +1 -1
  5. package/dist/src/assertions.js +31 -3
  6. package/dist/src/assertions.js.map +1 -1
  7. package/dist/src/evaluator.d.ts.map +1 -1
  8. package/dist/src/evaluator.js +26 -12
  9. package/dist/src/evaluator.js.map +1 -1
  10. package/dist/src/index.d.ts +1 -0
  11. package/dist/src/index.d.ts.map +1 -1
  12. package/dist/src/index.js +3 -3
  13. package/dist/src/index.js.map +1 -1
  14. package/dist/src/main.js +109 -14
  15. package/dist/src/main.js.map +1 -1
  16. package/dist/src/matchers.d.ts +14 -3
  17. package/dist/src/matchers.d.ts.map +1 -1
  18. package/dist/src/matchers.js +40 -1
  19. package/dist/src/matchers.js.map +1 -1
  20. package/dist/src/prompts.d.ts +1 -1
  21. package/dist/src/prompts.d.ts.map +1 -1
  22. package/dist/src/prompts.js +38 -23
  23. package/dist/src/prompts.js.map +1 -1
  24. package/dist/src/providers/cloudflare-ai.d.ts +103 -0
  25. package/dist/src/providers/cloudflare-ai.d.ts.map +1 -0
  26. package/dist/src/providers/cloudflare-ai.js +224 -0
  27. package/dist/src/providers/cloudflare-ai.js.map +1 -0
  28. package/dist/src/providers/defaults.d.ts +2 -0
  29. package/dist/src/providers/defaults.d.ts.map +1 -1
  30. package/dist/src/providers/defaults.js +2 -0
  31. package/dist/src/providers/defaults.js.map +1 -1
  32. package/dist/src/providers/http.d.ts +11 -0
  33. package/dist/src/providers/http.d.ts.map +1 -0
  34. package/dist/src/providers/http.js +64 -0
  35. package/dist/src/providers/http.js.map +1 -0
  36. package/dist/src/providers/huggingface.d.ts +15 -17
  37. package/dist/src/providers/huggingface.d.ts.map +1 -1
  38. package/dist/src/providers/huggingface.js +16 -10
  39. package/dist/src/providers/huggingface.js.map +1 -1
  40. package/dist/src/providers/mistral.d.ts.map +1 -1
  41. package/dist/src/providers/mistral.js +7 -0
  42. package/dist/src/providers/mistral.js.map +1 -1
  43. package/dist/src/providers/openai.d.ts +6 -1
  44. package/dist/src/providers/openai.d.ts.map +1 -1
  45. package/dist/src/providers/openai.js +76 -12
  46. package/dist/src/providers/openai.js.map +1 -1
  47. package/dist/src/providers/portkey.d.ts +6 -0
  48. package/dist/src/providers/portkey.d.ts.map +1 -0
  49. package/dist/src/providers/portkey.js +47 -0
  50. package/dist/src/providers/portkey.js.map +1 -0
  51. package/dist/src/providers/promptfoo.d.ts +15 -0
  52. package/dist/src/providers/promptfoo.d.ts.map +1 -0
  53. package/dist/src/providers/promptfoo.js +50 -0
  54. package/dist/src/providers/promptfoo.js.map +1 -0
  55. package/dist/src/providers/replicate.d.ts +6 -1
  56. package/dist/src/providers/replicate.d.ts.map +1 -1
  57. package/dist/src/providers/replicate.js +91 -1
  58. package/dist/src/providers/replicate.js.map +1 -1
  59. package/dist/src/providers.d.ts.map +1 -1
  60. package/dist/src/providers.js +73 -5
  61. package/dist/src/providers.js.map +1 -1
  62. package/dist/src/python/wrapper.d.ts.map +1 -1
  63. package/dist/src/python/wrapper.js +12 -2
  64. package/dist/src/python/wrapper.js.map +1 -1
  65. package/dist/src/redteam/constants.d.ts +2 -0
  66. package/dist/src/redteam/constants.d.ts.map +1 -0
  67. package/dist/src/redteam/constants.js +5 -0
  68. package/dist/src/redteam/constants.js.map +1 -0
  69. package/dist/src/redteam/getHallucinationTests.d.ts +3 -0
  70. package/dist/src/redteam/getHallucinationTests.d.ts.map +1 -0
  71. package/dist/src/redteam/getHallucinationTests.js +64 -0
  72. package/dist/src/redteam/getHallucinationTests.js.map +1 -0
  73. package/dist/src/redteam/getHarmfulTests.d.ts +36 -0
  74. package/dist/src/redteam/getHarmfulTests.d.ts.map +1 -0
  75. package/dist/src/redteam/getHarmfulTests.js +162 -0
  76. package/dist/src/redteam/getHarmfulTests.js.map +1 -0
  77. package/dist/src/redteam/getHijackingTests.d.ts +3 -0
  78. package/dist/src/redteam/getHijackingTests.d.ts.map +1 -0
  79. package/dist/src/redteam/getHijackingTests.js +68 -0
  80. package/dist/src/redteam/getHijackingTests.js.map +1 -0
  81. package/dist/src/redteam/getOverconfidenceTests.d.ts +3 -0
  82. package/dist/src/redteam/getOverconfidenceTests.d.ts.map +1 -0
  83. package/dist/src/redteam/getOverconfidenceTests.js +63 -0
  84. package/dist/src/redteam/getOverconfidenceTests.js.map +1 -0
  85. package/dist/src/redteam/getUnderconfidenceTests.d.ts +3 -0
  86. package/dist/src/redteam/getUnderconfidenceTests.d.ts.map +1 -0
  87. package/dist/src/redteam/getUnderconfidenceTests.js +63 -0
  88. package/dist/src/redteam/getUnderconfidenceTests.js.map +1 -0
  89. package/dist/src/redteam/index.d.ts +11 -0
  90. package/dist/src/redteam/index.d.ts.map +1 -0
  91. package/dist/src/redteam/index.js +154 -0
  92. package/dist/src/redteam/index.js.map +1 -0
  93. package/dist/src/redteam/iterative.d.ts +9 -0
  94. package/dist/src/redteam/iterative.d.ts.map +1 -0
  95. package/dist/src/redteam/iterative.js +178 -0
  96. package/dist/src/redteam/iterative.js.map +1 -0
  97. package/dist/src/table.js +1 -1
  98. package/dist/src/table.js.map +1 -1
  99. package/dist/src/types.d.ts +24 -4
  100. package/dist/src/types.d.ts.map +1 -1
  101. package/dist/src/types.js.map +1 -1
  102. package/dist/src/util.d.ts.map +1 -1
  103. package/dist/src/util.js +39 -10
  104. package/dist/src/util.js.map +1 -1
  105. package/dist/src/web/nextui/404/index.html +1 -1
  106. package/dist/src/web/nextui/404.html +1 -1
  107. package/dist/src/web/nextui/_next/static/chunks/712-13fab020a2ea9e39.js +1 -0
  108. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-f363cb4f00822cb0.js +1 -0
  109. package/dist/src/web/nextui/_next/static/chunks/webpack-6db4c95c90cd16a8.js +1 -0
  110. package/dist/src/web/nextui/_next/static/css/012e7480208170b3.css +1 -0
  111. package/dist/src/web/nextui/_next/static/css/d6087a68d5b5af7c.css +1 -0
  112. package/dist/src/web/nextui/auth/login/index.html +1 -1
  113. package/dist/src/web/nextui/auth/login/index.txt +3 -3
  114. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  115. package/dist/src/web/nextui/auth/signup/index.txt +3 -3
  116. package/dist/src/web/nextui/datasets/index.html +1 -1
  117. package/dist/src/web/nextui/datasets/index.txt +3 -3
  118. package/dist/src/web/nextui/eval/index.html +1 -1
  119. package/dist/src/web/nextui/eval/index.txt +6 -6
  120. package/dist/src/web/nextui/index.html +1 -1
  121. package/dist/src/web/nextui/index.txt +3 -3
  122. package/dist/src/web/nextui/progress/index.html +1 -1
  123. package/dist/src/web/nextui/progress/index.txt +3 -3
  124. package/dist/src/web/nextui/prompts/index.html +1 -1
  125. package/dist/src/web/nextui/prompts/index.txt +3 -3
  126. package/dist/src/web/nextui/setup/index.html +2 -2
  127. package/dist/src/web/nextui/setup/index.txt +5 -5
  128. package/package.json +5 -2
  129. package/dist/src/web/nextui/_next/static/chunks/712-b075de116030d628.js +0 -1
  130. package/dist/src/web/nextui/_next/static/chunks/app/setup/page-1e746f842289d480.js +0 -1
  131. package/dist/src/web/nextui/_next/static/chunks/webpack-e02a742b401be2a0.js +0 -1
  132. package/dist/src/web/nextui/_next/static/css/635638c73d973eb7.css +0 -1
  133. package/dist/src/web/nextui/_next/static/css/dded26353bff8496.css +0 -1
  134. /package/dist/src/web/nextui/_next/static/{M6DuBbMeEniSe5YhgYql4 → LMbNc2VH3HooEZMtC2nR3}/_buildManifest.js +0 -0
  135. /package/dist/src/web/nextui/_next/static/{M6DuBbMeEniSe5YhgYql4 → LMbNc2VH3HooEZMtC2nR3}/_ssgManifest.js +0 -0
  136. /package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/{page-220f1e1ba1ae2ad9.js → page-cf43e2e1a57168e1.js} +0 -0
  137. /package/dist/src/web/nextui/_next/static/chunks/app/eval/{page-b242a9f90d8df411.js → page-21ed48ee7bd48001.js} +0 -0
package/dist/src/index.js CHANGED
@@ -58,7 +58,7 @@ async function evaluate(testSuite, options = {}) {
58
58
  if (typeof promptInput === 'function') {
59
59
  return {
60
60
  raw: promptInput.toString(),
61
- display: promptInput.toString(),
61
+ label: promptInput.toString(),
62
62
  function: promptInput,
63
63
  };
64
64
  }
@@ -66,13 +66,13 @@ async function evaluate(testSuite, options = {}) {
66
66
  const prompts = await (0, prompts_1.readPrompts)(promptInput);
67
67
  return prompts.map((p) => ({
68
68
  raw: p.raw,
69
- display: p.display,
69
+ label: p.label,
70
70
  }));
71
71
  }
72
72
  else {
73
73
  return {
74
74
  raw: JSON.stringify(promptInput),
75
- display: JSON.stringify(promptInput),
75
+ label: JSON.stringify(promptInput),
76
76
  };
77
77
  }
78
78
  }))).flat(),
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/dist/src/main.js CHANGED
@@ -42,6 +42,7 @@ const providers_1 = require("./providers");
42
42
  const evaluator_1 = require("./evaluator");
43
43
  const prompts_1 = require("./prompts");
44
44
  const testCases_1 = require("./testCases");
45
+ const redteam_1 = require("./redteam");
45
46
  const util_1 = require("./util");
46
47
  const onboarding_1 = require("./onboarding");
47
48
  const cache_1 = require("./cache");
@@ -200,11 +201,11 @@ async function main() {
200
201
  ];
201
202
  let defaultConfig = {};
202
203
  let defaultConfigPath;
203
- for (const path of potentialPaths) {
204
- const maybeConfig = await (0, util_1.maybeReadConfig)(path);
204
+ for (const _path of potentialPaths) {
205
+ const maybeConfig = await (0, util_1.maybeReadConfig)(_path);
205
206
  if (maybeConfig) {
206
207
  defaultConfig = maybeConfig;
207
- defaultConfigPath = path;
208
+ defaultConfigPath = _path;
208
209
  break;
209
210
  }
210
211
  }
@@ -314,33 +315,42 @@ async function main() {
314
315
  .action((message) => {
315
316
  (0, feedback_1.gatherFeedback)(message);
316
317
  });
317
- program
318
- .command('generate dataset')
319
- .description('Generate test cases for a given prompt')
318
+ const generateCommand = program.command('generate').description('Generate synthetic data');
319
+ generateCommand
320
+ .command('dataset')
321
+ .description('Generate test cases')
320
322
  .option('-i, --instructions [instructions]', 'Additional instructions to follow while generating test cases')
321
- .option('-c, --config [path]', 'Path to configuration file. Defaults to promptfooconfig.yaml', defaultConfigPath)
323
+ .option('-c, --config [path]', 'Path to configuration file. Defaults to promptfooconfig.yaml')
322
324
  .option('-o, --output [path]', 'Path to output file')
323
325
  .option('-w, --write', 'Write results to promptfoo configuration file')
324
326
  .option('--numPersonas <number>', 'Number of personas to generate', '5')
325
327
  .option('--numTestCasesPerPersona <number>', 'Number of test cases per persona', '3')
326
328
  .option('--no-cache', 'Do not read or write results to disk cache', false)
327
329
  .option('--env-file <path>', 'Path to .env file')
328
- .action(async (_, options) => {
330
+ .action(async (options) => {
329
331
  (0, util_1.setupEnv)(options.envFile);
330
332
  if (!options.cache) {
331
333
  logger_1.default.info('Cache is disabled.');
332
334
  (0, cache_1.disableCache)();
333
335
  }
334
336
  let testSuite;
335
- if (options.config) {
337
+ const configPath = options.config || defaultConfigPath;
338
+ if (configPath) {
336
339
  const resolved = await resolveConfigs({
337
- config: [options.config],
340
+ config: [configPath],
338
341
  }, defaultConfig);
339
342
  testSuite = resolved.testSuite;
340
343
  }
341
344
  else {
342
345
  throw new Error('Could not find config file. Please use `--config`');
343
346
  }
347
+ const startTime = Date.now();
348
+ telemetry_1.default.record('command_used', {
349
+ name: 'generate_dataset - started',
350
+ numPrompts: testSuite.prompts.length,
351
+ numTestsExisting: (testSuite.tests || []).length,
352
+ });
353
+ await telemetry_1.default.send();
344
354
  const results = await (0, testCases_1.synthesizeFromTestSuite)(testSuite, {
345
355
  instructions: options.instructions,
346
356
  numPersonas: parseInt(options.numPersonas, 10),
@@ -361,7 +371,6 @@ async function main() {
361
371
  logger_1.default.info(yamlString);
362
372
  }
363
373
  (0, util_1.printBorder)();
364
- const configPath = options.config;
365
374
  if (options.write && configPath) {
366
375
  const existingConfig = js_yaml_1.default.load(fs_1.default.readFileSync(configPath, 'utf8'));
367
376
  existingConfig.tests = [...(existingConfig.tests || []), ...configAddition.tests];
@@ -376,6 +385,76 @@ async function main() {
376
385
  numPrompts: testSuite.prompts.length,
377
386
  numTestsExisting: (testSuite.tests || []).length,
378
387
  numTestsGenerated: results.length,
388
+ duration: Math.round((Date.now() - startTime) / 1000),
389
+ });
390
+ await telemetry_1.default.send();
391
+ });
392
+ generateCommand
393
+ .command('redteam')
394
+ .description('Generate adversarial test cases')
395
+ .option('-c, --config [path]', 'Path to configuration file. Defaults to promptfooconfig.yaml')
396
+ .option('-o, --output [path]', 'Path to output file')
397
+ .option('-w, --write', 'Write results to promptfoo configuration file')
398
+ .option('--purpose <purpose>', 'Set the system purpose. If not set, the system purpose will be inferred from the config file')
399
+ .option('--injectVar <varname>', 'Override the variable to inject user input into the prompt. If not set, the variable will defalt to {{query}}')
400
+ .option('--plugins <plugins>', 'Comma-separated list of plugins to use', (val) => val.split(',').map((x) => x.trim()))
401
+ .option('--no-cache', 'Do not read or write results to disk cache', false)
402
+ .option('--env-file <path>', 'Path to .env file')
403
+ .action(async ({ config, output, write, cache, envFile, purpose, injectVar, plugins, }) => {
404
+ (0, util_1.setupEnv)(envFile);
405
+ if (!cache) {
406
+ logger_1.default.info('Cache is disabled.');
407
+ (0, cache_1.disableCache)();
408
+ }
409
+ let testSuite;
410
+ const configPath = config || defaultConfigPath;
411
+ if (configPath) {
412
+ const resolved = await resolveConfigs({
413
+ config: [configPath],
414
+ }, defaultConfig);
415
+ testSuite = resolved.testSuite;
416
+ }
417
+ else {
418
+ throw new Error('Could not find config file. Please use `--config`');
419
+ }
420
+ const startTime = Date.now();
421
+ telemetry_1.default.record('command_used', {
422
+ name: 'generate redteam - started',
423
+ numPrompts: testSuite.prompts.length,
424
+ numTestsExisting: (testSuite.tests || []).length,
425
+ });
426
+ await telemetry_1.default.send();
427
+ const redteamTests = await (0, redteam_1.synthesizeFromTestSuite)(testSuite, {
428
+ purpose,
429
+ injectVar,
430
+ plugins,
431
+ });
432
+ if (output) {
433
+ const existingYaml = js_yaml_1.default.load(fs_1.default.readFileSync(configPath, 'utf8'));
434
+ const updatedYaml = {
435
+ ...existingYaml,
436
+ tests: redteamTests,
437
+ };
438
+ fs_1.default.writeFileSync(output, js_yaml_1.default.dump(updatedYaml, { skipInvalid: true }));
439
+ (0, util_1.printBorder)();
440
+ logger_1.default.info(`Wrote ${redteamTests.length} new test cases to ${output}`);
441
+ (0, util_1.printBorder)();
442
+ }
443
+ else if (write && configPath) {
444
+ const existingConfig = js_yaml_1.default.load(fs_1.default.readFileSync(configPath, 'utf8'));
445
+ existingConfig.tests = [...(existingConfig.tests || []), ...redteamTests];
446
+ fs_1.default.writeFileSync(configPath, js_yaml_1.default.dump(existingConfig));
447
+ logger_1.default.info(`Wrote ${redteamTests.length} new test cases to ${configPath}`);
448
+ }
449
+ else {
450
+ logger_1.default.info(js_yaml_1.default.dump(redteamTests, { skipInvalid: true }));
451
+ }
452
+ telemetry_1.default.record('command_used', {
453
+ name: 'generate redteam',
454
+ numPrompts: testSuite.prompts.length,
455
+ numTestsExisting: (testSuite.tests || []).length,
456
+ numTestsGenerated: redteamTests.length,
457
+ duration: Math.round((Date.now() - startTime) / 1000),
379
458
  });
380
459
  await telemetry_1.default.send();
381
460
  });
@@ -431,6 +510,12 @@ async function main() {
431
510
  let testSuite = undefined;
432
511
  let basePath = undefined;
433
512
  const runEvaluation = async (initialization) => {
513
+ const startTime = Date.now();
514
+ telemetry_1.default.record('command_used', {
515
+ name: 'eval - started',
516
+ watch: Boolean(cmdObj.watch),
517
+ });
518
+ await telemetry_1.default.send();
434
519
  // Misc settings
435
520
  if (cmdObj.verbose) {
436
521
  (0, logger_1.setLogLevel)('debug');
@@ -488,6 +573,9 @@ async function main() {
488
573
  logger_1.default.info(`... ${rowsLeft} more row${rowsLeft === 1 ? '' : 's'} not shown ...\n`);
489
574
  }
490
575
  }
576
+ else if (summary.stats.failures !== 0) {
577
+ logger_1.default.debug(`At least one evaluation failure occurred. This might be caused by the underlying call to the provider, or a test failure. Context: \n${JSON.stringify(summary.results)}`);
578
+ }
491
579
  const { outputPath } = config;
492
580
  if (outputPath) {
493
581
  // Write output to file
@@ -524,6 +612,7 @@ async function main() {
524
612
  telemetry_1.default.record('command_used', {
525
613
  name: 'eval',
526
614
  watch: Boolean(cmdObj.watch),
615
+ duration: Math.round((Date.now() - startTime) / 1000),
527
616
  });
528
617
  await telemetry_1.default.send();
529
618
  if (cmdObj.watch) {
@@ -536,9 +625,15 @@ async function main() {
536
625
  const basePath = path_1.default.dirname(configPaths[0]);
537
626
  const promptPaths = Array.isArray(config.prompts)
538
627
  ? config.prompts
539
- .map((p) => p.startsWith('file://')
540
- ? path_1.default.resolve(basePath, p.slice('file://'.length))
541
- : null)
628
+ .map((p) => {
629
+ if (typeof p === 'string' && p.startsWith('file://')) {
630
+ return path_1.default.resolve(basePath, p.slice('file://'.length));
631
+ }
632
+ else if (typeof p === 'object' && p.id && p.id.startsWith('file://')) {
633
+ return path_1.default.resolve(basePath, p.id.slice('file://'.length));
634
+ }
635
+ return null;
636
+ })
542
637
  .filter(Boolean)
543
638
  : [];
544
639
  const providerPaths = Array.isArray(config.providers)
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { ApiProvider, GradingConfig, GradingResult } from './types';
2
- export declare function getGradingProvider(type: 'embedding' | 'classification' | 'text', provider: GradingConfig['provider'], defaultProvider: ApiProvider | null): Promise<ApiProvider | null>;
3
- export declare function getAndCheckProvider(type: 'embedding' | 'classification' | 'text', provider: GradingConfig['provider'], defaultProvider: ApiProvider | null, checkName: string): Promise<ApiProvider>;
1
+ import type { ApiProvider, GradingConfig, GradingResult, ProviderType } from './types';
2
+ export declare function getGradingProvider(type: ProviderType, provider: GradingConfig['provider'], defaultProvider: ApiProvider | null): Promise<ApiProvider | null>;
3
+ export declare function getAndCheckProvider(type: ProviderType, provider: GradingConfig['provider'], defaultProvider: ApiProvider | null, checkName: string): Promise<ApiProvider>;
4
4
  export declare function matchesSimilarity(expected: string, output: string, threshold: number, inverse?: boolean, grading?: GradingConfig): Promise<Omit<GradingResult, 'assertion'>>;
5
5
  /**
6
6
  *
@@ -19,4 +19,15 @@ export declare function matchesContextRecall(context: string, groundTruth: strin
19
19
  export declare function matchesContextRelevance(question: string, context: string, threshold: number, grading?: GradingConfig): Promise<Omit<GradingResult, 'assertion'>>;
20
20
  export declare function matchesContextFaithfulness(query: string, output: string, context: string, threshold: number, grading?: GradingConfig, vars?: Record<string, string | object>): Promise<Omit<GradingResult, 'assertion'>>;
21
21
  export declare function matchesSelectBest(criteria: string, outputs: string[], grading?: GradingConfig, vars?: Record<string, string | object>): Promise<Omit<GradingResult, 'assertion'>[]>;
22
+ interface ModerationMatchOptions {
23
+ userPrompt: string;
24
+ assistantResponse: string;
25
+ categories?: string[];
26
+ }
27
+ export declare function matchesModeration({ userPrompt, assistantResponse, categories }: ModerationMatchOptions, grading?: GradingConfig): Promise<{
28
+ pass: boolean;
29
+ score: number;
30
+ reason: string;
31
+ }>;
32
+ export {};
22
33
  //# sourceMappingURL=matchers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"matchers.d.ts","sourceRoot":"","sources":["../../src/matchers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matchers.d.ts","sourceRoot":"","sources":["../../src/matchers.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAGV,WAAW,EAEX,aAAa,EACb,aAAa,EAIb,YAAY,EAEb,MAAM,SAAS,CAAC;AA8CjB,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,EACnC,eAAe,EAAE,WAAW,GAAG,IAAI,GAClC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAqC7B;AAED,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,EACnC,eAAe,EAAE,WAAW,GAAG,IAAI,EACnC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,WAAW,CAAC,CAmCtB;AAeD,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,OAAe,EACxB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CA2E3C;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAoC3C;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,aAAa,EACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CA8C3C;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,aAAa,EACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAuF3C;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,aAAa,EACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAmD3C;AAED,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAyF3C;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,EACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAyC3C;AAED,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAwC3C;AAED,wBAAsB,0BAA0B,CAC9C,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,EACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,CAmE3C;AAED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,CAAC,EAAE,aAAa,EACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,GACrC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,WAAW,CAAC,EAAE,CAAC,CAwD7C;AAED,UAAU,sBAAsB;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,wBAAsB,iBAAiB,CACrC,EAAE,UAAU,EAAE,iBAAiB,EAAE,UAAe,EAAE,EAAE,sBAAsB,EAC1E,OAAO,CAAC,EAAE,aAAa;;;;GA6CxB"}
@@ -3,7 +3,7 @@ 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.matchesSelectBest = exports.matchesContextFaithfulness = exports.matchesContextRelevance = exports.matchesContextRecall = exports.matchesAnswerRelevance = exports.matchesClosedQa = exports.matchesFactuality = exports.matchesLlmRubric = exports.matchesClassification = exports.matchesSimilarity = exports.getAndCheckProvider = exports.getGradingProvider = void 0;
6
+ exports.matchesModeration = exports.matchesSelectBest = exports.matchesContextFaithfulness = exports.matchesContextRelevance = exports.matchesContextRecall = exports.matchesAnswerRelevance = exports.matchesClosedQa = exports.matchesFactuality = exports.matchesLlmRubric = exports.matchesClassification = exports.matchesSimilarity = exports.getAndCheckProvider = exports.getGradingProvider = void 0;
7
7
  const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
8
8
  const logger_1 = __importDefault(require("./logger"));
9
9
  const util_1 = require("./util");
@@ -94,6 +94,9 @@ async function getAndCheckProvider(type, provider, defaultProvider, checkName) {
94
94
  else if (type === 'classification') {
95
95
  isValidProviderType = 'callClassificationApi' in matchedProvider;
96
96
  }
97
+ else if (type === 'moderation') {
98
+ isValidProviderType = 'callModerationApi' in matchedProvider;
99
+ }
97
100
  if (!isValidProviderType) {
98
101
  if (defaultProvider) {
99
102
  logger_1.default.warn(`Provider ${matchedProvider.id()} is not a valid ${type} provider for '${checkName}', falling back to default`);
@@ -605,4 +608,40 @@ async function matchesSelectBest(criteria, outputs, grading, vars) {
605
608
  });
606
609
  }
607
610
  exports.matchesSelectBest = matchesSelectBest;
611
+ async function matchesModeration({ userPrompt, assistantResponse, categories = [] }, grading) {
612
+ const moderationProvider = (await getAndCheckProvider('moderation', grading?.provider, (0, defaults_1.getDefaultProviders)().moderationProvider, 'moderation check'));
613
+ (0, tiny_invariant_1.default)(moderationProvider, 'Moderation provider must be defined');
614
+ const resp = await moderationProvider.callModerationApi(userPrompt, assistantResponse);
615
+ if (resp.error) {
616
+ return {
617
+ pass: false,
618
+ score: 0,
619
+ reason: `Moderation API error: ${resp.error}`,
620
+ };
621
+ }
622
+ const { flags } = resp;
623
+ if (!flags || flags.length === 0) {
624
+ return {
625
+ pass: true,
626
+ score: 1,
627
+ reason: 'No moderation flags detected',
628
+ };
629
+ }
630
+ const filteredFlags = categories.length === 0 ? flags : flags.filter((flag) => categories.includes(flag.code));
631
+ if (filteredFlags.length > 0) {
632
+ return {
633
+ pass: false,
634
+ score: 0,
635
+ reason: `Moderation flags detected: ${filteredFlags
636
+ .map((flag) => flag.description)
637
+ .join(', ')}`,
638
+ };
639
+ }
640
+ return {
641
+ pass: true,
642
+ score: 1,
643
+ reason: 'No relevant moderation flags detected',
644
+ };
645
+ }
646
+ exports.matchesModeration = matchesModeration;
608
647
  //# sourceMappingURL=matchers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"matchers.js","sourceRoot":"","sources":["../../src/matchers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matchers.js","sourceRoot":"","sources":["../../src/matchers.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import type { UnifiedConfig, Prompt, TestSuite } from './types';
2
2
  export * from './external/ragas';
3
3
  export declare function readProviderPromptMap(config: Partial<UnifiedConfig>, parsedPrompts: Prompt[]): TestSuite['providerPromptMap'];
4
- export declare function readPrompts(promptPathOrGlobs: string | string[] | Record<string, string>, basePath?: string): Promise<Prompt[]>;
4
+ export declare function readPrompts(promptPathOrGlobs: string | (string | Partial<Prompt>)[] | Record<string, string>, basePath?: string): Promise<Prompt[]>;
5
5
  export declare const DEFAULT_GRADING_PROMPT: string;
6
6
  export declare const OPENAI_FACTUALITY_PROMPT: string;
7
7
  export declare const OPENAI_CLOSED_QA_PROMPT: string;
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/prompts.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,aAAa,EACb,MAAM,EAEN,SAAS,EAGV,MAAM,SAAS,CAAC;AAEjB,cAAc,kBAAkB,CAAC;AAIjC,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,EAC9B,aAAa,EAAE,MAAM,EAAE,GACtB,SAAS,CAAC,mBAAmB,CAAC,CA4ChC;AAqBD,wBAAsB,WAAW,CAC/B,iBAAiB,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7D,QAAQ,GAAE,MAAW,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CA8LnB;AAED,eAAO,MAAM,sBAAsB,QAmBjC,CAAC;AAGH,eAAO,MAAM,wBAAwB,QAsBnC,CAAC;AAEH,eAAO,MAAM,uBAAuB,QAiBlC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;CAO1C,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;CAGzC,CAAC;AAEF,eAAO,MAAM,uCAAuC;;;CAGnD,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAe7B,CAAC"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/prompts.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EACV,aAAa,EACb,MAAM,EAEN,SAAS,EAGV,MAAM,SAAS,CAAC;AAEjB,cAAc,kBAAkB,CAAC;AAIjC,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,EAC9B,aAAa,EAAE,MAAM,EAAE,GACtB,SAAS,CAAC,mBAAmB,CAAC,CA4ChC;AAqBD,wBAAsB,WAAW,CAC/B,iBAAiB,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjF,QAAQ,GAAE,MAAW,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CA4MnB;AAED,eAAO,MAAM,sBAAsB,QAmBjC,CAAC;AAGH,eAAO,MAAM,wBAAwB,QAsBnC,CAAC;AAEH,eAAO,MAAM,uBAAuB,QAiBlC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;CAO1C,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;CAGzC,CAAC;AAEF,eAAO,MAAM,uCAAuC;;;CAGnD,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAe7B,CAAC"}