@theromans/convex-dobty 0.1.9 → 0.1.11

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.
@@ -1,29 +1,54 @@
1
- interface KnowledgeResult {
1
+ export interface KnowledgeResult {
2
2
  title: string;
3
3
  content: string;
4
+ title_English: string;
5
+ title_Deutsch: string;
6
+ content_English: string;
7
+ content_Deutsch: string;
4
8
  score: number;
9
+ language: "en" | "de";
10
+ embeddingLanguage: "en" | "de";
5
11
  }
6
- /** Search knowledge chunks by embedding similarity. */
12
+ /**
13
+ * Search knowledge chunks by embedding similarity.
14
+ *
15
+ * - language: the requested language for returned title/content ("en" | "de")
16
+ * - Uses the embedding index for the requested language.
17
+ * - Falls back to the other language's index if the primary has no vectors.
18
+ * - Returns up to `limit` results (default 5).
19
+ */
7
20
  export declare const searchKnowledge: import("convex/server").RegisteredAction<"public", {
8
21
  limit?: number | undefined;
9
22
  query: string;
10
23
  topic: string;
11
24
  apiToken: string;
25
+ language: "en" | "de";
12
26
  }, Promise<KnowledgeResult[]>>;
13
- /** Search knowledge chunks by pre-computed embedding vector (no fetch needed). */
27
+ /**
28
+ * Search knowledge chunks by pre-computed embedding vector (no outbound fetch needed).
29
+ *
30
+ * - language: the requested language for returned title/content ("en" | "de")
31
+ * - Falls back to the other language's index if primary has no vectors.
32
+ * - Returns up to `limit` results (default 5).
33
+ */
14
34
  export declare const searchByVector: import("convex/server").RegisteredAction<"public", {
15
35
  limit?: number | undefined;
16
36
  topic: string;
17
37
  embedding: number[];
38
+ language: "en" | "de";
18
39
  }, Promise<KnowledgeResult[]>>;
19
- /** Re-embed stale chunks (embedding missing or content changed since last embed). */
40
+ /**
41
+ * Re-embed stale chunks for both languages.
42
+ * Embeds English and Deutsch separately, storing embedding_en and embedding_de.
43
+ */
20
44
  export declare const refreshEmbeddings: import("convex/server").RegisteredAction<"public", {
21
45
  apiToken: string;
22
46
  }, Promise<{
23
47
  total: number;
24
- stale: number;
25
- embedded: number;
48
+ staleEn: number;
49
+ staleDe: number;
50
+ embeddedEn: number;
51
+ embeddedDe: number;
26
52
  errors: number;
27
53
  }>>;
28
- export {};
29
54
  //# sourceMappingURL=knowledgeSearch.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeSearch.d.ts","sourceRoot":"","sources":["../../src/component/knowledgeSearch.ts"],"names":[],"mappings":"AAkDA,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,uDAAuD;AACvD,eAAO,MAAM,eAAe;;;;;8BA6B1B,CAAC;AAEH,kFAAkF;AAClF,eAAO,MAAM,cAAc;;;;8BA0BzB,CAAC;AAEH,qFAAqF;AACrF,eAAO,MAAM,iBAAiB;;;WAIyB,MAAM;WAAS,MAAM;cAAY,MAAM;YAAU,MAAM;GAkC5G,CAAC"}
1
+ {"version":3,"file":"knowledgeSearch.d.ts","sourceRoot":"","sources":["../../src/component/knowledgeSearch.ts"],"names":[],"mappings":"AAmDA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,GAAG,IAAI,CAAC;IACtB,iBAAiB,EAAE,IAAI,GAAG,IAAI,CAAC;CAChC;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe;;;;;;8BAgB1B,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,cAAc;;;;;8BAazB,CAAC;AAqEH;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;WAQnB,MAAM;aACJ,MAAM;aACN,MAAM;gBACH,MAAM;gBACN,MAAM;YACV,MAAM;GAmEhB,CAAC"}
@@ -5,6 +5,7 @@ const EMBEDDING_ENDPOINT = "https://openai.inference.de-txl.ionos.com/v1/embeddi
5
5
  const EMBEDDING_MODEL = "BAAI/bge-m3";
6
6
  const EMBEDDING_DIMENSIONS = 1024;
7
7
  const EMBEDDING_TIMEOUT_MS = 10_000;
8
+ const DEFAULT_SEARCH_LIMIT = 5;
8
9
  async function getEmbedding(text, apiToken) {
9
10
  const controller = new AbortController();
10
11
  const timer = setTimeout(() => controller.abort(), EMBEDDING_TIMEOUT_MS);
@@ -39,81 +40,140 @@ async function getEmbedding(text, apiToken) {
39
40
  clearTimeout(timer);
40
41
  }
41
42
  }
42
- /** Search knowledge chunks by embedding similarity. */
43
+ /**
44
+ * Search knowledge chunks by embedding similarity.
45
+ *
46
+ * - language: the requested language for returned title/content ("en" | "de")
47
+ * - Uses the embedding index for the requested language.
48
+ * - Falls back to the other language's index if the primary has no vectors.
49
+ * - Returns up to `limit` results (default 5).
50
+ */
43
51
  export const searchKnowledge = action({
44
52
  args: {
45
53
  topic: v.string(),
46
54
  query: v.string(),
55
+ language: v.union(v.literal("en"), v.literal("de")),
47
56
  limit: v.optional(v.number()),
48
57
  apiToken: v.string(),
49
58
  },
50
- handler: async (ctx, { topic, query, limit = 3, apiToken }) => {
59
+ handler: async (ctx, { topic, query, language, limit = DEFAULT_SEARCH_LIMIT, apiToken }) => {
51
60
  const embedding = await getEmbedding(query, apiToken);
52
- const results = await ctx.vectorSearch("knowledgeChunks", "by_embedding", {
53
- vector: embedding,
54
- limit,
55
- filter: (q) => q.eq("topic", topic),
56
- });
57
- if (results.length === 0)
58
- return [];
59
- const docs = await Promise.all(results.map(async (r) => {
60
- const doc = await ctx.runQuery(internal.knowledge.getChunk, {
61
- chunkId: r._id,
62
- });
63
- return doc ? { title: doc.title, content: doc.content, score: r._score } : null;
64
- }));
65
- return docs.filter((d) => d !== null);
61
+ return _searchByVector(ctx, { topic, embedding, language, limit });
66
62
  },
67
63
  });
68
- /** Search knowledge chunks by pre-computed embedding vector (no fetch needed). */
64
+ /**
65
+ * Search knowledge chunks by pre-computed embedding vector (no outbound fetch needed).
66
+ *
67
+ * - language: the requested language for returned title/content ("en" | "de")
68
+ * - Falls back to the other language's index if primary has no vectors.
69
+ * - Returns up to `limit` results (default 5).
70
+ */
69
71
  export const searchByVector = action({
70
72
  args: {
71
73
  topic: v.string(),
72
74
  embedding: v.array(v.float64()),
75
+ language: v.union(v.literal("en"), v.literal("de")),
73
76
  limit: v.optional(v.number()),
74
77
  },
75
- handler: async (ctx, { topic, embedding, limit = 3 }) => {
76
- const results = await ctx.vectorSearch("knowledgeChunks", "by_embedding", {
78
+ handler: async (ctx, { topic, embedding, language, limit = DEFAULT_SEARCH_LIMIT }) => {
79
+ return _searchByVector(ctx, { topic, embedding, language, limit });
80
+ },
81
+ });
82
+ async function _searchByVector(ctx, { topic, embedding, language, limit, }) {
83
+ const primaryIndex = language === "en" ? "by_embedding_en" : "by_embedding_de";
84
+ const fallbackIndex = language === "en" ? "by_embedding_de" : "by_embedding_en";
85
+ const fallbackLanguage = language === "en" ? "de" : "en";
86
+ // Try primary language index first
87
+ let results = await ctx.vectorSearch("knowledgeChunks", primaryIndex, {
88
+ vector: embedding,
89
+ limit,
90
+ filter: (q) => q.eq("topic", topic),
91
+ });
92
+ let embeddingLanguage = language;
93
+ // Fall back to the other language's index if primary returned nothing
94
+ if (results.length === 0) {
95
+ results = await ctx.vectorSearch("knowledgeChunks", fallbackIndex, {
77
96
  vector: embedding,
78
97
  limit,
79
98
  filter: (q) => q.eq("topic", topic),
80
99
  });
81
- if (results.length === 0)
82
- return [];
83
- const docs = await Promise.all(results.map(async (r) => {
84
- const doc = await ctx.runQuery(internal.knowledge.getChunk, {
85
- chunkId: r._id,
86
- });
87
- return doc ? { title: doc.title, content: doc.content, score: r._score } : null;
88
- }));
89
- return docs.filter((d) => d !== null);
90
- },
91
- });
92
- /** Re-embed stale chunks (embedding missing or content changed since last embed). */
100
+ embeddingLanguage = fallbackLanguage;
101
+ }
102
+ if (results.length === 0)
103
+ return [];
104
+ const docs = await Promise.all(results.map(async (r) => {
105
+ const doc = await ctx.runQuery(internal.knowledge.getChunk, {
106
+ chunkId: r._id,
107
+ });
108
+ if (!doc)
109
+ return null;
110
+ const title = language === "en" ? doc.title_English : doc.title_Deutsch;
111
+ const content = language === "en" ? doc.content_English : doc.content_Deutsch;
112
+ return {
113
+ title,
114
+ content,
115
+ title_English: doc.title_English,
116
+ title_Deutsch: doc.title_Deutsch,
117
+ content_English: doc.content_English,
118
+ content_Deutsch: doc.content_Deutsch,
119
+ score: r._score,
120
+ language,
121
+ embeddingLanguage,
122
+ };
123
+ }));
124
+ return docs.filter((d) => d !== null);
125
+ }
126
+ /**
127
+ * Re-embed stale chunks for both languages.
128
+ * Embeds English and Deutsch separately, storing embedding_en and embedding_de.
129
+ */
93
130
  export const refreshEmbeddings = action({
94
131
  args: {
95
132
  apiToken: v.string(),
96
133
  },
97
134
  handler: async (ctx, { apiToken }) => {
98
135
  const allChunks = await ctx.runQuery(internal.knowledge.listAllChunks, {});
99
- const stale = allChunks.filter((c) => !c.embedding || !c.embeddedAt || c.embeddedAt < c.updatedAt);
100
- let embedded = 0;
136
+ const staleEn = allChunks.filter((c) => !c.embedding_en || !c.embeddedAt_en || c.embeddedAt_en < c.updatedAt);
137
+ const staleDe = allChunks.filter((c) => !c.embedding_de || !c.embeddedAt_de || c.embeddedAt_de < c.updatedAt);
138
+ let embeddedEn = 0;
139
+ let embeddedDe = 0;
101
140
  let errors = 0;
102
- for (const chunk of stale) {
141
+ for (const chunk of staleEn) {
142
+ try {
143
+ const embedding = await getEmbedding(`${chunk.title_English}\n\n${chunk.content_English}`, apiToken);
144
+ await ctx.runMutation(internal.knowledge.updateEmbeddingEn, {
145
+ chunkId: chunk._id,
146
+ embedding,
147
+ });
148
+ embeddedEn++;
149
+ }
150
+ catch (e) {
151
+ console.error(`Failed to embed EN chunk ${chunk.chunkKey}: ${e.message}`);
152
+ errors++;
153
+ }
154
+ }
155
+ for (const chunk of staleDe) {
103
156
  try {
104
- const embedding = await getEmbedding(`${chunk.title}\n\n${chunk.content}`, apiToken);
105
- await ctx.runMutation(internal.knowledge.updateEmbedding, {
157
+ const embedding = await getEmbedding(`${chunk.title_Deutsch}\n\n${chunk.content_Deutsch}`, apiToken);
158
+ await ctx.runMutation(internal.knowledge.updateEmbeddingDe, {
106
159
  chunkId: chunk._id,
107
160
  embedding,
108
161
  });
109
- embedded++;
162
+ embeddedDe++;
110
163
  }
111
164
  catch (e) {
112
- console.error(`Failed to embed chunk ${chunk.chunkKey}: ${e.message}`);
165
+ console.error(`Failed to embed DE chunk ${chunk.chunkKey}: ${e.message}`);
113
166
  errors++;
114
167
  }
115
168
  }
116
- return { total: allChunks.length, stale: stale.length, embedded, errors };
169
+ return {
170
+ total: allChunks.length,
171
+ staleEn: staleEn.length,
172
+ staleDe: staleDe.length,
173
+ embeddedEn,
174
+ embeddedDe,
175
+ errors,
176
+ };
117
177
  },
118
178
  });
119
179
  //# sourceMappingURL=knowledgeSearch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledgeSearch.js","sourceRoot":"","sources":["../../src/component/knowledgeSearch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledgeSearch.js","sourceRoot":"","sources":["../../src/component/knowledgeSearch.ts"],"names":[],"mappings":"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"}
@@ -347,27 +347,50 @@ declare const _default: import("convex/server").SchemaDefinition<{
347
347
  }, {}, {}>;
348
348
  /** Knowledge base chunks for AI vector search */
349
349
  knowledgeChunks: import("convex/server").TableDefinition<import("convex/values").VObject<{
350
+ title_English?: string | undefined;
351
+ title_Deutsch?: string | undefined;
352
+ content_English?: string | undefined;
353
+ content_Deutsch?: string | undefined;
354
+ title?: string | undefined;
355
+ content?: string | undefined;
356
+ embedding_en?: number[] | undefined;
357
+ embedding_de?: number[] | undefined;
350
358
  embedding?: number[] | undefined;
359
+ embeddedAt_en?: number | undefined;
360
+ embeddedAt_de?: number | undefined;
351
361
  embeddedAt?: number | undefined;
352
362
  topic: string;
353
363
  updatedAt: number;
354
364
  chunkKey: string;
355
- title: string;
356
- content: string;
357
365
  }, {
358
366
  topic: import("convex/values").VString<string, "required">;
359
367
  chunkKey: import("convex/values").VString<string, "required">;
360
- title: import("convex/values").VString<string, "required">;
361
- content: import("convex/values").VString<string, "required">;
368
+ title_English: import("convex/values").VString<string | undefined, "optional">;
369
+ title_Deutsch: import("convex/values").VString<string | undefined, "optional">;
370
+ content_English: import("convex/values").VString<string | undefined, "optional">;
371
+ content_Deutsch: import("convex/values").VString<string | undefined, "optional">;
372
+ title: import("convex/values").VString<string | undefined, "optional">;
373
+ content: import("convex/values").VString<string | undefined, "optional">;
374
+ /** Embedding of title_English + content_English */
375
+ embedding_en: import("convex/values").VArray<number[] | undefined, import("convex/values").VFloat64<number, "required">, "optional">;
376
+ /** Embedding of title_Deutsch + content_Deutsch */
377
+ embedding_de: import("convex/values").VArray<number[] | undefined, import("convex/values").VFloat64<number, "required">, "optional">;
362
378
  embedding: import("convex/values").VArray<number[] | undefined, import("convex/values").VFloat64<number, "required">, "optional">;
379
+ embeddedAt_en: import("convex/values").VFloat64<number | undefined, "optional">;
380
+ embeddedAt_de: import("convex/values").VFloat64<number | undefined, "optional">;
363
381
  embeddedAt: import("convex/values").VFloat64<number | undefined, "optional">;
364
382
  updatedAt: import("convex/values").VFloat64<number, "required">;
365
- }, "required", "topic" | "updatedAt" | "chunkKey" | "title" | "content" | "embedding" | "embeddedAt">, {
383
+ }, "required", "topic" | "updatedAt" | "chunkKey" | "title_English" | "title_Deutsch" | "content_English" | "content_Deutsch" | "title" | "content" | "embedding_en" | "embedding_de" | "embedding" | "embeddedAt_en" | "embeddedAt_de" | "embeddedAt">, {
366
384
  by_topic: ["topic", "_creationTime"];
367
385
  by_topic_chunkKey: ["topic", "chunkKey", "_creationTime"];
368
386
  }, {}, {
369
- by_embedding: {
370
- vectorField: "embedding";
387
+ by_embedding_en: {
388
+ vectorField: "embedding_en";
389
+ dimensions: number;
390
+ filterFields: "topic";
391
+ };
392
+ by_embedding_de: {
393
+ vectorField: "embedding_de";
371
394
  dimensions: number;
372
395
  filterFields: "topic";
373
396
  };
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":";IAIE,gEAAgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsBhE,0CAA0C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiB1C,uDAAuD;;;;;;;;;;;;;;;IAUvD,kDAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;IAelD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;IAgBtD,gCAAgC;;;;;;;;;;;;;;;;;;;;IAYhC,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmB9B,wCAAwC;;;;;;;;;;;;;;;;IAUxC,0CAA0C;;;;;;;;;;;;;;;IAU1C,iCAAiC;;;;;;;;;;;;;;IASjC,+BAA+B;;;;;;;;;;;;;;;;;;;;;IAa/B,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmBxC,gCAAgC;;;;;;;;;;;;;;IAShC,2CAA2C;;;;;;;;;;;;;;;;;;IAW3C,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBtD,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAlNnD,wBAmOG"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":";IAIE,gEAAgE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAsBhE,0CAA0C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiB1C,uDAAuD;;;;;;;;;;;;;;;IAUvD,kDAAkD;;;;;;;;;;;;;;;;;;;;;;;;;;IAelD,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;IAgBtD,gCAAgC;;;;;;;;;;;;;;;;;;;;IAYhC,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmB9B,wCAAwC;;;;;;;;;;;;;;;;IAUxC,0CAA0C;;;;;;;;;;;;;;;IAU1C,iCAAiC;;;;;;;;;;;;;;IASjC,+BAA+B;;;;;;;;;;;;;;;;;;;;;IAa/B,wCAAwC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmBxC,gCAAgC;;;;;;;;;;;;;;IAShC,2CAA2C;;;;;;;;;;;;;;;;;;IAW3C,sDAAsD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAiBtD,iDAAiD;;;;;;;;;;;;;;;;;;;;;;;;;;QAY/C,mDAAmD;;QAEnD,mDAAmD;;;;;;;;;;;;;;;;;;;;;;;AAhOvD,wBAqPG"}
@@ -198,16 +198,34 @@ export default defineSchema({
198
198
  knowledgeChunks: defineTable({
199
199
  topic: v.string(),
200
200
  chunkKey: v.string(),
201
- title: v.string(),
202
- content: v.string(),
201
+ // New bilingual fields (required going forward)
202
+ title_English: v.optional(v.string()),
203
+ title_Deutsch: v.optional(v.string()),
204
+ content_English: v.optional(v.string()),
205
+ content_Deutsch: v.optional(v.string()),
206
+ // Legacy single-language fields — kept optional to allow migration deploy
207
+ title: v.optional(v.string()),
208
+ content: v.optional(v.string()),
209
+ /** Embedding of title_English + content_English */
210
+ embedding_en: v.optional(v.array(v.float64())),
211
+ /** Embedding of title_Deutsch + content_Deutsch */
212
+ embedding_de: v.optional(v.array(v.float64())),
213
+ // Legacy single embedding — kept optional for migration
203
214
  embedding: v.optional(v.array(v.float64())),
215
+ embeddedAt_en: v.optional(v.number()),
216
+ embeddedAt_de: v.optional(v.number()),
204
217
  embeddedAt: v.optional(v.number()),
205
218
  updatedAt: v.number(),
206
219
  })
207
220
  .index("by_topic", ["topic"])
208
221
  .index("by_topic_chunkKey", ["topic", "chunkKey"])
209
- .vectorIndex("by_embedding", {
210
- vectorField: "embedding",
222
+ .vectorIndex("by_embedding_en", {
223
+ vectorField: "embedding_en",
224
+ dimensions: 1024,
225
+ filterFields: ["topic"],
226
+ })
227
+ .vectorIndex("by_embedding_de", {
228
+ vectorField: "embedding_de",
211
229
  dimensions: 1024,
212
230
  filterFields: ["topic"],
213
231
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/component/schema.ts"],"names":[],"mappings":"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"}