@retrivora-ai/rag-engine 0.4.5 → 1.0.0

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.
Files changed (70) hide show
  1. package/README.md +32 -57
  2. package/dist/{ChromaDBProvider-GI7TB7GJ.mjs → ChromaDBProvider-APQVJ5F7.mjs} +2 -2
  3. package/dist/{DocumentChunker-3yElxTO3.d.mts → DocumentChunker-C-sCZPhi.d.mts} +6 -6
  4. package/dist/{DocumentChunker-3yElxTO3.d.ts → DocumentChunker-C-sCZPhi.d.ts} +6 -6
  5. package/dist/{MilvusProvider-WDVTFB7D.mjs → MilvusProvider-35US67MS.mjs} +2 -2
  6. package/dist/{MongoDBProvider-RE3Q5S5B.mjs → MongoDBProvider-COVYZDP6.mjs} +2 -2
  7. package/dist/{PineconeProvider-BE2JWSPD.mjs → PineconeProvider-AWFJQDZL.mjs} +2 -2
  8. package/dist/{PostgreSQLProvider-5HHTK4SU.mjs → PostgreSQLProvider-IEYRJ7XJ.mjs} +2 -2
  9. package/dist/{QdrantProvider-XVDVBNIG.mjs → QdrantProvider-M6TQYZRO.mjs} +2 -2
  10. package/dist/{RagConfig-BgRDL9Vy.d.mts → RagConfig-DRJO4hGU.d.mts} +12 -1
  11. package/dist/{RagConfig-BgRDL9Vy.d.ts → RagConfig-DRJO4hGU.d.ts} +12 -1
  12. package/dist/{RedisProvider-EK2R2PQH.mjs → RedisProvider-3G5PBLZ4.mjs} +2 -2
  13. package/dist/{SimpleGraphProvider-M6T7SE7D.mjs → SimpleGraphProvider-UK7DJW37.mjs} +1 -1
  14. package/dist/{UniversalVectorProvider-YIDRX6VT.mjs → UniversalVectorProvider-FYQ3B2PW.mjs} +3 -3
  15. package/dist/{WeaviateProvider-4CAPQ7UY.mjs → WeaviateProvider-ITHO36IL.mjs} +2 -2
  16. package/dist/{chunk-5KNBWQM6.mjs → chunk-4A47RCG2.mjs} +5 -1
  17. package/dist/{chunk-EDLTMSNY.mjs → chunk-67AJ6SMD.mjs} +1 -1
  18. package/dist/{chunk-PQKTC73Y.mjs → chunk-7SOSCZGS.mjs} +67 -6
  19. package/dist/{chunk-LJWWPTWE.mjs → chunk-FLOSGE6A.mjs} +76 -14
  20. package/dist/{chunk-H6RKMU7W.mjs → chunk-NXUCKY5L.mjs} +1 -1
  21. package/dist/{chunk-KTS3LLHY.mjs → chunk-OOQXNLXD.mjs} +5 -5
  22. package/dist/{chunk-PRC5CZIZ.mjs → chunk-P4HAQ7KB.mjs} +1184 -1359
  23. package/dist/chunk-QMIKLALV.mjs +57 -0
  24. package/dist/{chunk-3QWAK3RZ.mjs → chunk-TYHTZIDP.mjs} +6 -2
  25. package/dist/{chunk-GQT5LF4G.mjs → chunk-U6KHVZLF.mjs} +2 -2
  26. package/dist/{chunk-RK2UDJA2.mjs → chunk-WGSZNY3X.mjs} +1 -1
  27. package/dist/{chunk-XCNXPECE.mjs → chunk-ZNBKHNJ4.mjs} +55 -1
  28. package/dist/handlers/index.d.mts +2 -2
  29. package/dist/handlers/index.d.ts +2 -2
  30. package/dist/handlers/index.js +1415 -1391
  31. package/dist/handlers/index.mjs +3 -3
  32. package/dist/index-CrGMwXfO.d.ts +112 -0
  33. package/dist/index-v669iV-k.d.mts +112 -0
  34. package/dist/index.d.mts +4 -4
  35. package/dist/index.d.ts +4 -4
  36. package/dist/index.mjs +2 -2
  37. package/dist/server.d.mts +104 -158
  38. package/dist/server.d.ts +104 -158
  39. package/dist/server.js +1414 -1390
  40. package/dist/server.mjs +12 -12
  41. package/package.json +5 -1
  42. package/src/config/RagConfig.ts +7 -0
  43. package/src/core/ConfigValidator.ts +66 -492
  44. package/src/core/LangChainAgent.ts +78 -0
  45. package/src/core/Pipeline.ts +210 -240
  46. package/src/core/ProviderHealthCheck.ts +35 -406
  47. package/src/core/ProviderInterfaces.ts +37 -0
  48. package/src/core/ProviderRegistry.ts +70 -55
  49. package/src/core/QueryProcessor.ts +173 -0
  50. package/src/llm/ILLMProvider.ts +10 -0
  51. package/src/llm/LLMFactory.ts +33 -13
  52. package/src/llm/providers/AnthropicProvider.ts +55 -15
  53. package/src/llm/providers/GeminiProvider.ts +51 -0
  54. package/src/llm/providers/OllamaProvider.ts +100 -15
  55. package/src/llm/providers/OpenAIProvider.ts +60 -11
  56. package/src/providers/vectordb/BaseVectorProvider.ts +11 -0
  57. package/src/providers/vectordb/MilvusProvider.ts +4 -0
  58. package/src/providers/vectordb/MongoDBProvider.ts +72 -8
  59. package/src/providers/vectordb/PineconeProvider.ts +60 -5
  60. package/src/providers/vectordb/PostgreSQLProvider.ts +84 -14
  61. package/src/providers/vectordb/QdrantProvider.ts +4 -0
  62. package/src/providers/vectordb/WeaviateProvider.ts +8 -4
  63. package/src/rag/DocumentChunker.ts +15 -19
  64. package/src/rag/LlamaIndexIngestor.ts +61 -0
  65. package/src/rag/Reranker.ts +20 -0
  66. package/src/server.ts +1 -1
  67. package/src/types/index.ts +9 -0
  68. package/dist/chunk-FWCSY2DS.mjs +0 -37
  69. package/dist/index-7qeLTPBL.d.mts +0 -114
  70. package/dist/index-DowY4_K0.d.ts +0 -114
