@goreal-ai/echo-pdk 0.7.1 → 0.8.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 +1 -1
- package/dist/ai-judge/index.d.ts +11 -21
- package/dist/ai-judge/index.d.ts.map +1 -1
- package/dist/ai-judge/index.js +36 -90
- package/dist/ai-judge/index.js.map +1 -1
- package/dist/embeddings/cosine.d.ts +15 -0
- package/dist/embeddings/cosine.d.ts.map +1 -0
- package/dist/embeddings/cosine.js +37 -0
- package/dist/embeddings/cosine.js.map +1 -0
- package/dist/embeddings/index.d.ts +9 -0
- package/dist/embeddings/index.d.ts.map +1 -0
- package/dist/embeddings/index.js +11 -0
- package/dist/embeddings/index.js.map +1 -0
- package/dist/embeddings/openai.d.ts +11 -0
- package/dist/embeddings/openai.d.ts.map +1 -0
- package/dist/embeddings/openai.js +38 -0
- package/dist/embeddings/openai.js.map +1 -0
- package/dist/embeddings/registry.d.ts +13 -0
- package/dist/embeddings/registry.d.ts.map +1 -0
- package/dist/embeddings/registry.js +29 -0
- package/dist/embeddings/registry.js.map +1 -0
- package/dist/embeddings/types.d.ts +35 -0
- package/dist/embeddings/types.d.ts.map +1 -0
- package/dist/embeddings/types.js +8 -0
- package/dist/embeddings/types.js.map +1 -0
- package/dist/embeddings/voyage.d.ts +12 -0
- package/dist/embeddings/voyage.d.ts.map +1 -0
- package/dist/embeddings/voyage.js +39 -0
- package/dist/embeddings/voyage.js.map +1 -0
- package/dist/eval/assertions.d.ts +35 -0
- package/dist/eval/assertions.d.ts.map +1 -0
- package/dist/eval/assertions.js +349 -0
- package/dist/eval/assertions.js.map +1 -0
- package/dist/eval/dataset.d.ts +42 -0
- package/dist/eval/dataset.d.ts.map +1 -0
- package/dist/eval/dataset.js +101 -0
- package/dist/eval/dataset.js.map +1 -0
- package/dist/eval/index.d.ts +14 -0
- package/dist/eval/index.d.ts.map +1 -0
- package/dist/eval/index.js +17 -0
- package/dist/eval/index.js.map +1 -0
- package/dist/eval/loader.d.ts +30 -0
- package/dist/eval/loader.d.ts.map +1 -0
- package/dist/eval/loader.js +170 -0
- package/dist/eval/loader.js.map +1 -0
- package/dist/eval/reporter.d.ts +26 -0
- package/dist/eval/reporter.d.ts.map +1 -0
- package/dist/eval/reporter.js +164 -0
- package/dist/eval/reporter.js.map +1 -0
- package/dist/eval/runner.d.ts +28 -0
- package/dist/eval/runner.d.ts.map +1 -0
- package/dist/eval/runner.js +232 -0
- package/dist/eval/runner.js.map +1 -0
- package/dist/eval/types.d.ts +257 -0
- package/dist/eval/types.d.ts.map +1 -0
- package/dist/eval/types.js +11 -0
- package/dist/eval/types.js.map +1 -0
- package/dist/evaluator/evaluator.d.ts +2 -2
- package/dist/evaluator/evaluator.js +5 -5
- package/dist/evaluator/evaluator.js.map +1 -1
- package/dist/evaluator/index.d.ts +1 -1
- package/dist/evaluator/index.d.ts.map +1 -1
- package/dist/evaluator/index.js +1 -1
- package/dist/evaluator/index.js.map +1 -1
- package/dist/evaluator/operators.d.ts +9 -5
- package/dist/evaluator/operators.d.ts.map +1 -1
- package/dist/evaluator/operators.js +26 -33
- package/dist/evaluator/operators.js.map +1 -1
- package/dist/index.d.ts +8 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +38 -20
- package/dist/index.js.map +1 -1
- package/dist/parser/ast.js +1 -1
- package/dist/parser/ast.js.map +1 -1
- package/dist/parser/lexer.d.ts +1 -1
- package/dist/parser/lexer.js +1 -1
- package/dist/project/index.d.ts.map +1 -1
- package/dist/project/index.js +10 -3
- package/dist/project/index.js.map +1 -1
- package/dist/project/types.d.ts +19 -4
- package/dist/project/types.d.ts.map +1 -1
- package/dist/project/types.js +3 -0
- package/dist/project/types.js.map +1 -1
- package/dist/providers/anthropic.d.ts +18 -0
- package/dist/providers/anthropic.d.ts.map +1 -0
- package/dist/providers/anthropic.js +123 -0
- package/dist/providers/anthropic.js.map +1 -0
- package/dist/providers/base.d.ts +45 -0
- package/dist/providers/base.d.ts.map +1 -0
- package/dist/providers/base.js +107 -0
- package/dist/providers/base.js.map +1 -0
- package/dist/providers/index.d.ts +14 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +16 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/openai.d.ts +18 -0
- package/dist/providers/openai.d.ts.map +1 -0
- package/dist/providers/openai.js +106 -0
- package/dist/providers/openai.js.map +1 -0
- package/dist/providers/registry.d.ts +80 -0
- package/dist/providers/registry.d.ts.map +1 -0
- package/dist/providers/registry.js +118 -0
- package/dist/providers/registry.js.map +1 -0
- package/dist/providers/run-prompt.d.ts +69 -0
- package/dist/providers/run-prompt.d.ts.map +1 -0
- package/dist/providers/run-prompt.js +79 -0
- package/dist/providers/run-prompt.js.map +1 -0
- package/dist/providers/types.d.ts +123 -0
- package/dist/providers/types.d.ts.map +1 -0
- package/dist/providers/types.js +9 -0
- package/dist/providers/types.js.map +1 -0
- package/dist/types.d.ts +5 -5
- package/dist/types.d.ts.map +1 -1
- package/package.json +10 -7
- package/scripts/bundle-for-graaljs.mjs +45 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Provider type definitions
|
|
3
|
+
*
|
|
4
|
+
* All types for the unified AI provider system.
|
|
5
|
+
* Providers implement AIProviderInstance to expose a consistent interface
|
|
6
|
+
* for completion, model listing, judging, and similarity.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Supported AI provider types.
|
|
10
|
+
* Adding a new provider = add to this union + implement factory.
|
|
11
|
+
*/
|
|
12
|
+
export type ProviderType = 'openai' | 'anthropic';
|
|
13
|
+
/**
|
|
14
|
+
* Provider metadata for discovery.
|
|
15
|
+
* Returned by getProviders() so frontends can build provider selectors.
|
|
16
|
+
*/
|
|
17
|
+
export interface ProviderInfo {
|
|
18
|
+
/** Provider type identifier */
|
|
19
|
+
type: ProviderType;
|
|
20
|
+
/** Human-readable name */
|
|
21
|
+
name: string;
|
|
22
|
+
/** Default API base URL */
|
|
23
|
+
baseUrl: string;
|
|
24
|
+
/** Default model for this provider */
|
|
25
|
+
defaultModel: string;
|
|
26
|
+
/** Environment variable names checked for API key (in priority order) */
|
|
27
|
+
envKeys: string[];
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Configuration needed to create a provider instance.
|
|
31
|
+
*/
|
|
32
|
+
export interface ProviderConfig {
|
|
33
|
+
/** Provider type */
|
|
34
|
+
type: ProviderType;
|
|
35
|
+
/** API key */
|
|
36
|
+
apiKey: string;
|
|
37
|
+
/** Model to use (defaults to provider's defaultModel) */
|
|
38
|
+
model?: string;
|
|
39
|
+
/** Custom base URL (overrides provider default) */
|
|
40
|
+
baseUrl?: string;
|
|
41
|
+
/** Request timeout in milliseconds (default: 30000) */
|
|
42
|
+
timeout?: number;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Model information from a live API call.
|
|
46
|
+
* Never hardcoded — always fetched from the provider.
|
|
47
|
+
*/
|
|
48
|
+
export interface ModelInfo {
|
|
49
|
+
/** Model identifier (e.g., 'gpt-4o', 'claude-sonnet-4-5-20250929') */
|
|
50
|
+
id: string;
|
|
51
|
+
/** Which provider owns this model */
|
|
52
|
+
provider: ProviderType;
|
|
53
|
+
/** Unix timestamp of model creation (if available) */
|
|
54
|
+
createdAt?: number;
|
|
55
|
+
/** Organization that owns the model */
|
|
56
|
+
ownedBy?: string;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Chat message for completion requests.
|
|
60
|
+
*/
|
|
61
|
+
export interface ChatMessage {
|
|
62
|
+
role: 'system' | 'user' | 'assistant';
|
|
63
|
+
content: string;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Response from a completion call.
|
|
67
|
+
*/
|
|
68
|
+
export interface CompletionResponse {
|
|
69
|
+
/** The response text */
|
|
70
|
+
text: string;
|
|
71
|
+
/** Token usage */
|
|
72
|
+
tokens?: {
|
|
73
|
+
prompt: number;
|
|
74
|
+
completion: number;
|
|
75
|
+
total: number;
|
|
76
|
+
};
|
|
77
|
+
/** Latency in milliseconds */
|
|
78
|
+
latencyMs: number;
|
|
79
|
+
/** Model used */
|
|
80
|
+
model: string;
|
|
81
|
+
/** Provider type */
|
|
82
|
+
provider: ProviderType;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Options for a chat completion request.
|
|
86
|
+
*/
|
|
87
|
+
export interface CompletionOptions {
|
|
88
|
+
/** Override the default model for this request */
|
|
89
|
+
model?: string;
|
|
90
|
+
/** Sampling temperature (0-2) */
|
|
91
|
+
temperature?: number;
|
|
92
|
+
/** Maximum tokens in the response */
|
|
93
|
+
maxTokens?: number;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* What each provider implements.
|
|
97
|
+
* Created by factory functions (createOpenAIProvider, createAnthropicProvider).
|
|
98
|
+
*/
|
|
99
|
+
export interface AIProviderInstance {
|
|
100
|
+
/** Provider metadata (frozen — safe to hold a reference) */
|
|
101
|
+
readonly info: ProviderInfo;
|
|
102
|
+
/**
|
|
103
|
+
* Send a chat completion request.
|
|
104
|
+
*/
|
|
105
|
+
complete(messages: ChatMessage[], options?: CompletionOptions): Promise<CompletionResponse>;
|
|
106
|
+
/**
|
|
107
|
+
* List available models from the provider API.
|
|
108
|
+
*/
|
|
109
|
+
listModels(): Promise<ModelInfo[]>;
|
|
110
|
+
/**
|
|
111
|
+
* Judge a response against a question.
|
|
112
|
+
* Returns pass/fail with reasoning.
|
|
113
|
+
*/
|
|
114
|
+
judge(response: string, question: string): Promise<{
|
|
115
|
+
pass: boolean;
|
|
116
|
+
reasoning: string;
|
|
117
|
+
}>;
|
|
118
|
+
/**
|
|
119
|
+
* Rate semantic similarity between two texts (0.0-1.0).
|
|
120
|
+
*/
|
|
121
|
+
similarity(textA: string, textB: string): Promise<number>;
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,WAAW,CAAC;AAElD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,+BAA+B;IAC/B,IAAI,EAAE,YAAY,CAAC;IACnB,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,yEAAyE;IACzE,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAMD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,oBAAoB;IACpB,IAAI,EAAE,YAAY,CAAC;IACnB,cAAc;IACd,MAAM,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAC;IACX,qCAAqC;IACrC,QAAQ,EAAE,YAAY,CAAC;IACvB,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAMD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,MAAM,CAAC,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;IACF,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,QAAQ,EAAE,YAAY,CAAC;CACxB;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAMD;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,4DAA4D;IAC5D,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAE5B;;OAEG;IACH,QAAQ,CACN,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAE/B;;OAEG;IACH,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAEnC;;;OAGG;IACH,KAAK,CACH,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEjD;;OAEG;IACH,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3D"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Provider type definitions
|
|
3
|
+
*
|
|
4
|
+
* All types for the unified AI provider system.
|
|
5
|
+
* Providers implement AIProviderInstance to expose a consistent interface
|
|
6
|
+
* for completion, model listing, judging, and similarity.
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/providers/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
package/dist/types.d.ts
CHANGED
|
@@ -79,11 +79,11 @@ export interface VariableNode extends BaseNode {
|
|
|
79
79
|
export interface ConditionExpr {
|
|
80
80
|
/** The variable being tested */
|
|
81
81
|
variable: string;
|
|
82
|
-
/** The operator name, e.g., 'equals', 'contains', '
|
|
82
|
+
/** The operator name, e.g., 'equals', 'contains', 'ai_gate' */
|
|
83
83
|
operator: string;
|
|
84
84
|
/** The argument to the operator (if any) */
|
|
85
85
|
argument?: string | number | string[];
|
|
86
|
-
/** Flag for optimization: true
|
|
86
|
+
/** Flag for optimization: true for `#ai_gate` (or deprecated `#ai_judge`) conditions */
|
|
87
87
|
isAiJudge: boolean;
|
|
88
88
|
}
|
|
89
89
|
/**
|
|
@@ -179,11 +179,11 @@ export interface OperatorDefinition {
|
|
|
179
179
|
};
|
|
180
180
|
}
|
|
181
181
|
/**
|
|
182
|
-
* AI provider configuration for
|
|
182
|
+
* AI provider configuration for `#ai_gate` operator.
|
|
183
183
|
*/
|
|
184
184
|
export interface AIProviderConfig {
|
|
185
185
|
/** The provider type */
|
|
186
|
-
type: '
|
|
186
|
+
type: import('./providers/types.js').ProviderType;
|
|
187
187
|
/** API key (can also be set via ECHO_AI_API_KEY env var) */
|
|
188
188
|
apiKey: string;
|
|
189
189
|
/** Model to use (defaults to provider's default) */
|
|
@@ -236,7 +236,7 @@ export interface PlpConfig {
|
|
|
236
236
|
export interface EchoConfig {
|
|
237
237
|
/** Strict mode: fail on errors vs warn and continue */
|
|
238
238
|
strict?: boolean;
|
|
239
|
-
/** AI provider configuration for
|
|
239
|
+
/** AI provider configuration for `#ai_gate` */
|
|
240
240
|
aiProvider?: AIProviderConfig;
|
|
241
241
|
/** PLP configuration for automatic context resolution */
|
|
242
242
|
plp?: PlpConfig;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;;;;;;;;;GAUG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAElE;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAMD;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,cAAc,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,IAAI,EAAE,UAAU,CAAC;IACjB,yDAAyD;IACzD,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,OAAO,EAAE,YAAY,CAAC;IACtB,sDAAsD;IACtD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@goreal-ai/echo-pdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Echo PDK core rendering engine - parser, evaluator, and renderer",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -13,6 +13,14 @@
|
|
|
13
13
|
"./project": {
|
|
14
14
|
"types": "./dist/project/index.d.ts",
|
|
15
15
|
"import": "./dist/project/index.js"
|
|
16
|
+
},
|
|
17
|
+
"./providers": {
|
|
18
|
+
"types": "./dist/providers/index.d.ts",
|
|
19
|
+
"import": "./dist/providers/index.js"
|
|
20
|
+
},
|
|
21
|
+
"./embeddings": {
|
|
22
|
+
"types": "./dist/embeddings/index.d.ts",
|
|
23
|
+
"import": "./dist/embeddings/index.js"
|
|
16
24
|
}
|
|
17
25
|
},
|
|
18
26
|
"files": [
|
|
@@ -35,13 +43,9 @@
|
|
|
35
43
|
"yaml": "^2.3.0"
|
|
36
44
|
},
|
|
37
45
|
"peerDependencies": {
|
|
38
|
-
"@goreal-ai/plp-client": "^1.2.0"
|
|
39
|
-
"openai": "^4.0.0"
|
|
46
|
+
"@goreal-ai/plp-client": "^1.2.0"
|
|
40
47
|
},
|
|
41
48
|
"peerDependenciesMeta": {
|
|
42
|
-
"openai": {
|
|
43
|
-
"optional": true
|
|
44
|
-
},
|
|
45
49
|
"@goreal-ai/plp-client": {
|
|
46
50
|
"optional": true
|
|
47
51
|
}
|
|
@@ -49,7 +53,6 @@
|
|
|
49
53
|
"devDependencies": {
|
|
50
54
|
"@types/node": "^20.10.0",
|
|
51
55
|
"esbuild": "^0.27.2",
|
|
52
|
-
"openai": "^4.0.0",
|
|
53
56
|
"typescript": "^5.3.0",
|
|
54
57
|
"vitest": "^2.0.0"
|
|
55
58
|
},
|
|
@@ -160,6 +160,51 @@ var echoPdk = {
|
|
|
160
160
|
valid: parseResult.success,
|
|
161
161
|
errors: parseResult.errors || []
|
|
162
162
|
};
|
|
163
|
+
},
|
|
164
|
+
|
|
165
|
+
/**
|
|
166
|
+
* Check if a string is a valid provider type.
|
|
167
|
+
* @param {string} value - String to check
|
|
168
|
+
* @returns {boolean} - true if value is a known provider type
|
|
169
|
+
*/
|
|
170
|
+
isProviderType: function(value) {
|
|
171
|
+
return EchoPDK.isProviderType(value);
|
|
172
|
+
},
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* Get metadata for all known AI providers.
|
|
176
|
+
* @returns {Array} - Array of provider info objects
|
|
177
|
+
*/
|
|
178
|
+
getProviders: function() {
|
|
179
|
+
return EchoPDK.getProviders();
|
|
180
|
+
},
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* List available models for a provider (async, returns a Promise).
|
|
184
|
+
* @param {string} type - Provider type ('openai' or 'anthropic')
|
|
185
|
+
* @param {string} apiKey - API key for authentication
|
|
186
|
+
* @returns {Promise<Array>} - Array of model info objects
|
|
187
|
+
*/
|
|
188
|
+
listModels: function(type, apiKey) {
|
|
189
|
+
return EchoPDK.listModels(type, apiKey);
|
|
190
|
+
},
|
|
191
|
+
|
|
192
|
+
/**
|
|
193
|
+
* Create an AI provider instance.
|
|
194
|
+
* @param {Object} config - { type, apiKey, model?, baseUrl?, timeout? }
|
|
195
|
+
* @returns {Object} - Provider instance with complete(), listModels(), judge(), similarity()
|
|
196
|
+
*/
|
|
197
|
+
createProvider: function(config) {
|
|
198
|
+
return EchoPDK.createProvider(config);
|
|
199
|
+
},
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Render a template and send to an LLM in one call (async, returns a Promise).
|
|
203
|
+
* @param {Object} options - { template, variables, provider, systemMessage? }
|
|
204
|
+
* @returns {Promise<Object>} - { renderedPrompt, response }
|
|
205
|
+
*/
|
|
206
|
+
runPrompt: function(options) {
|
|
207
|
+
return EchoPDK.runPrompt(options);
|
|
163
208
|
}
|
|
164
209
|
};
|
|
165
210
|
`;
|