@xtatistix/rag-wiki 0.1.18 → 0.1.20
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/browser.d.ts +23 -9
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +58 -10
- package/dist/browser.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -3
- package/dist/index.js.map +1 -1
- package/dist/query-engine.d.ts +1 -1
- package/dist/query-engine.d.ts.map +1 -1
- package/dist/query-engine.js +24 -2
- package/dist/query-engine.js.map +1 -1
- package/package.json +1 -1
package/dist/browser.d.ts
CHANGED
|
@@ -1,11 +1,25 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
3
|
-
export
|
|
4
|
-
|
|
1
|
+
import { RagWikiConfig, QueryResult } from "./types";
|
|
2
|
+
export { BrowserAdapter } from "./adapters/browser";
|
|
3
|
+
export { PresignedAdapter } from "./adapters/presigned";
|
|
4
|
+
export type { RagWikiConfig, QueryResult, WikiPage, WikiIndex, EscalationReason, RagWikiAdapter } from "./types";
|
|
5
5
|
export declare class RagWiki {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
private readonly adapter;
|
|
7
|
+
private readonly reader;
|
|
8
|
+
private readonly engine;
|
|
9
|
+
private readonly logger;
|
|
10
|
+
private readonly ingester;
|
|
11
|
+
private readonly defaultProjectId?;
|
|
12
|
+
private readonly globalProjectId?;
|
|
13
|
+
constructor(config: RagWikiConfig);
|
|
14
|
+
private resolveProjectId;
|
|
15
|
+
ingest(title: string, content: string, options?: {
|
|
16
|
+
projectId?: string | number;
|
|
17
|
+
summary?: string;
|
|
18
|
+
}): Promise<string>;
|
|
19
|
+
ask(question: string, options?: {
|
|
20
|
+
projectId?: string | number;
|
|
21
|
+
mode?: "default" | "next_analysis";
|
|
22
|
+
}): Promise<QueryResult>;
|
|
9
23
|
}
|
|
10
|
-
|
|
11
|
-
|
|
24
|
+
export declare function createRagWiki(config: RagWikiConfig): RagWiki;
|
|
25
|
+
//# sourceMappingURL=browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGrD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,YAAY,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAajH,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwC;IAChE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAkB;IACpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;gBAEvC,MAAM,EAAE,aAAa;IAiBjC,OAAO,CAAC,gBAAgB;IAQlB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAKpH,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,GAAG,eAAe,CAAA;KAAE,GAAG,OAAO,CAAC,WAAW,CAAC;CA6DjI;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAE5D"}
|
package/dist/browser.js
CHANGED
|
@@ -10,12 +10,21 @@ var browser_1 = require("./adapters/browser");
|
|
|
10
10
|
Object.defineProperty(exports, "BrowserAdapter", { enumerable: true, get: function () { return browser_1.BrowserAdapter; } });
|
|
11
11
|
var presigned_1 = require("./adapters/presigned");
|
|
12
12
|
Object.defineProperty(exports, "PresignedAdapter", { enumerable: true, get: function () { return presigned_1.PresignedAdapter; } });
|
|
13
|
+
function isNextAnalysisQuestion(question) {
|
|
14
|
+
const lower = question.toLowerCase();
|
|
15
|
+
return (lower.includes("sonraki analiz") ||
|
|
16
|
+
lower.includes("ne yapmalıyım") ||
|
|
17
|
+
lower.includes("hangi analizi") ||
|
|
18
|
+
lower.includes("next analysis") ||
|
|
19
|
+
lower.includes("what should i do next"));
|
|
20
|
+
}
|
|
13
21
|
class RagWiki {
|
|
14
22
|
constructor(config) {
|
|
15
23
|
this.defaultProjectId = config.projectId;
|
|
24
|
+
this.globalProjectId = config.globalProjectId;
|
|
16
25
|
this.adapter = config.adapter;
|
|
17
26
|
if (!this.adapter) {
|
|
18
|
-
throw new Error("rag-wiki/browser: adapter is required in browser mode. Use BrowserAdapter.");
|
|
27
|
+
throw new Error("rag-wiki/browser: adapter is required in browser mode. Use PresignedAdapter or BrowserAdapter.");
|
|
19
28
|
}
|
|
20
29
|
this.reader = new wiki_reader_1.WikiReader(this.adapter);
|
|
21
30
|
this.ingester = new ingest_1.IngestEngine(this.adapter);
|
|
@@ -29,23 +38,61 @@ class RagWiki {
|
|
|
29
38
|
resolveProjectId(projectId) {
|
|
30
39
|
const id = projectId ?? this.defaultProjectId;
|
|
31
40
|
if (id === undefined) {
|
|
32
|
-
throw new Error("rag-wiki: projectId required.
|
|
41
|
+
throw new Error("rag-wiki: projectId required.");
|
|
33
42
|
}
|
|
34
43
|
return id;
|
|
35
44
|
}
|
|
36
45
|
async ingest(title, content, options) {
|
|
37
46
|
const id = this.resolveProjectId(options?.projectId);
|
|
38
|
-
return this.ingester.ingest(id, title, content);
|
|
47
|
+
return this.ingester.ingest(id, title, content, { summary: options?.summary });
|
|
39
48
|
}
|
|
40
49
|
async ask(question, options) {
|
|
41
50
|
const id = this.resolveProjectId(options?.projectId);
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
const
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
51
|
+
const mode = options?.mode ?? (isNextAnalysisQuestion(question) ? "next_analysis" : "default");
|
|
52
|
+
console.log(`[rag-wiki] ask() projectId=${id} mode=${mode} question="${question.slice(0, 60)}"`);
|
|
53
|
+
const [index, guideline] = await Promise.all([
|
|
54
|
+
this.reader.loadIndex(id),
|
|
55
|
+
this.reader.loadGuideline(id),
|
|
56
|
+
]);
|
|
57
|
+
console.log(`[rag-wiki] project index pages: ${index.pages.length}`);
|
|
58
|
+
let allPages = index.pages;
|
|
59
|
+
let mergedGuideline = guideline;
|
|
60
|
+
let globalIndex = null;
|
|
61
|
+
if (this.globalProjectId !== undefined && this.globalProjectId !== id) {
|
|
62
|
+
const [gi, globalGuideline] = await Promise.all([
|
|
63
|
+
this.reader.loadIndex(this.globalProjectId),
|
|
64
|
+
this.reader.loadGuideline(this.globalProjectId),
|
|
65
|
+
]);
|
|
66
|
+
globalIndex = gi;
|
|
67
|
+
console.log(`[rag-wiki] global index pages: ${gi.pages.length} | guideline: ${!!globalGuideline}`);
|
|
68
|
+
const existingPaths = new Set(index.pages.map((p) => p.path));
|
|
69
|
+
const newGlobalPages = gi.pages.filter((p) => !existingPaths.has(p.path));
|
|
70
|
+
allPages = [...index.pages, ...newGlobalPages];
|
|
71
|
+
console.log(`[rag-wiki] allPages after merge: ${allPages.length} → ${allPages.map(p => p.path).join(", ")}`);
|
|
72
|
+
if (globalGuideline) {
|
|
73
|
+
mergedGuideline = mergedGuideline
|
|
74
|
+
? `${mergedGuideline}\n\n---\n\n${globalGuideline}`
|
|
75
|
+
: globalGuideline;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
const selectedPaths = await this.engine.selectPages(question, allPages);
|
|
79
|
+
console.log(`[rag-wiki] selectPages result: [${selectedPaths.join(", ")}]`);
|
|
80
|
+
const paths = selectedPaths.length > 0 ? selectedPaths : allPages.map((p) => p.path);
|
|
81
|
+
const projectPaths = paths.filter((p) => index.pages.some((ip) => ip.path === p));
|
|
82
|
+
const globalPaths = paths.filter((p) => !index.pages.some((ip) => ip.path === p));
|
|
83
|
+
console.log(`[rag-wiki] projectPaths: [${projectPaths.join(", ")}]`);
|
|
84
|
+
console.log(`[rag-wiki] globalPaths: [${globalPaths.join(", ")}]`);
|
|
85
|
+
const [projectPages, loadedGlobalPages] = await Promise.all([
|
|
86
|
+
this.reader.loadPages(index, projectPaths),
|
|
87
|
+
globalIndex !== null && globalPaths.length > 0
|
|
88
|
+
? this.reader.loadPages(globalIndex, globalPaths)
|
|
89
|
+
: Promise.resolve([]),
|
|
90
|
+
]);
|
|
91
|
+
const pages = [...projectPages, ...loadedGlobalPages];
|
|
92
|
+
console.log(`[rag-wiki] pages loaded: ${pages.map(p => `${p.path}(${p.content?.length ?? 0}chars)`).join(", ")}`);
|
|
93
|
+
const result = await this.engine.query(question, pages, mergedGuideline, id, mode);
|
|
94
|
+
console.log(`[rag-wiki] query result: answered=${result.answered} escalation=${result.escalationReason ?? "-"}`);
|
|
95
|
+
this.logger.appendQuery(id, question, result).catch(() => { });
|
|
49
96
|
return result;
|
|
50
97
|
}
|
|
51
98
|
}
|
|
@@ -53,3 +100,4 @@ exports.RagWiki = RagWiki;
|
|
|
53
100
|
function createRagWiki(config) {
|
|
54
101
|
return new RagWiki(config);
|
|
55
102
|
}
|
|
103
|
+
//# sourceMappingURL=browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAkB,MAAM,SAAS,CAAC;AAGrE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,YAAY,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,QAAQ,EACR,SAAS,EACT,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAIjB,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAkB;IAEpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;gBAEvC,MAAM,EAAE,aAAa;IAsBjC,OAAO,CAAC,gBAAgB;IAUxB;;;;;;OAMG;IACG,MAAM,CACV,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC1D,OAAO,CAAC,MAAM,CAAC;IAKlB;;;;;;OAMG;IACG,GAAG,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAkB,MAAM,SAAS,CAAC;AAGrE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,YAAY,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,QAAQ,EACR,SAAS,EACT,gBAAgB,GACjB,MAAM,SAAS,CAAC;AAIjB,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAc;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAY;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAe;IACxC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAkB;IAEpD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAkB;gBAEvC,MAAM,EAAE,aAAa;IAsBjC,OAAO,CAAC,gBAAgB;IAUxB;;;;;;OAMG;IACG,MAAM,CACV,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAC1D,OAAO,CAAC,MAAM,CAAC;IAKlB;;;;;;OAMG;IACG,GAAG,CACP,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,SAAS,GAAG,eAAe,CAAA;KAAE,GAC5E,OAAO,CAAC,WAAW,CAAC;CA8DxB;AAiBD;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAE5D"}
|
package/dist/index.js
CHANGED
|
@@ -57,10 +57,13 @@ class RagWiki {
|
|
|
57
57
|
*/
|
|
58
58
|
async ask(question, options) {
|
|
59
59
|
const id = this.resolveProjectId(options?.projectId);
|
|
60
|
+
const mode = options?.mode ?? (isNextAnalysisQuestion(question) ? "next_analysis" : "default");
|
|
61
|
+
console.log(`[rag-wiki] ask() projectId=${id} mode=${mode} question="${question.slice(0, 60)}"`);
|
|
60
62
|
const [index, guideline] = await Promise.all([
|
|
61
63
|
this.reader.loadIndex(id),
|
|
62
64
|
this.reader.loadGuideline(id),
|
|
63
65
|
]);
|
|
66
|
+
console.log(`[rag-wiki] project index pages: ${index.pages.length}`);
|
|
64
67
|
let allPages = index.pages;
|
|
65
68
|
let mergedGuideline = guideline;
|
|
66
69
|
let globalIndex = null;
|
|
@@ -70,10 +73,11 @@ class RagWiki {
|
|
|
70
73
|
this.reader.loadGuideline(this.globalProjectId),
|
|
71
74
|
]);
|
|
72
75
|
globalIndex = gi;
|
|
73
|
-
|
|
76
|
+
console.log(`[rag-wiki] global index pages: ${gi.pages.length} | guideline: ${!!globalGuideline}`);
|
|
74
77
|
const existingPaths = new Set(index.pages.map((p) => p.path));
|
|
75
78
|
const newGlobalPages = gi.pages.filter((p) => !existingPaths.has(p.path));
|
|
76
79
|
allPages = [...index.pages, ...newGlobalPages];
|
|
80
|
+
console.log(`[rag-wiki] allPages after merge: ${allPages.length} → ${allPages.map(p => p.path).join(", ")}`);
|
|
77
81
|
if (globalGuideline) {
|
|
78
82
|
mergedGuideline = mergedGuideline
|
|
79
83
|
? `${mergedGuideline}\n\n---\n\n${globalGuideline}`
|
|
@@ -81,10 +85,12 @@ class RagWiki {
|
|
|
81
85
|
}
|
|
82
86
|
}
|
|
83
87
|
const selectedPaths = await this.engine.selectPages(question, allPages);
|
|
88
|
+
console.log(`[rag-wiki] selectPages result: [${selectedPaths.join(", ")}]`);
|
|
84
89
|
const paths = selectedPaths.length > 0 ? selectedPaths : allPages.map((p) => p.path);
|
|
85
|
-
// Load pages from the correct index (project or global)
|
|
86
90
|
const projectPaths = paths.filter((p) => index.pages.some((ip) => ip.path === p));
|
|
87
91
|
const globalPaths = paths.filter((p) => !index.pages.some((ip) => ip.path === p));
|
|
92
|
+
console.log(`[rag-wiki] projectPaths: [${projectPaths.join(", ")}]`);
|
|
93
|
+
console.log(`[rag-wiki] globalPaths: [${globalPaths.join(", ")}]`);
|
|
88
94
|
const [projectPages, loadedGlobalPages] = await Promise.all([
|
|
89
95
|
this.reader.loadPages(index, projectPaths),
|
|
90
96
|
globalIndex !== null && globalPaths.length > 0
|
|
@@ -92,12 +98,23 @@ class RagWiki {
|
|
|
92
98
|
: Promise.resolve([]),
|
|
93
99
|
]);
|
|
94
100
|
const pages = [...projectPages, ...loadedGlobalPages];
|
|
95
|
-
|
|
101
|
+
console.log(`[rag-wiki] pages loaded: ${pages.map(p => `${p.path}(${p.content?.length ?? 0}chars)`).join(", ")}`);
|
|
102
|
+
const result = await this.engine.query(question, pages, mergedGuideline, id, mode);
|
|
103
|
+
console.log(`[rag-wiki] query result: answered=${result.answered} escalation=${result.escalationReason ?? "-"}`);
|
|
96
104
|
this.logger.appendQuery(id, question, result).catch(() => { });
|
|
97
105
|
return result;
|
|
98
106
|
}
|
|
99
107
|
}
|
|
100
108
|
exports.RagWiki = RagWiki;
|
|
109
|
+
// ─── Helpers ─────────────────────────────────────────────────────────────────
|
|
110
|
+
function isNextAnalysisQuestion(question) {
|
|
111
|
+
const lower = question.toLowerCase();
|
|
112
|
+
return (lower.includes("sonraki analiz") ||
|
|
113
|
+
lower.includes("ne yapmalıyım") ||
|
|
114
|
+
lower.includes("hangi analizi") ||
|
|
115
|
+
lower.includes("next analysis") ||
|
|
116
|
+
lower.includes("what should i do next"));
|
|
117
|
+
}
|
|
101
118
|
// ─── Convenience factory ──────────────────────────────────────────────────────
|
|
102
119
|
/**
|
|
103
120
|
* Create a RagWiki instance from config.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/query-engine.d.ts
CHANGED
|
@@ -8,6 +8,6 @@ export declare class QueryEngine {
|
|
|
8
8
|
* Returns a list of paths to load.
|
|
9
9
|
*/
|
|
10
10
|
selectPages(question: string, indexPages: WikiPage[], maxPages?: number): Promise<string[]>;
|
|
11
|
-
query(question: string, pages: WikiPage[], guideline: string | null, _projectId: string | number): Promise<QueryResult>;
|
|
11
|
+
query(question: string, pages: WikiPage[], guideline: string | null, _projectId: string | number, mode?: "default" | "next_analysis"): Promise<QueryResult>;
|
|
12
12
|
}
|
|
13
13
|
//# sourceMappingURL=query-engine.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-engine.d.ts","sourceRoot":"","sources":["../src/query-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAYlE,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEF,MAAM,EAAE,MAAM,EAAE,KAAK,SAAgB;IAIlE;;;OAGG;IACG,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,QAAQ,EAAE,EACtB,QAAQ,SAAI,GACX,OAAO,CAAC,MAAM,EAAE,CAAC;IAyCd,KAAK,CACT,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,QAAQ,EAAE,EACjB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,UAAU,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"query-engine.d.ts","sourceRoot":"","sources":["../src/query-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAYlE,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;gBAEF,MAAM,EAAE,MAAM,EAAE,KAAK,SAAgB;IAIlE;;;OAGG;IACG,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,QAAQ,EAAE,EACtB,QAAQ,SAAI,GACX,OAAO,CAAC,MAAM,EAAE,CAAC;IAyCd,KAAK,CACT,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,QAAQ,EAAE,EACjB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,UAAU,EAAE,MAAM,GAAG,MAAM,EAC3B,IAAI,GAAE,SAAS,GAAG,eAA2B,GAC5C,OAAO,CAAC,WAAW,CAAC;CAwHxB"}
|
package/dist/query-engine.js
CHANGED
|
@@ -55,7 +55,7 @@ class QueryEngine {
|
|
|
55
55
|
return [];
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
async query(question, pages, guideline, _projectId) {
|
|
58
|
+
async query(question, pages, guideline, _projectId, mode = "default") {
|
|
59
59
|
// Build context from pages
|
|
60
60
|
if (pages.length === 0) {
|
|
61
61
|
return {
|
|
@@ -68,7 +68,29 @@ class QueryEngine {
|
|
|
68
68
|
const guidelineSection = guideline
|
|
69
69
|
? `## Kılavuz (Guideline)\n${guideline}\n\n`
|
|
70
70
|
: "";
|
|
71
|
-
const systemPrompt =
|
|
71
|
+
const systemPrompt = mode === "next_analysis"
|
|
72
|
+
? `## Kimlik ve Görev
|
|
73
|
+
Sen İstabot platformu için uzman bir akademik istatistik asistanısın. Görevin, kullanıcının projesindeki raporları ve veri setlerini inceleyerek bir sonraki en uygun analizi somut olarak önermektir.
|
|
74
|
+
|
|
75
|
+
## Operasyonel Kurallar
|
|
76
|
+
1. **Değişken Tespiti:** Rapor içeriklerinden ve veri seti görünümünden değişken isimlerini ve ölçüm tiplerini (Scale/Ordinal/Nominal) tespit et.
|
|
77
|
+
2. **Yapılmış Analizleri Belirle:** Rapor başlıklarına ve içeriklerine bakarak hangi analiz türlerinin zaten yapıldığını çıkar.
|
|
78
|
+
3. **Somut Öneri:** Yapılmamış analiz türlerini, veri setindeki gerçek değişken isimleriyle birlikte öner. "Kategorik değişken varsa ki-kare yap" gibi genel ifadeler kullanma. Bunun yerine "**X** ve **Y** değişkenleri Nominal tipte olduğundan aralarında Ki-Kare Analizi yapılabilir" gibi spesifik öneriler ver.
|
|
79
|
+
4. **Platform Kısıtlaması:** Yalnızca şu analiz türlerini öner: Tanımlayıcı İstatistikler, Tek Grup Analizi, Çoklu Grup Analizi, Bağımlı Veri Analizi, Korelasyon Analizi, Ki-Kare Analizi.
|
|
80
|
+
5. **Dil:** Yanıtın tamamını Türkçe ver.
|
|
81
|
+
|
|
82
|
+
## Çıktı Protokolü
|
|
83
|
+
Yanıtını SADECE aşağıdaki JSON yapısında döndür. JSON dışında markdown bloğu, açıklama veya başka hiçbir metin ekleme:
|
|
84
|
+
{
|
|
85
|
+
"status": "answered",
|
|
86
|
+
"answer": "<her öneri için: analiz adı, hangi spesifik değişkenlerle yapılacağı ve neden anlamlı olduğu — madde madde>",
|
|
87
|
+
"reasoning": "<hangi rapor veya veri setine bakılarak bu sonuca varıldığı>",
|
|
88
|
+
"usedSources": ["<kullanılan kaynak yolu>"]
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
${guidelineSection}## Rapor ve Veri Seti İçeriği
|
|
92
|
+
${context}`
|
|
93
|
+
: `## Kimlik ve Görev
|
|
72
94
|
Sen İstabot platformu için uzman bir akademik istatistik asistanısın. Görevin, "Rapor İçeriği" bölümündeki verileri kullanarak kullanıcı sorularını analiz etmek ve yanıtlamaktır.
|
|
73
95
|
|
|
74
96
|
## Operasyonel Kurallar
|
package/dist/query-engine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-engine.js","sourceRoot":"","sources":["../src/query-engine.ts"],"names":[],"mappings":";;;AAEA,MAAM,aAAa,GAAG,aAAa,CAAC;AAEpC,SAAS,YAAY,CAAC,QAAgB;IACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC;IACvD,OAAO,QAAQ;SACZ,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,MAAa,WAAW;IAGtB,YAA6B,MAAc,EAAE,KAAK,GAAG,aAAa;QAArC,WAAM,GAAN,MAAM,CAAQ;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,QAAgB,EAChB,UAAsB,EACtB,QAAQ,GAAG,CAAC;QAEZ,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEvC,MAAM,OAAO,GAAG,UAAU;aACvB,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,WAAW,CAAC,CAAC,IAAI,cAAc,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,IAAI,cAAc,EAAE,CACnG;aACA,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,4CAA4C,EAAE;gBACpE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;iBACzC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,oLAAoL,QAAQ,oJAAoJ;yBAC1V;wBACD;4BACE,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,aAAa,QAAQ,yBAAyB,OAAO,EAAE;yBACjE;qBACF;oBACD,WAAW,EAAE,CAAC;iBACf,CAAC;aACH,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;YAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;YACvD,OAAO,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CACT,QAAgB,EAChB,KAAiB,EACjB,SAAwB,EACxB,UAA2B;
|
|
1
|
+
{"version":3,"file":"query-engine.js","sourceRoot":"","sources":["../src/query-engine.ts"],"names":[],"mappings":";;;AAEA,MAAM,aAAa,GAAG,aAAa,CAAC;AAEpC,SAAS,YAAY,CAAC,QAAgB;IACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,QAAQ,CAAC;IACvD,OAAO,QAAQ;SACZ,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,MAAa,WAAW;IAGtB,YAA6B,MAAc,EAAE,KAAK,GAAG,aAAa;QAArC,WAAM,GAAN,MAAM,CAAQ;QACzC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,QAAgB,EAChB,UAAsB,EACtB,QAAQ,GAAG,CAAC;QAEZ,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAEvC,MAAM,OAAO,GAAG,UAAU;aACvB,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CACJ,WAAW,CAAC,CAAC,IAAI,cAAc,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,IAAI,cAAc,EAAE,CACnG;aACA,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,4CAA4C,EAAE;gBACpE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;iBACzC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EAAE,oLAAoL,QAAQ,oJAAoJ;yBAC1V;wBACD;4BACE,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,aAAa,QAAQ,yBAAyB,OAAO,EAAE;yBACjE;qBACF;oBACD,WAAW,EAAE,CAAC;iBACf,CAAC;aACH,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,GAAG,GAAG,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;YAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAyB,CAAC;YACvD,OAAO,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CACT,QAAgB,EAChB,KAAiB,EACjB,SAAwB,EACxB,UAA2B,EAC3B,OAAoC,SAAS;QAE7C,2BAA2B;QAC3B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;gBACL,QAAQ,EAAE,KAAK;gBACf,gBAAgB,EAAE,sBAAsB;gBACxC,iBAAiB,EAAE,qHAAqH;aACzI,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAEhI,MAAM,gBAAgB,GAAG,SAAS;YAChC,CAAC,CAAC,2BAA2B,SAAS,MAAM;YAC5C,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,YAAY,GAAG,IAAI,KAAK,eAAe;YAC3C,CAAC,CAAC;;;;;;;;;;;;;;;;;;;EAmBN,gBAAgB;EAChB,OAAO,EAAE;YACL,CAAC,CAAC;;;;;;;;;;;;;;;;;;;EAmBN,gBAAgB;EAChB,OAAO,EAAE,CAAC;QAER,MAAM,UAAU,GAAG,QAAQ,CAAC;QAE5B,IAAI,MAAqF,CAAC;QAC1F,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,4CAA4C,EAAE;gBACpE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,cAAc,EAAE,kBAAkB;oBAClC,eAAe,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;iBACzC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,QAAQ,EAAE;wBACR,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE;wBACzC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE;qBACtC;oBACD,WAAW,EAAE,GAAG;oBAChB,eAAe,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;iBACzC,CAAC;aACH,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,CAAC;YACtE,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,8BAA8B,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACxG,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;YAClD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,QAAQ,EAAE,KAAK;gBACf,gBAAgB,EAAE,sBAAsB;gBACxC,iBAAiB,EAAE,iCAAiC,MAAM,CAAC,GAAG,CAAC,EAAE;aAClE,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,MAAuC,CAAC;QAE9D,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;YAC1B,MAAM,kBAAkB,GAA2B;gBACjD,YAAY,EAAE,8KAA8K;gBAC5L,oBAAoB,EAAE,oHAAoH;gBAC1I,mBAAmB,EAAE,mCAAmC;aACzD,CAAC;YACF,OAAO;gBACL,QAAQ,EAAE,KAAK;gBACf,gBAAgB,EAAE,MAA0B;gBAC5C,iBAAiB,EAAE,kBAAkB,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM;aACnF,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;aACvC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;YACpB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QAChE,CAAC,CAAC,CAAC;QAEL,OAAO;YACL,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO;SACR,CAAC;IACJ,CAAC;CACF;AAtLD,kCAsLC"}
|