rag-lite-ts 1.0.1
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/LICENSE +21 -0
- package/README.md +240 -0
- package/dist/api-errors.d.ts +90 -0
- package/dist/api-errors.d.ts.map +1 -0
- package/dist/api-errors.js +320 -0
- package/dist/api-errors.js.map +1 -0
- package/dist/chunker.d.ts +47 -0
- package/dist/chunker.d.ts.map +1 -0
- package/dist/chunker.js +256 -0
- package/dist/chunker.js.map +1 -0
- package/dist/cli/indexer.d.ts +11 -0
- package/dist/cli/indexer.d.ts.map +1 -0
- package/dist/cli/indexer.js +272 -0
- package/dist/cli/indexer.js.map +1 -0
- package/dist/cli/search.d.ts +7 -0
- package/dist/cli/search.d.ts.map +1 -0
- package/dist/cli/search.js +206 -0
- package/dist/cli/search.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +362 -0
- package/dist/cli.js.map +1 -0
- package/dist/config.d.ts +90 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +281 -0
- package/dist/config.js.map +1 -0
- package/dist/db.d.ts +90 -0
- package/dist/db.d.ts.map +1 -0
- package/dist/db.js +340 -0
- package/dist/db.js.map +1 -0
- package/dist/embedder.d.ts +101 -0
- package/dist/embedder.d.ts.map +1 -0
- package/dist/embedder.js +323 -0
- package/dist/embedder.js.map +1 -0
- package/dist/error-handler.d.ts +91 -0
- package/dist/error-handler.d.ts.map +1 -0
- package/dist/error-handler.js +196 -0
- package/dist/error-handler.js.map +1 -0
- package/dist/file-processor.d.ts +59 -0
- package/dist/file-processor.d.ts.map +1 -0
- package/dist/file-processor.js +312 -0
- package/dist/file-processor.js.map +1 -0
- package/dist/index-manager.d.ts +99 -0
- package/dist/index-manager.d.ts.map +1 -0
- package/dist/index-manager.js +444 -0
- package/dist/index-manager.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/indexer.d.ts +7 -0
- package/dist/indexer.d.ts.map +1 -0
- package/dist/indexer.js +51 -0
- package/dist/indexer.js.map +1 -0
- package/dist/ingestion.d.ts +175 -0
- package/dist/ingestion.d.ts.map +1 -0
- package/dist/ingestion.js +705 -0
- package/dist/ingestion.js.map +1 -0
- package/dist/mcp-server.d.ts +14 -0
- package/dist/mcp-server.d.ts.map +1 -0
- package/dist/mcp-server.js +680 -0
- package/dist/mcp-server.js.map +1 -0
- package/dist/path-manager.d.ts +42 -0
- package/dist/path-manager.d.ts.map +1 -0
- package/dist/path-manager.js +66 -0
- package/dist/path-manager.js.map +1 -0
- package/dist/preprocess.d.ts +19 -0
- package/dist/preprocess.d.ts.map +1 -0
- package/dist/preprocess.js +203 -0
- package/dist/preprocess.js.map +1 -0
- package/dist/preprocessors/index.d.ts +17 -0
- package/dist/preprocessors/index.d.ts.map +1 -0
- package/dist/preprocessors/index.js +38 -0
- package/dist/preprocessors/index.js.map +1 -0
- package/dist/preprocessors/mdx.d.ts +25 -0
- package/dist/preprocessors/mdx.d.ts.map +1 -0
- package/dist/preprocessors/mdx.js +101 -0
- package/dist/preprocessors/mdx.js.map +1 -0
- package/dist/preprocessors/mermaid.d.ts +68 -0
- package/dist/preprocessors/mermaid.d.ts.map +1 -0
- package/dist/preprocessors/mermaid.js +329 -0
- package/dist/preprocessors/mermaid.js.map +1 -0
- package/dist/preprocessors/registry.d.ts +56 -0
- package/dist/preprocessors/registry.d.ts.map +1 -0
- package/dist/preprocessors/registry.js +179 -0
- package/dist/preprocessors/registry.js.map +1 -0
- package/dist/reranker.d.ts +40 -0
- package/dist/reranker.d.ts.map +1 -0
- package/dist/reranker.js +212 -0
- package/dist/reranker.js.map +1 -0
- package/dist/resource-manager-demo.d.ts +7 -0
- package/dist/resource-manager-demo.d.ts.map +1 -0
- package/dist/resource-manager-demo.js +52 -0
- package/dist/resource-manager-demo.js.map +1 -0
- package/dist/resource-manager.d.ts +129 -0
- package/dist/resource-manager.d.ts.map +1 -0
- package/dist/resource-manager.js +389 -0
- package/dist/resource-manager.js.map +1 -0
- package/dist/search-standalone.d.ts +7 -0
- package/dist/search-standalone.d.ts.map +1 -0
- package/dist/search-standalone.js +117 -0
- package/dist/search-standalone.js.map +1 -0
- package/dist/search.d.ts +92 -0
- package/dist/search.d.ts.map +1 -0
- package/dist/search.js +454 -0
- package/dist/search.js.map +1 -0
- package/dist/test-utils.d.ts +36 -0
- package/dist/test-utils.d.ts.map +1 -0
- package/dist/test-utils.js +27 -0
- package/dist/test-utils.js.map +1 -0
- package/dist/tokenizer.d.ts +21 -0
- package/dist/tokenizer.d.ts.map +1 -0
- package/dist/tokenizer.js +59 -0
- package/dist/tokenizer.js.map +1 -0
- package/dist/types.d.ts +44 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/vector-index.d.ts +64 -0
- package/dist/vector-index.d.ts.map +1 -0
- package/dist/vector-index.js +308 -0
- package/dist/vector-index.js.map +1 -0
- package/package.json +80 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-errors.js","sourceRoot":"","sources":["../src/api-errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Configuration for chunking behavior
|
|
3
|
+
*/
|
|
4
|
+
export interface ChunkConfig {
|
|
5
|
+
/** Target chunk size in tokens (200-300 recommended) */
|
|
6
|
+
chunkSize: number;
|
|
7
|
+
/** Overlap between chunks in tokens (50 recommended) */
|
|
8
|
+
chunkOverlap: number;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Represents a text chunk with metadata
|
|
12
|
+
*/
|
|
13
|
+
export interface Chunk {
|
|
14
|
+
/** The text content of the chunk */
|
|
15
|
+
text: string;
|
|
16
|
+
/** Index of this chunk within the document */
|
|
17
|
+
chunkIndex: number;
|
|
18
|
+
/** Number of tokens in this chunk */
|
|
19
|
+
tokenCount: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Represents a document to be chunked
|
|
23
|
+
*/
|
|
24
|
+
export interface Document {
|
|
25
|
+
/** Source path or identifier */
|
|
26
|
+
source: string;
|
|
27
|
+
/** Document title */
|
|
28
|
+
title: string;
|
|
29
|
+
/** Full text content */
|
|
30
|
+
content: string;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Default chunking configuration
|
|
34
|
+
*/
|
|
35
|
+
export declare const DEFAULT_CHUNK_CONFIG: ChunkConfig;
|
|
36
|
+
/**
|
|
37
|
+
* Main chunking function implementing the three-tier strategy:
|
|
38
|
+
* 1. Split at paragraph boundaries (double newlines)
|
|
39
|
+
* 2. If paragraphs are too large, split at sentence boundaries
|
|
40
|
+
* 3. If sentences are still too large, use fixed-size chunking
|
|
41
|
+
*
|
|
42
|
+
* @param document - Document to chunk
|
|
43
|
+
* @param config - Chunking configuration
|
|
44
|
+
* @returns Array of chunks with metadata
|
|
45
|
+
*/
|
|
46
|
+
export declare function chunkDocument(document: Document, config?: ChunkConfig): Promise<Chunk[]>;
|
|
47
|
+
//# sourceMappingURL=chunker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunker.d.ts","sourceRoot":"","sources":["../src/chunker.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,wDAAwD;IACxD,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,qCAAqC;IACrC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,WAGlC,CAAC;AA+LF;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CACjC,QAAQ,EAAE,QAAQ,EAClB,MAAM,GAAE,WAAkC,GACzC,OAAO,CAAC,KAAK,EAAE,CAAC,CAmFlB"}
|
package/dist/chunker.js
ADDED
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
import { countTokens } from './tokenizer.js';
|
|
2
|
+
/**
|
|
3
|
+
* Default chunking configuration
|
|
4
|
+
*/
|
|
5
|
+
export const DEFAULT_CHUNK_CONFIG = {
|
|
6
|
+
chunkSize: 250, // Target 200-300 tokens
|
|
7
|
+
chunkOverlap: 50
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Split text at paragraph boundaries (double newlines)
|
|
11
|
+
* This is the first tier of the chunking strategy
|
|
12
|
+
*/
|
|
13
|
+
function splitIntoParagraphs(text) {
|
|
14
|
+
// Split on double newlines, filter out empty strings
|
|
15
|
+
return text
|
|
16
|
+
.split(/\n\s*\n/)
|
|
17
|
+
.map(p => p.trim())
|
|
18
|
+
.filter(p => p.length > 0);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Split text at sentence boundaries using punctuation marks
|
|
22
|
+
* This is the second tier of the chunking strategy
|
|
23
|
+
*/
|
|
24
|
+
function splitIntoSentences(text) {
|
|
25
|
+
// Split on sentence-ending punctuation followed by whitespace or end of string
|
|
26
|
+
// Handle common abbreviations and edge cases
|
|
27
|
+
const sentences = text
|
|
28
|
+
.split(/(?<=[.!?])\s+/)
|
|
29
|
+
.map(s => s.trim())
|
|
30
|
+
.filter(s => s.length > 0);
|
|
31
|
+
return sentences;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Split text into fixed-size chunks based on character count
|
|
35
|
+
* This is the fallback tier when semantic splitting fails
|
|
36
|
+
*/
|
|
37
|
+
async function splitIntoFixedSizeChunks(text, maxTokens, overlapTokens) {
|
|
38
|
+
const chunks = [];
|
|
39
|
+
const words = text.split(/\s+/);
|
|
40
|
+
let currentChunk = '';
|
|
41
|
+
let currentTokens = 0;
|
|
42
|
+
let i = 0;
|
|
43
|
+
while (i < words.length) {
|
|
44
|
+
const word = words[i];
|
|
45
|
+
const testChunk = currentChunk ? `${currentChunk} ${word}` : word;
|
|
46
|
+
const testTokens = await countTokens(testChunk);
|
|
47
|
+
if (testTokens <= maxTokens) {
|
|
48
|
+
currentChunk = testChunk;
|
|
49
|
+
currentTokens = testTokens;
|
|
50
|
+
i++;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
// Current chunk is full, save it
|
|
54
|
+
if (currentChunk) {
|
|
55
|
+
chunks.push(currentChunk);
|
|
56
|
+
// Create overlap for next chunk
|
|
57
|
+
if (overlapTokens > 0 && chunks.length > 0) {
|
|
58
|
+
const overlapText = await createOverlapFromWords(currentChunk, overlapTokens);
|
|
59
|
+
currentChunk = overlapText;
|
|
60
|
+
currentTokens = await countTokens(currentChunk);
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
currentChunk = '';
|
|
64
|
+
currentTokens = 0;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
// Single word exceeds limit, add it anyway
|
|
69
|
+
chunks.push(word);
|
|
70
|
+
i++;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
// Add final chunk if it has content
|
|
75
|
+
if (currentChunk.trim()) {
|
|
76
|
+
chunks.push(currentChunk.trim());
|
|
77
|
+
}
|
|
78
|
+
return chunks;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Create overlap text from words at the end of a chunk
|
|
82
|
+
*/
|
|
83
|
+
async function createOverlapFromWords(text, overlapTokens) {
|
|
84
|
+
const words = text.split(/\s+/);
|
|
85
|
+
let overlapText = '';
|
|
86
|
+
let tokens = 0;
|
|
87
|
+
// Work backwards from the end
|
|
88
|
+
for (let i = words.length - 1; i >= 0; i--) {
|
|
89
|
+
const word = words[i];
|
|
90
|
+
const testText = word + (overlapText ? ' ' + overlapText : '');
|
|
91
|
+
const testTokens = await countTokens(testText);
|
|
92
|
+
if (testTokens <= overlapTokens) {
|
|
93
|
+
overlapText = testText;
|
|
94
|
+
tokens = testTokens;
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
break;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return overlapText;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Create chunks from a list of text segments, respecting token limits
|
|
104
|
+
*/
|
|
105
|
+
async function createChunksFromSegments(segments, config) {
|
|
106
|
+
const chunks = [];
|
|
107
|
+
let currentChunk = '';
|
|
108
|
+
let currentTokens = 0;
|
|
109
|
+
for (const segment of segments) {
|
|
110
|
+
const segmentTokens = await countTokens(segment);
|
|
111
|
+
// If this single segment exceeds our limit, we need to split it further
|
|
112
|
+
if (segmentTokens > config.chunkSize) {
|
|
113
|
+
// Save current chunk if it has content
|
|
114
|
+
if (currentChunk.trim()) {
|
|
115
|
+
chunks.push(currentChunk.trim());
|
|
116
|
+
currentChunk = '';
|
|
117
|
+
currentTokens = 0;
|
|
118
|
+
}
|
|
119
|
+
// Split the large segment using fixed-size chunking based on tokens
|
|
120
|
+
const subChunks = await splitIntoFixedSizeChunks(segment, config.chunkSize, config.chunkOverlap);
|
|
121
|
+
chunks.push(...subChunks);
|
|
122
|
+
continue;
|
|
123
|
+
}
|
|
124
|
+
// Check if adding this segment would exceed our token limit
|
|
125
|
+
const potentialChunk = currentChunk ? `${currentChunk}\n\n${segment}` : segment;
|
|
126
|
+
const potentialTokens = await countTokens(potentialChunk);
|
|
127
|
+
if (potentialTokens <= config.chunkSize) {
|
|
128
|
+
// Add to current chunk
|
|
129
|
+
currentChunk = potentialChunk;
|
|
130
|
+
currentTokens = potentialTokens;
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
// Save current chunk and start a new one
|
|
134
|
+
if (currentChunk.trim()) {
|
|
135
|
+
chunks.push(currentChunk.trim());
|
|
136
|
+
}
|
|
137
|
+
// Start new chunk with overlap if possible
|
|
138
|
+
if (config.chunkOverlap > 0 && currentChunk) {
|
|
139
|
+
const overlapText = await createOverlapText(currentChunk, config.chunkOverlap);
|
|
140
|
+
currentChunk = overlapText ? `${overlapText}\n\n${segment}` : segment;
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
currentChunk = segment;
|
|
144
|
+
}
|
|
145
|
+
currentTokens = await countTokens(currentChunk);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
// Add final chunk if it has content
|
|
149
|
+
if (currentChunk.trim()) {
|
|
150
|
+
chunks.push(currentChunk.trim());
|
|
151
|
+
}
|
|
152
|
+
return chunks;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Create overlap text from the end of a chunk
|
|
156
|
+
*/
|
|
157
|
+
async function createOverlapText(text, overlapTokens) {
|
|
158
|
+
// Split into sentences and work backwards to get approximately the right amount of overlap
|
|
159
|
+
const sentences = splitIntoSentences(text);
|
|
160
|
+
let overlapText = '';
|
|
161
|
+
let tokens = 0;
|
|
162
|
+
for (let i = sentences.length - 1; i >= 0; i--) {
|
|
163
|
+
const sentence = sentences[i];
|
|
164
|
+
const sentenceTokens = await countTokens(sentence);
|
|
165
|
+
if (tokens + sentenceTokens <= overlapTokens) {
|
|
166
|
+
overlapText = sentence + (overlapText ? ' ' + overlapText : '');
|
|
167
|
+
tokens += sentenceTokens;
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
break;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return overlapText;
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Main chunking function implementing the three-tier strategy:
|
|
177
|
+
* 1. Split at paragraph boundaries (double newlines)
|
|
178
|
+
* 2. If paragraphs are too large, split at sentence boundaries
|
|
179
|
+
* 3. If sentences are still too large, use fixed-size chunking
|
|
180
|
+
*
|
|
181
|
+
* @param document - Document to chunk
|
|
182
|
+
* @param config - Chunking configuration
|
|
183
|
+
* @returns Array of chunks with metadata
|
|
184
|
+
*/
|
|
185
|
+
export async function chunkDocument(document, config = DEFAULT_CHUNK_CONFIG) {
|
|
186
|
+
console.log(`📝 Chunking document "${document.title}" with config: chunkSize=${config.chunkSize}, chunkOverlap=${config.chunkOverlap}`);
|
|
187
|
+
if (!document.content || document.content.trim().length === 0) {
|
|
188
|
+
return [];
|
|
189
|
+
}
|
|
190
|
+
// Tier 1: Split into paragraphs
|
|
191
|
+
const paragraphs = splitIntoParagraphs(document.content);
|
|
192
|
+
// Tier 2: For large paragraphs, split into sentences
|
|
193
|
+
const segments = [];
|
|
194
|
+
for (const paragraph of paragraphs) {
|
|
195
|
+
const paragraphTokens = await countTokens(paragraph);
|
|
196
|
+
if (paragraphTokens <= config.chunkSize) {
|
|
197
|
+
// Paragraph is small enough, use as-is
|
|
198
|
+
segments.push(paragraph);
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
// Paragraph is too large, split into sentences
|
|
202
|
+
const sentences = splitIntoSentences(paragraph);
|
|
203
|
+
// Group sentences that fit within token limits
|
|
204
|
+
let currentGroup = '';
|
|
205
|
+
let currentTokens = 0;
|
|
206
|
+
for (const sentence of sentences) {
|
|
207
|
+
const sentenceTokens = await countTokens(sentence);
|
|
208
|
+
// If single sentence exceeds limit, it will be handled in createChunksFromSegments
|
|
209
|
+
if (sentenceTokens > config.chunkSize) {
|
|
210
|
+
// Save current group if it has content
|
|
211
|
+
if (currentGroup.trim()) {
|
|
212
|
+
segments.push(currentGroup.trim());
|
|
213
|
+
currentGroup = '';
|
|
214
|
+
currentTokens = 0;
|
|
215
|
+
}
|
|
216
|
+
// Add the large sentence as its own segment (will be split later)
|
|
217
|
+
segments.push(sentence);
|
|
218
|
+
continue;
|
|
219
|
+
}
|
|
220
|
+
const potentialGroup = currentGroup ? `${currentGroup} ${sentence}` : sentence;
|
|
221
|
+
const potentialTokens = await countTokens(potentialGroup);
|
|
222
|
+
if (potentialTokens <= config.chunkSize) {
|
|
223
|
+
currentGroup = potentialGroup;
|
|
224
|
+
currentTokens = potentialTokens;
|
|
225
|
+
}
|
|
226
|
+
else {
|
|
227
|
+
// Save current group and start new one
|
|
228
|
+
if (currentGroup.trim()) {
|
|
229
|
+
segments.push(currentGroup.trim());
|
|
230
|
+
}
|
|
231
|
+
currentGroup = sentence;
|
|
232
|
+
currentTokens = sentenceTokens;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
// Add final group if it has content
|
|
236
|
+
if (currentGroup.trim()) {
|
|
237
|
+
segments.push(currentGroup.trim());
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
// Tier 3: Create final chunks with overlap handling
|
|
242
|
+
const chunkTexts = await createChunksFromSegments(segments, config);
|
|
243
|
+
// Convert to Chunk objects with metadata
|
|
244
|
+
const chunks = [];
|
|
245
|
+
for (let i = 0; i < chunkTexts.length; i++) {
|
|
246
|
+
const text = chunkTexts[i];
|
|
247
|
+
const tokenCount = await countTokens(text);
|
|
248
|
+
chunks.push({
|
|
249
|
+
text,
|
|
250
|
+
chunkIndex: i,
|
|
251
|
+
tokenCount
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
return chunks;
|
|
255
|
+
}
|
|
256
|
+
//# sourceMappingURL=chunker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chunker.js","sourceRoot":"","sources":["../src/chunker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run document ingestion from CLI
|
|
3
|
+
* @param path - File or directory path to ingest
|
|
4
|
+
* @param options - CLI options including model selection
|
|
5
|
+
*/
|
|
6
|
+
export declare function runIngest(path: string, options?: Record<string, any>): Promise<void>;
|
|
7
|
+
/**
|
|
8
|
+
* Run index rebuild from CLI
|
|
9
|
+
*/
|
|
10
|
+
export declare function runRebuild(): Promise<void>;
|
|
11
|
+
//# sourceMappingURL=indexer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../../src/cli/indexer.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAkM9F;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAqEhD"}
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { existsSync, statSync } from 'fs';
|
|
2
|
+
import { resolve } from 'path';
|
|
3
|
+
import { IngestionPipeline, rebuildIndex } from '../ingestion.js';
|
|
4
|
+
import { EXIT_CODES, ConfigurationError } from '../config.js';
|
|
5
|
+
/**
|
|
6
|
+
* Run document ingestion from CLI
|
|
7
|
+
* @param path - File or directory path to ingest
|
|
8
|
+
* @param options - CLI options including model selection
|
|
9
|
+
*/
|
|
10
|
+
export async function runIngest(path, options = {}) {
|
|
11
|
+
try {
|
|
12
|
+
// Validate path exists
|
|
13
|
+
const resolvedPath = resolve(path);
|
|
14
|
+
if (!existsSync(resolvedPath)) {
|
|
15
|
+
console.error(`Error: Path does not exist: ${path}`);
|
|
16
|
+
console.error('');
|
|
17
|
+
console.error('Please check:');
|
|
18
|
+
console.error('- The path is spelled correctly');
|
|
19
|
+
console.error('- You have read permissions for the path');
|
|
20
|
+
console.error('- The file or directory exists');
|
|
21
|
+
console.error('');
|
|
22
|
+
console.error('Examples:');
|
|
23
|
+
console.error(' raglite ingest ./docs/ # Ingest directory');
|
|
24
|
+
console.error(' raglite ingest ./readme.md # Ingest single file');
|
|
25
|
+
process.exit(EXIT_CODES.FILE_NOT_FOUND);
|
|
26
|
+
}
|
|
27
|
+
// Check if it's a file or directory
|
|
28
|
+
let stats;
|
|
29
|
+
try {
|
|
30
|
+
stats = statSync(resolvedPath);
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
console.error(`Error: Cannot access path: ${path}`);
|
|
34
|
+
console.error('');
|
|
35
|
+
if (error instanceof Error && error.message.includes('EACCES')) {
|
|
36
|
+
console.error('Permission denied. Please check that you have read permissions for this path.');
|
|
37
|
+
process.exit(EXIT_CODES.PERMISSION_ERROR);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
console.error('The path exists but cannot be accessed. Please check permissions.');
|
|
41
|
+
process.exit(EXIT_CODES.FILE_NOT_FOUND);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
const pathType = stats.isDirectory() ? 'directory' : 'file';
|
|
45
|
+
// Validate file type for single files
|
|
46
|
+
if (stats.isFile()) {
|
|
47
|
+
const validExtensions = ['.md', '.txt'];
|
|
48
|
+
const hasValidExtension = validExtensions.some(ext => path.toLowerCase().endsWith(ext));
|
|
49
|
+
if (!hasValidExtension) {
|
|
50
|
+
console.error(`Error: Unsupported file type: ${path}`);
|
|
51
|
+
console.error('');
|
|
52
|
+
console.error('Supported file types: .md, .txt');
|
|
53
|
+
console.error('');
|
|
54
|
+
console.error('If you want to ingest multiple files, provide a directory path instead.');
|
|
55
|
+
process.exit(EXIT_CODES.INVALID_ARGUMENTS);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
console.log(`Starting ingestion of ${pathType}: ${resolvedPath}`);
|
|
59
|
+
console.log('This may take a while for large document collections...');
|
|
60
|
+
console.log('');
|
|
61
|
+
// Create and run ingestion pipeline
|
|
62
|
+
const configOverrides = {};
|
|
63
|
+
if (options.model) {
|
|
64
|
+
configOverrides.embedding_model = options.model;
|
|
65
|
+
console.log(`Using embedding model: ${options.model}`);
|
|
66
|
+
}
|
|
67
|
+
const pipeline = new IngestionPipeline();
|
|
68
|
+
pipeline.setConfigOverrides(configOverrides);
|
|
69
|
+
// Set path storage strategy if specified
|
|
70
|
+
if (options['path-strategy'] || options['path-base']) {
|
|
71
|
+
const strategy = options['path-strategy'] || 'relative';
|
|
72
|
+
const basePath = options['path-base'] || process.cwd();
|
|
73
|
+
pipeline.setPathStorageStrategy(strategy, basePath);
|
|
74
|
+
console.log(`Using path storage strategy: ${strategy} (base: ${basePath})`);
|
|
75
|
+
}
|
|
76
|
+
try {
|
|
77
|
+
// Handle automatic rebuild if needed
|
|
78
|
+
if (options.rebuildIfNeeded) {
|
|
79
|
+
try {
|
|
80
|
+
await pipeline.initialize();
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
if (error instanceof Error && error.message.includes('Model mismatch detected')) {
|
|
84
|
+
console.log('⚠️ Model mismatch detected. Rebuilding index automatically...');
|
|
85
|
+
console.log('⚠️ WARNING: This will regenerate ALL embeddings and may take a while.');
|
|
86
|
+
console.log('');
|
|
87
|
+
// Create a new pipeline with the same config overrides for rebuild
|
|
88
|
+
const rebuildPipeline = new IngestionPipeline();
|
|
89
|
+
rebuildPipeline.setConfigOverrides(configOverrides);
|
|
90
|
+
try {
|
|
91
|
+
await rebuildPipeline.initialize();
|
|
92
|
+
await rebuildPipeline.rebuildIndex();
|
|
93
|
+
}
|
|
94
|
+
finally {
|
|
95
|
+
await rebuildPipeline.cleanup();
|
|
96
|
+
}
|
|
97
|
+
console.log('✅ Rebuild completed. Continuing with ingestion...');
|
|
98
|
+
console.log('');
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
throw error;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
const result = await pipeline.ingestPath(resolvedPath);
|
|
106
|
+
// Display final results
|
|
107
|
+
console.log('\n' + '='.repeat(50));
|
|
108
|
+
console.log('INGESTION SUMMARY');
|
|
109
|
+
console.log('='.repeat(50));
|
|
110
|
+
console.log(`Documents processed: ${result.documentsProcessed}`);
|
|
111
|
+
console.log(`Chunks created: ${result.chunksCreated}`);
|
|
112
|
+
console.log(`Embeddings generated: ${result.embeddingsGenerated}`);
|
|
113
|
+
if (result.documentErrors > 0) {
|
|
114
|
+
console.log(`Document errors: ${result.documentErrors}`);
|
|
115
|
+
}
|
|
116
|
+
if (result.embeddingErrors > 0) {
|
|
117
|
+
console.log(`Embedding errors: ${result.embeddingErrors}`);
|
|
118
|
+
}
|
|
119
|
+
console.log(`Total processing time: ${(result.processingTimeMs / 1000).toFixed(2)} seconds`);
|
|
120
|
+
if (result.chunksCreated > 0) {
|
|
121
|
+
const chunksPerSecond = (result.chunksCreated / (result.processingTimeMs / 1000)).toFixed(1);
|
|
122
|
+
console.log(`Processing rate: ${chunksPerSecond} chunks/second`);
|
|
123
|
+
}
|
|
124
|
+
console.log('\nIngestion completed successfully!');
|
|
125
|
+
console.log('You can now search your documents using: raglite search "your query"');
|
|
126
|
+
}
|
|
127
|
+
finally {
|
|
128
|
+
await pipeline.cleanup();
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
console.error('\n' + '='.repeat(50));
|
|
133
|
+
console.error('INGESTION FAILED');
|
|
134
|
+
console.error('='.repeat(50));
|
|
135
|
+
if (error instanceof ConfigurationError) {
|
|
136
|
+
console.error('Configuration Error:');
|
|
137
|
+
console.error(error.message);
|
|
138
|
+
process.exit(error.exitCode);
|
|
139
|
+
}
|
|
140
|
+
else if (error instanceof Error) {
|
|
141
|
+
console.error('Error:', error.message);
|
|
142
|
+
console.error('');
|
|
143
|
+
// Provide specific help for common error types
|
|
144
|
+
if (error.message.includes('ENOENT')) {
|
|
145
|
+
console.error('File/Directory Not Found:');
|
|
146
|
+
console.error('- Verify the path exists and is accessible');
|
|
147
|
+
console.error('- Check file and directory permissions');
|
|
148
|
+
console.error('- Ensure you have read access to the specified location');
|
|
149
|
+
process.exit(EXIT_CODES.FILE_NOT_FOUND);
|
|
150
|
+
}
|
|
151
|
+
else if (error.message.includes('EACCES') || error.message.includes('permission')) {
|
|
152
|
+
console.error('Permission Denied:');
|
|
153
|
+
console.error('- Check that you have read permissions for the files/directories');
|
|
154
|
+
console.error('- Ensure the database file is not locked by another process');
|
|
155
|
+
console.error('- Try running with appropriate permissions');
|
|
156
|
+
process.exit(EXIT_CODES.PERMISSION_ERROR);
|
|
157
|
+
}
|
|
158
|
+
else if (error.message.includes('SQLITE') || error.message.includes('database')) {
|
|
159
|
+
console.error('Database Error:');
|
|
160
|
+
console.error('- The database file may be corrupted or locked');
|
|
161
|
+
console.error('- Try running: raglite rebuild');
|
|
162
|
+
console.error('- Ensure no other RAG-lite processes are running');
|
|
163
|
+
console.error('- Check available disk space');
|
|
164
|
+
process.exit(EXIT_CODES.DATABASE_ERROR);
|
|
165
|
+
}
|
|
166
|
+
else if (error.message.includes('ONNX') || error.message.includes('model')) {
|
|
167
|
+
console.error('Model Loading Error:');
|
|
168
|
+
console.error('- The embedding model failed to load');
|
|
169
|
+
console.error('- This may happen on first run while downloading the model');
|
|
170
|
+
console.error('- Ensure you have internet connection for initial model download');
|
|
171
|
+
console.error('- Check available disk space in the models directory');
|
|
172
|
+
console.error('- Try running the command again');
|
|
173
|
+
process.exit(EXIT_CODES.MODEL_ERROR);
|
|
174
|
+
}
|
|
175
|
+
else if (error.message.includes('index') || error.message.includes('vector')) {
|
|
176
|
+
console.error('Vector Index Error:');
|
|
177
|
+
console.error('- The vector index may be corrupted');
|
|
178
|
+
console.error('- Try running: raglite rebuild');
|
|
179
|
+
console.error('- Check available disk space');
|
|
180
|
+
process.exit(EXIT_CODES.INDEX_ERROR);
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
console.error('General Error:');
|
|
184
|
+
console.error('- An unexpected error occurred during ingestion');
|
|
185
|
+
console.error('- Check the error message above for more details');
|
|
186
|
+
console.error('- Try running the command again');
|
|
187
|
+
console.error('- If the problem persists, try: raglite rebuild');
|
|
188
|
+
process.exit(EXIT_CODES.GENERAL_ERROR);
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
else {
|
|
192
|
+
console.error('Unknown error:', String(error));
|
|
193
|
+
process.exit(EXIT_CODES.GENERAL_ERROR);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Run index rebuild from CLI
|
|
199
|
+
*/
|
|
200
|
+
export async function runRebuild() {
|
|
201
|
+
try {
|
|
202
|
+
console.log('Starting index rebuild...');
|
|
203
|
+
console.log('This will regenerate all embeddings and rebuild the vector index.');
|
|
204
|
+
console.log('This may take a while depending on your document collection size.');
|
|
205
|
+
console.log('');
|
|
206
|
+
console.log('Progress will be shown below...');
|
|
207
|
+
console.log('');
|
|
208
|
+
await rebuildIndex();
|
|
209
|
+
console.log('\n' + '='.repeat(50));
|
|
210
|
+
console.log('REBUILD COMPLETE');
|
|
211
|
+
console.log('='.repeat(50));
|
|
212
|
+
console.log('The vector index has been successfully rebuilt.');
|
|
213
|
+
console.log('All embeddings have been regenerated with the current model.');
|
|
214
|
+
console.log('');
|
|
215
|
+
console.log('You can now search your documents using: raglite search "your query"');
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
console.error('\n' + '='.repeat(50));
|
|
219
|
+
console.error('REBUILD FAILED');
|
|
220
|
+
console.error('='.repeat(50));
|
|
221
|
+
if (error instanceof ConfigurationError) {
|
|
222
|
+
console.error('Configuration Error:');
|
|
223
|
+
console.error(error.message);
|
|
224
|
+
process.exit(error.exitCode);
|
|
225
|
+
}
|
|
226
|
+
else if (error instanceof Error) {
|
|
227
|
+
console.error('Error:', error.message);
|
|
228
|
+
console.error('');
|
|
229
|
+
if (error.message.includes('No documents found') || error.message.includes('empty')) {
|
|
230
|
+
console.error('No Documents Found:');
|
|
231
|
+
console.error('- Make sure you have ingested documents first');
|
|
232
|
+
console.error('- Run: raglite ingest <path>');
|
|
233
|
+
console.error('- Check that your documents are in supported formats (.md, .txt)');
|
|
234
|
+
process.exit(EXIT_CODES.FILE_NOT_FOUND);
|
|
235
|
+
}
|
|
236
|
+
else if (error.message.includes('SQLITE') || error.message.includes('database')) {
|
|
237
|
+
console.error('Database Error:');
|
|
238
|
+
console.error('- The database file may be missing or corrupted');
|
|
239
|
+
console.error('- Try deleting db.sqlite and re-ingesting your documents');
|
|
240
|
+
console.error('- Ensure you have write permissions in the current directory');
|
|
241
|
+
process.exit(EXIT_CODES.DATABASE_ERROR);
|
|
242
|
+
}
|
|
243
|
+
else if (error.message.includes('model') || error.message.includes('ONNX')) {
|
|
244
|
+
console.error('Model Error:');
|
|
245
|
+
console.error('- The embedding model failed to load');
|
|
246
|
+
console.error('- Ensure you have internet connection for model download');
|
|
247
|
+
console.error('- Check available disk space');
|
|
248
|
+
console.error('- Try deleting the models directory and running again');
|
|
249
|
+
process.exit(EXIT_CODES.MODEL_ERROR);
|
|
250
|
+
}
|
|
251
|
+
else if (error.message.includes('index') || error.message.includes('vector')) {
|
|
252
|
+
console.error('Index Error:');
|
|
253
|
+
console.error('- Failed to rebuild the vector index');
|
|
254
|
+
console.error('- Try deleting vector-index.bin and running again');
|
|
255
|
+
console.error('- Check available disk space');
|
|
256
|
+
process.exit(EXIT_CODES.INDEX_ERROR);
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
console.error('General Error:');
|
|
260
|
+
console.error('- An unexpected error occurred during rebuild');
|
|
261
|
+
console.error('- Try deleting db.sqlite and vector-index.bin, then re-ingest');
|
|
262
|
+
console.error('- Check available disk space and permissions');
|
|
263
|
+
process.exit(EXIT_CODES.GENERAL_ERROR);
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
console.error('Unknown error:', String(error));
|
|
268
|
+
process.exit(EXIT_CODES.GENERAL_ERROR);
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
//# sourceMappingURL=indexer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../src/cli/indexer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run search from CLI
|
|
3
|
+
* @param query - Search query string
|
|
4
|
+
* @param options - CLI options including top-k and rerank settings
|
|
5
|
+
*/
|
|
6
|
+
export declare function runSearch(query: string, options?: Record<string, any>): Promise<void>;
|
|
7
|
+
//# sourceMappingURL=search.d.ts.map
|