promptfoo 0.91.1 → 0.91.3
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/dist/package.json +11 -8
- package/dist/src/app/assets/{index-Dvv-swGm.js → index-C6z1nbLN.js} +222 -222
- package/dist/src/app/assets/{index.es-DAIlgY6E.js → index.es-oqbvfIxR.js} +1 -1
- package/dist/src/app/assets/{sync-CABaZxhX.js → sync-D2s75VlC.js} +1 -1
- package/dist/src/app/index.html +1 -1
- package/dist/src/assertions/AssertionsResult.js +1 -1
- package/dist/src/assertions/AssertionsResult.js.map +1 -1
- package/dist/src/commands/eval/filterTests.d.ts +1 -1
- package/dist/src/commands/eval/filterTests.d.ts.map +1 -1
- package/dist/src/commands/eval/filterTests.js +1 -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 +38 -15
- package/dist/src/commands/eval.js.map +1 -1
- package/dist/src/database/tables.d.ts +5 -5
- package/dist/src/index.d.ts +40 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/prompts/processors/python.d.ts +1 -1
- package/dist/src/prompts/processors/python.d.ts.map +1 -1
- package/dist/src/providers/browser.d.ts +7 -0
- package/dist/src/providers/browser.d.ts.map +1 -1
- package/dist/src/providers/browser.js +60 -3
- package/dist/src/providers/browser.js.map +1 -1
- package/dist/src/providers/http.d.ts +2 -1
- package/dist/src/providers/http.d.ts.map +1 -1
- package/dist/src/providers/http.js +34 -7
- package/dist/src/providers/http.js.map +1 -1
- package/dist/src/providers.d.ts +61 -3
- package/dist/src/providers.d.ts.map +1 -1
- package/dist/src/providers.js +38 -0
- package/dist/src/providers.js.map +1 -1
- package/dist/src/python/pythonUtils.d.ts +2 -2
- package/dist/src/python/pythonUtils.d.ts.map +1 -1
- package/dist/src/python/pythonUtils.js +24 -2
- package/dist/src/python/pythonUtils.js.map +1 -1
- package/dist/src/redteam/commands/init.d.ts.map +1 -1
- package/dist/src/redteam/commands/init.js +0 -1
- package/dist/src/redteam/commands/init.js.map +1 -1
- package/dist/src/redteam/constants.d.ts +1 -1
- package/dist/src/redteam/constants.d.ts.map +1 -1
- package/dist/src/redteam/constants.js +7 -5
- package/dist/src/redteam/constants.js.map +1 -1
- package/dist/src/redteam/graders.d.ts +2 -0
- package/dist/src/redteam/graders.d.ts.map +1 -1
- package/dist/src/redteam/graders.js +2 -0
- package/dist/src/redteam/graders.js.map +1 -1
- package/dist/src/redteam/plugins/crossSessionLeak.d.ts.map +1 -1
- package/dist/src/redteam/plugins/crossSessionLeak.js +7 -2
- package/dist/src/redteam/plugins/crossSessionLeak.js.map +1 -1
- package/dist/src/redteam/plugins/index.d.ts.map +1 -1
- package/dist/src/redteam/plugins/index.js +1 -0
- package/dist/src/redteam/plugins/index.js.map +1 -1
- package/dist/src/redteam/plugins/religion.d.ts +6 -0
- package/dist/src/redteam/plugins/religion.d.ts.map +1 -0
- package/dist/src/redteam/plugins/religion.js +14 -0
- package/dist/src/redteam/plugins/religion.js.map +1 -0
- package/dist/src/redteam/providers/constants.d.ts +1 -1
- package/dist/src/redteam/providers/constants.js +1 -1
- package/dist/src/types/index.d.ts +40 -40
- package/dist/src/types/index.js +5 -5
- package/dist/src/types/index.js.map +1 -1
- package/dist/test/providers.http.test.js +107 -0
- package/dist/test/providers.http.test.js.map +1 -1
- package/dist/test/python/integration.test.d.ts +2 -0
- package/dist/test/python/integration.test.d.ts.map +1 -0
- package/dist/test/python/integration.test.js +149 -0
- package/dist/test/python/integration.test.js.map +1 -0
- package/dist/test/python/pythonUtils.test.js +46 -21
- package/dist/test/python/pythonUtils.test.js.map +1 -1
- package/dist/test/redteam/plugins/crossSessionLeak.test.d.ts +2 -0
- package/dist/test/redteam/plugins/crossSessionLeak.test.d.ts.map +1 -0
- package/dist/test/redteam/plugins/crossSessionLeak.test.js +77 -0
- package/dist/test/redteam/plugins/crossSessionLeak.test.js.map +1 -0
- package/package.json +11 -8
|
@@ -885,27 +885,27 @@ export declare const evals: import("drizzle-orm/sqlite-core").SQLiteTableWithCol
|
|
|
885
885
|
commandLineOptions?: {
|
|
886
886
|
cache?: boolean | undefined;
|
|
887
887
|
config?: string[] | undefined;
|
|
888
|
-
maxConcurrency?:
|
|
888
|
+
maxConcurrency?: number | undefined;
|
|
889
889
|
output?: string[] | undefined;
|
|
890
890
|
write?: boolean | undefined;
|
|
891
891
|
vars?: string | undefined;
|
|
892
892
|
prompts?: string[] | undefined;
|
|
893
|
-
delay?:
|
|
893
|
+
delay?: number | undefined;
|
|
894
894
|
description?: string | undefined;
|
|
895
895
|
providers?: string[] | undefined;
|
|
896
|
-
repeat?:
|
|
896
|
+
repeat?: number | undefined;
|
|
897
897
|
tests?: string | undefined;
|
|
898
898
|
assertions?: string | undefined;
|
|
899
899
|
modelOutputs?: string | undefined;
|
|
900
900
|
verbose?: boolean | undefined;
|
|
901
901
|
grader?: string | undefined;
|
|
902
|
-
tableCellMaxLength?:
|
|
902
|
+
tableCellMaxLength?: number | undefined;
|
|
903
903
|
table?: boolean | undefined;
|
|
904
904
|
share?: boolean | undefined;
|
|
905
905
|
progressBar?: boolean | undefined;
|
|
906
906
|
watch?: boolean | undefined;
|
|
907
907
|
filterFailing?: string | undefined;
|
|
908
|
-
filterFirstN?:
|
|
908
|
+
filterFirstN?: number | undefined;
|
|
909
909
|
filterPattern?: string | undefined;
|
|
910
910
|
filterProviders?: string | undefined;
|
|
911
911
|
var?: Record<string, string> | undefined;
|
package/dist/src/index.d.ts
CHANGED
|
@@ -25,6 +25,7 @@ declare const redteam: {
|
|
|
25
25
|
'promptfoo:redteam:hijacking': import("./redteam/plugins/hijacking").HijackingGrader;
|
|
26
26
|
'promptfoo:redteam:policy': import("./redteam/plugins/policy").PolicyViolationGrader;
|
|
27
27
|
'promptfoo:redteam:politics': import("./redteam/plugins/politics").PoliticsGrader;
|
|
28
|
+
'promptfoo:redteam:religion': import("./redteam/plugins/religion").ReligionGrader;
|
|
28
29
|
'promptfoo:redteam:sql-injection': import("./redteam/plugins/sqlInjection").SqlInjectionGrader;
|
|
29
30
|
'promptfoo:redteam:shell-injection': import("./redteam/plugins/shellInjection").ShellInjectionGrader;
|
|
30
31
|
'promptfoo:redteam:debug-access': import("./redteam/plugins/debugAccess").DebugAccessGrader;
|
|
@@ -94,16 +95,54 @@ declare const _default: {
|
|
|
94
95
|
OpenAiCompletionProvider: typeof import("./providers/openai").OpenAiCompletionProvider;
|
|
95
96
|
OpenAiChatCompletionProvider: typeof import("./providers/openai").OpenAiChatCompletionProvider;
|
|
96
97
|
OpenAiAssistantProvider: typeof import("./providers/openai").OpenAiAssistantProvider;
|
|
98
|
+
OpenAiEmbeddingProvider: typeof import("./providers/openai").OpenAiEmbeddingProvider;
|
|
99
|
+
OpenAiImageProvider: typeof import("./providers/openai").OpenAiImageProvider;
|
|
100
|
+
OpenAiModerationProvider: typeof import("./providers/openai").OpenAiModerationProvider;
|
|
97
101
|
AnthropicCompletionProvider: typeof import("./providers/anthropic").AnthropicCompletionProvider;
|
|
98
102
|
AnthropicMessagesProvider: typeof import("./providers/anthropic").AnthropicMessagesProvider;
|
|
99
103
|
ReplicateProvider: typeof import("./providers/replicate").ReplicateProvider;
|
|
104
|
+
ReplicateImageProvider: typeof import("./providers/replicate").ReplicateImageProvider;
|
|
105
|
+
ReplicateModerationProvider: typeof import("./providers/replicate").ReplicateModerationProvider;
|
|
100
106
|
LocalAiCompletionProvider: typeof import("./providers/localai").LocalAiCompletionProvider;
|
|
101
107
|
LocalAiChatProvider: typeof import("./providers/localai").LocalAiChatProvider;
|
|
108
|
+
LocalAiEmbeddingProvider: typeof import("./providers/localai").LocalAiEmbeddingProvider;
|
|
102
109
|
BAMChatProvider: typeof import("./providers/bam").BAMChatProvider;
|
|
103
110
|
BAMEmbeddingProvider: typeof import("./providers/bam").BAMEmbeddingProvider;
|
|
104
111
|
GroqProvider: typeof import("./providers/groq").GroqProvider;
|
|
105
112
|
MistralChatCompletionProvider: typeof import("./providers/mistral").MistralChatCompletionProvider;
|
|
106
113
|
MistralEmbeddingProvider: typeof import("./providers/mistral").MistralEmbeddingProvider;
|
|
114
|
+
AI21ChatCompletionProvider: typeof import("./providers/ai21").AI21ChatCompletionProvider;
|
|
115
|
+
AzureOpenAiAssistantProvider: typeof import("./providers/azureopenai").AzureOpenAiAssistantProvider;
|
|
116
|
+
AzureOpenAiChatCompletionProvider: typeof import("./providers/azureopenai").AzureOpenAiChatCompletionProvider;
|
|
117
|
+
AzureOpenAiCompletionProvider: typeof import("./providers/azureopenai").AzureOpenAiCompletionProvider;
|
|
118
|
+
AzureOpenAiEmbeddingProvider: typeof import("./providers/azureopenai").AzureOpenAiEmbeddingProvider;
|
|
119
|
+
AwsBedrockCompletionProvider: typeof import("./providers/bedrock").AwsBedrockCompletionProvider;
|
|
120
|
+
AwsBedrockEmbeddingProvider: typeof import("./providers/bedrock").AwsBedrockEmbeddingProvider;
|
|
121
|
+
BrowserProvider: typeof import("./providers/browser").BrowserProvider;
|
|
122
|
+
CohereChatCompletionProvider: typeof import("./providers/cohere").CohereChatCompletionProvider;
|
|
123
|
+
CohereEmbeddingProvider: typeof import("./providers/cohere").CohereEmbeddingProvider;
|
|
124
|
+
FalImageGenerationProvider: typeof import("./providers/fal").FalImageGenerationProvider;
|
|
125
|
+
GolangProvider: typeof import("./providers/golangCompletion").GolangProvider;
|
|
126
|
+
HttpProvider: typeof import("./providers/http").HttpProvider;
|
|
127
|
+
HuggingfaceFeatureExtractionProvider: typeof import("./providers/huggingface").HuggingfaceFeatureExtractionProvider;
|
|
128
|
+
HuggingfaceSentenceSimilarityProvider: typeof import("./providers/huggingface").HuggingfaceSentenceSimilarityProvider;
|
|
129
|
+
HuggingfaceTextClassificationProvider: typeof import("./providers/huggingface").HuggingfaceTextClassificationProvider;
|
|
130
|
+
HuggingfaceTextGenerationProvider: typeof import("./providers/huggingface").HuggingfaceTextGenerationProvider;
|
|
131
|
+
HuggingfaceTokenExtractionProvider: typeof import("./providers/huggingface").HuggingfaceTokenExtractionProvider;
|
|
132
|
+
LlamaProvider: typeof import("./providers/llama").LlamaProvider;
|
|
133
|
+
ManualInputProvider: typeof import("./providers/manualInput").ManualInputProvider;
|
|
134
|
+
OllamaEmbeddingProvider: typeof import("./providers/ollama").OllamaEmbeddingProvider;
|
|
135
|
+
OllamaCompletionProvider: typeof import("./providers/ollama").OllamaCompletionProvider;
|
|
136
|
+
OllamaChatProvider: typeof import("./providers/ollama").OllamaChatProvider;
|
|
137
|
+
PalmChatProvider: typeof import("./providers/palm").PalmChatProvider;
|
|
138
|
+
PortkeyChatCompletionProvider: typeof import("./providers/portkey").PortkeyChatCompletionProvider;
|
|
139
|
+
PythonProvider: typeof import("./providers/pythonCompletion").PythonProvider;
|
|
140
|
+
ScriptCompletionProvider: typeof import("./providers/scriptCompletion").ScriptCompletionProvider;
|
|
141
|
+
VertexChatProvider: typeof import("./providers/vertex").VertexChatProvider;
|
|
142
|
+
VertexEmbeddingProvider: typeof import("./providers/vertex").VertexEmbeddingProvider;
|
|
143
|
+
VoyageEmbeddingProvider: typeof import("./providers/voyage").VoyageEmbeddingProvider;
|
|
144
|
+
WebhookProvider: typeof import("./providers/webhook").WebhookProvider;
|
|
145
|
+
WebSocketProvider: typeof import("./providers/websocket").WebSocketProvider;
|
|
107
146
|
loadApiProvider: typeof loadApiProvider;
|
|
108
147
|
};
|
|
109
148
|
redteam: {
|
|
@@ -123,6 +162,7 @@ declare const _default: {
|
|
|
123
162
|
'promptfoo:redteam:hijacking': import("./redteam/plugins/hijacking").HijackingGrader;
|
|
124
163
|
'promptfoo:redteam:policy': import("./redteam/plugins/policy").PolicyViolationGrader;
|
|
125
164
|
'promptfoo:redteam:politics': import("./redteam/plugins/politics").PoliticsGrader;
|
|
165
|
+
'promptfoo:redteam:religion': import("./redteam/plugins/religion").ReligionGrader;
|
|
126
166
|
'promptfoo:redteam:sql-injection': import("./redteam/plugins/sqlInjection").SqlInjectionGrader;
|
|
127
167
|
'promptfoo:redteam:shell-injection': import("./redteam/plugins/shellInjection").ShellInjectionGrader;
|
|
128
168
|
'promptfoo:redteam:debug-access': import("./redteam/plugins/debugAccess").DebugAccessGrader;
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAGjC,OAAO,SAAS,EAAE,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI9E,OAAO,KAAK,EACV,eAAe,EAEf,iBAAiB,EAIlB,MAAM,SAAS,CAAC;AASjB,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,iBAAe,QAAQ,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,GAAE,eAAoB,8CAgGlF;AAED,QAAA,MAAM,OAAO
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAGjC,OAAO,SAAS,EAAE,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAGpE,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI9E,OAAO,KAAK,EACV,eAAe,EAEf,iBAAiB,EAIlB,MAAM,SAAS,CAAC;AASjB,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,iBAAe,QAAQ,CAAC,SAAS,EAAE,iBAAiB,EAAE,OAAO,GAAE,eAAoB,8CAgGlF;AAED,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYZ,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE3D,wBAME"}
|
|
@@ -9,7 +9,7 @@ import type { Prompt, ApiProvider } from '../../types';
|
|
|
9
9
|
export declare const pythonPromptFunction: (filePath: string, functionName: string, context: {
|
|
10
10
|
vars: Record<string, string | object>;
|
|
11
11
|
provider?: ApiProvider;
|
|
12
|
-
}) => Promise<
|
|
12
|
+
}) => Promise<any>;
|
|
13
13
|
/**
|
|
14
14
|
* Legacy Python prompt function. Runs the whole python file.
|
|
15
15
|
* @param filePath - Path to the Python file.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../../src/prompts/processors/python.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAyB,MAAM,aAAa,CAAC;AAG9E;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,aACrB,MAAM,gBACF,MAAM,WACX;IACP,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB,
|
|
1
|
+
{"version":3,"file":"python.d.ts","sourceRoot":"","sources":["../../../../src/prompts/processors/python.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAyB,MAAM,aAAa,CAAC;AAG9E;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB,aACrB,MAAM,gBACF,MAAM,WACX;IACP,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB,iBAaF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,aAC3B,MAAM,WACP;IACP,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB,KACA,OAAO,CAAC,MAAM,CAmBhB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EACvB,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,MAAM,EAAE,CAcV"}
|
|
@@ -9,6 +9,12 @@ interface BrowserProviderConfig {
|
|
|
9
9
|
responseParser?: string | Function;
|
|
10
10
|
timeoutMs?: number;
|
|
11
11
|
headless?: boolean;
|
|
12
|
+
cookies?: Array<{
|
|
13
|
+
name: string;
|
|
14
|
+
value: string;
|
|
15
|
+
domain?: string;
|
|
16
|
+
path?: string;
|
|
17
|
+
}> | string;
|
|
12
18
|
}
|
|
13
19
|
export declare class BrowserProvider implements ApiProvider {
|
|
14
20
|
config: BrowserProviderConfig;
|
|
@@ -19,6 +25,7 @@ export declare class BrowserProvider implements ApiProvider {
|
|
|
19
25
|
id(): string;
|
|
20
26
|
toString(): string;
|
|
21
27
|
callApi(prompt: string, context?: CallApiContextParams): Promise<ProviderResponse>;
|
|
28
|
+
private setCookies;
|
|
22
29
|
private executeAction;
|
|
23
30
|
private waitForSelector;
|
|
24
31
|
private waitForNewChildren;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../src/providers/browser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EACjB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../../src/providers/browser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EACjB,MAAM,UAAU,CAAC;AAOlB,UAAU,aAAa;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,qBAAqB;IAC7B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EACJ,KAAK,CAAC;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,GACF,MAAM,CAAC;CACZ;AAiBD,qBAAa,eAAgB,YAAW,WAAW;IACjD,MAAM,EAAE,qBAAqB,CAAC;IAC9B,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,KAAK,gBAAgB,CAAC;IACxF,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAU;gBAEd,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;IAa/C,EAAE,IAAI,MAAM;IAIZ,QAAQ,IAAI,MAAM;IAIZ,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YAoD1E,UAAU;YAgBV,aAAa;YAiHb,eAAe;YASf,kBAAkB;IAuBhC,OAAO,CAAC,UAAU;CAWnB"}
|
|
@@ -1,12 +1,35 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
27
|
};
|
|
5
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
29
|
exports.BrowserProvider = void 0;
|
|
7
|
-
const playwright_1 = require("playwright");
|
|
8
30
|
const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
|
|
9
31
|
const logger_1 = __importDefault(require("../logger"));
|
|
32
|
+
const util_1 = require("../util");
|
|
10
33
|
const json_1 = require("../util/json");
|
|
11
34
|
const templates_1 = require("../util/templates");
|
|
12
35
|
const nunjucks = (0, templates_1.getNunjucksEngine)();
|
|
@@ -38,13 +61,31 @@ class BrowserProvider {
|
|
|
38
61
|
...(context?.vars || {}),
|
|
39
62
|
prompt,
|
|
40
63
|
};
|
|
41
|
-
|
|
64
|
+
let chromium, stealth;
|
|
65
|
+
try {
|
|
66
|
+
({ chromium } = await Promise.resolve().then(() => __importStar(require('playwright-extra'))));
|
|
67
|
+
({ default: stealth } = await Promise.resolve().then(() => __importStar(require('puppeteer-extra-plugin-stealth'))));
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
return {
|
|
71
|
+
error: `Failed to import required modules. Please ensure the following packages are installed:\n\tplaywright @playwright/browser-chromium playwright-extra puppeteer-extra-plugin-stealth\n\nError: ${error instanceof Error ? error.message : 'Unknown error'}`,
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
chromium.use(stealth());
|
|
75
|
+
const browser = await chromium.launch({
|
|
42
76
|
headless: this.headless,
|
|
43
77
|
args: ['--ignore-certificate-errors'],
|
|
44
78
|
});
|
|
45
|
-
const
|
|
79
|
+
const browserContext = await browser.newContext({
|
|
80
|
+
ignoreHTTPSErrors: true,
|
|
81
|
+
});
|
|
82
|
+
if (this.config.cookies) {
|
|
83
|
+
await this.setCookies(browserContext);
|
|
84
|
+
}
|
|
85
|
+
const page = await browserContext.newPage();
|
|
46
86
|
const extracted = {};
|
|
47
87
|
try {
|
|
88
|
+
// Execute all actions
|
|
48
89
|
for (const step of this.config.steps) {
|
|
49
90
|
await this.executeAction(page, step, vars, extracted);
|
|
50
91
|
}
|
|
@@ -60,6 +101,22 @@ class BrowserProvider {
|
|
|
60
101
|
logger_1.default.debug(`Browser response parser output: ${ret}`);
|
|
61
102
|
return { output: ret };
|
|
62
103
|
}
|
|
104
|
+
async setCookies(browserContext) {
|
|
105
|
+
if (typeof this.config.cookies === 'string') {
|
|
106
|
+
// Handle big blob string of cookies
|
|
107
|
+
const cookieString = (0, util_1.maybeLoadFromExternalFile)(this.config.cookies);
|
|
108
|
+
const cookiePairs = cookieString.split(';').map((pair) => pair.trim());
|
|
109
|
+
const cookies = cookiePairs.map((pair) => {
|
|
110
|
+
const [name, value] = pair.split('=');
|
|
111
|
+
return { name, value };
|
|
112
|
+
});
|
|
113
|
+
await browserContext.addCookies(cookies);
|
|
114
|
+
}
|
|
115
|
+
else if (Array.isArray(this.config.cookies)) {
|
|
116
|
+
// Handle array of cookie objects
|
|
117
|
+
await browserContext.addCookies(this.config.cookies);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
63
120
|
async executeAction(page, action, vars, extracted) {
|
|
64
121
|
const { action: actionType, args = {}, name } = action;
|
|
65
122
|
const renderedArgs = this.renderArgs(args, vars);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/providers/browser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/providers/browser.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,11 +8,12 @@ interface HttpProviderConfig {
|
|
|
8
8
|
responseParser?: string | Function;
|
|
9
9
|
request?: string;
|
|
10
10
|
}
|
|
11
|
+
export declare function createResponseParser(parser: string | Function | undefined): Promise<(data: any, text: string) => ProviderResponse>;
|
|
11
12
|
export declare function processBody(body: Record<string, any>, vars: Record<string, any>): Record<string, any>;
|
|
12
13
|
export declare class HttpProvider implements ApiProvider {
|
|
13
14
|
url: string;
|
|
14
15
|
config: HttpProviderConfig;
|
|
15
|
-
responseParser
|
|
16
|
+
private responseParser;
|
|
16
17
|
constructor(url: string, options: ProviderOptions);
|
|
17
18
|
id(): string;
|
|
18
19
|
toString(): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/providers/http.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/providers/http.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EACjB,MAAM,UAAU,CAAC;AASlB,UAAU,kBAAkB;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC,cAAc,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GACpC,OAAO,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,gBAAgB,CAAC,CAkCxD;AAED,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACxB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA2BrB;AAuBD,qBAAa,YAAa,YAAW,WAAW;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,cAAc,CAAyD;gBAEnE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe;IAiBjD,EAAE,IAAI,MAAM;IAIZ,QAAQ,IAAI,MAAM;IAIZ,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,gBAAgB,CAAC;YA6E1E,qBAAqB;CA4CpC"}
|
|
@@ -4,24 +4,49 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.HttpProvider = void 0;
|
|
7
|
+
exports.createResponseParser = createResponseParser;
|
|
7
8
|
exports.processBody = processBody;
|
|
8
9
|
const http_z_1 = __importDefault(require("http-z"));
|
|
10
|
+
const path_1 = __importDefault(require("path"));
|
|
9
11
|
const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
|
|
10
12
|
const cache_1 = require("../cache");
|
|
13
|
+
const cliState_1 = __importDefault(require("../cliState"));
|
|
14
|
+
const esm_1 = require("../esm");
|
|
11
15
|
const logger_1 = __importDefault(require("../logger"));
|
|
12
16
|
const util_1 = require("../util");
|
|
17
|
+
const util_2 = require("../util");
|
|
13
18
|
const json_1 = require("../util/json");
|
|
14
19
|
const templates_1 = require("../util/templates");
|
|
15
20
|
const shared_1 = require("./shared");
|
|
16
21
|
const nunjucks = (0, templates_1.getNunjucksEngine)();
|
|
17
|
-
function createResponseParser(parser) {
|
|
22
|
+
async function createResponseParser(parser) {
|
|
23
|
+
if (!parser) {
|
|
24
|
+
return (data, text) => ({ output: data || text });
|
|
25
|
+
}
|
|
18
26
|
if (typeof parser === 'function') {
|
|
19
|
-
return parser;
|
|
27
|
+
return (data, text) => ({ output: parser(data, text) });
|
|
28
|
+
}
|
|
29
|
+
if (typeof parser === 'string' && parser.startsWith('file://')) {
|
|
30
|
+
let filename = parser.slice('file://'.length);
|
|
31
|
+
let functionName;
|
|
32
|
+
if (filename.includes(':')) {
|
|
33
|
+
const splits = filename.split(':');
|
|
34
|
+
if (splits[0] && (0, util_2.isJavascriptFile)(splits[0])) {
|
|
35
|
+
[filename, functionName] = splits;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
const requiredModule = await (0, esm_1.importModule)(path_1.default.resolve(cliState_1.default.basePath || '', filename), functionName);
|
|
39
|
+
if (typeof requiredModule === 'function') {
|
|
40
|
+
return requiredModule;
|
|
41
|
+
}
|
|
42
|
+
throw new Error(`Response parser malformed: ${filename} must export a function or have a default export as a function`);
|
|
20
43
|
}
|
|
21
|
-
if (typeof parser === 'string') {
|
|
22
|
-
return
|
|
44
|
+
else if (typeof parser === 'string') {
|
|
45
|
+
return (data, text) => ({
|
|
46
|
+
output: new Function('json', 'text', `return ${parser}`)(data, text),
|
|
47
|
+
});
|
|
23
48
|
}
|
|
24
|
-
|
|
49
|
+
throw new Error(`Unsupported response parser type: ${typeof parser}. Expected a function, a string starting with 'file://' pointing to a JavaScript file, or a string containing a JavaScript expression.`);
|
|
25
50
|
}
|
|
26
51
|
function processBody(body, vars) {
|
|
27
52
|
const processedBody = {};
|
|
@@ -142,8 +167,9 @@ class HttpProvider {
|
|
|
142
167
|
catch {
|
|
143
168
|
parsedData = null;
|
|
144
169
|
}
|
|
170
|
+
const parsedOutput = (await this.responseParser)(parsedData, rawText);
|
|
145
171
|
return {
|
|
146
|
-
output:
|
|
172
|
+
output: parsedOutput.output || parsedOutput,
|
|
147
173
|
};
|
|
148
174
|
}
|
|
149
175
|
async callApiWithRawRequest(vars) {
|
|
@@ -175,8 +201,9 @@ class HttpProvider {
|
|
|
175
201
|
catch {
|
|
176
202
|
parsedData = null;
|
|
177
203
|
}
|
|
204
|
+
const parsedOutput = (await this.responseParser)(parsedData, rawText);
|
|
178
205
|
return {
|
|
179
|
-
output:
|
|
206
|
+
output: parsedOutput.output || parsedOutput,
|
|
180
207
|
};
|
|
181
208
|
}
|
|
182
209
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/providers/http.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/providers/http.ts"],"names":[],"mappings":"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"}
|
package/dist/src/providers.d.ts
CHANGED
|
@@ -1,10 +1,30 @@
|
|
|
1
|
+
import { AI21ChatCompletionProvider } from './providers/ai21';
|
|
1
2
|
import { AnthropicCompletionProvider, AnthropicMessagesProvider } from './providers/anthropic';
|
|
3
|
+
import { AzureOpenAiAssistantProvider, AzureOpenAiChatCompletionProvider, AzureOpenAiCompletionProvider, AzureOpenAiEmbeddingProvider } from './providers/azureopenai';
|
|
2
4
|
import { BAMChatProvider, BAMEmbeddingProvider } from './providers/bam';
|
|
5
|
+
import { AwsBedrockCompletionProvider, AwsBedrockEmbeddingProvider } from './providers/bedrock';
|
|
6
|
+
import { BrowserProvider } from './providers/browser';
|
|
7
|
+
import { CohereChatCompletionProvider, CohereEmbeddingProvider } from './providers/cohere';
|
|
8
|
+
import { FalImageGenerationProvider } from './providers/fal';
|
|
9
|
+
import { GolangProvider } from './providers/golangCompletion';
|
|
3
10
|
import { GroqProvider } from './providers/groq';
|
|
4
|
-
import {
|
|
11
|
+
import { HttpProvider } from './providers/http';
|
|
12
|
+
import { HuggingfaceFeatureExtractionProvider, HuggingfaceSentenceSimilarityProvider, HuggingfaceTextClassificationProvider, HuggingfaceTextGenerationProvider, HuggingfaceTokenExtractionProvider } from './providers/huggingface';
|
|
13
|
+
import { LlamaProvider } from './providers/llama';
|
|
14
|
+
import { LocalAiCompletionProvider, LocalAiChatProvider, LocalAiEmbeddingProvider } from './providers/localai';
|
|
15
|
+
import { ManualInputProvider } from './providers/manualInput';
|
|
5
16
|
import { MistralChatCompletionProvider, MistralEmbeddingProvider } from './providers/mistral';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
17
|
+
import { OllamaEmbeddingProvider, OllamaCompletionProvider, OllamaChatProvider } from './providers/ollama';
|
|
18
|
+
import { OpenAiAssistantProvider, OpenAiCompletionProvider, OpenAiChatCompletionProvider, OpenAiEmbeddingProvider, OpenAiImageProvider, OpenAiModerationProvider } from './providers/openai';
|
|
19
|
+
import { PalmChatProvider } from './providers/palm';
|
|
20
|
+
import { PortkeyChatCompletionProvider } from './providers/portkey';
|
|
21
|
+
import { PythonProvider } from './providers/pythonCompletion';
|
|
22
|
+
import { ReplicateImageProvider, ReplicateModerationProvider, ReplicateProvider } from './providers/replicate';
|
|
23
|
+
import { ScriptCompletionProvider } from './providers/scriptCompletion';
|
|
24
|
+
import { VertexChatProvider, VertexEmbeddingProvider } from './providers/vertex';
|
|
25
|
+
import { VoyageEmbeddingProvider } from './providers/voyage';
|
|
26
|
+
import { WebhookProvider } from './providers/webhook';
|
|
27
|
+
import { WebSocketProvider } from './providers/websocket';
|
|
8
28
|
import type { TestSuiteConfig } from './types';
|
|
9
29
|
import type { ApiProvider, EnvOverrides, ProviderOptions } from './types/providers';
|
|
10
30
|
export declare function loadApiProvider(providerPath: string, context?: {
|
|
@@ -20,16 +40,54 @@ declare const _default: {
|
|
|
20
40
|
OpenAiCompletionProvider: typeof OpenAiCompletionProvider;
|
|
21
41
|
OpenAiChatCompletionProvider: typeof OpenAiChatCompletionProvider;
|
|
22
42
|
OpenAiAssistantProvider: typeof OpenAiAssistantProvider;
|
|
43
|
+
OpenAiEmbeddingProvider: typeof OpenAiEmbeddingProvider;
|
|
44
|
+
OpenAiImageProvider: typeof OpenAiImageProvider;
|
|
45
|
+
OpenAiModerationProvider: typeof OpenAiModerationProvider;
|
|
23
46
|
AnthropicCompletionProvider: typeof AnthropicCompletionProvider;
|
|
24
47
|
AnthropicMessagesProvider: typeof AnthropicMessagesProvider;
|
|
25
48
|
ReplicateProvider: typeof ReplicateProvider;
|
|
49
|
+
ReplicateImageProvider: typeof ReplicateImageProvider;
|
|
50
|
+
ReplicateModerationProvider: typeof ReplicateModerationProvider;
|
|
26
51
|
LocalAiCompletionProvider: typeof LocalAiCompletionProvider;
|
|
27
52
|
LocalAiChatProvider: typeof LocalAiChatProvider;
|
|
53
|
+
LocalAiEmbeddingProvider: typeof LocalAiEmbeddingProvider;
|
|
28
54
|
BAMChatProvider: typeof BAMChatProvider;
|
|
29
55
|
BAMEmbeddingProvider: typeof BAMEmbeddingProvider;
|
|
30
56
|
GroqProvider: typeof GroqProvider;
|
|
31
57
|
MistralChatCompletionProvider: typeof MistralChatCompletionProvider;
|
|
32
58
|
MistralEmbeddingProvider: typeof MistralEmbeddingProvider;
|
|
59
|
+
AI21ChatCompletionProvider: typeof AI21ChatCompletionProvider;
|
|
60
|
+
AzureOpenAiAssistantProvider: typeof AzureOpenAiAssistantProvider;
|
|
61
|
+
AzureOpenAiChatCompletionProvider: typeof AzureOpenAiChatCompletionProvider;
|
|
62
|
+
AzureOpenAiCompletionProvider: typeof AzureOpenAiCompletionProvider;
|
|
63
|
+
AzureOpenAiEmbeddingProvider: typeof AzureOpenAiEmbeddingProvider;
|
|
64
|
+
AwsBedrockCompletionProvider: typeof AwsBedrockCompletionProvider;
|
|
65
|
+
AwsBedrockEmbeddingProvider: typeof AwsBedrockEmbeddingProvider;
|
|
66
|
+
BrowserProvider: typeof BrowserProvider;
|
|
67
|
+
CohereChatCompletionProvider: typeof CohereChatCompletionProvider;
|
|
68
|
+
CohereEmbeddingProvider: typeof CohereEmbeddingProvider;
|
|
69
|
+
FalImageGenerationProvider: typeof FalImageGenerationProvider;
|
|
70
|
+
GolangProvider: typeof GolangProvider;
|
|
71
|
+
HttpProvider: typeof HttpProvider;
|
|
72
|
+
HuggingfaceFeatureExtractionProvider: typeof HuggingfaceFeatureExtractionProvider;
|
|
73
|
+
HuggingfaceSentenceSimilarityProvider: typeof HuggingfaceSentenceSimilarityProvider;
|
|
74
|
+
HuggingfaceTextClassificationProvider: typeof HuggingfaceTextClassificationProvider;
|
|
75
|
+
HuggingfaceTextGenerationProvider: typeof HuggingfaceTextGenerationProvider;
|
|
76
|
+
HuggingfaceTokenExtractionProvider: typeof HuggingfaceTokenExtractionProvider;
|
|
77
|
+
LlamaProvider: typeof LlamaProvider;
|
|
78
|
+
ManualInputProvider: typeof ManualInputProvider;
|
|
79
|
+
OllamaEmbeddingProvider: typeof OllamaEmbeddingProvider;
|
|
80
|
+
OllamaCompletionProvider: typeof OllamaCompletionProvider;
|
|
81
|
+
OllamaChatProvider: typeof OllamaChatProvider;
|
|
82
|
+
PalmChatProvider: typeof PalmChatProvider;
|
|
83
|
+
PortkeyChatCompletionProvider: typeof PortkeyChatCompletionProvider;
|
|
84
|
+
PythonProvider: typeof PythonProvider;
|
|
85
|
+
ScriptCompletionProvider: typeof ScriptCompletionProvider;
|
|
86
|
+
VertexChatProvider: typeof VertexChatProvider;
|
|
87
|
+
VertexEmbeddingProvider: typeof VertexEmbeddingProvider;
|
|
88
|
+
VoyageEmbeddingProvider: typeof VoyageEmbeddingProvider;
|
|
89
|
+
WebhookProvider: typeof WebhookProvider;
|
|
90
|
+
WebSocketProvider: typeof WebSocketProvider;
|
|
33
91
|
loadApiProvider: typeof loadApiProvider;
|
|
34
92
|
};
|
|
35
93
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"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"}
|
package/dist/src/providers.js
CHANGED
|
@@ -521,16 +521,54 @@ exports.default = {
|
|
|
521
521
|
OpenAiCompletionProvider: openai_1.OpenAiCompletionProvider,
|
|
522
522
|
OpenAiChatCompletionProvider: openai_1.OpenAiChatCompletionProvider,
|
|
523
523
|
OpenAiAssistantProvider: openai_1.OpenAiAssistantProvider,
|
|
524
|
+
OpenAiEmbeddingProvider: openai_1.OpenAiEmbeddingProvider,
|
|
525
|
+
OpenAiImageProvider: openai_1.OpenAiImageProvider,
|
|
526
|
+
OpenAiModerationProvider: openai_1.OpenAiModerationProvider,
|
|
524
527
|
AnthropicCompletionProvider: anthropic_1.AnthropicCompletionProvider,
|
|
525
528
|
AnthropicMessagesProvider: anthropic_1.AnthropicMessagesProvider,
|
|
526
529
|
ReplicateProvider: replicate_1.ReplicateProvider,
|
|
530
|
+
ReplicateImageProvider: replicate_1.ReplicateImageProvider,
|
|
531
|
+
ReplicateModerationProvider: replicate_1.ReplicateModerationProvider,
|
|
527
532
|
LocalAiCompletionProvider: localai_1.LocalAiCompletionProvider,
|
|
528
533
|
LocalAiChatProvider: localai_1.LocalAiChatProvider,
|
|
534
|
+
LocalAiEmbeddingProvider: localai_1.LocalAiEmbeddingProvider,
|
|
529
535
|
BAMChatProvider: bam_1.BAMChatProvider,
|
|
530
536
|
BAMEmbeddingProvider: bam_1.BAMEmbeddingProvider,
|
|
531
537
|
GroqProvider: groq_1.GroqProvider,
|
|
532
538
|
MistralChatCompletionProvider: mistral_1.MistralChatCompletionProvider,
|
|
533
539
|
MistralEmbeddingProvider: mistral_1.MistralEmbeddingProvider,
|
|
540
|
+
AI21ChatCompletionProvider: ai21_1.AI21ChatCompletionProvider,
|
|
541
|
+
AzureOpenAiAssistantProvider: azureopenai_1.AzureOpenAiAssistantProvider,
|
|
542
|
+
AzureOpenAiChatCompletionProvider: azureopenai_1.AzureOpenAiChatCompletionProvider,
|
|
543
|
+
AzureOpenAiCompletionProvider: azureopenai_1.AzureOpenAiCompletionProvider,
|
|
544
|
+
AzureOpenAiEmbeddingProvider: azureopenai_1.AzureOpenAiEmbeddingProvider,
|
|
545
|
+
AwsBedrockCompletionProvider: bedrock_1.AwsBedrockCompletionProvider,
|
|
546
|
+
AwsBedrockEmbeddingProvider: bedrock_1.AwsBedrockEmbeddingProvider,
|
|
547
|
+
BrowserProvider: browser_1.BrowserProvider,
|
|
548
|
+
CohereChatCompletionProvider: cohere_1.CohereChatCompletionProvider,
|
|
549
|
+
CohereEmbeddingProvider: cohere_1.CohereEmbeddingProvider,
|
|
550
|
+
FalImageGenerationProvider: fal_1.FalImageGenerationProvider,
|
|
551
|
+
GolangProvider: golangCompletion_1.GolangProvider,
|
|
552
|
+
HttpProvider: http_1.HttpProvider,
|
|
553
|
+
HuggingfaceFeatureExtractionProvider: huggingface_1.HuggingfaceFeatureExtractionProvider,
|
|
554
|
+
HuggingfaceSentenceSimilarityProvider: huggingface_1.HuggingfaceSentenceSimilarityProvider,
|
|
555
|
+
HuggingfaceTextClassificationProvider: huggingface_1.HuggingfaceTextClassificationProvider,
|
|
556
|
+
HuggingfaceTextGenerationProvider: huggingface_1.HuggingfaceTextGenerationProvider,
|
|
557
|
+
HuggingfaceTokenExtractionProvider: huggingface_1.HuggingfaceTokenExtractionProvider,
|
|
558
|
+
LlamaProvider: llama_1.LlamaProvider,
|
|
559
|
+
ManualInputProvider: manualInput_1.ManualInputProvider,
|
|
560
|
+
OllamaEmbeddingProvider: ollama_1.OllamaEmbeddingProvider,
|
|
561
|
+
OllamaCompletionProvider: ollama_1.OllamaCompletionProvider,
|
|
562
|
+
OllamaChatProvider: ollama_1.OllamaChatProvider,
|
|
563
|
+
PalmChatProvider: palm_1.PalmChatProvider,
|
|
564
|
+
PortkeyChatCompletionProvider: portkey_1.PortkeyChatCompletionProvider,
|
|
565
|
+
PythonProvider: pythonCompletion_1.PythonProvider,
|
|
566
|
+
ScriptCompletionProvider: scriptCompletion_1.ScriptCompletionProvider,
|
|
567
|
+
VertexChatProvider: vertex_1.VertexChatProvider,
|
|
568
|
+
VertexEmbeddingProvider: vertex_1.VertexEmbeddingProvider,
|
|
569
|
+
VoyageEmbeddingProvider: voyage_1.VoyageEmbeddingProvider,
|
|
570
|
+
WebhookProvider: webhook_1.WebhookProvider,
|
|
571
|
+
WebSocketProvider: websocket_1.WebSocketProvider,
|
|
534
572
|
loadApiProvider,
|
|
535
573
|
};
|
|
536
574
|
//# sourceMappingURL=providers.js.map
|