@@ -0,0 +1,57 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __knownSymbol = (name, symbol) => (symbol = Symbol[name]) ? symbol : /* @__PURE__ */ Symbol.for("Symbol." + name);
8
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
9
+ var __spreadValues = (a, b) => {
10
+ for (var prop in b || (b = {}))
11
+ if (__hasOwnProp.call(b, prop))
12
+ __defNormalProp(a, prop, b[prop]);
13
+ if (__getOwnPropSymbols)
14
+ for (var prop of __getOwnPropSymbols(b)) {
15
+ if (__propIsEnum.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ }
18
+ return a;
19
+ };
20
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
21
+ var __objRest = (source, exclude) => {
22
+ var target = {};
23
+ for (var prop in source)
24
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
25
+ target[prop] = source[prop];
26
+ if (source != null && __getOwnPropSymbols)
27
+ for (var prop of __getOwnPropSymbols(source)) {
28
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
29
+ target[prop] = source[prop];
30
+ }
31
+ return target;
32
+ };
33
+ var __await = function(promise, isYieldStar) {
34
+ this[0] = promise;
35
+ this[1] = isYieldStar;
36
+ };
37
+ var __asyncGenerator = (__this, __arguments, generator) => {
38
+ var resume = (k, v, yes, no) => {
39
+ try {
40
+ var x = generator[k](v), isAwait = (v = x.value) instanceof __await, done = x.done;
41
+ Promise.resolve(isAwait ? v[0] : v).then((y) => isAwait ? resume(k === "return" ? k : "next", v[1] ? { done: y.done, value: y.value } : y, yes, no) : yes({ value: y, done })).catch((e) => resume("throw", e, yes, no));
42
+ } catch (e) {
43
+ no(e);
44
+ }
45
+ }, method = (k, call, wait, clear) => it[k] = (x) => (call = new Promise((yes, no, run) => (run = () => resume(k, x, yes, no), q ? q.then(run) : run())), clear = () => q === wait && (q = 0), q = wait = call.then(clear, clear), call), q, it = {};
46
+ return generator = generator.apply(__this, __arguments), it[__knownSymbol("asyncIterator")] = () => it, method("next"), method("throw"), method("return"), it;
47
+ };
48
+ var __forAwait = (obj, it, method) => (it = obj[__knownSymbol("asyncIterator")]) ? it.call(obj) : (obj = obj[__knownSymbol("iterator")](), it = {}, method = (key, fn) => (fn = obj[key]) && (it[key] = (arg) => new Promise((yes, no, done) => (arg = fn.call(obj, arg), done = arg.done, Promise.resolve(arg.value).then((value) => yes({ value, done }), no)))), method("next"), method("return"), it);
49
+
50
+ export {
51
+ __spreadValues,
52
+ __spreadProps,
53
+ __objRest,
54
+ __await,
55
+ __asyncGenerator,
56
+ __forAwait
57
+ };
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-IMP6FUCY.mjs";
4
4
  import {
5
5
  __spreadValues
6
- } from "./chunk-FWCSY2DS.mjs";
6
+ } from "./chunk-QMIKLALV.mjs";
7
7
 
8
8
  // src/providers/vectordb/MilvusProvider.ts
9
9
  import axios from "axios";
@@ -52,7 +52,11 @@ var MilvusProvider = class extends BaseVectorProvider {
52
52
  vector,
53
53
  limit: topK,
54
54
  filter: namespace ? `namespace == "${namespace}"` : void 0,
55
- outputFields: ["content", "metadata"]
55
+ outputFields: ["content", "metadata"],
56
+ searchParams: {
57
+ nprobe: this.config.options.nprobe || 16,
58
+ ef: this.config.options.efSearch || Math.max(topK * 10, 64)
59
+ }
56
60
  };
