gcharanteja commited on
Commit ·
0c3ae10
1
Parent(s): b008b07
feat: enhance search handling to provide user-friendly messages and formatted results
Browse files- services/router.js +20 -5
services/router.js
CHANGED
|
@@ -81,14 +81,29 @@ async function handleSearch(input, intent, config) {
|
|
| 81 |
? await queryCollectionDataEnhanced(searchParams)
|
| 82 |
: await queryCollectionData(searchParams);
|
| 83 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 84 |
return {
|
| 85 |
intent: "search",
|
| 86 |
query: input,
|
| 87 |
-
|
| 88 |
-
enhanced: searchParams.enhanced,
|
| 89 |
-
rerank: searchParams.rerank,
|
| 90 |
-
},
|
| 91 |
-
results,
|
| 92 |
};
|
| 93 |
} catch (error) {
|
| 94 |
return {
|
|
|
|
| 81 |
? await queryCollectionDataEnhanced(searchParams)
|
| 82 |
: await queryCollectionData(searchParams);
|
| 83 |
|
| 84 |
+
const documents = results.ids?.[0] || [];
|
| 85 |
+
const contents = results.documents?.[0] || [];
|
| 86 |
+
const metadatas = results.metadatas?.[0] || [];
|
| 87 |
+
|
| 88 |
+
if (documents.length === 0) {
|
| 89 |
+
return {
|
| 90 |
+
intent: "search",
|
| 91 |
+
query: input,
|
| 92 |
+
answer: "No matching knowledge found. Please curate relevant documentation first.",
|
| 93 |
+
};
|
| 94 |
+
}
|
| 95 |
+
|
| 96 |
+
const answer = contents
|
| 97 |
+
.map((content, idx) => {
|
| 98 |
+
const meta = metadatas[idx] || {};
|
| 99 |
+
return `**${meta.title || documents[idx]}** (${meta.topic || "general"})\n${content}`;
|
| 100 |
+
})
|
| 101 |
+
.join("\n\n---\n\n");
|
| 102 |
+
|
| 103 |
return {
|
| 104 |
intent: "search",
|
| 105 |
query: input,
|
| 106 |
+
answer,
|
|
|
|
|
|
|
|
|
|
|
|
|
| 107 |
};
|
| 108 |
} catch (error) {
|
| 109 |
return {
|