@askdb/ai-openai 0.1.0-beta.2 → 1.0.0-beta.4

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
@@ -1,6 +1,17 @@
1
1
  # `@askdb/ai-openai`
2
2
 
3
- OpenAI provider adapter for `@askdb/ai`.
3
+ OpenAI provider adapter for AskDB.
4
+
5
+ Pass the adapter to `createAskDb` and AskDB constructs the OpenAI model from your `askdb.config.*`:
6
+
7
+ ```ts
8
+ import { createAskDb } from "@askdb/client";
9
+ import { openaiProvider } from "@askdb/ai-openai";
10
+
11
+ const askdb = createAskDb({ config, providers: [openaiProvider] });
12
+ ```
13
+
14
+ Advanced: build a standalone registry to construct a model object outside the client:
4
15
 
5
16
  ```ts
6
17
  import { createAiRegistry } from "@askdb/ai";
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import type { AiProviderAdapter } from "@askdb/ai";
1
+ import { type AiProviderAdapter } from "@askdb/ai";
2
2
  export declare const openaiProvider: AiProviderAdapter;
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAA+B,MAAM,WAAW,CAAC;AAGhF,eAAO,MAAM,cAAc,EAAE,iBAwB5B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,iBAAiB,EAEvB,MAAM,WAAW,CAAC;AAYnB,eAAO,MAAM,cAAc,EAAE,iBAqB5B,CAAC"}
package/dist/index.js CHANGED
@@ -1,7 +1,20 @@
1
1
  import { createOpenAI } from "@ai-sdk/openai";
2
- import { defaultEmbeddingSettingsMiddleware, wrapEmbeddingModel } from "ai";
2
+ import { resolveBaseConfig, withEmbeddingProviderOptions, } from "@askdb/ai";
3
+ const ENV_SPEC = {
4
+ apiKeyVars: ["OPENAI_API_KEY"],
5
+ apiKeySecondaryVars: ["OPENAI_API_KEY_SECONDARY"],
6
+ modelVars: ["OPENAI_MODEL"],
7
+ embeddingModelVars: ["OPENAI_EMBEDDING_MODEL"],
8
+ baseURLVars: ["OPENAI_BASE_URL"],
9
+ defaultModel: "gpt-4o-mini",
10
+ defaultEmbeddingModel: "text-embedding-3-small",
11
+ };
3
12
  export const openaiProvider = {
4
13
  provider: "openai",
14
+ configHint: "For OpenAI, set ai.provider: \"openai\" and ai.providerConfig.openai.apiKey in askdb.config.*.",
15
+ resolveConfig(env, options) {
16
+ return resolveBaseConfig("openai", env, ENV_SPEC, options);
17
+ },
5
18
  createLanguageModel(config) {
6
19
  const openai = createOpenAI({
7
20
  apiKey: config.apiKey,
@@ -15,23 +28,7 @@ export const openaiProvider = {
15
28
  ...(config.baseURL ? { baseURL: config.baseURL } : {}),
16
29
  });
17
30
  const model = openai.embedding(config.model);
18
- const providerOptions = openAiProviderOptions(options);
19
- if (!providerOptions)
20
- return model;
21
- return wrapEmbeddingModel({
22
- model,
23
- middleware: defaultEmbeddingSettingsMiddleware({
24
- settings: { providerOptions },
25
- }),
26
- });
31
+ return withEmbeddingProviderOptions(model, "openai", options);
27
32
  },
28
33
  };
29
- function openAiProviderOptions(options) {
30
- const openai = {};
31
- if (options.dimensions !== undefined)
32
- openai.dimensions = options.dimensions;
33
- if (options.user !== undefined)
34
- openai.user = options.user;
35
- return Object.keys(openai).length > 0 ? { openai } : undefined;
36
- }
37
34
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,kCAAkC,EAAE,kBAAkB,EAAE,MAAM,IAAI,CAAC;AAE5E,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,QAAQ,EAAE,QAAQ;IAClB,mBAAmB,CAAC,MAAM;QACxB,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE;QACvC,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACvD,IAAI,CAAC,eAAe;YAAE,OAAO,KAAK,CAAC;QACnC,OAAO,kBAAkB,CAAC;YACxB,KAAK;YACL,UAAU,EAAE,kCAAkC,CAAC;gBAC7C,QAAQ,EAAE,EAAE,eAAe,EAAE;aAC9B,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,SAAS,qBAAqB,CAC5B,OAAoC;IAEpC,MAAM,MAAM,GAA2C,EAAE,CAAC;IAC1D,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS;QAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAC7E,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;QAAE,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3D,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAG7B,MAAM,WAAW,CAAC;AAEnB,MAAM,QAAQ,GAAoB;IAChC,UAAU,EAAE,CAAC,gBAAgB,CAAC;IAC9B,mBAAmB,EAAE,CAAC,0BAA0B,CAAC;IACjD,SAAS,EAAE,CAAC,cAAc,CAAC;IAC3B,kBAAkB,EAAE,CAAC,wBAAwB,CAAC;IAC9C,WAAW,EAAE,CAAC,iBAAiB,CAAC;IAChC,YAAY,EAAE,aAAa;IAC3B,qBAAqB,EAAE,wBAAwB;CAChD,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,QAAQ,EAAE,QAAQ;IAClB,UAAU,EAAE,gGAAgG;IAC5G,aAAa,CAAC,GAAG,EAAE,OAAO;QACxB,OAAO,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IACD,mBAAmB,CAAC,MAAM;QACxB,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACD,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,EAAE;QACvC,MAAM,MAAM,GAAG,YAAY,CAAC;YAC1B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvD,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7C,OAAO,4BAA4B,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@askdb/ai-openai",
3
- "version": "0.1.0-beta.2",
3
+ "version": "1.0.0-beta.4",
4
4
  "description": "AskDB OpenAI provider adapter for @askdb/ai.",
5
5
  "keywords": [
6
6
  "askdb",
@@ -38,13 +38,17 @@
38
38
  "node": ">=20"
39
39
  },
40
40
  "dependencies": {
41
- "@ai-sdk/openai": "^3.0.69",
42
- "ai": "^6.0.200",
43
- "@askdb/ai": "0.1.0-beta.2"
41
+ "@ai-sdk/openai": "^3.0.71"
42
+ },
43
+ "peerDependencies": {
44
+ "ai": "^6.0.205",
45
+ "@askdb/ai": "^0.1.0-beta.4"
44
46
  },
45
47
  "devDependencies": {
46
- "typescript": "^5.9.3",
47
- "vitest": "^3.2.6"
48
+ "ai": "^6.0.205",
49
+ "typescript": "^6.0.3",
50
+ "vitest": "^4.1.8",
51
+ "@askdb/ai": "0.1.0-beta.4"
48
52
  },
49
53
  "scripts": {
50
54
  "build": "tsc -p tsconfig.build.json",