@askdb/client 1.0.0-beta.3 → 1.0.0-beta.5

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 CHANGED
@@ -40,6 +40,27 @@ const { sql } = await askdb.ask("count active users", {
40
40
  });
41
41
  ```
42
42
 
43
+ ## Parameterized output
44
+
45
+ `askdb.ask()` returns the same `AskPipelineResult` as `@askdb/core`'s `ask()`, including optional `unboundSql`, `params`, `parameters`, and `preparedQuery` when the model complies (default `parameterize: true`). The facade forwards options and returns the core result verbatim — no client-side binding logic.
46
+
47
+ ```ts
48
+ import { bindPreparedQuery } from "@askdb/core";
49
+
50
+ const result = await askdb.ask("How many cities does Colorado have?", { tenantScope });
51
+
52
+ await pool.query(result.sql);
53
+ await pool.query(result.unboundSql!, result.params);
54
+
55
+ const rebound = bindPreparedQuery(result.preparedQuery!, {
56
+ state_name: "Utah",
57
+ ":tenant_agency_ids": authorizedAgencyIds,
58
+ });
59
+ await pool.query(rebound.sql);
60
+ ```
61
+
62
+ Every `ask()` is still one model call. Set `{ parameterize: false }` to opt out of the extra output tokens. `bindPreparedQuery` does not authorize tenant IDs — that remains the host's job when building `tenantScope`. Prefer `params` over `tenantParams` when using the new fields.
63
+
43
64
  ## Multi-tenant usage
44
65
 
45
66
  The schema and model caches are **per-client-instance**. For multi-tenant servers where each tenant has a different schema, either:
package/dist/client.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { type AiProviderAdapters, type AiRegistry } from "@askdb/ai";
1
+ import { type AiProviderAdapters, type AiRegistry, type ReasoningEffort } from "@askdb/ai";
2
2
  import type { AskDbRuntimeConfig } from "@askdb/config";
3
3
  import { type AnyNormalizedSchema, type AskDbLanguageModel, type AskDialectInput, type AskPipelineOptions, type AskPipelineResult } from "@askdb/core";
4
4
  import type { BuiltInDialectId } from "@askdb/core";
@@ -15,6 +15,12 @@ export type AskOverrides = Omit<AskPipelineOptions, "question" | "schema" | "mod
15
15
  schema?: SchemaSource | AnyNormalizedSchema;
16
16
  model?: AskDbLanguageModel;
17
17
  dialect?: AskDialectInput;
18
+ /**
19
+ * Provider-portable reasoning/latency effort for this call, overriding the
20
+ * client default and `askdb.config.ts`'s `ai.reasoning.nlToSql`/`effort`.
21
+ * Ignored when `model` or `deps.generateText` is also set (BYO paths).
22
+ */
23
+ reasoningEffort?: ReasoningEffort;
18
24
  };
19
25
  export type DialectResolution = {
20
26
  dialect: AskDialectInput;
@@ -50,6 +56,13 @@ export type CreateAskDbOptions = {
50
56
  dialect: DialectResolution;
51
57
  modelSource: "override" | "registry" | "mock";
52
58
  }) => void;
59
+ /**
60
+ * Client-level default reasoning/latency effort for NL→SQL generation
61
+ * (`ask()`). When set, takes precedence over `askdb.config.ts`'s
62
+ * `ai.reasoning.nlToSql`/`effort` env resolution; overridden per-call by
63
+ * `AskOverrides.reasoningEffort`.
64
+ */
65
+ reasoningEffort?: ReasoningEffort;
53
66
  };
54
67
  export type AskDbClient = {
55
68
  ask(question: string, overrides?: AskOverrides): Promise<AskPipelineResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,KAAK,kBAAkB,EAAE,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AACvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAML,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EAEpB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAQpD,6EAA6E;AAC7E,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAEpC,2FAA2F;AAC3F,MAAM,MAAM,YAAY,GAAG,IAAI,CAC7B,kBAAkB,EAClB,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAC5C,GAAG;IACF,MAAM,CAAC,EAAE,YAAY,GAAG,mBAAmB,CAAC;IAC5C,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IACrD,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,6DAA6D;IAC7D,MAAM,EAAE,kBAAkB,CAAC;IAC3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,2FAA2F;IAC3F,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,6FAA6F;IAC7F,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC/C,gGAAgG;IAChG,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,iBAAiB,CAAC;QAAC,WAAW,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAC3G,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC5E,qEAAqE;IACrE,MAAM,IAAI,IAAI,CAAC;CAChB,CAAC;AAcF,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CA0IpE"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,eAAe,EACrB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAML,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,eAAe,EAEpB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACvB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAQpD,6EAA6E;AAC7E,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAEpC,2FAA2F;AAC3F,MAAM,MAAM,YAAY,GAAG,IAAI,CAC7B,kBAAkB,EAClB,UAAU,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAC5C,GAAG;IACF,MAAM,CAAC,EAAE,YAAY,GAAG,mBAAmB,CAAC;IAC5C,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IACrD,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,6DAA6D;IAC7D,MAAM,EAAE,kBAAkB,CAAC;IAC3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,2FAA2F;IAC3F,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,6FAA6F;IAC7F,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC/C,gGAAgG;IAChG,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,iBAAiB,CAAC;QAAC,WAAW,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1G;;;;;OAKG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC5E,qEAAqE;IACrE,MAAM,IAAI,IAAI,CAAC;CAChB,CAAC;AAcF,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAmLpE"}
package/dist/client.js CHANGED
@@ -1,4 +1,4 @@
1
- import { createAiRegistry } from "@askdb/ai";
1
+ import { createAiRegistry, resolveReasoningEffort, } from "@askdb/ai";
2
2
  import { ask, isBuiltInDialectId, loadSchema, loadSchemaFromJson, SUPPORTED_DIALECT_IDS, } from "@askdb/core";
3
3
  import { DialectNotSupportedError, ModelNotConfiguredError, SchemaLoadError, SchemaNotConfiguredError, } from "./errors.js";
4
4
  function resolveRegistry(options) {
@@ -17,6 +17,7 @@ export function createAskDb(options) {
17
17
  const registry = resolveRegistry(options);
18
18
  let cachedSchema;
19
19
  let cachedModel;
20
+ let cachedAiConfig;
20
21
  function schemaSourceLabel(src) {
21
22
  if ("schemaId" in src)
22
23
  return "schema";
@@ -98,46 +99,61 @@ export function createAskDb(options) {
98
99
  }
99
100
  return { dialect: "postgres", source: "default" };
100
101
  }
101
- async function resolveModel(override, deps) {
102
+ async function resolveModel(override, deps, reasoningEffortOverride) {
102
103
  if (override)
103
104
  return { model: override, source: "override" };
104
105
  if (deps?.generateText) {
105
- return { model: undefined, deps, source: "mock" };
106
+ return { model: undefined, source: "mock", mockDeps: deps };
106
107
  }
107
108
  const mockSql = config.dev.mockSql;
108
109
  if (mockSql !== undefined) {
109
110
  return {
110
111
  model: undefined,
111
- deps: { generateText: (async () => ({ text: mockSql })) },
112
112
  source: "mock",
113
+ mockDeps: { generateText: (async () => ({ text: mockSql })) },
113
114
  };
114
115
  }
115
- if (cachedModel)
116
- return { model: cachedModel, source: "registry" };
117
- const model = await registry.createLanguageModelFromEnv(config.ai.aiEnv);
118
- if (!model)
119
- throw new ModelNotConfiguredError(registry.keyMissingMessage("NL→SQL generation"));
120
- cachedModel = model;
121
- return { model: cachedModel, source: "registry" };
116
+ if (!cachedAiConfig) {
117
+ cachedAiConfig = registry.resolveAiConfig(config.ai.aiEnv);
118
+ if (!cachedAiConfig)
119
+ throw new ModelNotConfiguredError(registry.keyMissingMessage("NL→SQL generation"));
120
+ }
121
+ if (!cachedModel) {
122
+ cachedModel = await registry.createLanguageModel(cachedAiConfig);
123
+ }
124
+ const reasoningEffort = resolveReasoningEffort(config.ai.aiEnv, "nlToSql", reasoningEffortOverride ?? options.reasoningEffort);
125
+ const providerOptions = reasoningEffort
126
+ ? registry.resolveProviderOptions(cachedAiConfig, { reasoningEffort })
127
+ : undefined;
128
+ return { model: cachedModel, source: "registry", providerOptions };
122
129
  }
123
130
  return {
124
131
  reload() {
125
132
  cachedSchema = undefined;
126
133
  cachedModel = undefined;
134
+ cachedAiConfig = undefined;
127
135
  },
128
136
  async ask(question, overrides = {}) {
129
- const { schema: schemaOverride, model: modelOverride, dialect: dialectOverride, deps, ...rest } = overrides;
137
+ const { schema: schemaOverride, model: modelOverride, dialect: dialectOverride, deps, reasoningEffort, ...rest } = overrides;
130
138
  const schema = schemaOverride ? loadFromSource(schemaOverride, "request") : resolveDefaultSchema();
131
139
  const dialect = resolveDialect(schema, dialectOverride);
132
- const resolvedModel = await resolveModel(modelOverride, deps);
140
+ const resolvedModel = await resolveModel(modelOverride, deps, reasoningEffort);
133
141
  options.onResolve?.({ dialect, modelSource: resolvedModel.source });
142
+ // An explicit `deps.providerOptions` from the caller always wins over
143
+ // the computed one; otherwise merge the resolved reasoning effort in.
144
+ const finalDeps = resolvedModel.mockDeps ??
145
+ (deps?.providerOptions !== undefined
146
+ ? deps
147
+ : resolvedModel.providerOptions !== undefined
148
+ ? { ...deps, providerOptions: resolvedModel.providerOptions }
149
+ : deps);
134
150
  return ask({
135
151
  ...rest,
136
152
  question,
137
153
  schema,
138
154
  model: resolvedModel.model,
139
155
  dialect: dialect.dialect,
140
- ...(resolvedModel.deps ? { deps: resolvedModel.deps } : deps ? { deps } : {}),
156
+ ...(finalDeps ? { deps: finalDeps } : {}),
141
157
  });
142
158
  },
143
159
  };
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@askdb/client",
3
- "version": "1.0.0-beta.3",
3
+ "version": "1.0.0-beta.5",
4
4
  "description": "Config-aware AskDB facade: resolves schema, model, and dialect from config so callers only pass a question.",
5
5
  "keywords": [
6
6
  "askdb",
@@ -25,7 +25,8 @@
25
25
  "exports": {
26
26
  ".": {
27
27
  "types": "./dist/index.d.ts",
28
- "import": "./dist/index.js"
28
+ "import": "./dist/index.js",
29
+ "default": "./dist/index.js"
29
30
  }
30
31
  },
31
32
  "files": [
@@ -35,22 +36,22 @@
35
36
  "NOTICE"
36
37
  ],
37
38
  "engines": {
38
- "node": ">=20"
39
+ "node": ">=22.12"
39
40
  },
40
41
  "peerDependencies": {
41
- "ai": "^6.0.205",
42
- "@askdb/config": "^1.0.0-beta.9",
43
- "@askdb/core": "^1.0.0-beta.36"
42
+ "ai": "^7.0.51",
43
+ "@askdb/config": "^1.0.0-beta.11",
44
+ "@askdb/core": "^1.0.0-beta.42"
44
45
  },
45
46
  "devDependencies": {
46
- "ai": "^6.0.205",
47
+ "ai": "^7.0.51",
47
48
  "typescript": "^6.0.3",
48
- "vitest": "^4.1.8",
49
- "@askdb/config": "1.0.0-beta.9",
50
- "@askdb/core": "1.0.0-beta.36"
49
+ "vitest": "^4.1.10",
50
+ "@askdb/config": "1.0.0-beta.11",
51
+ "@askdb/core": "1.0.0-beta.42"
51
52
  },
52
53
  "dependencies": {
53
- "@askdb/ai": "^0.1.0-beta.4"
54
+ "@askdb/ai": "^0.1.0-beta.6"
54
55
  },
55
56
  "scripts": {
56
57
  "build": "tsc -p tsconfig.build.json",