57
61
  const { data } = await this.http.post("/v1/vector/search", payload);
58
62
  return (data.data || []).map((res) => ({
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  buildPayload,
3
3
  resolvePath
4
- } from "./chunk-EDLTMSNY.mjs";
4
+ } from "./chunk-67AJ6SMD.mjs";
5
5
  import {
6
6
  BaseVectorProvider
7
7
  } from "./chunk-IMP6FUCY.mjs";
8
8
  import {
9
9
  __spreadValues
10
- } from "./chunk-FWCSY2DS.mjs";
10
+ } from "./chunk-QMIKLALV.mjs";
11
11
 
12
12
  // src/providers/vectordb/UniversalVectorProvider.ts
13
13
  import axios from "axios";
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-IMP6FUCY.mjs";
4
4
  import {
5
5
  __spreadValues
6
- } from "./chunk-FWCSY2DS.mjs";
6
+ } from "./chunk-QMIKLALV.mjs";
7
7
 
8
8
  // src/providers/vectordb/ChromaDBProvider.ts
9
9
  import axios from "axios";
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-IMP6FUCY.mjs";
4
4
  import {
5
5
  __spreadValues
6
- } from "./chunk-FWCSY2DS.mjs";
6
+ } from "./chunk-QMIKLALV.mjs";
7
7
 
8
8
  // src/providers/vectordb/PineconeProvider.ts
9
9
  import { Pinecone } from "@pinecone-database/pinecone";
@@ -14,6 +14,60 @@ var PineconeProvider = class extends BaseVectorProvider {
14
14
  if (!opts.apiKey) throw new Error("[PineconeProvider] options.apiKey is required");
15
15
  this.apiKey = opts.apiKey;
16
16
  }
17
+ static getValidator() {
18
+ return {
19
+ validate(config) {
20
+ const errors = [];
21
+ const opts = config.options || {};
22
+ if (!opts.apiKey) {
23
+ errors.push({
24
+ field: "vectorDb.options.apiKey",
25
+ message: "Pinecone API key is required",
26
+ suggestion: "Set PINECONE_API_KEY environment variable",
27
+ severity: "error"
28
+ });
29
+ }
30
+ return errors;
31
+ }
32
+ };
33
+ }
34
+ static getHealthChecker() {
35
+ return {
36
+ async check(config) {
37
+ var _a, _b;
38
+ const opts = config.options || {};
39
+ const indexName = config.indexName;
40
+ const timestamp = Date.now();
41
+ try {
42
+ const { Pinecone: Pinecone2 } = await import("@pinecone-database/pinecone");
43
+ const client = new Pinecone2({ apiKey: opts.apiKey });
44
+ const indexes = await client.listIndexes();
45
+ const indexNames = (_b = (_a = indexes.indexes) == null ? void 0 : _a.map((i) => i.name)) != null ? _b : [];
46
+ if (!indexNames.includes(indexName)) {
47
+ return {
48
+ healthy: false,
49
+ provider: "pinecone",
50
+ error: `Index "${indexName}" not found. Available: ${indexNames.join(", ")}`,
51
+ timestamp
52
+ };
53
+ }
54
+ return {
55
+ healthy: true,
56
+ provider: "pinecone",
57
+ capabilities: { indexes: indexNames.length, targetIndex: indexName },
58
+ timestamp
59
+ };
60
+ } catch (error) {
61
+ return {
62
+ healthy: false,
63
+ provider: "pinecone",
64
+ error: `Connection failed: ${error instanceof Error ? error.message : String(error)}`,
65
+ timestamp
66
+ };
67
+ }
68
+ }
69
+ };
70
+ }
17
71
  async initialize() {
18
72
  var _a, _b;
19
73
  this.client = new Pinecone({ apiKey: this.apiKey });
@@ -1,3 +1,3 @@
1
- import '../RagConfig-BgRDL9Vy.mjs';
2
- export { c as createChatHandler, a as createHealthHandler, b as createIngestHandler, d as createUploadHandler } from '../index-7qeLTPBL.mjs';
1
+ import '../RagConfig-DRJO4hGU.mjs';
2
+ export { c as createChatHandler, b as createHealthHandler, d as createIngestHandler, e as createUploadHandler } from '../index-v669iV-k.mjs';
3
3
  import 'next/server';
@@ -1,3 +1,3 @@
1
- import '../RagConfig-BgRDL9Vy.js';
2
- export { c as createChatHandler, a as createHealthHandler, b as createIngestHandler, d as createUploadHandler } from '../index-DowY4_K0.js';
1
+ import '../RagConfig-DRJO4hGU.js';
2
+ export { c as createChatHandler, b as createHealthHandler, d as createIngestHandler, e as createUploadHandler } from '../index-CrGMwXfO.js';
3
3
  import 'next/server';