promptfoo 0.94.6 → 0.96.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.
- package/README.md +2 -1
- package/dist/drizzle/0010_needy_bishop.sql +11 -0
- package/dist/drizzle/meta/0010_snapshot.json +691 -0
- package/dist/drizzle/meta/_journal.json +7 -0
- package/dist/package.json +25 -23
- package/dist/src/app/assets/index-Dwt7E2K_.js +769 -0
- package/dist/src/app/assets/{index.es-Cbd6bbAq.js → index.es-CooNf3HB.js} +1 -1
- package/dist/src/app/assets/{sync-CWmPcyeI.js → sync-Bj1WJrHQ.js} +1 -1
- package/dist/src/app/index.html +1 -1
- package/dist/src/assertions/bleu.d.ts +33 -0
- package/dist/src/assertions/bleu.d.ts.map +1 -0
- package/dist/src/assertions/bleu.js +116 -0
- package/dist/src/assertions/bleu.js.map +1 -0
- package/dist/src/assertions/index.d.ts +1 -12
- package/dist/src/assertions/index.d.ts.map +1 -1
- package/dist/src/assertions/index.js +20 -250
- package/dist/src/assertions/index.js.map +1 -1
- package/dist/src/assertions/json.d.ts +8 -0
- package/dist/src/assertions/json.d.ts.map +1 -0
- package/dist/src/assertions/json.js +121 -0
- package/dist/src/assertions/json.js.map +1 -0
- package/dist/src/assertions/perplexity.d.ts +4 -0
- package/dist/src/assertions/perplexity.d.ts.map +1 -0
- package/dist/src/assertions/perplexity.js +40 -0
- package/dist/src/assertions/perplexity.js.map +1 -0
- package/dist/src/assertions/sql.d.ts +4 -0
- package/dist/src/assertions/sql.d.ts.map +1 -0
- package/dist/src/assertions/sql.js +87 -0
- package/dist/src/assertions/sql.js.map +1 -0
- package/dist/src/assertions/xml.d.ts +9 -0
- package/dist/src/assertions/xml.d.ts.map +1 -0
- package/dist/src/assertions/xml.js +57 -0
- package/dist/src/assertions/xml.js.map +1 -0
- package/dist/src/cache.d.ts +1 -1
- package/dist/src/cache.d.ts.map +1 -1
- package/dist/src/cache.js +2 -1
- package/dist/src/cache.js.map +1 -1
- package/dist/src/commands/eval/filterTests.d.ts +1 -0
- package/dist/src/commands/eval/filterTests.d.ts.map +1 -1
- package/dist/src/commands/eval/filterTests.js +14 -1
- package/dist/src/commands/eval/filterTests.js.map +1 -1
- package/dist/src/commands/eval.d.ts.map +1 -1
- package/dist/src/commands/eval.js +49 -23
- package/dist/src/commands/eval.js.map +1 -1
- package/dist/src/commands/import.d.ts.map +1 -1
- package/dist/src/commands/import.js +1 -0
- package/dist/src/commands/import.js.map +1 -1
- package/dist/src/commands/list.d.ts.map +1 -1
- package/dist/src/commands/list.js +15 -0
- package/dist/src/commands/list.js.map +1 -1
- package/dist/src/csv.d.ts.map +1 -1
- package/dist/src/csv.js +9 -4
- package/dist/src/csv.js.map +1 -1
- package/dist/src/database/tables.d.ts +292 -1
- package/dist/src/database/tables.d.ts.map +1 -1
- package/dist/src/database/tables.js +17 -1
- package/dist/src/database/tables.js.map +1 -1
- package/dist/src/envars.d.ts +9 -0
- package/dist/src/envars.d.ts.map +1 -1
- package/dist/src/envars.js.map +1 -1
- package/dist/src/evaluator.d.ts.map +1 -1
- package/dist/src/evaluator.js +32 -10
- package/dist/src/evaluator.js.map +1 -1
- package/dist/src/evaluatorHelpers.d.ts.map +1 -1
- package/dist/src/evaluatorHelpers.js +4 -0
- package/dist/src/evaluatorHelpers.js.map +1 -1
- package/dist/src/globalConfig/accounts.d.ts +1 -0
- package/dist/src/globalConfig/accounts.d.ts.map +1 -1
- package/dist/src/globalConfig/accounts.js +24 -0
- package/dist/src/globalConfig/accounts.js.map +1 -1
- package/dist/src/index.d.ts +74 -68
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/models/eval.d.ts +2 -0
- package/dist/src/models/eval.d.ts.map +1 -1
- package/dist/src/models/eval.js +13 -1
- package/dist/src/models/eval.js.map +1 -1
- package/dist/src/models/evalResult.d.ts +6 -1
- package/dist/src/models/evalResult.d.ts.map +1 -1
- package/dist/src/models/evalResult.js +21 -2
- package/dist/src/models/evalResult.js.map +1 -1
- package/dist/src/onboarding.js +8 -8
- package/dist/src/onboarding.js.map +1 -1
- package/dist/src/prompts/grading.js +4 -4
- package/dist/src/providers/adaline.gateway.d.ts.map +1 -1
- package/dist/src/providers/adaline.gateway.js +4 -4
- package/dist/src/providers/adaline.gateway.js.map +1 -1
- package/dist/src/providers/anthropic.d.ts.map +1 -1
- package/dist/src/providers/anthropic.js +21 -0
- package/dist/src/providers/anthropic.js.map +1 -1
- package/dist/src/providers/{azureopenai.d.ts → azure.d.ts} +13 -13
- package/dist/src/providers/azure.d.ts.map +1 -0
- package/dist/src/providers/{azureopenai.js → azure.js} +64 -42
- package/dist/src/providers/azure.js.map +1 -0
- package/dist/src/providers/{azureopenaiUtil.d.ts → azureUtil.d.ts} +1 -1
- package/dist/src/providers/azureUtil.d.ts.map +1 -0
- package/dist/src/providers/{azureopenaiUtil.js → azureUtil.js} +3 -3
- package/dist/src/providers/azureUtil.js.map +1 -0
- package/dist/src/providers/bedrock.d.ts +5 -3
- package/dist/src/providers/bedrock.d.ts.map +1 -1
- package/dist/src/providers/bedrock.js +50 -12
- package/dist/src/providers/bedrock.js.map +1 -1
- package/dist/src/providers/defaults.d.ts.map +1 -1
- package/dist/src/providers/defaults.js +36 -0
- package/dist/src/providers/defaults.js.map +1 -1
- package/dist/src/providers/http.d.ts.map +1 -1
- package/dist/src/providers/http.js +1 -2
- package/dist/src/providers/http.js.map +1 -1
- package/dist/src/providers/portkey.d.ts +3 -2
- package/dist/src/providers/portkey.d.ts.map +1 -1
- package/dist/src/providers/portkey.js +17 -10
- package/dist/src/providers/portkey.js.map +1 -1
- package/dist/src/providers/promptfoo.d.ts +1 -1
- package/dist/src/providers/promptfoo.d.ts.map +1 -1
- package/dist/src/providers/promptfoo.js +2 -2
- package/dist/src/providers/promptfoo.js.map +1 -1
- package/dist/src/providers.d.ts +9 -5
- package/dist/src/providers.d.ts.map +1 -1
- package/dist/src/providers.js +28 -19
- package/dist/src/providers.js.map +1 -1
- package/dist/src/redteam/commands/generate.d.ts.map +1 -1
- package/dist/src/redteam/commands/generate.js +5 -1
- package/dist/src/redteam/commands/generate.js.map +1 -1
- package/dist/src/redteam/commands/init.d.ts +11 -0
- package/dist/src/redteam/commands/init.d.ts.map +1 -1
- package/dist/src/redteam/commands/init.js +47 -12
- package/dist/src/redteam/commands/init.js.map +1 -1
- package/dist/src/redteam/commands/poison.d.ts +3 -0
- package/dist/src/redteam/commands/poison.d.ts.map +1 -0
- package/dist/src/redteam/commands/poison.js +165 -0
- package/dist/src/redteam/commands/poison.js.map +1 -0
- package/dist/src/redteam/commands/run.d.ts.map +1 -1
- package/dist/src/redteam/commands/run.js +2 -0
- package/dist/src/redteam/commands/run.js.map +1 -1
- package/dist/src/redteam/constants.d.ts +4 -4
- package/dist/src/redteam/constants.d.ts.map +1 -1
- package/dist/src/redteam/constants.js +21 -7
- package/dist/src/redteam/constants.js.map +1 -1
- package/dist/src/redteam/extraction/util.js +1 -1
- package/dist/src/redteam/extraction/util.js.map +1 -1
- package/dist/src/redteam/graders.d.ts +34 -32
- package/dist/src/redteam/graders.d.ts.map +1 -1
- package/dist/src/redteam/graders.js +34 -33
- package/dist/src/redteam/graders.js.map +1 -1
- package/dist/src/redteam/index.d.ts.map +1 -1
- package/dist/src/redteam/index.js +10 -3
- package/dist/src/redteam/index.js.map +1 -1
- package/dist/src/redteam/plugins/bfla.d.ts.map +1 -1
- package/dist/src/redteam/plugins/bfla.js +18 -4
- package/dist/src/redteam/plugins/bfla.js.map +1 -1
- package/dist/src/redteam/plugins/bola.js +3 -3
- package/dist/src/redteam/plugins/competitors.d.ts.map +1 -1
- package/dist/src/redteam/plugins/competitors.js +2 -6
- package/dist/src/redteam/plugins/competitors.js.map +1 -1
- package/dist/src/redteam/plugins/debugAccess.d.ts.map +1 -1
- package/dist/src/redteam/plugins/debugAccess.js +20 -1
- package/dist/src/redteam/plugins/debugAccess.js.map +1 -1
- package/dist/src/redteam/plugins/index.d.ts.map +1 -1
- package/dist/src/redteam/plugins/index.js +3 -2
- package/dist/src/redteam/plugins/index.js.map +1 -1
- package/dist/src/redteam/plugins/intent.d.ts +22 -0
- package/dist/src/redteam/plugins/intent.d.ts.map +1 -0
- package/dist/src/redteam/plugins/intent.js +100 -0
- package/dist/src/redteam/plugins/intent.js.map +1 -0
- package/dist/src/redteam/plugins/pii.d.ts.map +1 -1
- package/dist/src/redteam/plugins/pii.js +42 -37
- package/dist/src/redteam/plugins/pii.js.map +1 -1
- package/dist/src/redteam/plugins/rbac.d.ts.map +1 -1
- package/dist/src/redteam/plugins/rbac.js +5 -4
- package/dist/src/redteam/plugins/rbac.js.map +1 -1
- package/dist/src/redteam/plugins/sqlInjection.d.ts.map +1 -1
- package/dist/src/redteam/plugins/sqlInjection.js +27 -1
- package/dist/src/redteam/plugins/sqlInjection.js.map +1 -1
- package/dist/src/redteam/providers/crescendo/index.d.ts.map +1 -1
- package/dist/src/redteam/providers/crescendo/index.js +6 -4
- package/dist/src/redteam/providers/crescendo/index.js.map +1 -1
- package/dist/src/redteam/providers/goat.d.ts +12 -0
- package/dist/src/redteam/providers/goat.d.ts.map +1 -0
- package/dist/src/redteam/providers/goat.js +70 -0
- package/dist/src/redteam/providers/goat.js.map +1 -0
- package/dist/src/redteam/providers/iterative.d.ts.map +1 -1
- package/dist/src/redteam/providers/iterative.js +4 -2
- package/dist/src/redteam/providers/iterative.js.map +1 -1
- package/dist/src/redteam/providers/iterativeImage.d.ts.map +1 -1
- package/dist/src/redteam/providers/iterativeImage.js +4 -2
- package/dist/src/redteam/providers/iterativeImage.js.map +1 -1
- package/dist/src/redteam/providers/iterativeTree.d.ts +3 -1
- package/dist/src/redteam/providers/iterativeTree.d.ts.map +1 -1
- package/dist/src/redteam/providers/iterativeTree.js +5 -3
- package/dist/src/redteam/providers/iterativeTree.js.map +1 -1
- package/dist/src/redteam/providers/shared.d.ts +2 -2
- package/dist/src/redteam/providers/shared.d.ts.map +1 -1
- package/dist/src/redteam/providers/shared.js +2 -2
- package/dist/src/redteam/providers/shared.js.map +1 -1
- package/dist/src/redteam/strategies/goat.d.ts +3 -0
- package/dist/src/redteam/strategies/goat.d.ts.map +1 -0
- package/dist/src/redteam/strategies/goat.js +24 -0
- package/dist/src/redteam/strategies/goat.js.map +1 -0
- package/dist/src/redteam/strategies/index.d.ts.map +1 -1
- package/dist/src/redteam/strategies/index.js +10 -0
- package/dist/src/redteam/strategies/index.js.map +1 -1
- package/dist/src/redteam/strategies/mathPrompt.js +1 -1
- package/dist/src/redteam/strategies/mathPrompt.js.map +1 -1
- package/dist/src/redteam/strategies/multilingual.js +1 -1
- package/dist/src/redteam/strategies/multilingual.js.map +1 -1
- package/dist/src/redteam/types.d.ts +1 -0
- package/dist/src/redteam/types.d.ts.map +1 -1
- package/dist/src/remoteGrading.js +1 -1
- package/dist/src/remoteGrading.js.map +1 -1
- package/dist/src/server/routes/configs.d.ts +2 -0
- package/dist/src/server/routes/configs.d.ts.map +1 -0
- package/dist/src/server/routes/configs.js +100 -0
- package/dist/src/server/routes/configs.js.map +1 -0
- package/dist/src/server/routes/eval.js +48 -0
- package/dist/src/server/routes/eval.js.map +1 -1
- package/dist/src/server/server.d.ts.map +1 -1
- package/dist/src/server/server.js +3 -0
- package/dist/src/server/server.js.map +1 -1
- package/dist/src/telemetry.d.ts +2 -2
- package/dist/src/types/index.d.ts +4632 -12
- package/dist/src/types/index.d.ts.map +1 -1
- package/dist/src/types/index.js +3 -1
- package/dist/src/types/index.js.map +1 -1
- package/dist/src/types/providers.d.ts +13 -0
- package/dist/src/types/providers.d.ts.map +1 -1
- package/dist/src/types/providers.js.map +1 -1
- package/dist/src/util/config/load.d.ts +1 -1
- package/dist/src/util/config/load.d.ts.map +1 -1
- package/dist/src/util/config/load.js +14 -2
- package/dist/src/util/config/load.js.map +1 -1
- package/dist/src/util/exportToFile/index.d.ts +43 -0
- package/dist/src/util/exportToFile/index.d.ts.map +1 -0
- package/dist/src/util/exportToFile/index.js +98 -0
- package/dist/src/util/exportToFile/index.js.map +1 -0
- package/dist/src/util/exportToFile/writeToFile.d.ts +8 -0
- package/dist/src/util/exportToFile/writeToFile.d.ts.map +1 -0
- package/dist/src/util/exportToFile/writeToFile.js +30 -0
- package/dist/src/util/exportToFile/writeToFile.js.map +1 -0
- package/dist/src/util/index.d.ts +34 -0
- package/dist/src/util/index.d.ts.map +1 -1
- package/dist/src/util/index.js +35 -9
- package/dist/src/util/index.js.map +1 -1
- package/dist/src/validators/providers.d.ts +391 -0
- package/dist/src/validators/providers.d.ts.map +1 -1
- package/dist/src/validators/providers.js +18 -0
- package/dist/src/validators/providers.js.map +1 -1
- package/dist/src/validators/redteam.d.ts +136 -0
- package/dist/src/validators/redteam.d.ts.map +1 -1
- package/dist/test/assertions/bleu.test.d.ts +2 -0
- package/dist/test/assertions/bleu.test.d.ts.map +1 -0
- package/dist/test/assertions/bleu.test.js +137 -0
- package/dist/test/assertions/bleu.test.js.map +1 -0
- package/dist/test/assertions/index.test.js +276 -297
- package/dist/test/assertions/index.test.js.map +1 -1
- package/dist/test/assertions/json.test.d.ts +2 -0
- package/dist/test/assertions/json.test.d.ts.map +1 -0
- package/dist/test/assertions/json.test.js +36 -0
- package/dist/test/assertions/json.test.js.map +1 -0
- package/dist/test/assertions/sql.test.d.ts +2 -0
- package/dist/test/assertions/sql.test.d.ts.map +1 -0
- package/dist/test/{is-sql-tests/node-sql-parser.test.js → assertions/sql.test.js} +13 -13
- package/dist/test/assertions/sql.test.js.map +1 -0
- package/dist/test/commands/eval/filterTests.test.js +30 -0
- package/dist/test/commands/eval/filterTests.test.js.map +1 -1
- package/dist/test/evaluator.test.js +14 -6
- package/dist/test/evaluator.test.js.map +1 -1
- package/dist/test/factories/evalFactory.d.ts +155 -1
- package/dist/test/factories/evalFactory.d.ts.map +1 -1
- package/dist/test/factories/evalFactory.js +26 -1
- package/dist/test/factories/evalFactory.js.map +1 -1
- package/dist/test/onboarding.test.js +126 -1
- package/dist/test/onboarding.test.js.map +1 -1
- package/dist/test/providers/anthropic.test.js +81 -0
- package/dist/test/providers/anthropic.test.js.map +1 -1
- package/dist/test/providers/azure.test.js +22 -25
- package/dist/test/providers/azure.test.js.map +1 -1
- package/dist/test/providers/bedrock.test.js +178 -55
- package/dist/test/providers/bedrock.test.js.map +1 -1
- package/dist/test/providers/http.test.js +1 -0
- package/dist/test/providers/http.test.js.map +1 -1
- package/dist/test/providers/index.test.js +15 -7
- package/dist/test/providers/index.test.js.map +1 -1
- package/dist/test/providers/portkey.test.d.ts +2 -0
- package/dist/test/providers/portkey.test.d.ts.map +1 -0
- package/dist/test/providers/portkey.test.js +46 -0
- package/dist/test/providers/portkey.test.js.map +1 -0
- package/dist/test/redteam/commands/init.test.d.ts +2 -0
- package/dist/test/redteam/commands/init.test.d.ts.map +1 -0
- package/dist/test/redteam/commands/init.test.js +109 -0
- package/dist/test/redteam/commands/init.test.js.map +1 -0
- package/dist/test/redteam/plugins/pluginDocumentation.test.js +4 -1
- package/dist/test/redteam/plugins/pluginDocumentation.test.js.map +1 -1
- package/dist/test/redteam/providers/goat.test.d.ts +2 -0
- package/dist/test/redteam/providers/goat.test.d.ts.map +1 -0
- package/dist/test/redteam/providers/goat.test.js +67 -0
- package/dist/test/redteam/providers/goat.test.js.map +1 -0
- package/dist/test/redteam/providers/iterativeTree.test.js +8 -3
- package/dist/test/redteam/providers/iterativeTree.test.js.map +1 -1
- package/dist/test/redteam/strategies/goat.test.d.ts +2 -0
- package/dist/test/redteam/strategies/goat.test.d.ts.map +1 -0
- package/dist/test/redteam/strategies/goat.test.js +47 -0
- package/dist/test/redteam/strategies/goat.test.js.map +1 -0
- package/dist/test/server/eval.test.d.ts +2 -0
- package/dist/test/server/eval.test.d.ts.map +1 -0
- package/dist/test/server/eval.test.js +155 -0
- package/dist/test/server/eval.test.js.map +1 -0
- package/dist/test/util/index.test.js +13 -0
- package/dist/test/util/index.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +25 -23
- package/dist/src/app/assets/index-9MDBORmg.js +0 -769
- package/dist/src/providers/azureopenai.d.ts.map +0 -1
- package/dist/src/providers/azureopenai.js.map +0 -1
- package/dist/src/providers/azureopenaiUtil.d.ts.map +0 -1
- package/dist/src/providers/azureopenaiUtil.js.map +0 -1
- package/dist/test/is-sql-tests/node-sql-parser.test.d.ts +0 -2
- package/dist/test/is-sql-tests/node-sql-parser.test.d.ts.map +0 -1
- package/dist/test/is-sql-tests/node-sql-parser.test.js.map +0 -1
|
@@ -27,12 +27,26 @@ export default class EvalFactory {
|
|
|
27
27
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
28
28
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
29
29
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
30
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
31
|
+
AZURE_API_HOST?: string | undefined;
|
|
32
|
+
AZURE_API_KEY?: string | undefined;
|
|
33
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
34
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
30
35
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
36
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
37
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
38
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
39
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
40
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
41
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
42
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
31
43
|
BAM_API_HOST?: string | undefined;
|
|
32
44
|
BAM_API_KEY?: string | undefined;
|
|
33
45
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
34
46
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
47
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
35
48
|
COHERE_API_KEY?: string | undefined;
|
|
49
|
+
FAL_KEY?: string | undefined;
|
|
36
50
|
GOOGLE_API_HOST?: string | undefined;
|
|
37
51
|
GOOGLE_API_KEY?: string | undefined;
|
|
38
52
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -54,6 +68,9 @@ export default class EvalFactory {
|
|
|
54
68
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
55
69
|
VERTEX_PUBLISHER?: string | undefined;
|
|
56
70
|
VERTEX_REGION?: string | undefined;
|
|
71
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
72
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
73
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
57
74
|
} | undefined;
|
|
58
75
|
metadata?: Record<string, any> | undefined;
|
|
59
76
|
description?: string | undefined;
|
|
@@ -94,12 +111,26 @@ export default class EvalFactory {
|
|
|
94
111
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
95
112
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
96
113
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
114
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
115
|
+
AZURE_API_HOST?: string | undefined;
|
|
116
|
+
AZURE_API_KEY?: string | undefined;
|
|
117
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
118
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
97
119
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
120
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
121
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
122
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
123
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
124
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
125
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
126
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
98
127
|
BAM_API_HOST?: string | undefined;
|
|
99
128
|
BAM_API_KEY?: string | undefined;
|
|
100
129
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
101
130
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
131
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
102
132
|
COHERE_API_KEY?: string | undefined;
|
|
133
|
+
FAL_KEY?: string | undefined;
|
|
103
134
|
GOOGLE_API_HOST?: string | undefined;
|
|
104
135
|
GOOGLE_API_KEY?: string | undefined;
|
|
105
136
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -121,6 +152,9 @@ export default class EvalFactory {
|
|
|
121
152
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
122
153
|
VERTEX_PUBLISHER?: string | undefined;
|
|
123
154
|
VERTEX_REGION?: string | undefined;
|
|
155
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
156
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
157
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
124
158
|
} | undefined;
|
|
125
159
|
} | (((args_0: string, args_1: {
|
|
126
160
|
vars: Record<string, string | {}>;
|
|
@@ -159,12 +193,26 @@ export default class EvalFactory {
|
|
|
159
193
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
160
194
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
161
195
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
196
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
197
|
+
AZURE_API_HOST?: string | undefined;
|
|
198
|
+
AZURE_API_KEY?: string | undefined;
|
|
199
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
200
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
162
201
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
202
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
203
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
204
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
205
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
206
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
207
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
208
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
163
209
|
BAM_API_HOST?: string | undefined;
|
|
164
210
|
BAM_API_KEY?: string | undefined;
|
|
165
211
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
166
212
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
213
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
167
214
|
COHERE_API_KEY?: string | undefined;
|
|
215
|
+
FAL_KEY?: string | undefined;
|
|
168
216
|
GOOGLE_API_HOST?: string | undefined;
|
|
169
217
|
GOOGLE_API_KEY?: string | undefined;
|
|
170
218
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -186,6 +234,9 @@ export default class EvalFactory {
|
|
|
186
234
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
187
235
|
VERTEX_PUBLISHER?: string | undefined;
|
|
188
236
|
VERTEX_REGION?: string | undefined;
|
|
237
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
238
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
239
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
189
240
|
} | undefined;
|
|
190
241
|
}>)[] | undefined;
|
|
191
242
|
tests?: string | (string | {
|
|
@@ -231,12 +282,26 @@ export default class EvalFactory {
|
|
|
231
282
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
232
283
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
233
284
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
285
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
286
|
+
AZURE_API_HOST?: string | undefined;
|
|
287
|
+
AZURE_API_KEY?: string | undefined;
|
|
288
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
289
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
234
290
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
291
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
292
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
293
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
294
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
295
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
296
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
297
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
235
298
|
BAM_API_HOST?: string | undefined;
|
|
236
299
|
BAM_API_KEY?: string | undefined;
|
|
237
300
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
238
301
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
302
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
239
303
|
COHERE_API_KEY?: string | undefined;
|
|
304
|
+
FAL_KEY?: string | undefined;
|
|
240
305
|
GOOGLE_API_HOST?: string | undefined;
|
|
241
306
|
GOOGLE_API_KEY?: string | undefined;
|
|
242
307
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -258,6 +323,9 @@ export default class EvalFactory {
|
|
|
258
323
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
259
324
|
VERTEX_PUBLISHER?: string | undefined;
|
|
260
325
|
VERTEX_REGION?: string | undefined;
|
|
326
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
327
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
328
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
261
329
|
} | undefined;
|
|
262
330
|
} | {
|
|
263
331
|
callApi: import("../../src").CallApiFunction;
|
|
@@ -353,12 +421,26 @@ export default class EvalFactory {
|
|
|
353
421
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
354
422
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
355
423
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
424
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
425
|
+
AZURE_API_HOST?: string | undefined;
|
|
426
|
+
AZURE_API_KEY?: string | undefined;
|
|
427
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
428
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
356
429
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
430
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
431
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
432
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
433
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
434
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
435
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
436
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
357
437
|
BAM_API_HOST?: string | undefined;
|
|
358
438
|
BAM_API_KEY?: string | undefined;
|
|
359
439
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
360
440
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
441
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
361
442
|
COHERE_API_KEY?: string | undefined;
|
|
443
|
+
FAL_KEY?: string | undefined;
|
|
362
444
|
GOOGLE_API_HOST?: string | undefined;
|
|
363
445
|
GOOGLE_API_KEY?: string | undefined;
|
|
364
446
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -380,6 +462,9 @@ export default class EvalFactory {
|
|
|
380
462
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
381
463
|
VERTEX_PUBLISHER?: string | undefined;
|
|
382
464
|
VERTEX_REGION?: string | undefined;
|
|
465
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
466
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
467
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
383
468
|
} | undefined;
|
|
384
469
|
} | {
|
|
385
470
|
callApi: import("../../src").CallApiFunction;
|
|
@@ -472,12 +557,26 @@ export default class EvalFactory {
|
|
|
472
557
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
473
558
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
474
559
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
560
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
561
|
+
AZURE_API_HOST?: string | undefined;
|
|
562
|
+
AZURE_API_KEY?: string | undefined;
|
|
563
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
564
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
475
565
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
566
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
567
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
568
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
569
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
570
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
571
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
572
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
476
573
|
BAM_API_HOST?: string | undefined;
|
|
477
574
|
BAM_API_KEY?: string | undefined;
|
|
478
575
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
479
576
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
577
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
480
578
|
COHERE_API_KEY?: string | undefined;
|
|
579
|
+
FAL_KEY?: string | undefined;
|
|
481
580
|
GOOGLE_API_HOST?: string | undefined;
|
|
482
581
|
GOOGLE_API_KEY?: string | undefined;
|
|
483
582
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -499,6 +598,9 @@ export default class EvalFactory {
|
|
|
499
598
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
500
599
|
VERTEX_PUBLISHER?: string | undefined;
|
|
501
600
|
VERTEX_REGION?: string | undefined;
|
|
601
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
602
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
603
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
502
604
|
} | undefined;
|
|
503
605
|
} | {
|
|
504
606
|
callApi: import("../../src").CallApiFunction;
|
|
@@ -593,12 +695,26 @@ export default class EvalFactory {
|
|
|
593
695
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
594
696
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
595
697
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
698
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
699
|
+
AZURE_API_HOST?: string | undefined;
|
|
700
|
+
AZURE_API_KEY?: string | undefined;
|
|
701
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
702
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
596
703
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
704
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
705
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
706
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
707
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
708
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
709
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
710
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
597
711
|
BAM_API_HOST?: string | undefined;
|
|
598
712
|
BAM_API_KEY?: string | undefined;
|
|
599
713
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
600
714
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
715
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
601
716
|
COHERE_API_KEY?: string | undefined;
|
|
717
|
+
FAL_KEY?: string | undefined;
|
|
602
718
|
GOOGLE_API_HOST?: string | undefined;
|
|
603
719
|
GOOGLE_API_KEY?: string | undefined;
|
|
604
720
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -620,6 +736,9 @@ export default class EvalFactory {
|
|
|
620
736
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
621
737
|
VERTEX_PUBLISHER?: string | undefined;
|
|
622
738
|
VERTEX_REGION?: string | undefined;
|
|
739
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
740
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
741
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
623
742
|
} | undefined;
|
|
624
743
|
} | {
|
|
625
744
|
callApi: import("../../src").CallApiFunction;
|
|
@@ -697,6 +816,7 @@ export default class EvalFactory {
|
|
|
697
816
|
maxConcurrency?: number | undefined;
|
|
698
817
|
output?: string[] | undefined;
|
|
699
818
|
write?: boolean | undefined;
|
|
819
|
+
verbose?: boolean | undefined;
|
|
700
820
|
vars?: string | undefined;
|
|
701
821
|
prompts?: string[] | undefined;
|
|
702
822
|
delay?: number | undefined;
|
|
@@ -706,7 +826,6 @@ export default class EvalFactory {
|
|
|
706
826
|
tests?: string | undefined;
|
|
707
827
|
assertions?: string | undefined;
|
|
708
828
|
modelOutputs?: string | undefined;
|
|
709
|
-
verbose?: boolean | undefined;
|
|
710
829
|
grader?: string | undefined;
|
|
711
830
|
tableCellMaxLength?: number | undefined;
|
|
712
831
|
table?: boolean | undefined;
|
|
@@ -715,6 +834,7 @@ export default class EvalFactory {
|
|
|
715
834
|
watch?: boolean | undefined;
|
|
716
835
|
filterFailing?: string | undefined;
|
|
717
836
|
filterFirstN?: number | undefined;
|
|
837
|
+
filterSample?: number | undefined;
|
|
718
838
|
filterPattern?: string | undefined;
|
|
719
839
|
filterProviders?: string | undefined;
|
|
720
840
|
filterTargets?: string | undefined;
|
|
@@ -761,12 +881,26 @@ export default class EvalFactory {
|
|
|
761
881
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
762
882
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
763
883
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
884
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
885
|
+
AZURE_API_HOST?: string | undefined;
|
|
886
|
+
AZURE_API_KEY?: string | undefined;
|
|
887
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
888
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
764
889
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
890
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
891
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
892
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
893
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
894
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
895
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
896
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
765
897
|
BAM_API_HOST?: string | undefined;
|
|
766
898
|
BAM_API_KEY?: string | undefined;
|
|
767
899
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
768
900
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
901
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
769
902
|
COHERE_API_KEY?: string | undefined;
|
|
903
|
+
FAL_KEY?: string | undefined;
|
|
770
904
|
GOOGLE_API_HOST?: string | undefined;
|
|
771
905
|
GOOGLE_API_KEY?: string | undefined;
|
|
772
906
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -788,6 +922,9 @@ export default class EvalFactory {
|
|
|
788
922
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
789
923
|
VERTEX_PUBLISHER?: string | undefined;
|
|
790
924
|
VERTEX_REGION?: string | undefined;
|
|
925
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
926
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
927
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
791
928
|
} | undefined;
|
|
792
929
|
} | (((args_0: string, args_1: {
|
|
793
930
|
vars: Record<string, string | {}>;
|
|
@@ -826,12 +963,26 @@ export default class EvalFactory {
|
|
|
826
963
|
AZURE_OPENAI_API_BASE_URL?: string | undefined;
|
|
827
964
|
AZURE_OPENAI_API_HOST?: string | undefined;
|
|
828
965
|
AZURE_OPENAI_API_KEY?: string | undefined;
|
|
966
|
+
AZURE_API_BASE_URL?: string | undefined;
|
|
967
|
+
AZURE_API_HOST?: string | undefined;
|
|
968
|
+
AZURE_API_KEY?: string | undefined;
|
|
969
|
+
AZURE_DEPLOYMENT_NAME?: string | undefined;
|
|
970
|
+
AZURE_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
829
971
|
AZURE_OPENAI_BASE_URL?: string | undefined;
|
|
972
|
+
AZURE_OPENAI_DEPLOYMENT_NAME?: string | undefined;
|
|
973
|
+
AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME?: string | undefined;
|
|
974
|
+
AZURE_CLIENT_SECRET?: string | undefined;
|
|
975
|
+
AZURE_CLIENT_ID?: string | undefined;
|
|
976
|
+
AZURE_TENANT_ID?: string | undefined;
|
|
977
|
+
AZURE_AUTHORITY_HOST?: string | undefined;
|
|
978
|
+
AZURE_TOKEN_SCOPE?: string | undefined;
|
|
830
979
|
BAM_API_HOST?: string | undefined;
|
|
831
980
|
BAM_API_KEY?: string | undefined;
|
|
832
981
|
CLOUDFLARE_ACCOUNT_ID?: string | undefined;
|
|
833
982
|
CLOUDFLARE_API_KEY?: string | undefined;
|
|
983
|
+
PROMPTFOO_REMOTE_GENERATION_URL?: string | undefined;
|
|
834
984
|
COHERE_API_KEY?: string | undefined;
|
|
985
|
+
FAL_KEY?: string | undefined;
|
|
835
986
|
GOOGLE_API_HOST?: string | undefined;
|
|
836
987
|
GOOGLE_API_KEY?: string | undefined;
|
|
837
988
|
GROQ_API_KEY?: string | undefined;
|
|
@@ -853,6 +1004,9 @@ export default class EvalFactory {
|
|
|
853
1004
|
VERTEX_PROJECT_ID?: string | undefined;
|
|
854
1005
|
VERTEX_PUBLISHER?: string | undefined;
|
|
855
1006
|
VERTEX_REGION?: string | undefined;
|
|
1007
|
+
WATSONX_AI_APIKEY?: string | undefined;
|
|
1008
|
+
WATSONX_AI_PROJECT_ID?: string | undefined;
|
|
1009
|
+
WATSONX_AI_BEARER_TOKEN?: string | undefined;
|
|
856
1010
|
} | undefined;
|
|
857
1011
|
}>)[] | undefined;
|
|
858
1012
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evalFactory.d.ts","sourceRoot":"","sources":["../../../test/factories/evalFactory.ts"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,uBAAuB,CAAC;AAGzC,MAAM,CAAC,OAAO,OAAO,WAAW;WACjB,MAAM;
|
|
1
|
+
{"version":3,"file":"evalFactory.d.ts","sourceRoot":"","sources":["../../../test/factories/evalFactory.ts"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,uBAAuB,CAAC;AAGzC,MAAM,CAAC,OAAO,OAAO,WAAW;WACjB,MAAM;WAgJN,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAI7B"}
|
|
@@ -21,6 +21,31 @@ class EvalFactory {
|
|
|
21
21
|
{ raw: 'What is the capital of california?', label: 'What is the capital of {{state}}?' },
|
|
22
22
|
{ raw: 'What is the capital of colorado?', label: 'What is the capital of {{state}}?' },
|
|
23
23
|
], { id: (0, crypto_1.randomUUID)() });
|
|
24
|
+
await eval_.addPrompts([
|
|
25
|
+
{
|
|
26
|
+
raw: 'What is the capital of california?',
|
|
27
|
+
label: 'What is the capital of {{state}}?',
|
|
28
|
+
provider: 'test-provider',
|
|
29
|
+
metrics: {
|
|
30
|
+
score: 1,
|
|
31
|
+
testPassCount: 1,
|
|
32
|
+
testFailCount: 1,
|
|
33
|
+
assertPassCount: 1,
|
|
34
|
+
assertFailCount: 1,
|
|
35
|
+
totalLatencyMs: 200,
|
|
36
|
+
tokenUsage: { total: 20, prompt: 10, completion: 10, cached: 0 },
|
|
37
|
+
namedScores: {},
|
|
38
|
+
namedScoresCount: {},
|
|
39
|
+
redteam: {
|
|
40
|
+
pluginPassCount: {},
|
|
41
|
+
pluginFailCount: {},
|
|
42
|
+
strategyPassCount: {},
|
|
43
|
+
strategyFailCount: {},
|
|
44
|
+
},
|
|
45
|
+
cost: 0.007,
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
]);
|
|
24
49
|
await eval_.addResult({
|
|
25
50
|
description: 'test-description',
|
|
26
51
|
promptIdx: 0,
|
|
@@ -84,7 +109,7 @@ class EvalFactory {
|
|
|
84
109
|
tokenUsage: { total: 10, prompt: 5, completion: 5, cached: 0 },
|
|
85
110
|
},
|
|
86
111
|
error: null,
|
|
87
|
-
success:
|
|
112
|
+
success: false,
|
|
88
113
|
score: 0,
|
|
89
114
|
latencyMs: 100,
|
|
90
115
|
gradingResult: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"evalFactory.js","sourceRoot":"","sources":["../../../test/factories/evalFactory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"evalFactory.js","sourceRoot":"","sources":["../../../test/factories/evalFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,54 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const fs_1 = __importDefault(require("fs"));
|
|
7
|
+
const promises_1 = require("fs/promises");
|
|
8
|
+
const js_yaml_1 = __importDefault(require("js-yaml"));
|
|
9
|
+
const path_1 = __importDefault(require("path"));
|
|
3
10
|
const onboarding_1 = require("../src/onboarding");
|
|
11
|
+
const onboarding_2 = require("../src/onboarding");
|
|
12
|
+
const types_1 = require("../src/types");
|
|
13
|
+
jest.mock('fs', () => ({
|
|
14
|
+
existsSync: jest.fn(),
|
|
15
|
+
writeFileSync: jest.fn(),
|
|
16
|
+
mkdirSync: jest.fn(),
|
|
17
|
+
}));
|
|
18
|
+
jest.mock('fs/promises', () => ({
|
|
19
|
+
mkdtemp: jest.fn(),
|
|
20
|
+
rm: jest.fn(),
|
|
21
|
+
}));
|
|
22
|
+
jest.mock('@inquirer/select', () => ({
|
|
23
|
+
__esModule: true,
|
|
24
|
+
default: jest.fn(),
|
|
25
|
+
}));
|
|
26
|
+
jest.mock('@inquirer/checkbox', () => ({
|
|
27
|
+
__esModule: true,
|
|
28
|
+
default: jest.fn(),
|
|
29
|
+
}));
|
|
30
|
+
jest.mock('@inquirer/confirm', () => ({
|
|
31
|
+
__esModule: true,
|
|
32
|
+
default: jest.fn(),
|
|
33
|
+
}));
|
|
34
|
+
jest.mock('../src/telemetry', () => ({
|
|
35
|
+
recordAndSend: jest.fn(),
|
|
36
|
+
}));
|
|
37
|
+
jest.mock('../src/fetch', () => ({
|
|
38
|
+
fetch: jest.fn(),
|
|
39
|
+
}));
|
|
40
|
+
jest.mock('../src/logger', () => ({
|
|
41
|
+
info: jest.fn(),
|
|
42
|
+
warn: jest.fn(),
|
|
43
|
+
error: jest.fn(),
|
|
44
|
+
}));
|
|
45
|
+
jest.mock('../src/redteam/commands/init', () => ({
|
|
46
|
+
redteamInit: jest.fn(),
|
|
47
|
+
}));
|
|
48
|
+
jest.mock('../src/envars', () => ({
|
|
49
|
+
getEnvString: jest.fn(),
|
|
50
|
+
getEnvBool: jest.fn(() => false),
|
|
51
|
+
}));
|
|
4
52
|
describe('reportProviderAPIKeyWarnings', () => {
|
|
5
53
|
const openaiID = 'openai:gpt-4o';
|
|
6
54
|
const anthropicID = 'anthropic:messages:claude-3-5-sonnet-20241022';
|
|
@@ -38,11 +86,88 @@ describe('reportProviderAPIKeyWarnings', () => {
|
|
|
38
86
|
]));
|
|
39
87
|
});
|
|
40
88
|
it('should produce only warnings for applicable providers if the env keys are not set', () => {
|
|
41
|
-
// Stub what would be the openai api key env variable.
|
|
42
89
|
process.env.OPENAI_API_KEY = '<my-api-key>';
|
|
43
90
|
expect((0, onboarding_1.reportProviderAPIKeyWarnings)([openaiID, anthropicID])).toEqual(expect.arrayContaining([
|
|
44
91
|
expect.stringContaining('ANTHROPIC_API_KEY environment variable is not set'),
|
|
45
92
|
]));
|
|
46
93
|
});
|
|
47
94
|
});
|
|
95
|
+
describe('createDummyFiles', () => {
|
|
96
|
+
let tempDir;
|
|
97
|
+
const mockSelect = jest.requireMock('@inquirer/select').default;
|
|
98
|
+
const mockCheckbox = jest.requireMock('@inquirer/checkbox').default;
|
|
99
|
+
const mockConfirm = jest.requireMock('@inquirer/confirm').default;
|
|
100
|
+
const mockFs = jest.mocked(fs_1.default);
|
|
101
|
+
beforeEach(() => {
|
|
102
|
+
tempDir = '/fake/temp/dir';
|
|
103
|
+
jest.clearAllMocks();
|
|
104
|
+
mockConfirm.mockResolvedValue(true);
|
|
105
|
+
mockFs.existsSync.mockReturnValue(false);
|
|
106
|
+
mockFs.writeFileSync.mockImplementation(() => undefined);
|
|
107
|
+
});
|
|
108
|
+
afterEach(async () => {
|
|
109
|
+
await (0, promises_1.rm)(tempDir, { recursive: true, force: true });
|
|
110
|
+
});
|
|
111
|
+
it('should generate a valid YAML configuration file that matches TestSuiteConfigSchema', async () => {
|
|
112
|
+
await (0, onboarding_2.createDummyFiles)(tempDir, false);
|
|
113
|
+
expect(mockFs.writeFileSync).toHaveBeenCalledWith(path_1.default.join(tempDir, 'promptfooconfig.yaml'), expect.any(String));
|
|
114
|
+
expect(mockFs.writeFileSync).toHaveBeenCalledWith(path_1.default.join(tempDir, 'README.md'), expect.any(String));
|
|
115
|
+
const configCall = mockFs.writeFileSync.mock.calls.find((call) => call[0] === path_1.default.join(tempDir, 'promptfooconfig.yaml'));
|
|
116
|
+
const configContent = configCall?.[1];
|
|
117
|
+
expect(configContent).toBeDefined();
|
|
118
|
+
const parsedConfig = js_yaml_1.default.load(configContent);
|
|
119
|
+
const validationResult = types_1.TestSuiteConfigSchema.safeParse(parsedConfig);
|
|
120
|
+
expect(validationResult.success).toBe(true);
|
|
121
|
+
if (!validationResult.success) {
|
|
122
|
+
throw new Error('Validation failed');
|
|
123
|
+
}
|
|
124
|
+
const config = validationResult.data;
|
|
125
|
+
expect(config.prompts).toHaveLength(2);
|
|
126
|
+
expect(config.providers).toHaveLength(2);
|
|
127
|
+
expect(config.providers).toContain('openai:gpt-4o-mini');
|
|
128
|
+
expect(config.providers).toContain('openai:gpt-4o');
|
|
129
|
+
});
|
|
130
|
+
it('should generate valid YAML configuration for RAG setup', async () => {
|
|
131
|
+
mockSelect.mockResolvedValueOnce('rag').mockResolvedValueOnce('python');
|
|
132
|
+
mockCheckbox.mockResolvedValueOnce(['openai:gpt-4o']);
|
|
133
|
+
await (0, onboarding_2.createDummyFiles)(tempDir, true);
|
|
134
|
+
expect(mockFs.writeFileSync).toHaveBeenCalledWith(path_1.default.join(tempDir, 'promptfooconfig.yaml'), expect.any(String));
|
|
135
|
+
expect(mockFs.writeFileSync).toHaveBeenCalledWith(path_1.default.join(tempDir, 'context.py'), expect.any(String));
|
|
136
|
+
const configCall = mockFs.writeFileSync.mock.calls.find((call) => call[0] === path_1.default.join(tempDir, 'promptfooconfig.yaml'));
|
|
137
|
+
const configContent = configCall?.[1];
|
|
138
|
+
expect(configContent).toBeDefined();
|
|
139
|
+
const parsedConfig = js_yaml_1.default.load(configContent);
|
|
140
|
+
const validationResult = types_1.TestSuiteConfigSchema.safeParse(parsedConfig);
|
|
141
|
+
expect(validationResult.success).toBe(true);
|
|
142
|
+
if (!validationResult.success) {
|
|
143
|
+
throw new Error('Validation failed');
|
|
144
|
+
}
|
|
145
|
+
const config = validationResult.data;
|
|
146
|
+
expect(config.tests).toBeDefined();
|
|
147
|
+
expect(Array.isArray(config.tests)).toBe(true);
|
|
148
|
+
expect(config.tests?.length).toBeGreaterThan(0);
|
|
149
|
+
const firstTest = config.tests?.[0];
|
|
150
|
+
expect(firstTest).toBeTruthy();
|
|
151
|
+
expect(typeof firstTest).toBe('object');
|
|
152
|
+
expect(firstTest).toHaveProperty('vars');
|
|
153
|
+
const vars = firstTest.vars;
|
|
154
|
+
expect(typeof vars).toBe('object');
|
|
155
|
+
expect(vars).toHaveProperty('inquiry');
|
|
156
|
+
expect(vars).toHaveProperty('context');
|
|
157
|
+
expect(mockSelect).toHaveBeenCalledTimes(2);
|
|
158
|
+
expect(mockCheckbox).toHaveBeenCalledTimes(1);
|
|
159
|
+
expect(mockConfirm).toHaveBeenCalledTimes(0);
|
|
160
|
+
});
|
|
161
|
+
it('should prompt for confirmation when files exist', async () => {
|
|
162
|
+
mockFs.existsSync.mockImplementation((path) => path.toString().includes('promptfooconfig.yaml'));
|
|
163
|
+
mockConfirm.mockResolvedValueOnce(true);
|
|
164
|
+
mockSelect.mockResolvedValueOnce('compare');
|
|
165
|
+
mockCheckbox.mockResolvedValueOnce(['openai:gpt-4o']);
|
|
166
|
+
await (0, onboarding_2.createDummyFiles)(tempDir, true);
|
|
167
|
+
expect(mockConfirm).toHaveBeenCalledTimes(1);
|
|
168
|
+
expect(mockConfirm).toHaveBeenCalledWith(expect.objectContaining({
|
|
169
|
+
message: expect.stringContaining('already exist'),
|
|
170
|
+
}));
|
|
171
|
+
});
|
|
172
|
+
});
|
|
48
173
|
//# sourceMappingURL=onboarding.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.test.js","sourceRoot":"","sources":["../../test/onboarding.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"onboarding.test.js","sourceRoot":"","sources":["../../test/onboarding.test.ts"],"names":[],"mappings":"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"}
|