Spaces:
Sleeping
Sleeping
File size: 1,063 Bytes
0c3e3b2 564e576 0c3e3b2 564e576 0c3e3b2 564e576 0c3e3b2 564e576 0c3e3b2 564e576 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import type { ConfigTool } from "$lib/types/Tool";
import { ObjectId } from "mongodb";
import { runWebSearch } from "../../websearch/runWebSearch";
const websearch: ConfigTool = {
_id: new ObjectId("00000000000000000000000A"),
type: "config",
description: "Search the web for answers to the user's query",
color: "blue",
icon: "wikis",
displayName: "Web Search",
name: "websearch",
endpoint: null,
inputs: [
{
name: "query",
type: "str",
description:
"A search query which will be used to fetch the most relevant snippets regarding the user's query",
paramType: "required",
},
],
outputComponent: null,
outputComponentIdx: null,
showOutput: false,
async *call({ query }, { conv, assistant, messages }) {
const webSearchToolResults = yield* runWebSearch(conv, messages, assistant?.rag, String(query));
const chunks = webSearchToolResults?.contextSources
.map(({ context }) => context)
.join("\n------------\n");
return {
outputs: [{ websearch: chunks }],
display: false,
};
},
};
export default websearch;
|