@liquidmetal-ai/raindrop 0.3.5 → 0.4.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.
- package/README.md +99 -92
- package/dist/base-command.d.ts +1 -1
- package/dist/base-command.d.ts.map +1 -1
- package/dist/base-command.js +2 -2
- package/dist/commands/build/branch.js +1 -1
- package/dist/commands/build/clone.d.ts.map +1 -1
- package/dist/commands/build/clone.js +0 -4
- package/dist/commands/build/delete.js +1 -1
- package/dist/commands/build/deploy.js +1 -1
- package/dist/commands/build/env/get.js +1 -1
- package/dist/commands/build/env/set.js +1 -1
- package/dist/commands/build/find.js +1 -1
- package/dist/commands/build/generate.js +1 -1
- package/dist/commands/build/list.js +1 -1
- package/dist/commands/build/start.js +1 -1
- package/dist/commands/build/status.js +1 -1
- package/dist/commands/build/stop.js +1 -1
- package/dist/commands/build/upload.js +1 -1
- package/dist/commands/build/validate.js +1 -1
- package/dist/commands/object/delete.d.ts +2 -1
- package/dist/commands/object/delete.d.ts.map +1 -1
- package/dist/commands/object/delete.js +48 -5
- package/dist/commands/object/get.d.ts +2 -1
- package/dist/commands/object/get.d.ts.map +1 -1
- package/dist/commands/object/get.js +46 -5
- package/dist/commands/object/list.d.ts +2 -1
- package/dist/commands/object/list.d.ts.map +1 -1
- package/dist/commands/object/list.js +48 -7
- package/dist/commands/object/put.d.ts +2 -1
- package/dist/commands/object/put.d.ts.map +1 -1
- package/dist/commands/object/put.js +50 -6
- package/dist/commands/query/chunk-search.d.ts +2 -0
- package/dist/commands/query/chunk-search.d.ts.map +1 -1
- package/dist/commands/query/chunk-search.js +38 -2
- package/dist/commands/query/search.d.ts +1 -0
- package/dist/commands/query/search.d.ts.map +1 -1
- package/dist/commands/query/search.js +34 -9
- package/oclif.manifest.json +1148 -1085
- package/package.json +1 -1
|
@@ -18,6 +18,18 @@ Run a RAG search query against a Smart Bucket.
|
|
|
18
18
|
];
|
|
19
19
|
static flags = {
|
|
20
20
|
...BaseCommand.HIDDEN_FLAGS,
|
|
21
|
+
buckets: Flags.string({
|
|
22
|
+
char: 'b',
|
|
23
|
+
description: 'Bucket names to search in, version can be specified with @, e.g. my-bucket@versionId',
|
|
24
|
+
multiple: true,
|
|
25
|
+
required: false,
|
|
26
|
+
}),
|
|
27
|
+
moduleIds: Flags.string({
|
|
28
|
+
char: 'm',
|
|
29
|
+
description: 'Module IDs to search in',
|
|
30
|
+
multiple: true,
|
|
31
|
+
required: false,
|
|
32
|
+
}),
|
|
21
33
|
output: Flags.string({
|
|
22
34
|
char: 'o',
|
|
23
35
|
description: 'output format',
|
|
@@ -31,7 +43,7 @@ Run a RAG search query against a Smart Bucket.
|
|
|
31
43
|
hidden: true,
|
|
32
44
|
}),
|
|
33
45
|
manifest: Flags.string({
|
|
34
|
-
char: '
|
|
46
|
+
char: 'M',
|
|
35
47
|
description: 'project manifest',
|
|
36
48
|
required: false,
|
|
37
49
|
default: 'raindrop.manifest',
|
|
@@ -39,12 +51,36 @@ Run a RAG search query against a Smart Bucket.
|
|
|
39
51
|
}),
|
|
40
52
|
};
|
|
41
53
|
async searchAgent(query) {
|
|
54
|
+
// Check if both buckets and moduleIds flags are set
|
|
55
|
+
if (this.flags.buckets?.length && this.flags.moduleIds?.length) {
|
|
56
|
+
this.error('Cannot specify both --buckets and --moduleIds flags. Please use only one type of filter.');
|
|
57
|
+
}
|
|
42
58
|
const { client: searchAgentService, userId, organizationId } = await this.searchAgentService();
|
|
43
59
|
// Run the RAG search
|
|
44
60
|
const response = await searchAgentService.ragSearch({
|
|
45
61
|
userId,
|
|
46
62
|
organizationId,
|
|
47
|
-
|
|
63
|
+
bucketLocations: [
|
|
64
|
+
...(this.flags.buckets || []).map((bucket) => {
|
|
65
|
+
//string split on @ to get bucket name and version
|
|
66
|
+
const [bucketName, version] = bucket.split('@');
|
|
67
|
+
return {
|
|
68
|
+
bucketLocation: {
|
|
69
|
+
case: 'bucket',
|
|
70
|
+
value: {
|
|
71
|
+
name: bucketName,
|
|
72
|
+
version: version || '',
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
};
|
|
76
|
+
}),
|
|
77
|
+
...(this.flags.moduleIds || []).map((moduleId) => ({
|
|
78
|
+
bucketLocation: {
|
|
79
|
+
case: 'moduleId',
|
|
80
|
+
value: moduleId,
|
|
81
|
+
},
|
|
82
|
+
})),
|
|
83
|
+
],
|
|
48
84
|
requestId: ulid(),
|
|
49
85
|
input: query,
|
|
50
86
|
});
|
|
@@ -7,6 +7,7 @@ export default class AgentSearch extends BaseCommand<typeof AgentSearch> {
|
|
|
7
7
|
static examples: string[];
|
|
8
8
|
static flags: {
|
|
9
9
|
buckets: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
moduleIds: import("@oclif/core/interfaces").OptionFlag<string[] | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
11
|
requestId: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
12
|
page: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
13
|
output: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/commands/query/search.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW,CAAC,OAAO,WAAW,CAAC;IACtE,MAAM,CAAC,IAAI;;MAKT;IAEF,MAAM,CAAC,WAAW,SAAsE;IAExF,MAAM,CAAC,QAAQ,WAOb;IAEF,MAAM,CAAC,KAAK
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/commands/query/search.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGpD,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW,CAAC,OAAO,WAAW,CAAC;IACtE,MAAM,CAAC,IAAI;;MAKT;IAEF,MAAM,CAAC,WAAW,SAAsE;IAExF,MAAM,CAAC,QAAQ,WAOb;IAEF,MAAM,CAAC,KAAK;;;;;;;;;;;;;;MA0CV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAsG3B"}
|
|
@@ -21,7 +21,13 @@ Get page 2 of previous search results.
|
|
|
21
21
|
...BaseCommand.HIDDEN_FLAGS,
|
|
22
22
|
buckets: Flags.string({
|
|
23
23
|
char: 'b',
|
|
24
|
-
description: '
|
|
24
|
+
description: 'Bucket names to search in, version can be specified with @, e.g. my-bucket@versionId',
|
|
25
|
+
multiple: true,
|
|
26
|
+
required: false,
|
|
27
|
+
}),
|
|
28
|
+
moduleIds: Flags.string({
|
|
29
|
+
char: 'm',
|
|
30
|
+
description: 'Module IDs to search in',
|
|
25
31
|
multiple: true,
|
|
26
32
|
required: false,
|
|
27
33
|
}),
|
|
@@ -47,7 +53,7 @@ Get page 2 of previous search results.
|
|
|
47
53
|
hidden: true,
|
|
48
54
|
}),
|
|
49
55
|
manifest: Flags.string({
|
|
50
|
-
char: '
|
|
56
|
+
char: 'M',
|
|
51
57
|
description: 'project manifest',
|
|
52
58
|
required: false,
|
|
53
59
|
default: 'raindrop.manifest',
|
|
@@ -55,6 +61,10 @@ Get page 2 of previous search results.
|
|
|
55
61
|
}),
|
|
56
62
|
};
|
|
57
63
|
async run() {
|
|
64
|
+
// Check if both buckets and moduleIds flags are set
|
|
65
|
+
if (this.flags.buckets?.length && this.flags.moduleIds?.length) {
|
|
66
|
+
this.error('Cannot specify both --buckets and --moduleIds flags. Please use only one type of filter.');
|
|
67
|
+
}
|
|
58
68
|
const { args, flags } = await this.parse(AgentSearch);
|
|
59
69
|
const { client: searchAgentService, userId, organizationId } = await this.searchAgentService();
|
|
60
70
|
let response;
|
|
@@ -84,16 +94,31 @@ Get page 2 of previous search results.
|
|
|
84
94
|
this.error('Search query is required when not using requestId');
|
|
85
95
|
return;
|
|
86
96
|
}
|
|
87
|
-
// Check if buckets were provided
|
|
88
|
-
if (!flags.buckets || flags.buckets.length === 0) {
|
|
89
|
-
this.error('At least one bucket ID must be specified using --buckets');
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
97
|
requestId = ulid();
|
|
93
98
|
response = await searchAgentService.runSupervisorAgent({
|
|
94
99
|
requestId,
|
|
95
100
|
input: args.query,
|
|
96
|
-
|
|
101
|
+
bucketLocations: [
|
|
102
|
+
...(this.flags.buckets || []).map((bucket) => {
|
|
103
|
+
//string split on @ to get bucket name and version
|
|
104
|
+
const [bucketName, version] = bucket.split('@');
|
|
105
|
+
return {
|
|
106
|
+
bucketLocation: {
|
|
107
|
+
case: 'bucket',
|
|
108
|
+
value: {
|
|
109
|
+
name: bucketName,
|
|
110
|
+
version: version || '',
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
};
|
|
114
|
+
}),
|
|
115
|
+
...(this.flags.moduleIds || []).map((moduleId) => ({
|
|
116
|
+
bucketLocation: {
|
|
117
|
+
case: 'moduleId',
|
|
118
|
+
value: moduleId,
|
|
119
|
+
},
|
|
120
|
+
})),
|
|
121
|
+
],
|
|
97
122
|
userId,
|
|
98
123
|
organizationId,
|
|
99
124
|
});
|
|
@@ -111,7 +136,7 @@ Get page 2 of previous search results.
|
|
|
111
136
|
console.log('----------------------------------------');
|
|
112
137
|
console.log(`Type: ${result.type || 'N/A'}`);
|
|
113
138
|
console.log(`Score: ${result.score || 0}`);
|
|
114
|
-
console.log(`Source: ${result.source ? `${result.source.bucket}/${result.source.object}` : 'N/A'}`);
|
|
139
|
+
console.log(`Source: ${result.source ? `${result.source.bucket?.bucketName}/${result.source.object}` : 'N/A'}`);
|
|
115
140
|
console.log(`Content: ${result.text || 'N/A'}`);
|
|
116
141
|
console.log('----------------------------------------\n');
|
|
117
142
|
}
|