@devilsdev/rag-connectors 3.8.1 → 3.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.cjs +42 -24
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -1310,12 +1310,20 @@ var require_local_embedder = __commonJS({
|
|
|
1310
1310
|
}
|
|
1311
1311
|
});
|
|
1312
1312
|
|
|
1313
|
+
// scoped:@devilsdev/rag-core|retrieval/access-fields.js
|
|
1314
|
+
var require_access_fields = __commonJS({
|
|
1315
|
+
"scoped:@devilsdev/rag-core|retrieval/access-fields.js"(exports2, module2) {
|
|
1316
|
+
module2.exports = require("@devilsdev/rag-core")[Symbol.for("@devilsdev/rag-core/internal")]("retrieval/access-fields.js");
|
|
1317
|
+
}
|
|
1318
|
+
});
|
|
1319
|
+
|
|
1313
1320
|
// src/retrieval/qdrant-retriever.js
|
|
1314
1321
|
var require_qdrant_retriever = __commonJS({
|
|
1315
1322
|
"src/retrieval/qdrant-retriever.js"(exports2, module2) {
|
|
1316
1323
|
"use strict";
|
|
1317
1324
|
var crypto = require("crypto");
|
|
1318
1325
|
var { throwIfAborted } = require_connector_utils();
|
|
1326
|
+
var { accessFields } = require_access_fields();
|
|
1319
1327
|
var COLLECTION = /^[A-Za-z0-9_-]{1,255}$/;
|
|
1320
1328
|
var DEFAULT_COLLECTION = "rag_documents";
|
|
1321
1329
|
var PAGE = 256;
|
|
@@ -1503,7 +1511,8 @@ var require_qdrant_retriever = __commonJS({
|
|
|
1503
1511
|
payload: {
|
|
1504
1512
|
rag_id: id,
|
|
1505
1513
|
content: doc.content || "",
|
|
1506
|
-
metadata: doc.metadata || {}
|
|
1514
|
+
metadata: doc.metadata || {},
|
|
1515
|
+
...accessFields(doc)
|
|
1507
1516
|
}
|
|
1508
1517
|
};
|
|
1509
1518
|
});
|
|
@@ -1545,7 +1554,8 @@ var require_qdrant_retriever = __commonJS({
|
|
|
1545
1554
|
id: p.payload.rag_id,
|
|
1546
1555
|
score: p.score,
|
|
1547
1556
|
content: p.payload.content || "",
|
|
1548
|
-
metadata: p.payload.metadata || {}
|
|
1557
|
+
metadata: p.payload.metadata || {},
|
|
1558
|
+
...accessFields(p.payload)
|
|
1549
1559
|
}));
|
|
1550
1560
|
}
|
|
1551
1561
|
/**
|
|
@@ -1621,7 +1631,8 @@ var require_qdrant_retriever = __commonJS({
|
|
|
1621
1631
|
out.push({
|
|
1622
1632
|
id: p.payload.rag_id,
|
|
1623
1633
|
content: p.payload.content || "",
|
|
1624
|
-
metadata: p.payload.metadata || {}
|
|
1634
|
+
metadata: p.payload.metadata || {},
|
|
1635
|
+
...accessFields(p.payload)
|
|
1625
1636
|
});
|
|
1626
1637
|
}
|
|
1627
1638
|
offset = result.next_page_offset;
|
|
@@ -1639,6 +1650,7 @@ var require_pinecone_retriever = __commonJS({
|
|
|
1639
1650
|
"use strict";
|
|
1640
1651
|
var crypto = require("crypto");
|
|
1641
1652
|
var { throwIfAborted } = require_connector_utils();
|
|
1653
|
+
var { storedMetadata, readStoredMetadata } = require_access_fields();
|
|
1642
1654
|
var API_VERSION = "2026-07";
|
|
1643
1655
|
var CONTROL_PLANE = "https://api.pinecone.io";
|
|
1644
1656
|
var DEFAULT_NAMESPACE = "rag_documents";
|
|
@@ -1669,16 +1681,18 @@ var require_pinecone_retriever = __commonJS({
|
|
|
1669
1681
|
}
|
|
1670
1682
|
function fromFields(fields, fallbackId) {
|
|
1671
1683
|
const m = fields || {};
|
|
1672
|
-
let
|
|
1684
|
+
let stored = {};
|
|
1673
1685
|
try {
|
|
1674
|
-
|
|
1686
|
+
stored = m.rag_metadata ? JSON.parse(m.rag_metadata) : {};
|
|
1675
1687
|
} catch {
|
|
1676
|
-
|
|
1688
|
+
stored = {};
|
|
1677
1689
|
}
|
|
1690
|
+
const { metadata, access } = readStoredMetadata(stored);
|
|
1678
1691
|
return {
|
|
1679
1692
|
id: m.rag_id !== void 0 ? String(m.rag_id) : fallbackId,
|
|
1680
1693
|
content: m.rag_content || "",
|
|
1681
|
-
metadata
|
|
1694
|
+
metadata,
|
|
1695
|
+
...access
|
|
1682
1696
|
};
|
|
1683
1697
|
}
|
|
1684
1698
|
function normalizeHost(host) {
|
|
@@ -2053,7 +2067,7 @@ var require_pinecone_retriever = __commonJS({
|
|
|
2053
2067
|
fields: {
|
|
2054
2068
|
rag_id: id,
|
|
2055
2069
|
rag_content: doc.content || "",
|
|
2056
|
-
rag_metadata: JSON.stringify(
|
|
2070
|
+
rag_metadata: JSON.stringify(storedMetadata(doc)),
|
|
2057
2071
|
...metadata.source !== void 0 && metadata.source !== null && {
|
|
2058
2072
|
rag_source: String(metadata.source)
|
|
2059
2073
|
}
|
|
@@ -2113,7 +2127,7 @@ var require_pinecone_retriever = __commonJS({
|
|
|
2113
2127
|
[this._textField]: doc.content,
|
|
2114
2128
|
rag_id: id,
|
|
2115
2129
|
rag_content: doc.content,
|
|
2116
|
-
rag_metadata: JSON.stringify(
|
|
2130
|
+
rag_metadata: JSON.stringify(storedMetadata(doc)),
|
|
2117
2131
|
...metadata.source !== void 0 && metadata.source !== null && {
|
|
2118
2132
|
rag_source: String(metadata.source)
|
|
2119
2133
|
}
|
|
@@ -2333,10 +2347,15 @@ var require_pgvector_retriever = __commonJS({
|
|
|
2333
2347
|
"src/retrieval/pgvector-retriever.js"(exports2, module2) {
|
|
2334
2348
|
"use strict";
|
|
2335
2349
|
var { throwIfAborted, raceAbort } = require_connector_utils();
|
|
2350
|
+
var { storedMetadata, readStoredMetadata } = require_access_fields();
|
|
2336
2351
|
var IDENTIFIER = /^[A-Za-z_][A-Za-z0-9_]{0,62}$/;
|
|
2337
2352
|
var DEFAULT_TABLE = "rag_documents";
|
|
2338
2353
|
var PG_DEFAULT_EF_SEARCH = 40;
|
|
2339
2354
|
var MAX_BATCH = 1e3;
|
|
2355
|
+
function fromRow(row) {
|
|
2356
|
+
const { metadata, access } = readStoredMetadata(row.metadata || {});
|
|
2357
|
+
return { content: row.content, metadata, ...access };
|
|
2358
|
+
}
|
|
2340
2359
|
function quoteTable(name) {
|
|
2341
2360
|
const parts = String(name).split(".");
|
|
2342
2361
|
if (parts.length > 2 || !parts.every((p) => IDENTIFIER.test(p))) {
|
|
@@ -2547,7 +2566,7 @@ var require_pgvector_retriever = __commonJS({
|
|
|
2547
2566
|
return [
|
|
2548
2567
|
id,
|
|
2549
2568
|
doc.content || "",
|
|
2550
|
-
JSON.stringify(doc
|
|
2569
|
+
JSON.stringify(storedMetadata(doc)),
|
|
2551
2570
|
literal
|
|
2552
2571
|
];
|
|
2553
2572
|
});
|
|
@@ -2603,8 +2622,7 @@ var require_pgvector_retriever = __commonJS({
|
|
|
2603
2622
|
return rows.map((r) => ({
|
|
2604
2623
|
id: r.id,
|
|
2605
2624
|
score: Number(r.score),
|
|
2606
|
-
|
|
2607
|
-
metadata: r.metadata || {}
|
|
2625
|
+
...fromRow(r)
|
|
2608
2626
|
}));
|
|
2609
2627
|
}
|
|
2610
2628
|
/**
|
|
@@ -2662,11 +2680,7 @@ var require_pgvector_retriever = __commonJS({
|
|
|
2662
2680
|
`SELECT id, content, metadata FROM ${this.table} ORDER BY id${limit ? " LIMIT $1" : ""}`,
|
|
2663
2681
|
limit ? [limit] : []
|
|
2664
2682
|
);
|
|
2665
|
-
return rows.map((r) => ({
|
|
2666
|
-
id: r.id,
|
|
2667
|
-
content: r.content,
|
|
2668
|
-
metadata: r.metadata || {}
|
|
2669
|
-
}));
|
|
2683
|
+
return rows.map((r) => ({ id: r.id, ...fromRow(r) }));
|
|
2670
2684
|
}
|
|
2671
2685
|
/** Closes the Pool this retriever created; a pool you passed in stays open. */
|
|
2672
2686
|
async close() {
|
|
@@ -2687,6 +2701,7 @@ var require_weaviate_retriever = __commonJS({
|
|
|
2687
2701
|
"use strict";
|
|
2688
2702
|
var { throwIfAborted } = require_connector_utils();
|
|
2689
2703
|
var { pointId } = require_qdrant_retriever();
|
|
2704
|
+
var { storedMetadata, readStoredMetadata } = require_access_fields();
|
|
2690
2705
|
var COLLECTION = /^[A-Za-z][A-Za-z0-9_]{0,254}$/;
|
|
2691
2706
|
var DEFAULT_COLLECTION = "RagDocuments";
|
|
2692
2707
|
var PAGE = 256;
|
|
@@ -2733,13 +2748,16 @@ var require_weaviate_retriever = __commonJS({
|
|
|
2733
2748
|
return url.slice(0, end);
|
|
2734
2749
|
}
|
|
2735
2750
|
function parseMetadata(text) {
|
|
2736
|
-
|
|
2751
|
+
let value = {};
|
|
2737
2752
|
try {
|
|
2738
|
-
|
|
2739
|
-
return value && typeof value === "object" ? value : {};
|
|
2753
|
+
value = text ? JSON.parse(text) : {};
|
|
2740
2754
|
} catch {
|
|
2741
|
-
|
|
2755
|
+
value = {};
|
|
2742
2756
|
}
|
|
2757
|
+
const { metadata, access } = readStoredMetadata(
|
|
2758
|
+
value && typeof value === "object" ? value : {}
|
|
2759
|
+
);
|
|
2760
|
+
return { metadata, ...access };
|
|
2743
2761
|
}
|
|
2744
2762
|
function errorDetail(json) {
|
|
2745
2763
|
const list = json && (json.error || json.errors) || [];
|
|
@@ -2962,7 +2980,7 @@ var require_weaviate_retriever = __commonJS({
|
|
|
2962
2980
|
const properties = {
|
|
2963
2981
|
rag_id: id,
|
|
2964
2982
|
content: doc.content || "",
|
|
2965
|
-
rag_metadata: JSON.stringify(
|
|
2983
|
+
rag_metadata: JSON.stringify(storedMetadata(doc))
|
|
2966
2984
|
};
|
|
2967
2985
|
if (metadata.source !== void 0 && metadata.source !== null) {
|
|
2968
2986
|
properties.rag_source = String(metadata.source);
|
|
@@ -3032,7 +3050,7 @@ var require_weaviate_retriever = __commonJS({
|
|
|
3032
3050
|
id: hit.rag_id,
|
|
3033
3051
|
score: 1 - hit._additional.distance,
|
|
3034
3052
|
content: hit.content || "",
|
|
3035
|
-
|
|
3053
|
+
...parseMetadata(hit.rag_metadata)
|
|
3036
3054
|
}));
|
|
3037
3055
|
}
|
|
3038
3056
|
/**
|
|
@@ -3115,7 +3133,7 @@ var require_weaviate_retriever = __commonJS({
|
|
|
3115
3133
|
out.push({
|
|
3116
3134
|
id: p.rag_id,
|
|
3117
3135
|
content: p.content || "",
|
|
3118
|
-
|
|
3136
|
+
...parseMetadata(p.rag_metadata)
|
|
3119
3137
|
});
|
|
3120
3138
|
if (limit && out.length >= limit) return out;
|
|
3121
3139
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devilsdev/rag-connectors",
|
|
3
|
-
"version": "3.8.
|
|
3
|
+
"version": "3.8.2",
|
|
4
4
|
"description": "Embedders, LLMs and vector stores for @devilsdev/rag-core: OpenAI, Anthropic, Cohere, Ollama, the AI SDK, Qdrant, pgvector, Pinecone and Weaviate.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"rag",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"access": "public"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@devilsdev/rag-core": "3.8.
|
|
48
|
+
"@devilsdev/rag-core": "3.8.2",
|
|
49
49
|
"axios": "^1.21.0"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|