@kybernesis/brain-embed-openai 0.8.0 → 0.8.2

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/index.d.ts CHANGED
@@ -20,8 +20,9 @@
20
20
  * setEmbeddingProvider(createOpenAIEmbedder());
21
21
  */
22
22
  import type { TenantContext } from '@kybernesis/brain-contracts';
23
+ import { EMBEDDING_MODEL } from '@kybernesis/brain-contracts';
23
24
  import type { EmbeddingProvider } from '@kybernesis/brain-core';
24
- export declare const EMBEDDING_MODEL = "text-embedding-3-small";
25
+ export { EMBEDDING_MODEL };
25
26
  /** The slice of the OpenAI SDK surface we use — keeps us decoupled from its types. */
26
27
  export interface OpenAILike {
27
28
  embeddings: {
@@ -37,11 +38,25 @@ export interface OpenAILike {
37
38
  }
38
39
  /** Build an OpenAI-like client from a resolved key. May be async (the default dynamic-imports `openai`). */
39
40
  export type OpenAIClientFactory = (apiKey: string) => OpenAILike | Promise<OpenAILike>;
41
+ /** Where a swallowed embedding failure happened. */
42
+ export type EmbedErrorStage = 'sdk-load' | 'api-call';
40
43
  export interface OpenAIEmbedderOptions {
41
44
  /** Inject a client factory (tests pass a fake; default dynamically imports `openai`). */
42
45
  clientFactory?: OpenAIClientFactory;
43
46
  /** Override the embedding model (default `text-embedding-3-small`). */
44
47
  model?: string;
48
+ /**
49
+ * Optional failure hook. Without it, failures degrade silently to `null`
50
+ * (the contract's "no embedding" path) — which is operationally blind: a
51
+ * missing `openai` SDK, a revoked key, and a network error all look the same.
52
+ * Wire this to your logger to tell them apart. The hook receives the raw
53
+ * error; do not log it somewhere that would expose request headers.
54
+ */
55
+ onError?: (info: {
56
+ stage: EmbedErrorStage;
57
+ tenantSlug: string;
58
+ error: unknown;
59
+ }) => void;
45
60
  }
46
61
  /** Resolve the OpenAI key for a tenant: `<home>/.env` first, then `process.env`. */
47
62
  export declare function resolveOpenAIKey(t: TenantContext): string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,eAAO,MAAM,eAAe,2BAA2B,CAAC;AAIxD,sFAAsF;AACtF,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE;QACV,MAAM,CAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC;YAAE,IAAI,EAAE,KAAK,CAAC;gBAAE,SAAS,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC,CAAA;SAAE,CAAC,CAAC;KACnG,CAAC;CACH;AAED,4GAA4G;AAC5G,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEvF,MAAM,WAAW,qBAAqB;IACpC,yFAAyF;IACzF,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAiCD,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAKhE;AAcD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,GAAE,qBAA0B,GAAG,iBAAiB,CAoCxF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAsC,MAAM,6BAA6B,CAAC;AAClG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAIhE,OAAO,EAAE,eAAe,EAAE,CAAC;AAE3B,sFAAsF;AACtF,MAAM,WAAW,UAAU;IACzB,UAAU,EAAE;QACV,MAAM,CAAC,IAAI,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,OAAO,CAAC;YAAE,IAAI,EAAE,KAAK,CAAC;gBAAE,SAAS,EAAE,MAAM,EAAE,CAAA;aAAE,CAAC,CAAA;SAAE,CAAC,CAAC;KACnG,CAAC;CACH;AAED,4GAA4G;AAC5G,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEvF,oDAAoD;AACpD,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,yFAAyF;IACzF,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,eAAe,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;CAC1F;AAiCD,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAKhE;AAcD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,GAAE,qBAA0B,GAAG,iBAAiB,CAuCxF"}
package/dist/index.js CHANGED
@@ -21,9 +21,10 @@
21
21
  */
22
22
  import { existsSync, readFileSync } from 'node:fs';
23
23
  import { join } from 'node:path';
24
- export const EMBEDDING_MODEL = 'text-embedding-3-small';
25
- const EMBEDDING_DIM = 1536; // text-embedding-3-small; must match the vectors.db schema
26
- const INPUT_CHAR_CAP = 8192; // hard cap, mirrors KAD df80ea6
24
+ import { EMBEDDING_MODEL, EMBEDDING_DIM, EMBEDDING_INPUT_CAP } from '@kybernesis/brain-contracts';
25
+ // Single source of truth for these lives in brain-contracts (the schema-binding
26
+ // invariants). Re-export the model alias for convenience; never redeclare them.
27
+ export { EMBEDDING_MODEL };
27
28
  /**
28
29
  * Parse `<home>/.env` into a key→value map. Trivial KEY=VALUE parser (strips
29
30
  * `#` comments and surrounding quotes) — we only need OPENAI_API_KEY, so a full
@@ -85,6 +86,7 @@ async function defaultClientFactory(apiKey) {
85
86
  export function createOpenAIEmbedder(opts = {}) {
86
87
  const model = opts.model ?? EMBEDDING_MODEL;
87
88
  const makeClient = opts.clientFactory ?? defaultClientFactory;
89
+ const onError = opts.onError;
88
90
  const clients = new Map(); // by t.slug; null = resolved-no-key
89
91
  async function getClient(t) {
90
92
  if (clients.has(t.slug))
@@ -99,7 +101,8 @@ export function createOpenAIEmbedder(opts = {}) {
99
101
  clients.set(t.slug, client);
100
102
  return client;
101
103
  }
102
- catch {
104
+ catch (error) {
105
+ onError?.({ stage: 'sdk-load', tenantSlug: t.slug, error });
103
106
  clients.set(t.slug, null);
104
107
  return null;
105
108
  }
@@ -110,13 +113,14 @@ export function createOpenAIEmbedder(opts = {}) {
110
113
  if (!client)
111
114
  return null;
112
115
  try {
113
- const res = await client.embeddings.create({ model, input: text.slice(0, INPUT_CHAR_CAP) });
116
+ const res = await client.embeddings.create({ model, input: text.slice(0, EMBEDDING_INPUT_CAP) });
114
117
  const vec = res.data?.[0]?.embedding ?? null;
115
118
  if (!vec || vec.length !== EMBEDDING_DIM)
116
119
  return null;
117
120
  return vec;
118
121
  }
119
- catch {
122
+ catch (error) {
123
+ onError?.({ stage: 'api-call', tenantSlug: t.slug, error });
120
124
  return null;
121
125
  }
122
126
  },
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kybernesis/brain-embed-openai",
3
- "version": "0.8.0",
3
+ "version": "0.8.2",
4
4
  "description": "OpenAI text-embedding provider for brain-core (inference-plane EmbeddingProvider)",
5
5
  "license": "MIT",
6
6
  "author": "David Cruwys (AppyDave)",
@@ -28,8 +28,8 @@
28
28
  ],
29
29
  "peerDependencies": {
30
30
  "openai": ">=4",
31
- "@kybernesis/brain-contracts": "0.8.0",
32
- "@kybernesis/brain-core": "0.8.0"
31
+ "@kybernesis/brain-contracts": "0.8.2",
32
+ "@kybernesis/brain-core": "0.8.2"
33
33
  },
34
34
  "peerDependenciesMeta": {
35
35
  "openai": {
@@ -37,9 +37,9 @@
37
37
  }
38
38
  },
39
39
  "devDependencies": {
40
- "@kybernesis/brain-contracts": "0.8.0",
41
- "@kybernesis/brain-core": "0.8.0",
42
- "@kybernesis/brain-testkit": "0.8.0"
40
+ "@kybernesis/brain-contracts": "0.8.2",
41
+ "@kybernesis/brain-core": "0.8.2",
42
+ "@kybernesis/brain-testkit": "0.8.2"
43
43
  },
44
44
  "publishConfig": {
45
45
  "access": "public"