@askdb/core 1.0.0-beta.40 → 1.0.0-beta.42
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 +39 -1
- package/dist/ask.d.ts +48 -0
- package/dist/ask.d.ts.map +1 -1
- package/dist/ask.js +176 -10
- package/dist/ask.js.map +1 -1
- package/dist/enrichment/suggest.d.ts +7 -0
- package/dist/enrichment/suggest.d.ts.map +1 -1
- package/dist/enrichment/suggest.js +7 -1
- package/dist/enrichment/suggest.js.map +1 -1
- package/dist/errors.d.ts +49 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +20 -0
- package/dist/errors.js.map +1 -1
- package/dist/exec/postgres.d.ts +6 -0
- package/dist/exec/postgres.d.ts.map +1 -0
- package/dist/exec/postgres.js +30 -0
- package/dist/exec/postgres.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/logging/log-events.d.ts +13 -0
- package/dist/logging/log-events.d.ts.map +1 -1
- package/dist/logging/log-events.js +13 -0
- package/dist/logging/log-events.js.map +1 -1
- package/dist/modes/post-execute-log.d.ts +9 -0
- package/dist/modes/post-execute-log.d.ts.map +1 -0
- package/dist/modes/post-execute-log.js +26 -0
- package/dist/modes/post-execute-log.js.map +1 -0
- package/dist/sql/bind.d.ts +100 -0
- package/dist/sql/bind.d.ts.map +1 -0
- package/dist/sql/bind.js +560 -0
- package/dist/sql/bind.js.map +1 -0
- package/dist/sql/dialect-spec.d.ts +4 -0
- package/dist/sql/dialect-spec.d.ts.map +1 -1
- package/dist/sql/dialect-spec.js +8 -0
- package/dist/sql/dialect-spec.js.map +1 -1
- package/dist/sql/extract-sql.d.ts +8 -1
- package/dist/sql/extract-sql.d.ts.map +1 -1
- package/dist/sql/extract-sql.js +27 -4
- package/dist/sql/extract-sql.js.map +1 -1
- package/dist/sql/generate.d.ts +19 -0
- package/dist/sql/generate.d.ts.map +1 -1
- package/dist/sql/generate.js +79 -5
- package/dist/sql/generate.js.map +1 -1
- package/dist/sql/index.d.ts +4 -2
- package/dist/sql/index.d.ts.map +1 -1
- package/dist/sql/index.js +4 -2
- package/dist/sql/index.js.map +1 -1
- package/dist/sql/parameter-manifest.d.ts +34 -0
- package/dist/sql/parameter-manifest.d.ts.map +1 -0
- package/dist/sql/parameter-manifest.js +150 -0
- package/dist/sql/parameter-manifest.js.map +1 -0
- package/dist/sql/prompt.d.ts +7 -1
- package/dist/sql/prompt.d.ts.map +1 -1
- package/dist/sql/prompt.js +24 -1
- package/dist/sql/prompt.js.map +1 -1
- package/dist/sql/sensitive-guardrail.d.ts +47 -0
- package/dist/sql/sensitive-guardrail.d.ts.map +1 -0
- package/dist/sql/sensitive-guardrail.js +589 -0
- package/dist/sql/sensitive-guardrail.js.map +1 -0
- package/dist/sql/tenant-placeholders.d.ts +3 -2
- package/dist/sql/tenant-placeholders.d.ts.map +1 -1
- package/dist/sql/tenant-placeholders.js +14 -11
- package/dist/sql/tenant-placeholders.js.map +1 -1
- package/dist/sql/validate.d.ts.map +1 -1
- package/dist/sql/validate.js +1 -47
- package/dist/sql/validate.js.map +1 -1
- package/package.json +6 -5
- package/dist/ai/provider.d.ts +0 -116
- package/dist/ai/provider.d.ts.map +0 -1
- package/dist/ai/provider.js +0 -255
- package/dist/ai/provider.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sensitive-guardrail.js","sourceRoot":"","sources":["../../src/sql/sensitive-guardrail.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { NormalizedTenantPolicy, TenantScope } from "../schema/v2/tenant-policy.js";
|
|
2
|
+
import type { DialectSpec } from "./dialect-spec.js";
|
|
2
3
|
export type TenantSqlOutputMode = "sql-only" | "sql-params";
|
|
3
4
|
export type TenantBinding = {
|
|
4
5
|
placeholder: string;
|
|
@@ -26,12 +27,12 @@ type ResolvedPlaceholder = {
|
|
|
26
27
|
ids: string[];
|
|
27
28
|
};
|
|
28
29
|
export declare function resolvePlaceholders(sql: string, policy: NormalizedTenantPolicy, scope: TenantScope): ResolvedPlaceholder[];
|
|
29
|
-
export declare function replacePlaceholdersWithLiterals(sql: string, resolved: ResolvedPlaceholder[]): string;
|
|
30
|
+
export declare function replacePlaceholdersWithLiterals(sql: string, resolved: ResolvedPlaceholder[], dialect?: Pick<DialectSpec, "backslashEscapes">): string;
|
|
30
31
|
export declare function replacePlaceholdersWithParams(sql: string, resolved: ResolvedPlaceholder[], startIndex?: number): {
|
|
31
32
|
sql: string;
|
|
32
33
|
params: unknown[];
|
|
33
34
|
nextIndex: number;
|
|
34
35
|
};
|
|
35
|
-
export declare function resolveTenantSql(sql: string, policy: NormalizedTenantPolicy, scope: TenantScope, mode?: TenantSqlOutputMode, paramStartIndex?: number): TenantPlaceholderResult;
|
|
36
|
+
export declare function resolveTenantSql(sql: string, policy: NormalizedTenantPolicy, scope: TenantScope, mode?: TenantSqlOutputMode, paramStartIndex?: number, dialect?: Pick<DialectSpec, "backslashEscapes">): TenantPlaceholderResult;
|
|
36
37
|
export {};
|
|
37
38
|
//# sourceMappingURL=tenant-placeholders.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-placeholders.d.ts","sourceRoot":"","sources":["../../src/sql/tenant-placeholders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EAEZ,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"tenant-placeholders.d.ts","sourceRoot":"","sources":["../../src/sql/tenant-placeholders.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EAEZ,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAWrD,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,YAAY,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,EAAE,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,aAAa,EAAE,CAAA;CAAE,GAC5D;IACE,IAAI,EAAE,YAAY,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAMN,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAExD;AAMD,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAM/D;AAMD,KAAK,mBAAmB,GAAG;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAErG,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,sBAAsB,EAC9B,KAAK,EAAE,WAAW,GACjB,mBAAmB,EAAE,CA2BvB;AAkCD,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,mBAAmB,EAAE,EAC/B,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,GAC9C,MAAM,CAYR;AAMD,wBAAgB,6BAA6B,CAC3C,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,mBAAmB,EAAE,EAC/B,UAAU,GAAE,MAAU,GACrB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAqBvD;AAsCD,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,sBAAsB,EAC9B,KAAK,EAAE,WAAW,EAClB,IAAI,GAAE,mBAAgC,EACtC,eAAe,GAAE,MAAU,EAC3B,OAAO,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,kBAAkB,CAAC,GAC9C,uBAAuB,CA+BzB"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
+
import { escapeSqlLiteral, escapeSqlLiteralLegacy, scanTenantPlaceholders, } from "./bind.js";
|
|
1
2
|
// ---------------------------------------------------------------------------
|
|
2
3
|
// Placeholder naming convention (matches tenant-prompt.ts)
|
|
3
4
|
// ---------------------------------------------------------------------------
|
|
4
|
-
const PLACEHOLDER_RE = /:tenant_([a-z0-9_]+)_ids/g;
|
|
5
5
|
export function placeholderForRoot(label) {
|
|
6
6
|
return `:tenant_${label.toLowerCase().replace(/[^a-z0-9]+/g, "_")}_ids`;
|
|
7
7
|
}
|
|
8
8
|
// ---------------------------------------------------------------------------
|
|
9
|
-
// Extract placeholders found in SQL
|
|
9
|
+
// Extract placeholders found in SQL (quote-aware via shared scanner)
|
|
10
10
|
// ---------------------------------------------------------------------------
|
|
11
11
|
export function extractTenantPlaceholders(sql) {
|
|
12
12
|
const matches = new Set();
|
|
13
|
-
for (const
|
|
14
|
-
matches.add(
|
|
13
|
+
for (const p of scanTenantPlaceholders(sql)) {
|
|
14
|
+
matches.add(p.placeholder);
|
|
15
15
|
}
|
|
16
16
|
return [...matches];
|
|
17
17
|
}
|
|
@@ -65,17 +65,20 @@ function buildIdsByRoot(access) {
|
|
|
65
65
|
// ---------------------------------------------------------------------------
|
|
66
66
|
// Replace placeholders — SQL-only mode (inline literals)
|
|
67
67
|
// ---------------------------------------------------------------------------
|
|
68
|
-
function
|
|
69
|
-
|
|
68
|
+
function escapeTenantId(value, dialect) {
|
|
69
|
+
if (dialect === undefined) {
|
|
70
|
+
return escapeSqlLiteralLegacy(value);
|
|
71
|
+
}
|
|
72
|
+
return escapeSqlLiteral(value, dialect);
|
|
70
73
|
}
|
|
71
|
-
export function replacePlaceholdersWithLiterals(sql, resolved) {
|
|
74
|
+
export function replacePlaceholdersWithLiterals(sql, resolved, dialect) {
|
|
72
75
|
let result = sql;
|
|
73
76
|
for (const r of resolved) {
|
|
74
77
|
if (r.ids.length === 0)
|
|
75
78
|
continue;
|
|
76
79
|
const literal = r.ids.length === 1
|
|
77
|
-
?
|
|
78
|
-
: `(${r.ids.map(
|
|
80
|
+
? escapeTenantId(r.ids[0], dialect)
|
|
81
|
+
: `(${r.ids.map((id) => escapeTenantId(id, dialect)).join(", ")})`;
|
|
79
82
|
result = replaceOperatorAware(result, r.placeholder, literal, r.ids.length > 1);
|
|
80
83
|
}
|
|
81
84
|
return result;
|
|
@@ -124,7 +127,7 @@ function escapeRegex(s) {
|
|
|
124
127
|
// ---------------------------------------------------------------------------
|
|
125
128
|
// High-level entry point
|
|
126
129
|
// ---------------------------------------------------------------------------
|
|
127
|
-
export function resolveTenantSql(sql, policy, scope, mode = "sql-only", paramStartIndex = 1) {
|
|
130
|
+
export function resolveTenantSql(sql, policy, scope, mode = "sql-only", paramStartIndex = 1, dialect) {
|
|
128
131
|
if (scope.access.kind === "global") {
|
|
129
132
|
return mode === "sql-only"
|
|
130
133
|
? { mode: "sql-only", sql, bindings: [] }
|
|
@@ -140,7 +143,7 @@ export function resolveTenantSql(sql, policy, scope, mode = "sql-only", paramSta
|
|
|
140
143
|
if (mode === "sql-only") {
|
|
141
144
|
return {
|
|
142
145
|
mode: "sql-only",
|
|
143
|
-
sql: replacePlaceholdersWithLiterals(sql, resolved),
|
|
146
|
+
sql: replacePlaceholdersWithLiterals(sql, resolved, dialect),
|
|
144
147
|
bindings,
|
|
145
148
|
};
|
|
146
149
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenant-placeholders.js","sourceRoot":"","sources":["../../src/sql/tenant-placeholders.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tenant-placeholders.js","sourceRoot":"","sources":["../../src/sql/tenant-placeholders.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/sql/validate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/sql/validate.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAuBrD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAqD3E;AAED,iGAAiG;AACjG,MAAM,MAAM,sBAAsB,GAAG;IACnC,aAAa,EAAE,QAAQ,GAAG,MAAM,CAAC;IACjC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,6FAA6F;AAC7F,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,MAAM,GAAG,sBAAsB,CAgB5F"}
|
package/dist/sql/validate.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SqlValidationError } from "../errors.js";
|
|
2
|
+
import { stripSqlStringLiterals } from "./bind.js";
|
|
2
3
|
const BASE_FORBIDDEN = [
|
|
3
4
|
"insert",
|
|
4
5
|
"update",
|
|
@@ -70,53 +71,6 @@ export function buildSelectGuardrailExplanation(validatedSql) {
|
|
|
70
71
|
remediationNote: "Heuristic Phase-2 checks only—not a full SQL parser or production policy engine. Always review before trusted execution.",
|
|
71
72
|
};
|
|
72
73
|
}
|
|
73
|
-
function stripSqlStringLiterals(sql) {
|
|
74
|
-
let out = "";
|
|
75
|
-
let i = 0;
|
|
76
|
-
while (i < sql.length) {
|
|
77
|
-
const ch = sql[i];
|
|
78
|
-
if (ch === "'") {
|
|
79
|
-
i++;
|
|
80
|
-
while (i < sql.length) {
|
|
81
|
-
if (sql[i] === "'" && sql[i + 1] === "'") {
|
|
82
|
-
i += 2;
|
|
83
|
-
continue;
|
|
84
|
-
}
|
|
85
|
-
if (sql[i] === "'") {
|
|
86
|
-
i++;
|
|
87
|
-
break;
|
|
88
|
-
}
|
|
89
|
-
i++;
|
|
90
|
-
}
|
|
91
|
-
out += "''";
|
|
92
|
-
continue;
|
|
93
|
-
}
|
|
94
|
-
if (ch === '"') {
|
|
95
|
-
i++;
|
|
96
|
-
while (i < sql.length && sql[i] !== '"') {
|
|
97
|
-
if (sql[i] === "\\")
|
|
98
|
-
i++;
|
|
99
|
-
i++;
|
|
100
|
-
}
|
|
101
|
-
if (i < sql.length)
|
|
102
|
-
i++;
|
|
103
|
-
out += '""';
|
|
104
|
-
continue;
|
|
105
|
-
}
|
|
106
|
-
if (ch === "$" && /^\$\w*\$/.test(sql.slice(i))) {
|
|
107
|
-
const end = sql.indexOf("$", i + 1);
|
|
108
|
-
const tagEnd = sql.indexOf("$", end + 1);
|
|
109
|
-
if (tagEnd === -1)
|
|
110
|
-
return out + sql.slice(i);
|
|
111
|
-
i = tagEnd + 1;
|
|
112
|
-
out += "$$";
|
|
113
|
-
continue;
|
|
114
|
-
}
|
|
115
|
-
out += ch;
|
|
116
|
-
i++;
|
|
117
|
-
}
|
|
118
|
-
return out;
|
|
119
|
-
}
|
|
120
74
|
function firstMeaningfulToken(withoutStrings) {
|
|
121
75
|
const token = /([a-zA-Z_][\w$]*|"[^"]*")/.exec(withoutStrings.trim());
|
|
122
76
|
if (!token)
|
package/dist/sql/validate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/sql/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAA8B,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/sql/validate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@askdb/core",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.42",
|
|
4
4
|
"description": "AskDB core: dialect-agnostic NL→SQL pipeline. Provides ask() orchestration, schema/IR types, modes, logging, and retrieval input. Bring your own dialect (e.g. @askdb/postgres).",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"askdb",
|
|
@@ -28,7 +28,8 @@
|
|
|
28
28
|
"exports": {
|
|
29
29
|
".": {
|
|
30
30
|
"types": "./dist/index.d.ts",
|
|
31
|
-
"import": "./dist/index.js"
|
|
31
|
+
"import": "./dist/index.js",
|
|
32
|
+
"default": "./dist/index.js"
|
|
32
33
|
}
|
|
33
34
|
},
|
|
34
35
|
"files": [
|
|
@@ -38,17 +39,17 @@
|
|
|
38
39
|
"NOTICE"
|
|
39
40
|
],
|
|
40
41
|
"engines": {
|
|
41
|
-
"node": ">=
|
|
42
|
+
"node": ">=22.12"
|
|
42
43
|
},
|
|
43
44
|
"dependencies": {
|
|
44
|
-
"ai": "^
|
|
45
|
+
"ai": "^7.0.51",
|
|
45
46
|
"gray-matter": "^4.0.3",
|
|
46
47
|
"pino": "^10.3.1",
|
|
47
48
|
"zod": "^4.4.3"
|
|
48
49
|
},
|
|
49
50
|
"devDependencies": {
|
|
50
51
|
"typescript": "^6.0.3",
|
|
51
|
-
"vitest": "^4.1.
|
|
52
|
+
"vitest": "^4.1.10"
|
|
52
53
|
},
|
|
53
54
|
"scripts": {
|
|
54
55
|
"build": "tsc -p tsconfig.build.json",
|
package/dist/ai/provider.d.ts
DELETED
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import type { EmbeddingModel, LanguageModel } from "ai";
|
|
2
|
-
/**
|
|
3
|
-
* AI provider selector. AskDB is BYO-LanguageModel at the function level
|
|
4
|
-
* (see `ask()`), but the bundled apps (CLI, HTTP API, Studio, TUI) all need
|
|
5
|
-
* to construct one from environment variables. This module is the single
|
|
6
|
-
* place that does that, so adding a new provider only touches one file.
|
|
7
|
-
*
|
|
8
|
-
* - `openai` — OpenAI or any OpenAI-compatible REST endpoint
|
|
9
|
-
* (set `ASKDB_AI_BASE_URL` for compatible endpoints, including
|
|
10
|
-
* Azure AI Foundry's `/openai/v1` route and self-hosted gateways).
|
|
11
|
-
* - `azure` — Azure OpenAI Service / Azure AI Foundry deployments via
|
|
12
|
-
* `@ai-sdk/azure`. Uses the `resourceName` + deployment-name
|
|
13
|
-
* URL shape with the `api-key` header.
|
|
14
|
-
*/
|
|
15
|
-
export type AskDbAiProvider = "openai" | "azure" | "google";
|
|
16
|
-
export type AskDbAiConfig = {
|
|
17
|
-
provider: AskDbAiProvider;
|
|
18
|
-
apiKey: string;
|
|
19
|
-
/** OpenAI: model id (e.g. `gpt-4o-mini`). Azure: deployment name. */
|
|
20
|
-
model: string;
|
|
21
|
-
/** Custom REST base URL. Optional for OpenAI; for Azure, overrides resourceName. */
|
|
22
|
-
baseURL?: string;
|
|
23
|
-
/** Azure only: resource subdomain (e.g. `my-foundry` for `https://my-foundry.openai.azure.com`). */
|
|
24
|
-
resourceName?: string;
|
|
25
|
-
/** Azure only: API version (e.g. `2024-10-21`). */
|
|
26
|
-
apiVersion?: string;
|
|
27
|
-
};
|
|
28
|
-
export type AskDbAiEnv = Record<string, string | undefined>;
|
|
29
|
-
export type ResolveAskDbAiConfigOptions = {
|
|
30
|
-
/** Default model when no env override is set. */
|
|
31
|
-
modelDefault?: string;
|
|
32
|
-
};
|
|
33
|
-
/**
|
|
34
|
-
* Resolves a provider config from environment variables. Returns `undefined`
|
|
35
|
-
* if no API key is configured (callers treat this as "AI is disabled" rather
|
|
36
|
-
* than erroring, so AI features can be optional).
|
|
37
|
-
*
|
|
38
|
-
* BYO-key design: each provider has its native env vars (e.g. `OPENAI_API_KEY`
|
|
39
|
-
* for OpenAI, `AZURE_OPENAI_API_KEY` for Azure / Foundry). The `ASKDB_AI_*`
|
|
40
|
-
* family is a universal alias set that works across providers — useful when
|
|
41
|
-
* you want a single set of names across deployments.
|
|
42
|
-
*
|
|
43
|
-
* Precedence for the API key (within the selected provider):
|
|
44
|
-
* 1. `ASKDB_AI_API_KEY` — universal alias (primary)
|
|
45
|
-
* 2. provider-native primary — `OPENAI_API_KEY` or `AZURE_OPENAI_API_KEY` / `AZURE_API_KEY`
|
|
46
|
-
* 3. provider-native secondary — `OPENAI_API_KEY_SECONDARY` or `AZURE_OPENAI_API_KEY_SECONDARY`
|
|
47
|
-
* 4. `ASKDB_AI_API_KEY_SECONDARY` — universal rotation fallback
|
|
48
|
-
*
|
|
49
|
-
* **Important:** Only `@askdb/config` reads `process.env` (during dotenv load and while evaluating
|
|
50
|
-
* `askdb.config.*`). Pass `getAskDbRuntimeConfig().ai.aiEnv` from `@askdb/config` after
|
|
51
|
-
* `bootstrapAskDbEnv()`, or an explicit plain object in tests.
|
|
52
|
-
*
|
|
53
|
-
* @param env - String map in the shape of canonical AskDB env keys (from the runtime snapshot).
|
|
54
|
-
* @param options - Optional per-app overrides (e.g. a per-app model env var).
|
|
55
|
-
*/
|
|
56
|
-
export declare function resolveAskDbAiConfig(env: AskDbAiEnv, options?: ResolveAskDbAiConfigOptions): AskDbAiConfig | undefined;
|
|
57
|
-
export type ResolveAskDbEmbeddingConfigOptions = {
|
|
58
|
-
/** Default embedding model/deployment when no env override is set. */
|
|
59
|
-
modelDefault?: string;
|
|
60
|
-
/**
|
|
61
|
-
* Embedding model env var (e.g. `ASKDB_RAG_EMBEDDER_MODEL`).
|
|
62
|
-
*/
|
|
63
|
-
modelEnvVar?: string;
|
|
64
|
-
};
|
|
65
|
-
/**
|
|
66
|
-
* Resolves an embedding model config from the same provider/key/base URL
|
|
67
|
-
* connection as `resolveAskDbAiConfig`, but with embedding-specific model
|
|
68
|
-
* precedence so chat model ids (for example `gpt-4o`) are not used as
|
|
69
|
-
* embedding model ids by accident.
|
|
70
|
-
*
|
|
71
|
-
* **Important:** Only `@askdb/config` reads `process.env` (during dotenv load and while evaluating
|
|
72
|
-
* `askdb.config.*`). Pass `getAskDbRuntimeConfig().ai.aiEnv` from `@askdb/config` after
|
|
73
|
-
* `bootstrapAskDbEnv()`, or an explicit plain object in tests.
|
|
74
|
-
*
|
|
75
|
-
* @param env - String map in the shape of canonical AskDB env keys (from the runtime snapshot).
|
|
76
|
-
* @param options - Optional per-app overrides (e.g. a per-app embedding model env var).
|
|
77
|
-
*/
|
|
78
|
-
export declare function resolveAskDbEmbeddingConfig(env: AskDbAiEnv, options?: ResolveAskDbEmbeddingConfigOptions): AskDbAiConfig | undefined;
|
|
79
|
-
/** Build a {@link LanguageModel} from an already-resolved config. */
|
|
80
|
-
export declare function createAskDbLanguageModel(config: AskDbAiConfig): Promise<LanguageModel>;
|
|
81
|
-
export type CreateAskDbEmbeddingModelOptions = {
|
|
82
|
-
/** Optional dimensionality override for providers that support it. */
|
|
83
|
-
dimensions?: number;
|
|
84
|
-
/** Optional end-user id forwarded to providers that support it. */
|
|
85
|
-
user?: string;
|
|
86
|
-
};
|
|
87
|
-
/** Build an AI SDK text embedding model from an already-resolved config. */
|
|
88
|
-
export declare function createAskDbEmbeddingModel(config: AskDbAiConfig, options?: CreateAskDbEmbeddingModelOptions): Promise<EmbeddingModel<string>>;
|
|
89
|
-
/**
|
|
90
|
-
* Convenience wrapper: resolve config from env, then construct a model.
|
|
91
|
-
* Returns `undefined` when no API key is configured.
|
|
92
|
-
*
|
|
93
|
-
* **Important:** Only `@askdb/config` reads `process.env` (during dotenv load and while evaluating
|
|
94
|
-
* `askdb.config.*`). Pass `getAskDbRuntimeConfig().ai.aiEnv` from `@askdb/config` after
|
|
95
|
-
* `bootstrapAskDbEnv()`, or an explicit plain object in tests.
|
|
96
|
-
*
|
|
97
|
-
* @param env - String map in the shape of canonical AskDB env keys (from the runtime snapshot).
|
|
98
|
-
* @param options - Optional per-app overrides (e.g. a per-app model env var).
|
|
99
|
-
*/
|
|
100
|
-
export declare function createAskDbLanguageModelFromEnv(env: AskDbAiEnv, options?: ResolveAskDbAiConfigOptions): Promise<LanguageModel | undefined>;
|
|
101
|
-
/** Resolve embedding config from env, then construct an AI SDK embedding model.
|
|
102
|
-
*
|
|
103
|
-
* **Important:** Only `@askdb/config` reads `process.env` (during dotenv load and while evaluating
|
|
104
|
-
* `askdb.config.*`). Pass `getAskDbRuntimeConfig().ai.aiEnv` after `bootstrapAskDbEnv()`, or
|
|
105
|
-
* an explicit plain object in tests.
|
|
106
|
-
*
|
|
107
|
-
* @param env - String map in the shape of canonical AskDB env keys (from the runtime snapshot).
|
|
108
|
-
* @param options - Optional per-app overrides plus embedding-specific model/dimensions settings.
|
|
109
|
-
*/
|
|
110
|
-
export declare function createAskDbEmbeddingModelFromEnv(env: AskDbAiEnv, options?: ResolveAskDbEmbeddingConfigOptions & CreateAskDbEmbeddingModelOptions): Promise<EmbeddingModel<string> | undefined>;
|
|
111
|
-
/**
|
|
112
|
-
* Human-readable message describing how to configure AI, used by callers
|
|
113
|
-
* when no key is configured.
|
|
114
|
-
*/
|
|
115
|
-
export declare function askDbAiKeyMissingMessage(context: string): string;
|
|
116
|
-
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/ai/provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAGxD;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE5D,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,eAAe,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,qEAAqE;IACrE,KAAK,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oGAAoG;IACpG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mDAAmD;IACnD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAE5D,MAAM,MAAM,2BAA2B,GAAG;IACxC,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AAeF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,UAAU,EACf,OAAO,GAAE,2BAAgC,GACxC,aAAa,GAAG,SAAS,CA8D3B;AAED,MAAM,MAAM,kCAAkC,GAAG;IAC/C,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,UAAU,EACf,OAAO,GAAE,kCAAuC,GAC/C,aAAa,GAAG,SAAS,CAiE3B;AAED,qEAAqE;AACrE,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,aAAa,CAAC,CA0BxB;AAED,MAAM,MAAM,gCAAgC,GAAG;IAC7C,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,4EAA4E;AAC5E,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,aAAa,EACrB,OAAO,GAAE,gCAAqC,GAC7C,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CA8BjC;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,UAAU,EACf,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAIpC;AAED;;;;;;;;GAQG;AACH,wBAAsB,gCAAgC,CACpD,GAAG,EAAE,UAAU,EACf,OAAO,GAAE,kCAAkC,GAAG,gCAAqC,GAClF,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,CAI7C;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAWhE"}
|